在Sublime Text 3中,忽略CDATA标签的语法高亮



我经常使用Sublime Text编辑vQmod代码。对于那些不知道的人,vQmod是一个动态搜索/替换应用程序,它使用XML动态修改OpenCart中的核心文件。搜索位置和要添加的代码通常都包含在CDATA标记中。可以理解的是,所有语法高亮规则都将CDATA标记中的任何内容视为没有应用语言规则的纯文本块。但在这种情况下,其中包含的代码可以是HTML, PHP, JavaScript或内联CSS。

是否有一种方法可以修改语法高亮显示规则,以便CDATA标签中包含的文本仍将被评估为代码?

下面是一个例子:

<operation>
    <search position="after"><![CDATA[public function index()]]></search>
    <add><![CDATA[
        $data['examples'] = $this->model_extension_extension->getExamples();
    ]]>
    </add>
</operation>

<search>代码不太重要,但我将<add><![CDATA[]]></add>中的任何代码都识别为php。有时候这些代码是非常长的代码块,在这里有适当的语法高亮显示会很有帮助。

我遇到了这个问题以及整个CDATA部分是我的HTML。我的解决方法是使用语法类型SCALA打开文档。RUBY也可以,但我认为SCALA更适合。

最新更新