如何让Vim HTML语法高亮显示整个标记的颜色?

时间:2017-01-18 17:54:55

标签: html vim phpstorm syntax-highlighting color-scheme

作为一名PhpStorm粉丝,当我尝试使用Vim时遇到的许多令人失望的事情之一是它在HTML中进行语法高亮的糟糕方式:

enter image description here

出于某种原因,Vim坚持只标记标记名和属性,并保留<,/和>用不同的颜色。这是什么意思?与我在PhpStorm中获得的可爱视图相比,我发现这个hella令人分心:

enter image description here

(忽略不同的配色方案。)我发现用所有这些<读取代码要困难得多。和>坚持在我的眼里。谁能告诉我如何调整Vim来做到这一点?

我使用了Vim的monokai配色方案。

2 个答案:

答案 0 :(得分:2)

您无需修改​​HTML语法本身 - 这可以通过覆盖默认链接来完成。 syntax/html.vim为各种HTML元素定义了语法组,并且(在脚本的末尾)然后链接那些突出显示组 >,其外观由您的 colorscheme 决定。如果您建立了一个不同的链接(在您的~/.vimrc中),则会受到尊重。因此,要使整个标记看起来像标记名称,请使用:

highlight link htmlTag htmlTagName
highlight link htmlEndTag htmlTagName

答案 1 :(得分:1)

syntax/html.vim中制作~/.vim/syntax/html.vim的本地副本(其中第一个文件名是您的系统安装目录)。

尝试更改htmlTaghtmlTagEnd的hilight组(位于语法文件底部附近)以匹配htmlTagName的hilight组。我喜欢默认设置,因此我只对几个文件进行了实验,但它似乎没有破坏任何东西。作为相同的颜色,不应该再将它们贴在你的受体锥体上。

如此简单的测试,这可能会在某个地方破坏某些东西,而且你可能不得不花几分钟时间与其他的hilight小组一起来获得一致的外观。