VimのLeaderについてinVScode
みなさん、vim使っていますか
使ってください
はじめに
vim の Leader という機能について紹介します。
Leader とは
簡単に言うと任意のコマンドを呼び出すためのショートカットのようなものです。
Leader として設定されているキー(デフォルトは \ )を押した後に、設定したキーを押すことで設定したコマンドを呼び出すことができるようになります。
例えば、Leader キーが Space に設定されており、Leader + l で g + t と設定されていた場合
<Space>lと入力するとgtが呼び出されます。
さて、この Leader のメリットとして、コマンドの割り当ての自由度が高まるというものです。
大量にある vim コマンドでは自分なりにキーバインドを入れ替えたり上書きしたりしていると、意図せずに既に割り当たっている機能を知らずに潰してしまったり諦めなければならなくなったり、なんて事態が起きてしまいます。
それが防げます。
あと単純に打ちやすいキーを Leader を挟むことで競合なしに使えるようになります。
Leader を設定する
今回は Leader キーは Space に割り当てます。
Space が最もメジャーな割り当てだと言っても過言ではないですが、自分が押しやすいキーを設定しましょう。
settings.json に
code:settings.json
"vim.leader": "<Space>",
を買い込みます。
これで Leader を設定できます。
あとはこの Leader を使ってキーバインドを設定していきます
同じく settings.json に
code:settings.json
"vim.normalModeKeyBindings": [
{
},
],
こうすると
<Space>lと入力するとgtが呼び出されます。
また、vscode 側のコマンドも呼び出せます。
code: settings.json
"vim.normalModeKeyBindings": [
}
こんな感じに <Space> + c でコメントアウトすることができるようになります。
普通のキーバインドとしても恐らく vscode のコマンドは呼び出せると思うのですが、明らかに競合することになって大変なことになると思うので Leader で設定することをおすすめします。
vim いいですよ、使ってください。