当我在vim中点击/
并搜索$
时,它会突出显示所有内容。但是当我尝试将它们与syntax match
匹配时,它似乎不起作用。
function! ConcealNonText()
set conceallevel=1
set concealcursor=v
syntax match NonText /$/ conceal cchar=¶
endfunction
augroup ConcealNonText
autocmd!
autocmd VimEnter * call ConcealNonText()
augroup END
任何提示如何匹配它以显示eols作为隐藏的字符?
我知道我可以使用set list listchars
,但我认为这有一些visual side effects。
答案 0 :(得分:1)
看起来您的要求是显示¶
代替eol。虽然你给出的代码可能是一个可能的解决方案,但它肯定不是一个理想的解决方案。 Vim提供了一种更简单的方法来实现您的愿望。你真正需要做的是查找:h listchars
。
以下是您应该在vimrc中实现所需内容的示例:
set list
set listchars+=eol:¶
一旦你把它,vim将显示eol角色的角色¶
。
答案 1 :(得分:0)
要做你想做的事,你可以matchadd()
来匹配所有行的结尾。 Matchadd将返回一个ID,可以帮助您在需要时删除给定的匹配项。
:call matchadd("NonText", "$")
有关如何使用它的更多信息,请参阅:he matchadd()
。
HTH