📝
VS Code環境設定 - キーバインド
はじめに
Visual Studio Code(VS Code) のキーバインドを設定します。
Extensions
Emacs のキーバインドに慣れ切っているため、以下の拡張機能をインストールします。
これをベースに個々のキーバインドを変更していきます。
- Awesome Emacs Keymap
- Extension Id:
tuttieee.emacs-mcx
- Extension Id:
Settings
以下のメニューです。
File
-> Preferences
-> Settings
変更内容
- Extensions
- Awesome Emacs Keymap (emacs-mcx) configuration
-
Kill Whole Line
- チェック
-
Use Meta Prefix Ctrl Left Bracket
- チェック
- これをチェックしておけば
Ctrl-[ x
でコマンドパレットを呼び出せるようになります(esc
を押すのは煩わしいので)
-
- Awesome Emacs Keymap (emacs-mcx) configuration
Keyboard Shortcuts
以下のメニューです。
File
-> Preferences
-> Keyboard Shortcuts
変更内容
- Command:
editor.action.revealDefinition
- Keybinding
-
Ctrl-[ =
に変更
-
- Keybinding
- Command:
editor.action.goToReferences
- Keybinding
-
Ctrl-[ Shift-=
に変更
-
- Keybinding
- Command:
workbench.action.focusNextGroup
- Keybinding
-
Ctrl-t
に変更
-
- Keybinding
因みにマルチカーソルでカーソルを追加するのは以下のコマンド。
- Command:
editor.action.insertCursorAbove
- Keybinding
Ctrl-Shift-UpArrow
- Keybinding
- Command:
editor.action.insertCursorBelow
- Keybinding
Ctrl-Shift-DownArrow
- Keybinding
Chromebook だと Alt-UpArrow
が PageUp
、 Alt-DownArrow
が PageDown
になるからこのキーバインドになっているのだと思われる。
変更したキーバインドが記録される設定ファイルは ~/.config/Code/User/keybindings.json
です。
keybindings.json
// Place your key bindings in this file to override the defaultsauto[]
[
{
"key": "ctrl+[ =",
"command": "editor.action.revealDefinition",
"when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor"
},
{
"key": "f12",
"command": "-editor.action.revealDefinition",
"when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor"
},
{
"key": "ctrl+[ shift+=",
"command": "editor.action.goToReferences",
"when": "editorHasReferenceProvider && editorTextFocus && !inReferenceSearchEditor && !isInEmbeddedEditor"
},
{
"key": "shift+f12",
"command": "-editor.action.goToReferences",
"when": "editorHasReferenceProvider && editorTextFocus && !inReferenceSearchEditor && !isInEmbeddedEditor"
},
{
"key": "ctrl+t",
"command": "workbench.action.focusNextGroup"
},
{
"key": "ctrl+t",
"command": "-workbench.action.showAllSymbols"
}
]
メニューからでなく設定ファイルの JSON を直接編集してキーバインドを変更することも可能です。
おわりに
ひとまずキーバインドは以上です。
Discussion