微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Vim中嵌入语法高压

我有一个自定义XML文件格式,它可以包含某些标签中的代码块.

例如:

<Root>
    <sql> select * from foo </sql>
    <MoreJunk> ... </MoreJunk>
    <Python><![CDATA[
    def Bar(*args):
        return False
    ]]></Python>
</Root>

如何让Vim对< sql>中的文本使用sql语法高亮显示.标签,并使用Python< Python>中的文本Python.标签

我知道Vim可以这样做,因为它正确地突出了HTML文件中的Javascript.

我尝试检查HTML语法文件,但无法弄清楚.

对于您使用python示例的XML,您必须执行以下操作:
runtime! Syntax/xml.vim
unlet b:current_Syntax
Syntax include @Python Syntax/python.vim
Syntax region pythonCode  start=+<Python>+ keepend end=+/</Python>+  contains=@Python

这些行将包括XML语法和Python语法,并指定一个python区域,其中VIM将使用Python语法而不是XML语法…

当然,这一切都在VIM中有很好的记录.见:他:syn-include如何包括语法文件.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐