🙈
vscode neovim 必須級キーバインド4選
vscode neovimを使っている人向けです
基本的にはvscodeのコマンドをvimっぽく呼び出してる感じ
vscode neovimを使う上で必須級のキーバインドを4つ紹介しようと思います。
- jjでインサートモードからエスケープ
- 定義ジャンプ
- バック(NavigationBack)
- ホバー
設定はkeybindings.jsonに記入していきます
jjでインサートモードからエスケープ
これはvimを使っている人なら欠かせません
公式のREADMEから引用しています
ただ、挙動がおかしくなるときもあるので改善策があったらコメントお願いします!!
keybindings.json
{
"command": "vscode-neovim.compositeEscape1",
"key": "j",
"when": "neovim.mode == insert && editorTextFocus",
"args": "j"
},
定義ジャンプ
みんな大好き定義ジャンプ
keybindings.json
{
"key": "space d",
"command": "editor.action.goToDeclaration",
"when": "neovim.mode == normal && editorTextFocus",
},
バック
定義ジャンプする前の場所に戻れます
keybindings.json
{
"key": "space b",
"command": "workbench.action.navigateBack",
"when": "neovim.mode == normal && editorTextFocus",
},
ホバー
keybindings.json
{
"key": "space h",
"command": "editor.action.showHover",
"when": "neovim.mode == normal && editorTextFocus",
},
おまけ
cmd+sでファイル保存しているとカーソル下の文字が消えることがあったので、space sにファイル保存を割り当てちゃいました
keybindings.json
{
"key": "space s",
"command": "workbench.action.files.save",
"when": "neovim.mode == normal && editorTextFocus",
},
最後に
すべてまとめたものを貼っておきます
keybindings.json
[
{
"command": "vscode-neovim.compositeEscape1",
"key": "j",
"when": "neovim.mode == insert && editorTextFocus",
"args": "j"
},
{
"key": "space d",
"command": "editor.action.goToDeclaration",
"when": "neovim.mode == normal && editorTextFocus",
},
{
"key": "space b",
"command": "workbench.action.navigateBack",
"when": "neovim.mode == normal && editorTextFocus",
},
{
"key": "space h",
"command": "editor.action.showHover",
"when": "neovim.mode == normal && editorTextFocus",
},
{
"key": "space s",
"command": "workbench.action.files.save",
"when": "neovim.mode == normal && editorTextFocus",
},
]
Discussion