[英]HTML syntax highlighting in javascript strings in vim
我不知道这是否可行/合理,但我很想知道我是否可以在javascript文件中使用html突出显示我的字符串。 我发现php中的字符串可能有SQL语法高亮,所以我相信它是可能的。
但是,我不知道vim脚本,所以对此的任何帮助表示赞赏。
我正在使用Better Javascript语法 。
PS:如果在编辑js文件时可以选择打开和关闭它,那就太棒了
谢谢
是的,如果你不介意一些语法文件黑客攻击,这是可能的。 首先,您需要在Javascript语法文件中包含HTML语法文件 - 请参阅:help syn-include
获取有关该信息的信息; 第二,你需要声明可以在某些元素(即字符串)中找到HTML语法。 第三,如果您想要启用和禁用它,您可以使这些命令依赖于全局变量,并编写一些设置或取消设置变量的映射,然后重新加载语法文件。
有关包含如何工作的示例,请查看syntax/html.vim
(包括Javascript和CSS语法文件), syntax/perl.vim
(包括POD语法文件)或php.vim
(包括SQL语法)在字符串中突出显示,以全球可变的为条件)。
编辑:在我的副本中做了一些实际的事情 。
在syntax/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
@javaScriptHTML
contained=
列表中。
最后你必须编辑syntax/html.vim
以防止它尝试包含syntax/javascript.vim
如果它是从 javascript加载的:找到读取的行
if main_syntax != 'java' || exists("java_javascript")
并将其更改为
if main_syntax != 'javascript' && ( main_syntax != 'java' || exists("java_javascript")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.