hasen's tech life

Twitter: @hasen

Vimで,括弧の内側にカーソルを自動で移動する

.vimrcに下記のように書いておくと,Vimで,括弧などのセットになった文字列を書いた時に,セットの内側に,カーソルを自動で移動してくれる.

# カーソルを自動的に括弧の中へ
$ vi .vimrc 
++ imap () ()<Left>             
++ imap {} {}<Left>             
++ imap <Left>             
++ imap <> <><Left>             
++ imap '' ''<Left>             
++ imap "" ""<Left>             
++ imap `` ``<Left>             
++ imap ** **<Left>             
++ imap %% %%<Left>             
++ imap ?? ??<Left>
 

但し,どこからか文字列をコピペした時にも,入力値として等価に処理され,上手くペーストできなくなる.
この場合,コマンドラインモードで,下記の入力をしてからペーストする.
:set paste

再び,上記の.vimrcの設定を有効にするには,ペースト後,コマンドラインモードで,下記の入力をする.
:set nopaste