Signed-off-by: Daniel <845765@qq.com>
This commit is contained in:
Daniel 2025-12-20 11:44:24 +08:00
parent 6f2ace0c28
commit c07efea8de
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
18 changed files with 33 additions and 33 deletions

View file

@ -1028,7 +1028,7 @@ func GetBlockKramdown(id, mode string) (ret string) {
ret = treenode.ExportNodeStdMd(root, luteEngine)
} else {
tree.Root = root
formatRenderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions)
formatRenderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
ret = string(formatRenderer.Render())
}
return

View file

@ -468,7 +468,7 @@ func GetCloudShorthand(id string) (ret map[string]interface{}, err error) {
luteEngine.SetFootnotes(true)
tree := parse.Parse("", []byte(md), luteEngine.ParseOptions)
luteEngine.RenderOptions.ProtyleMarkNetImg = false
content := luteEngine.ProtylePreview(tree, luteEngine.RenderOptions)
content := luteEngine.ProtylePreview(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
ret["shorthandContent"] = content
return
}
@ -522,7 +522,7 @@ func GetCloudShorthands(page int) (result map[string]interface{}, err error) {
shorthand["shorthandMd"] = md
tree := parse.Parse("", []byte(md), luteEngine.ParseOptions)
luteEngine.RenderOptions.ProtyleMarkNetImg = false
content := luteEngine.ProtylePreview(tree, luteEngine.RenderOptions)
content := luteEngine.ProtylePreview(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
shorthand["shorthandContent"] = content
}
return

View file

@ -640,7 +640,7 @@ func ExportPreview(id string, fillCSSVar bool) (retStdHTML string) {
fillThemeStyleVar(tree)
}
luteEngine.RenderOptions.ProtyleMarkNetImg = false
retStdHTML = luteEngine.ProtylePreview(tree, luteEngine.RenderOptions)
retStdHTML = luteEngine.ProtylePreview(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
if footnotesDefBlock := tree.Root.ChildByType(ast.NodeFootnotesDefBlock); nil != footnotesDefBlock {
footnotesDefBlock.Unlink()
@ -872,11 +872,11 @@ func ExportMarkdownHTML(id, savePath string, docx, merge bool) (name, dom string
})
if docx {
renderer := render.NewProtyleExportDocxRenderer(tree, luteEngine.RenderOptions)
renderer := render.NewProtyleExportDocxRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
output := renderer.Render()
dom = gulu.Str.FromBytes(output)
} else {
dom = luteEngine.ProtylePreview(tree, luteEngine.RenderOptions)
dom = luteEngine.ProtylePreview(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
}
return
}
@ -1048,7 +1048,7 @@ func ExportHTML(id, savePath string, pdf, image, keepFold, merge bool) (name, do
// 使用属性 `data-export-html` 导出时 `<style></style>` 标签丢失 https://github.com/siyuan-note/siyuan/issues/6228
luteEngine.SetSanitize(false)
renderer := render.NewProtyleExportRenderer(tree, luteEngine.RenderOptions)
renderer := render.NewProtyleExportRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
dom = gulu.Str.FromBytes(renderer.Render())
return
}
@ -2268,7 +2268,7 @@ func exportMarkdownContent0(id string, tree *parse.Tree, cloudAssetsBase string,
luteEngine.SetUnorderedListMarker("-")
luteEngine.SetImgTag(imgTag)
renderer := render.NewProtyleExportMdRenderer(tree, luteEngine.RenderOptions)
renderer := render.NewProtyleExportMdRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
ret = gulu.Str.FromBytes(renderer.Render())
return
}

View file

@ -737,7 +737,7 @@ func GetDoc(startID, endID, id string, index int, query string, queryTypes map[s
}
luteEngine.RenderOptions.NodeIndexStart = index
dom = luteEngine.Tree2BlockDOM(subTree, luteEngine.RenderOptions)
dom = luteEngine.Tree2BlockDOM(subTree, luteEngine.RenderOptions, luteEngine.ParseOptions)
if 1 > len(keywords) {
keywords = []string{}

View file

@ -61,13 +61,13 @@ func AutoSpace(rootID string) (err error) {
addBlockIALNodes(tree, false)
// 第一次格式化为了合并相邻的文本节点
formatRenderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions)
formatRenderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
md := formatRenderer.Render()
newTree := parseKTree(md)
newTree.Root.Spec = treenode.CurrentSpec
// 第二次格式化启用自动空格
luteEngine.SetAutoSpace(true)
formatRenderer = render.NewFormatRenderer(newTree, luteEngine.RenderOptions)
formatRenderer = render.NewFormatRenderer(newTree, luteEngine.RenderOptions, luteEngine.ParseOptions)
md = formatRenderer.Render()
newTree = parseKTree(md)
newTree.Root.Spec = treenode.CurrentSpec

View file

@ -219,10 +219,10 @@ func GetDocHistoryContent(historyPath, keyword string, highlight bool) (id, root
luteEngine.RenderOptions.ProtyleContenteditable = false
if isLargeDoc {
util.PushMsg(Conf.Language(36), 5000)
formatRenderer := render.NewFormatRenderer(historyTree, luteEngine.RenderOptions)
formatRenderer := render.NewFormatRenderer(historyTree, luteEngine.RenderOptions, luteEngine.ParseOptions)
content = gulu.Str.FromBytes(formatRenderer.Render())
} else {
content = luteEngine.Tree2BlockDOM(historyTree, luteEngine.RenderOptions)
content = luteEngine.Tree2BlockDOM(historyTree, luteEngine.RenderOptions, luteEngine.ParseOptions)
}
return
}

View file

@ -60,7 +60,7 @@ func HTML2Markdown(htmlStr string, luteEngine *lute.Lute) (markdown string, with
tree, withMath := HTML2Tree(htmlStr, luteEngine)
var formatted []byte
renderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions)
renderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
for nodeType, rendererFunc := range luteEngine.HTML2MdRendererFuncs {
renderer.ExtRendererFuncs[nodeType] = rendererFunc
}
@ -419,7 +419,7 @@ func ImportSY(zipPath, boxID, toPath string) (err error) {
util.PushEndlessProgress(Conf.language(73) + " " + fmt.Sprintf(Conf.language(70), tree.Root.IALAttr("title")))
syPath := filepath.Join(unzipRootPath, tree.Path)
treenode.UpgradeSpec(tree)
renderer := render.NewJSONRenderer(tree, luteEngine.RenderOptions)
renderer := render.NewJSONRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
data := renderer.Render()
if !util.UseSingleLineSave {

View file

@ -143,7 +143,7 @@ func refreshParentDocInfo(tree *parse.Tree) {
}
luteEngine := lute.New()
renderer := render.NewJSONRenderer(parentTree, luteEngine.RenderOptions)
renderer := render.NewJSONRenderer(parentTree, luteEngine.RenderOptions, luteEngine.ParseOptions)
data := renderer.Render()
refreshDocInfo0(parentTree, uint64(len(data)))
}

View file

@ -177,7 +177,7 @@ func fillBlockRefCount(nodes []*ast.Node) {
func renderBlockDOMByNodes(nodes []*ast.Node, luteEngine *lute.Lute) string {
tree := &parse.Tree{Root: &ast.Node{Type: ast.NodeDocument}, Context: &parse.Context{ParseOption: luteEngine.ParseOptions}}
blockRenderer := render.NewProtyleRenderer(tree, luteEngine.RenderOptions)
blockRenderer := render.NewProtyleRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
for _, node := range nodes {
ast.Walk(node, func(n *ast.Node, entering bool) ast.WalkStatus {
if entering {

View file

@ -250,10 +250,10 @@ func OpenRepoSnapshotDoc(fileID string) (title, content string, displayInText bo
luteEngine.RenderOptions.ProtyleContenteditable = false
if displayInText {
util.PushMsg(Conf.Language(36), 5000)
formatRenderer := render.NewFormatRenderer(snapshotTree, luteEngine.RenderOptions)
formatRenderer := render.NewFormatRenderer(snapshotTree, luteEngine.RenderOptions, luteEngine.ParseOptions)
content = gulu.Str.FromBytes(formatRenderer.Render())
} else {
content = luteEngine.Tree2BlockDOM(snapshotTree, luteEngine.RenderOptions)
content = luteEngine.Tree2BlockDOM(snapshotTree, luteEngine.RenderOptions, luteEngine.ParseOptions)
}
} else {
displayInText = true

View file

@ -229,7 +229,7 @@ func DocSaveAsTemplate(id, name string, overwrite bool) (code int, err error) {
}
luteEngine := NewLute()
formatRenderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions)
formatRenderer := render.NewFormatRenderer(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
md := formatRenderer.Render()
// 单独渲染根节点的 IAL
@ -488,7 +488,7 @@ func RenderTemplate(p, id string, preview bool) (tree *parse.Tree, dom string, e
}
luteEngine := NewLute()
dom = luteEngine.Tree2BlockDOM(tree, luteEngine.RenderOptions)
dom = luteEngine.Tree2BlockDOM(tree, luteEngine.RenderOptions, luteEngine.ParseOptions)
return
}