目次

Keymap

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!'

参考