i remember nothing

文章の練習も兼ねています

Karabiner-Elements で Vim 用に Esc キーを押すと英数入力モードに切り替わるよう設定する

背景

  • 現在の MacOS Sierra では Karabiner が動きません。公式でも、 Karabiner-Elements を使うよう推奨されています。
  • また、この記事を書いている時点では Complex Modification (単一のキーを単一のキーにリマップする以外の、より複雑なリマップ機能)は Karabiner Elements の設定画面の GUI からは編集できません。
  • Vim で日本語入力からNORMAL MODEに抜けて英数入力に切り替えて諸々操作するのは面倒
    • Google IME の設定でうまいことできるらしいので Google IME を使っている人はそちらを調べるといいと思います

やり方

~/.config/karabiner/karabiner.json が Karabiner-Elements の設定ファイルになっています。

profiles:rules 以下に、下記の設定を追加する。

                
{
                        "description": "esc キーを単体で押したときに、入力モードを英数にする",
                        "manipulators": [
                            {
                                "from": {
                                    "key_code": "escape",
                                    "modifiers": {
                                        "optional": [
                                            "any"
                                        ]
                                    }
                                },
                                "to": [
                                    {
                                        "key_code": "escape"
                                    }
                                ],
                                "to_if_alone": [
                                    {
                                        "key_code": "japanese_eisuu"
                                    }
                                ],
                                "type": "basic"
                            }
                        ]
}
            

japanese_eisuu は単押しのときのみ(to_if_alone)入力されるようにしておかないと無限ループしてしまうので気をつけてください。

escape キーを escape + japanese_eisuu にリマップしています。 japanese_eisuu は JIS キーボードにあるあれですね。