From 0bb0c68532e1c0ed4653f186b1d02c67b9254d20 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Fri, 16 Sep 2022 19:42:13 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E8=A1=8C=E7=BA=A7=E5=85=83?= =?UTF-8?q?=E7=B4=A0=E6=94=AF=E6=8C=81=E5=A4=9A=E9=87=8D=E6=A0=B7=E5=BC=8F?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=20https://github.com/siyuan-note/siyuan/issu?= =?UTF-8?q?es/2911?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/import.go | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/kernel/model/import.go b/kernel/model/import.go index 472c92b4e29..b6c65166845 100644 --- a/kernel/model/import.go +++ b/kernel/model/import.go @@ -124,12 +124,17 @@ func ImportSY(zipPath, boxID, toPath string) (err error) { if !entering { return ast.WalkContinue } - if ast.NodeBlockRefID == n.Type { - newDefID := blockIDs[n.TokensStr()] + if treenode.IsBlockRef(n) { + defID, _, _ := treenode.GetBlockRef(n) + newDefID := blockIDs[defID] if "" != newDefID { - n.Tokens = []byte(newDefID) - } else { - logging.LogWarnf("not found def [" + n.TokensStr() + "]") + if ast.NodeBlockRef == n.Type { + if id := n.ChildByType(ast.NodeBlockRefID); nil != id { + id.Tokens = []byte(newDefID) + } + } else { + n.TextMarkBlockRefID = newDefID + } } } else if ast.NodeBlockQueryEmbedScript == n.Type { for oldID, newID := range blockIDs {