Vimのプラグインであるsurround.vimを使っていますが,デフォルトでは日本語の括弧に対応していないので,設定で追加する方法を調べました.
とりあえず 「」【】()<>{}
にだけ追加した設定が以下です.
.vimrc
""""""""""""""""""""""""""""""
"""" vim-surround {
" add japanese surrounds
let g:surround_{char2nr("「")} = "「 \r 」"
let g:surround_{char2nr("」")} = "「\r」"
let g:surround_{char2nr("【")} = "【 \r 】"
let g:surround_{char2nr("】")} = "【\r】"
let g:surround_{char2nr("(")} = "( \r )"
let g:surround_{char2nr(")")} = "(\r)"
let g:surround_{char2nr("<")} = "< \r >"
let g:surround_{char2nr(">")} = "<\r>"
let g:surround_{char2nr("{")} = "{ \r }"
let g:surround_{char2nr("}")} = "{\r}"
"""" }
""""""""""""""""""""""""""""""
カスタマイズした分は yss(
などで括弧を追加することはできますが, cs(<
での入れ替えなど,他のオペレーションには対応していないようです.詳しくは :help surround-customizing
でドキュメントが参照できます.
と,ここまで書いたあとで以下のような記事を見つけたので,こちらで紹介されているvim-operator-surroundもいつか試してみたいと思います.