无论文件类型如何,我都试图在vim中突出显示尾随空格。
我能够在每个文件类型的基础上完成它。例如,对于HTML:
〜/的.vim /文件类型插件/ html.vim
color html
〜/的.vim /语法/ html.vim
syn match TrailingSpace display excludenl /\s\+$/
〜/的.vim /颜色/ html.vim
hi TrailingSpace ctermbg=52
的〜/ .vimrc
syntax on
filetype on
filetype plugin on
这些设置使得线条末尾的尾随空格以红色背景突出显示。 (它们也覆盖了vim的所有内置HTML语法和突出显示,但我对此很好。)
麻烦的是,如果我想对JavaScript做同样的事情,我必须在该文件中添加相同的syn
和hi
行,以此类推其他所有文件类型。
我希望能够做的是这两行:
syn match TrailingSpace display excludenl /\s\+$/
hi TrailingSpace ctermbg=52
只在我的.vim
目录结构中的一个位置,并将它们应用于所有文件类型。
我已尝试将其添加到.vimrc
,我已尝试将其添加到~/.vim/plugin/settings.vim
,但这也无效。
我添加到hi
的其他~/.vim/plugin/settings.vim
行普遍适用,但仅适用于内置的vim语法项,例如MatchParen
和IncSearch
。
是否有任何文件可以添加上面的两行,它会起作用?我可以拆分它们并将它们放在单独的文件中,但理想情况下,我不需要在其他任何地方添加任何内容。
答案 0 :(得分:3)
以下是我对完全相同问题的解决方案:
autocmd BufEnter,WinEnter * call matchadd("Error", "\\s\\+$", -1)
我从相同的“语法”方法开始,但最终我面临的问题与您现在面临的问题相同,而且没有简单的解决方案。
这就是它的样子: