Vim:タブ、スペース、改行を可視化する方法

white Vim Tips

タブ、スペース、改行を可視化する方法

vimrc に以下のコードを追加します。

set list
set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<

set list により可視化が有効になり listchars で可視化で使用する文字を指定できます。

ヘルプでは以下のように説明されています。

                                                        lcs-eol
eol:文字      行末の表示に使われる文字。指定されないと、行末には何も
表示されない。
lcs-tab
tab:2文字     タブ文字の表示に使われる文字。1文字目は1回だけ使われる。
2文字目はタブが通常占めるだけの空白を埋めるまで繰り返
し表示される。
“tab:>-” とすると、タブが4文字の設定では “>—” となる。
指定されないと、タブは ^I と表示される。
lcs-space
space:文字    スペースの表示に使われる文字。指定されないと、スペース
は空白のまま。
lcs-trail
trail:文字    行末のスペースの表示に使われる文字。指定されないと、行
末のスペースは空白のまま。行末のスペースでは “space”
の設定を上書きする。
lcs-extends
extends:文字  ‘wrap’ がオフで、行が画面の右端よりも伸びているときに、
最終列に表示される文字。
lcs-precedes
precedes:文字 ‘wrap’ がオフで、最前列で表示されている最初の文字より
前にテキストが存在するとき {訳注: 上の行の末尾が画面の
右端より伸びているとき} に、最前列に表示される文字。
lcs-conceal
conceal:文字  ‘conceallevel’ が 1 のときに Conceal されたテキストの
代わりに表示される文字。
lcs-nbsp
nbsp:文字     ノーブレークスペース文字 (0xA0 (10進数では160) や
U+202F) の表示に使われる文字。指定されない場合は空白の
まま。{訳注: 0xA0はLatin1で改行なしスペースを表す}