From 6fea7e5fa5da5065b485d905eed7ad04bb55fee5 Mon Sep 17 00:00:00 2001 From: Daniel <845765@qq.com> Date: Mon, 28 Oct 2024 17:29:02 +0800 Subject: [PATCH] :art: Improve parsing `` when importing markdown https://github.com/siyuan-note/siyuan/issues/12956 --- kernel/model/import.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/kernel/model/import.go b/kernel/model/import.go index d892012d8..3cf553648 100644 --- a/kernel/model/import.go +++ b/kernel/model/import.go @@ -1066,7 +1066,16 @@ func imgHtmlBlock2InlineImg(tree *parse.Tree) { } if ast.NodeHTMLBlock == n.Type { - htmlNodes, pErr := html.ParseFragment(bytes.NewReader(n.Tokens), &html.Node{Type: html.ElementNode}) + tokens := bytes.TrimSpace(n.Tokens) + if bytes.HasPrefix(tokens, []byte("
")) { + tokens = bytes.TrimPrefix(tokens, []byte("
")) + } + if bytes.HasSuffix(tokens, []byte("
")) { + tokens = bytes.TrimSuffix(tokens, []byte("
")) + } + tokens = bytes.TrimSpace(tokens) + + htmlNodes, pErr := html.ParseFragment(bytes.NewReader(tokens), &html.Node{Type: html.ElementNode}) if nil != pErr { logging.LogErrorf("parse html block [%s] failed: %s", n.Tokens, pErr) return ast.WalkContinue