Atomでのキー設定の変更は、keymap.cson
を編集することで行う。
[File]→[Keymap…]から開かれるkeymap.cson
に、以下の形式(CSON)で記述する。
'キーマップが適用されるコンテキスト': 'キーストローク': 'コマンド' 'キーストローク': 'コマンド' ...
同じコンテキストを2箇所以上に分けて記述してはいけない。1箇所にまとめて記述する。
コンテキストやコマンドはAtomやパッケージで決められた特定の文字列でないといけないが、それはSettings→Keybindingsで確認できる。
vim-modeのノーマルモードとヴィジュアルモードで、c
に上移動をマッピングしたければ以下のようになる。
'atom-text-editor.vim-mode:not(.insert-mode)': 'c': 'vim-mode:move-up'
基本的に同一のキーストロークに関しては、ユーザのkeymap.csonが優先され、上書きされる
ただし、何らかのパッケージで「A」「B」と順に入力するキーストロークが登録され、ユーザが「A」のみのキーストロークを登録すると、「A」だけ入力した時にタイムラグ(0.5秒ほど?)が生じる。続けての入力がないことを確認するためだろう。
ユーザが登録したいキーストロークが、他で、より長いキーストロークの最初の部分として登録されてしまっている場合、(そして長いキーストロークの方は使わない場合)解除する必要がある。
'バッティングを防ぎたいコンテキスト': '長い方のキーストローク': 'unset!'