Vim の :map- を試してみた

7.3.1261 で という機能が追加されたんですが、よくわかってなかったので試してみた。

nnoremap qq :echo "qq"<CR>
autocmd FileType hoge nnoremap <buffer> q :echo "q"<CR>


さて、上のようなマッピングをしている場合、filetype=hoge では qq と q にマッピングがされている為、q を押した場合に入力待ちが発生します。
この時に「filetype=hoge では qq を使わないので q を押した場合に入力待ちをしてほしくない」と思うことがあります。
こういう場合に を利用する事ができます。

nnoremap qq :echo "qq"<CR>
" q では入力待ちを行わない
autocmd FileType hoge nnoremap <nowait><buffer> q :echo "q"<CR>


これで入力待ちを行うことなく q を入力することができます。
ただし、 を使用した場合 qq を入力することはできなくなるので注意してください。