## 背景
[[Neovim]]で[[PKM]]するとき、[[telescope.nvim]]の機能で検索をしている。しかし、[[obsidian.nvim]]にも[[Quick switcher]]のような機能があり、そちらの方が機能が優れているのであればそちらを使いたい。そのために調査する。
## 必要な機能
| 機能 | 必須レベル | obsidian.nvim |
| ------------------- | ------- | ------------- |
| ファイルをファイル名で検索 | 必須 | できる |
| ファイルをエイリアスで検索 | できれば欲しい | **できない** |
| ファイルをフロントマターで検索 | どちらでも良い | **できない** |
| ファイルをリンクとして挿入 | できれば欲しい | できる |
| ファイルを垂直に分割して開く | 必須 | できる |
| ファイルを水平に分割して開く | できれば欲しい | できる |
| 存在しないファイルを入力クエリ名で生成 | どちらでも良い | できる |
> [!note]
> pickerは[[telescope.nvim]]を利用。
エイリアスとフロントマターは使えないが、存在しないファイルを作成したりリンク挿入できるのは大きなメリット。また分割や[[クイックフィックスリスト (Vim)|quickfix list]]など[[telescope.nvim]]が備える機能をそのまま使えるのも大きい。
## obsidian.nvimに追加した設定
```lua
require("obsidian").setup({
picker = {
note_mappings = {
new = "<F11>", -- Shift + Enter
insert_link = "<M-CR>",
},
tag_mappings = {
tag_note = "<F11>", -- Shift + Enter
insert_tag = "<M-CR>",
},
}
})
vim.keymap.set("n", "<C-j>e", ":ObsidianQuickSwitch<CR>", { silent = true })
```
> [!note]
> [[AutoHotkey]]でターミナルのときだけ`<F11>`に`Shift+Enter`を割り当てている。
これで[[🦉Another Quick Switcher]]の操作感に多少近くなった。他に改善したい部分が見つかった場合は、直接ソースコードを修正してもよい。