扩展现有的tmLanguage文件

Tom*_*eus 3 sublimetext sublimetext3 tmlanguage

我正在使用Sublime Text 3,在这种情况下编辑LaTeX.为了进一步自定义语法高亮,我想定义一个新的范围,只是扩展了发货 LaTeX.tmLanguage(我没有访问权限,甚至没有阅读).NB我没有兴趣编写我自己的tmLanguage文件,甚至没有下载现有文件,我只是想扩展它,就像在Python中重载类一样.

特别是我想添加meta.footnote.latex一个自定义语法高亮\footnote{...}(我在https://github.com/bradrobertson/sublime-packages/blob/master/LaTeX/LaTeX.tmLanguage中找到的一个定义)

idl*_*erg 5

您可以使用include伪指令从其他文件导入现有规则,并覆盖或扩展其规则.

.tmLanguage:

<dict>
    <key>fileTypes</key>
    <array>
        <string>mylatex</string>
    </array>
    <key>name</key>
    <string>MyLatex</string>
    <key>patterns</key>
    <array>
        <dict>
            <key>include</key>
            <string>text.tex.latex</string>
        </dict>
        <!-- your rules -->
    </array>
    <key>scopeName</key>
    <string>text.tex.latex.mylatex</string>
</dict>
Run Code Online (Sandbox Code Playgroud)

.sublime语法:

%YAML 1.2
---
name: MyLatex
file_extensions:
  - mylatex
scope: text.tex.latex.mylatex
contexts:
  main:
    - include: scope:text.tex.latex
    # your rules
Run Code Online (Sandbox Code Playgroud)