我经常使用 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。有时这些是非常长的块代码,并且在此处突出显示正确的语法确实会有所帮助。