如何扩展 Sublime 的语言语法理解以合并自定义语法?

How can I expand Sublime's language syntax understanding to incorporate custom syntax?

我知道这听起来很模糊。基本上我只是想让 Sublime 突出显示自定义语法(为文本着色),就像它在原生语法中所做的那样。

我正在使用 Sublime 编写 LaTeX 代码。对于那些不知道的人,LaTeX 方程通常用 \[ \] 括起来,例如

\[ E = m c^2 \]

Sublime 理解语法并适当地为封闭代码着色。

但是,我使用自定义命令 \eq{ ... },它包装了 \[ \] 功能(因此我可以通过重新定义 \eq 定义)。例如

\eq{ E = m c^2 }

除了基本的键绑定之外,我对 Sublime 的幕后一无所知。我想扩展 Sublime 对语法的理解以合并我的自定义命令,而不用浪费大量时间来研究教程等。

既然你主要对结果而不是推理感兴趣,我会尽量直截了当。

Sublime Text 的 LaTeX 语法将在发行版 3119 中更改,如果您想更改某些内容,我建议您使用它。 只需从 https://github.com/sublimehq/Packages 下载并将 LaTeX 文件夹放入该文件夹,当您在 Sublime Text 菜单中 select Preferences >> Browse Packages... 时打开该文件夹。 然后打开文件 LaTeX.sublime-syntax 并搜索 ensuremath (LaTeX.sublime-syntax#L498)。复制该部分 (缩进更高的所有内容) 并将命令更改为您想要的命令,例如在您的示例中,这将是 - match: '((\)eq)(\{)'.

此外,新语法删除了数学环境作为字符串的突出显示,因为这导致了几个问题。 我在 LaTeXTools wiki 中做了一个小条目来解释,你如何恢复高光。