我找不到一种方法来让Vim将所有空格显示为一个字符。我找到的只是制表符、尾随空格等。


当前回答

突出显示搜索

:set hlsearch 

在.vimrc中

搜索空格制表符和回车符

/ \|\t\|\r

或搜索所有空白字符

/\s

搜索所有非空白字符(不显示空白字符,因此可以看到单词之间的空白字符,但不能看到尾随的空白字符)

/\S

显示所有尾随空格字符-在行的末尾

/\s$

其他回答

:set列表将以字符形式显示所有空白。除了一个空间之外,其他所有的东西看起来都会不同于它的正常状态,这意味着如果你仍然看到一个普通的旧空间,那真的是一个普通旧空间。:)

把这个添加到我的.vimrc中对我很有用。只要确保你没有其他冲突。。

autocmd VimEnter * :syn match space /\s/
autocmd VimEnter * :hi space ctermbg=lightgray ctermfg=black guibg=lightgray guifg=black

你可以使用

:set list

真正看到一条线的结构。您将显式地看到制表符和换行符。当你看到空白时,它真的是空白。

我没有从现有的答案中找到我想要的。下面的代码将突出显示所有的尾部空格亮红色

highlight ExtraWhitespace ctermbg=red guibg=red
match ExtraWhitespace /\s\+$/
autocmd BufWinEnter * match ExtraWhitespace /\s\+$/
autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@<!$/
autocmd InsertLeave * match ExtraWhitespace /\s\+$/
autocmd BufWinLeave * call clearmatches()
:se list
:se nolist

:se足够了,不需要:set。