Vimの閉じ括弧補完の王道と言えば次のような感じでしょうか?
inoremap { {}<LEFT>
inoremap ( ()<LEFT>
ワタクシも、しばらくこれで満足しておりました。
でもですよ。
以下の様なコードを書くとき、少しだけ煩わしい。
if (bool){
// any code
}
if (bool)
までは良いです。
その次の{
を入力したら}
が補完されて、[Enter]
キー押して、[Tab]
キー押して…
きぃぃ!これも補完したい!!
ということで、以下を.vimrc
に追記しましょう。
inoremap { {}<Left>
inoremap {<Enter> {}<Left><CR><ESC><S-o>
inoremap ( ()<ESC>i
inoremap (<Enter> ()<Left><CR><ESC><S-o>
ちなみに3行目の()<ESC>i
は、ワタクシがいつも叩いているキー。Vimmerっぽくない??
せっかくなので、みんなやってるGIFアニメを貼り付けてみましょう。
これでも、煩わしさを感じる時があるんですよね。
日本語入力している時とか、ペアコーディングで、ワタクシのVimに慣れていない人が()
と打ってしまった時とか。
それは、また次回のネタに。