## 概要
- https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/issues/177
- [[Custom searches]]ではなく[[バックリンク]]専用ダイアログを作る
- 出現箇所の数だけ候補を出す
- [[Custom searches]]だと1ファイルの最初の箇所しか出ない
- 出現箇所周囲の本文を出す
- [[Custom searches]]だとファイル名しか出ない
## 事前調査
- [x] 出現箇所のインデックス化ができるか?
- [x] 出現箇所周辺の本文を取得できるか?
### 出現箇所のインデックス化ができるか?
`app.metadataCache.getBacklinksForFile(app.workspace.getActiveFile())` で可能。
データ構造は以下
- data:
- ファイルのrootからの相対パス: Array<[[LinkCache (Obsidian)|LinkCache]]>
インデックスとしてのデータ構造は...
- ファイルのパス
- 出現するオフセット (移動用)
- 出現する行の文字列 (表示用)
> [!info]
> 出現する行の文字列はトリミングできるとなお良いが、今はそこまで求めない。
### 出現箇所周辺の本文を取得できるか?
`app.vault.cacheRead(File)`からoffsetやlineを使えばいけそう。