🎨 改进虚拟引用和反链提及搜索分词 Fix https://github.com/siyuan-note/siyuan/issues/6176

This commit is contained in:
Liang Ding 2022-10-14 22:32:13 +08:00
parent 19e2bd2ab8
commit 591089429f
No known key found for this signature in database
GPG key ID: 136F30F901A2231D

View file

@ -647,6 +647,7 @@ func markReplaceSpan(text string, keywords []string, replacementStart, replaceme
continue
}
var hitKeywords []string
for _, k := range keywords {
tmpPart := part
tmpK := k
@ -658,19 +659,22 @@ func markReplaceSpan(text string, keywords []string, replacementStart, replaceme
if gulu.Str.IsASCII(tmpK) {
if gulu.Str.IsASCII(tmpPart) {
if tmpPart == tmpK {
parts[i] = replacementStart + part + replacementEnd
hitKeywords = append(hitKeywords, k)
}
} else {
if strings.Contains(tmpPart, tmpK) {
parts[i] = search.EncloseHighlighting(part, []string{k}, replacementStart, replacementEnd, Conf.Search.CaseSensitive)
hitKeywords = append(hitKeywords, k)
}
}
} else {
if strings.Contains(tmpPart, tmpK) {
parts[i] = search.EncloseHighlighting(part, []string{k}, replacementStart, replacementEnd, Conf.Search.CaseSensitive)
hitKeywords = append(hitKeywords, k)
}
}
}
if 0 < len(hitKeywords) {
parts[i] = search.EncloseHighlighting(part, hitKeywords, replacementStart, replacementEnd, Conf.Search.CaseSensitive)
}
}
return strings.Join(parts, " ")
}