HTML语法在VIM的JavaScript字符串突出(HTML syntax highlightin

2019-07-19 08:14发布

我不知道这是可能的/合理的,但我很好奇,想知道如果我能有我的JavaScript文件字符串有HTML高亮。 我发现,在PHP字符串可以有SQL语法高亮,所以我相信这是可能的。

但是,我不知道VIM脚本,所以有这方面的帮助表示赞赏。

我现在用的是更好的JavaScript语法 。

PS:如果有可能是一个选项,将其打开和关闭,而编辑js文件,那将是美好的

谢谢

Answer 1:

是的,这是可能的,如果你不介意的一些语法文件的黑客。 首先,你需要包括从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

然后加入@javaScriptHTMLcontained=名单javaScriptStringDjavaScriptStringS

最后,你必须编辑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 syntax highlighting in javascript strings in vim