From cfdec8fcda7ae61e55481d9de76c885adbde630d Mon Sep 17 00:00:00 2001 From: Daniel <845765@qq.com> Date: Wed, 24 Jul 2024 21:31:55 +0800 Subject: [PATCH] :bug: Exporting embedded heading blocks without blocks underneath Fix https://github.com/siyuan-note/siyuan/issues/12075 --- kernel/model/render.go | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/kernel/model/render.go b/kernel/model/render.go index 34ce0b756..e864534b1 100644 --- a/kernel/model/render.go +++ b/kernel/model/render.go @@ -201,7 +201,20 @@ func resolveEmbedR(n *ast.Node, blockEmbedMode int, luteEngine *lute.Lute, resol if "d" == sqlBlock.Type { subTree, _ := LoadTreeByBlockID(sqlBlock.ID) md, _ = lute.FormatNodeSync(subTree.Root, luteEngine.ParseOptions, luteEngine.RenderOptions) - } // 标题块不需要再单独解析,直接使用 Markdown,函数开头处会处理 + } else if "h" == sqlBlock.Type { + subTree, _ := LoadTreeByBlockID(sqlBlock.ID) + h := treenode.GetNodeInTree(subTree, sqlBlock.ID) + var hChildren []*ast.Node + hChildren = append(hChildren, h) + hChildren = append(hChildren, treenode.HeadingChildren(h)...) + mdBuf := &bytes.Buffer{} + for _, hChild := range hChildren { + md, _ = lute.FormatNodeSync(hChild, luteEngine.ParseOptions, luteEngine.RenderOptions) + mdBuf.WriteString(md) + mdBuf.WriteString("\n\n") + } + md = mdBuf.String() + } buf := &bytes.Buffer{} lines := strings.Split(md, "\n")