0

我有使用 java 代码块的文件,是否可以在语法文件中告诉 vim 导入java.vim整个区域的语法文件?

例子:

syn region javaCode start="<Java>" end="</Java>" 
hi link javaCode source ????
4

1 回答 1

2

最简单的就是

:set syntax=java

并专注于Java部分。但是,如果您想在自己的语法文件中覆盖 Java 语法,这:syntax region是可行的方法。:help :syn-include有详细信息:

:syntax include @Java syntax/java.vim
:syntax region myJava start="<java>" end="</java>" contains=@Java

PS:由于命令很复杂(但在包含另一种语法的语法脚本中没关系)并且难以记住,我编写了SyntaxRange 插件以使设置此类区域更容易。对于您的示例,它将是这样的调用:

:call SyntaxRange#Include('<java>', '</java>', 'java', 'NonText')

该插件适用于偶尔的临时使用。如果您编写自己的语法脚本,我会避免这种依赖并直接使用上面的语法命令。

于 2013-01-24T12:38:36.830 回答