Merge branch 'aidenlx-master'
This commit is contained in:
@@ -17,6 +17,20 @@ import type { Query } from './query'
|
|||||||
let minisearchInstance: MiniSearch<IndexedNote>
|
let minisearchInstance: MiniSearch<IndexedNote>
|
||||||
let indexedNotes: Record<string, IndexedNote> = {}
|
let indexedNotes: Record<string, IndexedNote> = {}
|
||||||
|
|
||||||
|
const chsPattern = /[\u4e00-\u9fa5]/
|
||||||
|
|
||||||
|
const tokenize = (text: string): string[] => {
|
||||||
|
const tokens = text.split(SPACE_OR_PUNCTUATION)
|
||||||
|
const chsSegmenter = (app as any).plugins.plugins['cm-chs-patch']
|
||||||
|
|
||||||
|
if (chsSegmenter) {
|
||||||
|
return tokens.flatMap(word =>
|
||||||
|
chsPattern.test(word) ? chsSegmenter.cut(word) : [word],
|
||||||
|
)
|
||||||
|
}
|
||||||
|
else return tokens
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initializes the MiniSearch instance,
|
* Initializes the MiniSearch instance,
|
||||||
* and adds all the notes to the index
|
* and adds all the notes to the index
|
||||||
@@ -24,7 +38,7 @@ let indexedNotes: Record<string, IndexedNote> = {}
|
|||||||
export async function initGlobalSearchIndex(): Promise<void> {
|
export async function initGlobalSearchIndex(): Promise<void> {
|
||||||
indexedNotes = {}
|
indexedNotes = {}
|
||||||
minisearchInstance = new MiniSearch({
|
minisearchInstance = new MiniSearch({
|
||||||
tokenize: text => text.split(SPACE_OR_PUNCTUATION),
|
tokenize,
|
||||||
idField: 'path',
|
idField: 'path',
|
||||||
fields: ['basename', 'content', 'headings1', 'headings2', 'headings3'],
|
fields: ['basename', 'content', 'headings1', 'headings2', 'headings3'],
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user