nano
2つの状況でスペース(タブとスペース)を実際に強調表示する便利な構文強調機能があります。 (1)スペースが最後の文字であるか、行の先頭で、その間にスペース以外の文字がない場合、(2)ファイルはショッピングリストなどのプレーンテキストではないソースコードです。でこの動作をどのように模倣できますかvim
?
ベストアンサー1
私はshowとtrailを使用して、set list
オプションのファイル形式に対してこのような条件を使用できます。set listchars
.vimrc
tabs
white spaces
if !(&filetype == "txt")
set list " show special characters
set listchars=tab:→\ ,trail:·,nbsp:·
endif
したがって、これらの文字がある場合、私のファイルは次のようになります。
function someFunc() { // no trailing spaces here
→ var a = "hola"; // 3 trailing spaces.···
alert(a); // this line starts with spaces instead of tab
// next a line with 4 white spaces and nothing else
····
// next a line with a couple tabs
→ →
}
注:·
いいえ.
編集する
したがって、あなたのコメントに答えるには、に加えてこれを行うことができます~/.vimrc
。必ずカラースキームの後に追加してくださいhi clear
。それ以外の場合は削除されます。
if !(&filetype == "txt")
highlight WhiteSpaces ctermbg=green guibg=#55aa55
match WhiteSpaces /\s\+$/
endif
強調表示色を変更し、必要に応じて正規表現を絞り込むことができます。/\s\+$/
これら2つの文字のうちの1つだけを含む末尾のスペースまたはタブと行に一致します。タブとスペースのみを含む行のみを強調表示したい場合に使用します/^\s\+$/
。