VSCode ファイルツリーをVim風に移動するショートカット

VSCode ファイルツリーをVim風に移動するショートカット

VSCodeのエクスプローラー(ディレクトリツリー)をVim風に移動するためのショートカットの設定例です。

エクスプローラー(ディレクトリツリー)のショートカット

VimではNERDTree等のファイラーを使用していると、ファイルツリーをjkで移動できます。
VSCodeでも様々なナビゲーション方法が用意されていますが、やりたい事はjkで移動したいだけなんです。

カスタムキーボードショートカット

後述の設定を記載することで、以下のショートカット操作が可能になります。

ショートカット 操作
j フォーカスを下へ
k フォーカスを上へ
h ディレクトリを閉じる
l ディレクトリを開く
Ctrl+w l エクスプローラーから1つ目のエディタへフォーカス移動
Ctrk+w k ターミナルから1つ目のエディタへフォーカス移動(おまけ)

settings.json

VSCode標準のナビゲーションが有効になっていると、カスタムキーバインドよりも優先されてしまうためオフにします。

{
  "workbench.list.automaticKeyboardNavigation": false
}

keybindings.json

    // エクスプローラー
    {
        "key": "j",
        "command": "list.focusDown",
        "when": "listFocus && !inputFocus"
    },
    {
        "key": "k",
        "command": "list.focusUp",
        "when": "listFocus && !inputFocus"
    },
    {
        "key": "h",
        "command": "list.collapse",
        "when": "listFocus && !inputFocus"
    },
    {
        "key": "l",
        "command": "list.select",
        "when": "listFocus && !inputFocus"
    },
    {
        "key": "ctrl+w l",
        "command": "workbench.action.focusFirstEditorGroup",
        "when": "listFocus && !inputFocus"
    },
    // ターミナル
    {
        "key": "ctrl+w k",
        "command": "workbench.action.focusFirstEditorGroup",
        "when": "terminalFocus"
    }
}

プログラミングカテゴリの最新記事