vim中多种文件类型的不同背景色


10

处理多种文件类型(即:set ft=html.php)的文件时,vim中是否可能具有不同的背景颜色(即一亮一暗)?在嵌入HTML的PHP​​代码中,很难在数十条HTML行中看到一个PHP语句,请参见下文。我会解决所有问题,无论是不同的bg颜色,空白处的标记,第二个左边距(一个vim插件都将其用作标记),<?php例如突出显示标记(尽管这不理想)

HTML代码中的PHP

编辑:我认为这在语法级别上是不可能的,因为语法似乎使用了数量有限的元素(字符串,函数,标识符...)。毫无疑问,这允许与colorchemes轻松集成。SyntaxAttr是一个很好的插件来演示这一点。将其放在代码的任何部分上,它将告诉您它属于哪个语法组。


可能您可以使用与本博文stackoverflow.com/questions/4167425/…中相同的解决方案,在该博文中他们创建自定义配色方案,以突出显示以sql_开头的任何字符串。

1
我去看看,如果我能得到它的检测之间的区域?><?非PHP。
2012年

Answers:


1

另一个可能的解决方案是自定义您喜欢的colorcheme文件,以检查“背景”的设置。许多人以一种或另一种方式设置“背景”设置,但是可以检查它以更改突出显示的颜色。

颜色方案示例


" Search
if &background=="dark"
  hi IncSearch    gui=UNDERLINE guifg= ctermfg=
else " background is light
  hi IncSearch    gui=UNDERLINE guifg= ctermfg=
fi


有没有办法检查单词/字符的语言?即如果它是HTML v PHP?
puk 2012年

取决于。您可以检查特定单词的提示类型。而且,如果可以区分HTML和PHP,您就会知道。但是我认为这是最好的选择,而无需进行很多额外的工作。使用类似以下的内容来获取突出显示类型::echo synIDattr(synID(line(“。”),col(“。”),1),“ name”)
pottsdl 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.