Vim Advent Calendar 2013 : Vim のインサートモードで を の代替にしてはいけない

この記事は Vim Advent Calendar 2013 37日目の記事になります。
早くも明日以降のスケジュールが真っ白です。書きたい人は今のうちですよ!


今回のネタは、わたしも Vim を使い始めた頃に指摘されたのですが、たまに間違って使用している方を見かけるので書いてみます。


さて、 といえばインサートモードを抜けてノーマルモードに戻るという Vim に取って重要キーになります。
しかし、キーボードによっては キーは非常に遠いです。


そこで、 と同じようにノーマルモードへと戻る の代替と使用する人をたまに見かけるのですが、これは間違っています。
なぜなら の場合は InsertLeave が発生しないからです。
InsertLeave はインサートモードを抜けるときに発生する autocmd になります。
この InsertLeave はプラグイン等で利用されているのですが、 を使用すると利用しているプラグイン正しく動作しなくなる可能性があります。


もし、 が遠くて押しづらいと感じるのであれば ではなくて を使用するとよいでしょう。
とは違い と同等のキーになります。
また、次のようにして任意のキーに マッピングするというのもよいと思います。

" j の二度押しでノーマルモードへ戻る
inoremap jj <Esc>