ottijp blog

surround.vimで日本語の括弧を挿入する

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もいつか試してみたいと思います.

Vimで日本語を編集するいくつかの方法 - Qiita


ottijp
都内でアプリケーションエンジニアをしています
© 2026, ottijp