esc 時に ime を off にできないと戦闘力が半分以下になるので GPL3 な vrapper をいじってみた。
最新ブランチの資源(今は 0.14)をチェックアウト。
$ svn co https://vrapper.svn.sourceforge.net/svnroot/vrapper/branches/0.14 vrapper_0.14
eclipse を起動してプロジェクト作って、plugins/*.eclipse.* をビルドパスに通してコンパイル。
net.sourceforge.vrapper.vim.modes.InsertMode を編集
public boolean handleKey(KeyStroke stroke) { if (stroke.equals(key(SpecialKey.ESC))) { editorAdaptor.changeMode(NormalMode.NAME); // ↓追加 PlatformUI.getWorkbench() .getActiveWorkbenchWindow() .getShell().setImeInputMode(SWT.NULL); return true; } else if (!allowed(stroke)) {
jar を作るか、元あるものを解凍して該当の class だけ突っ込んで圧縮し直すかして置き換える。
mac だと動かないのは SWT が 64 bit をサポートしてないからあたりだと思うのだけど、調べるのに疲れたので終了。