🧑‍💻 Add parameter imgTag for kernel API exportMdContent and copyStdMarkdown https://github.com/siyuan-note/siyuan/issues/15454

This commit is contained in:
Daniel 2025-08-07 20:16:58 +08:00
parent c2c927ecc2
commit 99fca2f716
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
5 changed files with 24 additions and 12 deletions

View file

@ -268,7 +268,8 @@ func Export2Liandi(id string) (err error) {
title := path.Base(tree.HPath)
tags := tree.Root.IALAttr("tags")
content := exportMarkdownContent0(id, tree, util.GetCloudForumAssetsServer()+time.Now().Format("2006/01")+"/siyuan/"+Conf.GetUser().UserId+"/", true, false,
content := exportMarkdownContent0(id, tree, util.GetCloudForumAssetsServer()+time.Now().Format("2006/01")+"/siyuan/"+Conf.GetUser().UserId+"/",
true, false, false,
".md", 3, 1, 1,
"#", "#",
"", "",
@ -1459,7 +1460,7 @@ func processPDFLinkEmbedAssets(pdfCtx *model.Context, assetDests []string, remov
}
}
func ExportStdMarkdown(id string, assetsDestSpace2Underscore, fillCSSVar, adjustHeadingLevel bool) string {
func ExportStdMarkdown(id string, assetsDestSpace2Underscore, fillCSSVar, adjustHeadingLevel, imgTag bool) string {
bt := treenode.GetBlockTree(id)
if nil == bt {
logging.LogErrorf("block tree [%s] not found", id)
@ -1498,7 +1499,7 @@ func ExportStdMarkdown(id string, assetsDestSpace2Underscore, fillCSSVar, adjust
}
defBlockIDs = gulu.Str.RemoveDuplicatedElem(defBlockIDs)
return exportMarkdownContent0(id, tree, cloudAssetsBase, assetsDestSpace2Underscore, adjustHeadingLevel,
return exportMarkdownContent0(id, tree, cloudAssetsBase, assetsDestSpace2Underscore, adjustHeadingLevel, imgTag,
".md", Conf.Export.BlockRefMode, Conf.Export.BlockEmbedMode, Conf.Export.FileAnnotationRefMode,
Conf.Export.TagOpenMarker, Conf.Export.TagCloseMarker,
Conf.Export.BlockRefTextLeft, Conf.Export.BlockRefTextRight,
@ -1984,7 +1985,7 @@ func walkRelationAvs(avID string, exportAvIDs *hashset.Set) {
}
}
func ExportMarkdownContent(id string, refMode, embedMode int, addYfm, fillCSSVar, adjustHeadingLv bool) (hPath, exportedMd string) {
func ExportMarkdownContent(id string, refMode, embedMode int, addYfm, fillCSSVar, adjustHeadingLv, imgTag bool) (hPath, exportedMd string) {
bt := treenode.GetBlockTree(id)
if nil == bt {
return
@ -1992,7 +1993,7 @@ func ExportMarkdownContent(id string, refMode, embedMode int, addYfm, fillCSSVar
tree := prepareExportTree(bt)
hPath = tree.HPath
exportedMd = exportMarkdownContent0(id, tree, "", false, adjustHeadingLv,
exportedMd = exportMarkdownContent0(id, tree, "", false, adjustHeadingLv, imgTag,
".md", refMode, embedMode, Conf.Export.FileAnnotationRefMode,
Conf.Export.TagOpenMarker, Conf.Export.TagCloseMarker,
Conf.Export.BlockRefTextLeft, Conf.Export.BlockRefTextRight,
@ -2015,7 +2016,7 @@ func exportMarkdownContent(id, ext string, exportRefMode int, defBlockIDs []stri
isEmpty = nil == tree.Root.FirstChild.FirstChild
}
exportedMd = exportMarkdownContent0(id, tree, "", false, false,
exportedMd = exportMarkdownContent0(id, tree, "", false, false, false,
ext, exportRefMode, Conf.Export.BlockEmbedMode, Conf.Export.FileAnnotationRefMode,
Conf.Export.TagOpenMarker, Conf.Export.TagCloseMarker,
Conf.Export.BlockRefTextLeft, Conf.Export.BlockRefTextRight,
@ -2028,7 +2029,7 @@ func exportMarkdownContent(id, ext string, exportRefMode int, defBlockIDs []stri
return
}
func exportMarkdownContent0(id string, tree *parse.Tree, cloudAssetsBase string, assetsDestSpace2Underscore, adjustHeadingLv bool,
func exportMarkdownContent0(id string, tree *parse.Tree, cloudAssetsBase string, assetsDestSpace2Underscore, adjustHeadingLv, imgTag bool,
ext string, blockRefMode, blockEmbedMode, fileAnnotationRefMode int,
tagOpenMarker, tagCloseMarker string, blockRefTextLeft, blockRefTextRight string,
addTitle, inlineMemo bool, defBlockIDs []string, singleFile, fillCSSVar bool, treeCache *map[string]*parse.Tree) (ret string) {
@ -2148,6 +2149,7 @@ func exportMarkdownContent0(id string, tree *parse.Tree, cloudAssetsBase string,
}
luteEngine.SetUnorderedListMarker("-")
luteEngine.SetImgTag(imgTag)
renderer := render.NewProtyleExportMdRenderer(tree, luteEngine.RenderOptions)
ret = gulu.Str.FromBytes(renderer.Render())
return