Sublime Text Snippets 仅适用于 LaTeX

Sublime Text Snippets 仅适用于 LaTeX

如果我想为 Sublime Text 编写一些新的键绑定,这些键绑定只能在 LaTeX 文件中工作(例如输入_^在另一个字符后自动添加周围的花括号),我到底该怎么做?我不太了解这些键绑定文件的语法。

答案1

好的。我想我已经搞明白了。现在它可以工作,但我还没有真正尝试找到它表现错误的情况。也许有人可以验证一下。

对于我上面给出的例子,以下键绑定有效。但我不确定我是否完全理解了。

[
    { "keys": ["_"], "command": "insert_snippet", "args": {"contents": "_{$1}$0"}, 
    "context":  
        [
            { "key": "selector", "operator": "equal", "operand": "text.tex.latex string.other.math"},
            { "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
            { "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true }
        ]
    }
]

答案2

如果您使用代码片段(即 .sublime-snippet 扩展),则可以将指令放在代码片段文件的范围标签内,例如

<scope>text.tex.latex</scope>

这意味着该代码片段仅适用于 LaTeX。

这些文件是 XML 格式的,因此如果要使用它们,您需要学习其语法。

.sublime-keymap 文件也是 XML。我不知道它们是否以相同的方式与范围一起工作。

相关内容