irb viキーバインド

irb viキーバインド

irbをviキーバインドにしてみました。

ついでにShellもviキーバインドになって最高です。

設定変更

以下の設定を追加して、再度ログインするとShell、irbがviキーバインドになります。(readline設定)

~/.inputrc

set editing-mode vi
set keymap vi-insert
set show-mode-in-prompt on
#補完大文字小文字無視
set completion-ignore-case on

ESCキーマップ変更

inputrcにvi-movement-modeを設定すると、ターミナルからではescのショートカットが反映されるんですが、irbには反映されないようです。

karabinerでショートカット作っておきましょう。

vim、inputrc個別に設定不要になります。)

key_code、mandatoryは好きなキー配置を記載してください。

~/.config/karabiner/assets/complex_modifications/escape-vim.json

{
  "title": "escape [left_control + j]",
  "rules": [
    {
      "description": "escape [left_control + j]",
      "manipulators": [
        {
          "from": {
            "key_code": "j",
            "modifiers": {
              "mandatory": [
                "left_control"
              ]
            }
          },
          "to": [
            {
              "key_code": "escape"
            }
          ],
          "type": "basic"
        }
      ]
    }
  ]
}

保存して、karabiner→Add ruleでファイル名が表示されているので、Enableで完成です。