Commit Graph

5 Commits (8362a4155929007b8d02b63a2e657557edb08fb9)

Author SHA1 Message Date
wxiaoguang 633785a5f3
Refactor markup render system ()
This PR removes (almost) all path tricks, and introduces "renderhelper"
package.

Now we can clearly see the rendering behaviors for comment/file/wiki,
more details are in "renderhelper" tests.

Fix  , fix , fix  and maybe more problems. (ps: fix
 by the way)
wxiaoguang c4e27cb27b
Refactor markup render system ()
This PR mainly moves some code and introduces `RenderContext.WithXxx`
functions
wxiaoguang 3f9c3e7bc3
Refactor render system ()
There were too many patches to the Render system, it's really difficult
to make further improvements.

This PR clears the legacy problems and fix TODOs.

1. Rename `RenderContext.Type` to `RenderContext.MarkupType` to clarify
its usage.
2. Use `ContentMode` to replace `meta["mode"]` and `IsWiki`, to clarify
the rendering behaviors.
3. Use "wiki" mode instead of "mode=gfm + wiki=true"
4. Merge `renderByType` and `renderByFile`
5. Add more comments

----

The problem of "mode=document": in many cases it is not set, so many
non-comment places use comment's hard line break incorrectly
wxiaoguang 145e266987
Support quote selected comments to reply ()
Many existing tests were quite hacky, these could be improved later.

<details>

![image](https://github.com/user-attachments/assets/93aebb4f-9de5-4cb8-910b-50c64cbcd25a)

</details>
wxiaoguang ca5c895efb
Render embedded code preview by permlink in markdown ()
The permlink in markdown will be rendered as a code preview block, like GitHub

Co-authored-by: silverwind <me@silverwind.io>