From b75a46a228c4d7bf73f3c7b867b30d720eb8d9e0 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Thu, 16 Feb 2023 13:43:53 +0800 Subject: [PATCH] =?UTF-8?q?:zap:=20=E6=94=B9=E8=BF=9B=E6=89=93=E5=BC=80?= =?UTF-8?q?=E8=99=9A=E6=8B=9F=E5=BC=95=E7=94=A8=E5=90=8E=E5=8A=A0=E8=BD=BD?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E7=9A=84=E6=80=A7=E8=83=BD=20https://github.?= =?UTF-8?q?com/siyuan-note/siyuan/issues/7378?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/virutalref.go | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/kernel/model/virutalref.go b/kernel/model/virutalref.go index e51858ce1..4e5cb6f40 100644 --- a/kernel/model/virutalref.go +++ b/kernel/model/virutalref.go @@ -54,20 +54,19 @@ func getBlockVirtualRefKeywords(root *ast.Node) (ret []string) { return ast.WalkContinue }) content := buf.String() - putBlockVirtualRefKeywords(content, root.ID, root.IALAttr("title")) + ret = putBlockVirtualRefKeywords(content, root.ID, root.IALAttr("title")) return } ret = val.([]string) return } -func putBlockVirtualRefKeywords(blockContent, blockID, docTitle string) { +func putBlockVirtualRefKeywords(blockContent, blockID, docTitle string) (ret []string) { keywords := getVirtualRefKeywords(docTitle) if 1 > len(keywords) { return } - var hitKeywords []string contentTmp := blockContent if !Conf.Search.CaseSensitive { contentTmp = strings.ToLower(blockContent) @@ -79,16 +78,17 @@ func putBlockVirtualRefKeywords(blockContent, blockID, docTitle string) { } if strings.Contains(contentTmp, keywordTmp) { - hitKeywords = append(hitKeywords, keyword) + ret = append(ret, keyword) } } - if 1 > len(hitKeywords) { + if 1 > len(ret) { return } - hitKeywords = gulu.Str.RemoveDuplicatedElem(hitKeywords) - virtualBlockRefCache.Set(blockID, hitKeywords, 1) + ret = gulu.Str.RemoveDuplicatedElem(ret) + virtualBlockRefCache.Set(blockID, ret, 1) + return } func CacheVirtualBlockRefJob() {