VSCode Neovimでインサートモードからノーマルモードへ戻る際のキーバインディングを設定する方法です.
jj以外の設定に関しても解説しています.
背景
VSCode NeoVimでインサートモードからノーマルモードに戻る際のキーバインディング設定をするにはkeybindings.json
に設定を追記する必要があります.
keybindings.jsonに関して
VSCodeにおいてキーボードショートカットを定義したい場合に編集するファイルです.
開き方は以下のとおりです.
設定方法
Ctrl+Kでインサートモードからノーマルモードへ戻るように設定します.
以下の内容をkeybindings.json
に追記すればOKです.3
{
"key": "ctrl+k",
"command": "vscode-neovim.escape",
"when": "neovim.mode == insert && editorTextFocus",
},
ビジュアル > ノーマルもCtrl+Kとしたい場合は以下の設定も追記しましょう.
{
"key": "ctrl+k",
"command": "vscode-neovim.escape",
"when": "neovim.mode == visual && editorTextFocus",
},
追記場所がよくわからない方はこちらをクリック
keybindings.json
の全体像は以下のとおりです.
[
{
〜〜設定①〜〜
},
{
〜〜設定②〜〜
},
]
そのため,新たな設定を追記する場合は[]
内の一番下に追記しましょう.
今回のキーバインディングの設定を追記した例は以下のとおりです.
[
{
〜〜設定①〜〜
},
{
〜〜設定②〜〜
},
{
"key": "ctrl+k",
"command": "vscode-neovim.escape",
"when": "neovim.mode == insert && editorTextFocus",
},
]
ちなみに,コメントを入れたい場合は//
をつければコメントになります.
参考
定番?のjjを設定したい場合は以下の内容をkeybindings.json
に追記すればOKです.
{
"command": "vscode-neovim.compositeEscape1",
"key": "j",
"when": "neovim.mode == insert && editorTextFocus",
"args": "j"
}
ひとこと
インサートモードからノーマルモードへ戻る際のキーバインディングはjjが多いようですが,個人的にはCtrl+Kが楽でいい感じです.
またCtrl+Kにしておくとインサート > ノーマルの際に文字入力を自動で英字に切り替える設定もスムーズなのでおすすめです.
英字への切り替え設定は以下の記事で解説しているので興味のある方はぜひご覧ください.