JISキーボード限定の話。
こんなハックをしなくても簡単にできる方法がきっとあるに違いないと思うとQiitaに書くのも気が引けるけれど、でもとりあえず動くの大事だし他の似たような事をしたい人の参考になるかもと思ってメモを晒す
やりたいこと
Terminalでは ¥ キーで \ が打てるんだけど、Atomでは option-¥ しないと \ が打てない。
プログラミングしてるとこれが不便で。optionキーとか押したくない。
Google日本語入力の設定では、「¥キーで入力する文字」は 「バックスラッシュ()」に設定している(はず)。
(はず)というのは、macOS sierraにしてからというもの、入力ソースの切り替えは可能なものの、切り替えがメニューに反映されず、Google日本語入力の設定画面に滅多にお目にかかれないから。環境設定>キーボード、の入力ソース追加(+)・削除(ー)も効かないし、sierraのキーボード回りはどうも呪われている。
解決策
Atomのkeymapをいじる。
~/.atom/keymap.cson
'atom-text-editor':
'¥': 'custom:insert-backslash'
~/.atom/init.coffee
atom.commands.add 'atom-text-editor',
'custom:insert-backslash': (event) ->
editor = @getModel()
editor.insertText('\\')
とりあえずこれで解決できたんだけど(要・Atom再起動)
keymap.cson は cmd-option-ctrl-R で再読込されるけど、init.coffee は再起動しないとダメ、だったかな。
参考文献
- Keymaps In-Depth - Atom Flight Manual
- Have a custom keystroke insert a Unicode char in Atom - StackOverflow ←ここの例では cmd-\ で λ を入力できるようにしている