当我使用vim编辑perl文件时,我收到了TODO和NOTE。我想禁用仅突出显示这些关键字。但是我不想编辑系统的vim语法插件文件。
换句话说,我想在perl插件处理完毕后,在用户的〜/ .vimrc中有选择地禁用语法高亮显示。
我尝试了一些事无济于事。
[1]:语法清除perlTodo
..添加到我的.vimrc。结果:抱怨perlTodo是未知的突出显示组名称。
[2]:语法清除perlTodo
..直接从编辑会话中运行。结果:不会抱怨未知的组名,但仍然会突出显示。
[3]:语法清除@perlTodo
..结果:'没有这样的群集'错误。
[4]:语法清楚Todo
..与[2]相同的结果
相关定义如下:
:syntax
...
perlTodo xxx contained TODO: NOTE: TBD TBD: NOTE FIXME: XXX FIXME XXX: TODO
links to Todo
答案 0 :(得分:0)
回答了我自己的问题。我应该使用的命令是“突出显示”。就我而言,它是......
:highlight clear Todo
答案 1 :(得分:0)
您的初始尝试进入了正确的方向,但是,通过将配置放入~/.vimrc
,您未能考虑语法的动态运行时加载。
至少对我来说,以下交互式输入时,以下内容在Perl缓冲区内工作:
:syntax clear perlTodo
(如果它不适合您,请安装SyntaxAttr.vim - Show syntax highlighting attributes of character under cursor插件进行故障排除并找到有问题的语法组名称。)
为了使每个打开的Perl文件都有效,这需要在官方Perl语法脚本之后执行。 Vim为此目录后有。因此,将上面的命令放入新文件~/.vim/after/syntax/perl.vim
。这应该做,并关闭仅用于Perl的TODO突出显示。
:highlight clear Todo
这个适用于你的~/.vimrc
;语法分析仍然有效,但您已关闭语法的突出显示。请注意,不仅perlTodo
链接到此,许多其他语法也执行此操作。如果需要,那很好,如果没有,请切换到上面的方法。