🔦

Vimで全角スペースその他不可視文字をハイライトする設定

2021/10/22に公開

「全角スペースの表示」は何番煎じかわかりませんが、複数種類に対応しているものがパッと見つからなかったので書きました。

コード

.vimrcinit.vimに記述してください。

全角スペース以外の特殊スペースもハイライトします。上記で対応していないtabなどはlistcharsで可視化できます。
上記では色をdarkmagentaにしていますが、カラースキームによっては見づらいかもしれませんので、お好みで設定してください。


表示例

追記
これを書いたときにはNeovimで試していたのですが、Vimで実行したらうまく動作しませんでした。
参考欄に載せているVim hackを参考に、VimEnter,WinEnterとColorSchemeの2つのイベントを使うのが良さそうです。

augroup extra-whitespace
  autocmd VimEnter,WinEnter * call matchadd('ExtraWhitespace', "[\u00A0\u2000-\u200B\u3000]")
  autocmd ColorScheme * highlight default ExtraWhitespace ctermbg=darkmagenta guibg=darkmagenta
augroup END

参考

https://vim-jp.org/vim-users-jp/2009/07/12/Hack-40.html
https://ja.wikipedia.org/wiki/スペース#コンピュータにおけるスペース
https://pata2.jp/127/stylesheets/css_others/whitespace_character.html

Discussion