Karabiner-Elementsで、Vimのノーマルモードに戻ると同時にIMEをオフにする
こんにちは、ごっちと言います。最近省電力でパフォーマンスの良いパソコンを探していて、M4 MacBook Airを購入し、破産しました。今までArch Linuxのデスクトップ環境にいたので慣れていませんが、Homebrewは便利ですね。AquaSKKとKarabiner-Elementsを使って、LinuxでやっていたSKKの設定を再現できたのでメモしておきます。
SKKとVimの組み合わせ
Vimでノーマルモードに戻るにはEscapeキーを押します。ノーマルモードではIMEが無効になっている必要があります。一方、かな英数でIMEを切り替えていると、ノーマルモードでIMEオンの状態になり、何も操作できない状態になりがちです。そのため、ノーマルモードへの遷移とIMEオフを(ほぼ)同時にやりたくなります。LinuxのFcitxではEscapeをIMEオフに割り当てることで実現していました。MacOSではKarabiner-Elementsを使う必要がありそうです。
Karabiner-Elementsの設定
以下の設定を読み込ませてください。お好みでEscapeキーを押しやすいCaps Lockとかに割り当てても良いでしょう。
json
{
"description": "日本語入力モードでEscapeを英数に変更する",
"manipulators": [
{
"conditions": [
{
"input_sources": [{ "language": "ja" }],
"type": "input_source_if"
}
],
"from": {
"key_code": "escape",
"modifiers": { "optional": ["any"] }
},
"to": [{ "key_code": "japanese_eisuu" }],
"type": "basic"
}
]
}
これで、日本語入力モードで一度目にEscapeを押すと英数に切り替わります。二度目に押すと普通のEscapeになり、ノーマルモードに戻ります。VimでEscapeを連打すればノーマルモードに戻るようにできました。ハッピー!