VSCode:エディタ間移動のkeybindings
コード編集中は、よく参照用などにエディタを分割して行ったり来たりする。
エディタ間の移動を、Ctrl+w
をプレフィックスにしたVim風キーバインドにしてみたのでメモ。
参考:
デフォルトでは、Ctrl+[1-9]で1~9番目のエディタグループに移動できます。
設定
Ctrl+w c
: 編集中のエディタを閉じるCtrl+w s
: エディタを縦に分割Ctrl+w v
: エディタを横に分割Ctrl+w n/p
: 次/前のエディタに移動Ctrl+w h/l
: 左/右のエディタに移動Ctrl+w j/k
: 下/上のエディタに移動Ctrl+w </>
: エディタサイズを縮小/拡大
最後のエディタサイズの拡縮は、左右分割&先頭グループ以外でやると、不等号の向きとウインドウの動きが一致しないのでちょっと気持ち悪い。先頭グループ以外で押すことは少ないので目をつぶる。
{
// [ctrl+w -> c] close active editor.
{
"key": "ctrl+w",
"command": "-workbench.action.closeWindow",
},
{
"key": "ctrl+w",
"command": "-workbench.action.closeActiveEditor"
},
{
"key": "ctrl+w",
"command": "-workbench.action.closeGroup",
},
{
"key": "ctrl+w c",
"command": "workbench.action.closeActiveEditor",
"when": "editorFocus",
},
// [ctrl+w -> s/v] split editor.
{
"key": "ctrl+w s",
"command": "workbench.action.splitEditorDown",
"when": "editorFocus",
},
{
"key": "ctrl+w v",
"command": "workbench.action.splitEditorRight",
"when": "editorFocus",
},
// [ctrl+w -> n/p/h/j/k/l] move editor.
{
"key": "ctrl+w n",
"command": "workbench.action.focusNextGroup",
"when": "editorFocus",
},
{
"key": "ctrl+w p",
"command": "workbench.action.focusPreviousGroup",
"when": "editorFocus",
},
{
"key": "ctrl+w h",
"command": "workbench.action.focusLeftGroup",
"when": "editorFocus",
},
{
"key": "ctrl+w j",
"command": "workbench.action.focusBelowGroup",
"when": "editorFocus",
},
{
"key": "ctrl+w k",
"command": "workbench.action.focusAboveGroup",
"when": "editorFocus",
},
{
"key": "ctrl+w l",
"command": "workbench.action.focusRightGroup",
"when": "editorFocus",
},
// [ctrl+w -> </>] resize editor.
{
"key": "ctrl+w shift+[Period]",
"command": "workbench.action.increaseViewSize",
"when": "editorFocus",
},
{
"key": "ctrl+w shift+[Comma]",
"command": "workbench.action.decreaseViewSize",
"when": "editorFocus",
},
}
おまけ
エディタ切り替えの挙動と、サイドバーからエディタに戻りにくいので以下も追加。
Ctrl+Tab
: すべてのエディタの一覧を表示(もともとはアクティブグループのみ、かつ手を離したら一覧が消える)Escape
: サイドバー操作中にEscでエディタに戻る
{
// [ctrl+tab] show editor list in all group.
{
"key": "ctrl+tab",
"command": "workbench.action.showAllEditors",
},
// [esc] move move to editor when sidebar is focus.
{
"key": "Escape",
"command": "workbench.action.focusActiveEditorGroup",
"when": "sideBarVisible",
},
}
参考:
デフォルトでは、各サイドバーのショートカットをもう一度押すとエディタに戻れます。
(Ctrl+Shift+E
(Explorerに移動) -> Ctrl+Shift+E
(エディタに戻る))
コメント
コメントを投稿