如何在gvim中以不同方式对CSS的ID和类进行着色

时间:2011-03-09 06:14:38

标签: vim

我使用gvim和vim并且Just Love it。但是,我有一个宠儿小便。我希望CSS文件中的#id.class颜色不同,目前#value.value颜色相同。

我想在gvim和vim中使ids和类的语法颜色不同,以便我得到关于类和id的视觉反馈。怎么做到这一点?

3 个答案:

答案 0 :(得分:6)

将此命令添加到.vimrc:
:hi link cssClassName Type

为什么会这样:

首先,您需要找到您正在使用的项目的语法组名称 您可以将光标放在要突出显示语法的区域上,然后运行命令:
:echo synIDattr(synID(line("."), col("."), 1), "name")

您应分别获得cssIdentifiercssClassName #id{...}.class{...}

然后,您可以使用:highlight cssIdentifier:highlight cssClassName查看他们与哪些高光组相关联。您可以使用:highlight查看整个精彩集。

默认情况下,这些都链接到Function。最好的解决方案可能是将cssClassName链接到Type语法组。你应该可以使用任何colorscheme,它仍然可以工作:
:hi link cssClassName Type

如果将其添加到.vimrc,vim将使用此链接而不是css语法文件中定义的链接。

答案 1 :(得分:2)

如果你正在谈论CSS那么

对于id

#value {
  color:red ; // or and hex value that you prefer
}

为班级

.value {
  color : blue;
}

在编辑问题后添加

您需要修改~/vim/colors

下的配色方案文件

* 步骤*

  1. /vim/colors下找到配置文件(对于windows,其中vim的安装位置),它的扩展名为vim
  2. 将以下行添加到文件末尾并保存(进行备份
  3. syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"

    syn match cssClass "\.[A-Za-z][A-Za-z0-9_-]\{0,\}"

    hi cssIdentifier guifg=#FF9900 gui=none

    hi cssClass guifg=#FF0000 gui=none

    在vim中输入:colorscheme filename

    如果一切顺利,#id的颜色将为橙色,而.id红色的颜色为

答案 2 :(得分:2)

转到 .vim / syntax / css.vim 你会看到这些线条:


252: HiLink cssIdentifier Function
and
279: HiLink cssClassName Function
您可以将要突出显示的任何一个更改为文件该部分中的其他类型之一。 例如:

252: HiLink cssIdentifier Constant
and
279: HiLink cssClassName Function
只要两者不同。