在vim中的javascript字符串中突出显示HTML语法

前端之家收集整理的这篇文章主要介绍了在vim中的javascript字符串中突出显示HTML语法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我不知道这是否可行/合理,但我很想知道我是否可以在javascript文件中使用html突出显示我的字符串.我发现PHP中的字符串可能有sql语法高亮,所以我相信它是可能的.

但是,我不知道vim脚本,所以对此的任何帮助表示赞赏.

我正在使用Better Javascript syntax.

PS:如果在编辑js文件时可以选择打开和关闭它,那就太棒了

谢谢

最佳答案
是的,如果你不介意一些语法文件黑客攻击,这是可能的.首先,您需要在Javascript语法文件中包含HTML语法文件 – 请参阅:help syn-include获取有关该信息的信息;第二,你需要声明可以在某些元素(即字符串)中找到HTML语法.第三,如果您想要启用和禁用它,您可以使这些命令依赖于全局变量,并编写一些设置或取消设置变量的映射,然后重新加载语法文件.

有关包含如何工作的示例,请查看Syntax / html.vim(包括Javascript和CSS语法文件),Syntax / perl.vim(包括POD语法文件)或PHP.vim(包括sql语法)在字符串中突出显示,以全球可变的为条件).

编辑:在我的副本中做了一些实际的事情.

在语法/ javascript.vim的头部,在syn case ignore下面,添加

syn include @javaScriptHTML Syntax/html.vim
unlet b:current_Syntax
syn spell default " HTML enables spell-checking globally,turn it off

然后将@javaScriptHTML添加到javaScriptStringD和javaScriptStringS的contains =列表中.

最后你必须编辑Syntax / html.vim以防止它尝试包含Syntax / javascript.vim,如果它是从javascript加载的:找到读取的行

if main_Syntax != 'java' || exists("java_javascript")

并将其更改为

if main_Syntax != 'javascript' && ( main_Syntax != 'java' || exists("java_javascript")

猜你在找的HTML相关文章