## indexingItems - 今まではノータッチ - Backlink Searchかどうかにかかわらずindexingはしてたぽい - パフォーマンス劣化の心配はなさそう - Backlink Searchの場合も使えたらGOOD - `this.ignoredItems` がキモ ## _getSuggestions - `this.ignoredItems`は同じように使っている - backlinkのときは `createBacklinksMap` が走るのが違いくらい? - 時間はそんなにボトルネックにならなそう (今もそうだし) `stampMatchResults`の引数を変える必要がありそう。 `backlink以外` ```ts stampMatchResults( x, qs, this.command.searchBy.tag, this.command.searchBy.header, this.command.searchBy.link, this.settings.normalizeAccentsAndDiacritics ) ``` `backlink` ```ts stampMatchResults( x, qs, false, false, false, this.settings.normalizeAccentsAndDiacritics ) ``` となっているので... `backlink以外`にあわせる。問題もなさそう。 というかbacklinkもsort考慮するから、処理を共通化したほうがいいな... backlinkMapの有無だけが違う。 - [ ] それすらもあらかじめ作っておいていいかも? ## 変更前 ```ts // ✨ If I can use MetadataCache.getBacklinksForFile, I would like to use it instead of original createBacklinksMap :) const backlinksMap = this.appHelper.createBacklinksMap(); const items = this.ignoredItems .filter((x) => backlinksMap[activeFilePath]?.has(x.file.path)) .map((x) => stampMatchResults( x, qs, false, false, false, this.settings.normalizeAccentsAndDiacritics ) ) .filter((x) => x.matchResults.every((x) => x.type !== "not found")) .slice(0, this.settings.maxNumberOfSuggestions); this.showDebugLog(() => buildLogMessage(`Get suggestions: ${query}`, performance.now() - start) ); return items.map((x, order) => ({ ...x, order })); ```