ほぼ日刊サービス開発日誌

React, firebase, 機械学習など

sponsored

imapとnoremapとmap - vim

https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ2Qdr2LimhUHSRyqSm58WzfeyJO3EpN_iwibJb_GUVnqbZQ3vZ8w

新しいMacを買ったらescキーがなかったので、Control + jにescキーを割り当てることにしました。

vimrcにうろ覚えで

imap <C-j> <esc>

と書いてもうまく行きませんでした。 インザートモードの時に、Control + j つまり<C-j>を押すとノーマルモードに戻るのですが、

ビジュアルモードの時に、<C-j>を押してもノーマルモードに戻らないのです。

imapではなく、map, ないし, noremap とする必要がありました。

両者の違いは、

  • map: 既存キーマッピングに従う。
  • noremap: デフォルトのvimのキーマッピングに従う。

ということがあります。

キーに任意のキーを割り当てることはあり得ませんので

この場合noremapがベターです。

 noremap <C-j> <esc>