[vim]CrLfをハイライトする

改行コード混ざってるんだけど <CR> <LF> みたいに表示できないのかなーという話があって、それは無理だけどハイライト(またはアンダーライン)表示するだけなら簡単にできるし、多分それだけでも助かると思うのでやってみた。

結構簡単にできました。

ちなみに fileformat=unix にしておけば CrLf は ^M で表示されるから、まぁそれでもいいような気はする。

.vimrc の colorscheme 設定の前に

augroup highlightCrLf
  autocmd!
  autocmd ColorScheme * highlight CrLf term=underline ctermbg=DarkGreen guibg=DarkGreen
  autocmd VimEnter,WinEnter,BufWinEnter,BufNew * match CrLf /\r\n/
augroup END

こんな感じで書いておけば CrLf がハイライト (端末などでハイライトできない場合はアンダーライン) される。

内容は私もきちんと説明できないのでわからなかったらとりあえずコピペしておくといいよ。
autocmd はまだ勉強中。 VimEnter と WinEnter と BufWinEnter と BufNew でだいたい OK なはず。

match の / / で挟まれているところの中身を書き換えることでハイライトの対象が変えられるから色々応用可能。

スポンサーリンク

フォローする

スポンサーリンク