ゆず日記

戦う Vimmer 兼 Dvorakユーザ 兼 Kinesisユーザ 兼 おぺらー が戦わないブログ

Vim / MacVim の Esc 代替キーのお話。

正式タイトル: Vim (iTerm2 を併用) での Esc 代替キーと、 MacVim (Karabiner を併用) での Esc 代替キーのお話。

代替キー

自分は Esc の代替キーとして Command + . を利用している

理由

  • Terminal.app の Command + . が Vim 上では Esc として代用可能なのでそれに慣れてた
  • Ctrl + [ に比べ, ホームポジションから近い

f:id:Yuzuemon:20141015034126p:plain

Dvorak 配列では、緑枠の "U" がホームボジションキー

Vim (iTerm2)

f:id:Yuzuemon:20141015034247p:plain

Profiles > Keys から、Command + . に 0x03(Esc) を割り当てる

MacVim (Karabiner)

Karabiner (keyremap4macbook) の private.xml を以下の様に設定する。 Karabiner の KeyCode は Qwerty 基準になっているのに注意。

<?xml version="1.0"?>
<root>
  <appdef>
    <appname>MacVim</appname>
    <equal>org.vim.MacVim</equal>
  </appdef>

  <item>
    <name>Change Left Command + E to Escape on MacVim</name>
    <identifier>private.app_macvim_change_left_command_and_e_to_esc</identifier>
    <only>MacVim</only>
    <autogen>
      __KeyToKey__
      KeyCode::E, ModifierFlag::COMMAND_L,
      KeyCode::ESCAPE
    </autogen>
  </item>
</root>

Reload XMLして該当設定にチェックを入れるだけ。

出来ました。

Karabiner はお好みで他のキーバインドも設定するといいですね。