在哪里可以找到用于语法突出显示的 tm-themes 所有可能键的列表?

Where can I find a list of all possible keys for tm-themes for syntax highlighting?

在我当前的文本编辑器的 tmTheme 文件中有许多选项,包括下面代码中的选项。是否有某个列表定义了所有可能包含在此列表中的标签(例如 backgroundinactiveSelectionfindHighlight 等)?

<dict>

<key>background</key>
<string>#1a1a1a</string>

<key>caret</key>
<string>#B6ECF9AF</string>

<key>foreground</key>
<string>#ecf0f1</string>

<key>invisibles</key>
<string>#F3FFB51A</string>

<key>lineHighlight</key>
<string>#2a2a2a</string>

<key>selection</key>
<string>#e74c3c55</string>

<key>selectionForeground</key>
<string>#ffffff</string>

<key>findHighlight</key>
<string>#e74c3c</string>

<key>inactiveSelection</key>
<string>#e74c3c77</string>

<key>gutter</key>
<string>#2a2a2a</string>

<key>gutterForeground</key>
<string>#ffffff</string>

<key>guide</key>
<string>#222222</string>

<key>activeGuide</key>
<string>#ffffff</string>

</dict>

另一个带有更多标签的例子:Other Theme

如果相关,我正在使用 VSCode。

tmLanguage 范围名称基于约定,因此没有确定的列表。 this TextMate 手册页底部的“命名约定”部分相当全面。

您还可以查看 VSCode 的默认主题突出显示的范围,例如 dark_plus.json and dark_vs.json(前者基于 / 包含)。

最后,从 VSCode 1.9.0 开始,有一个内置命令可以检查 tmLanguage 范围 (Developer: Inspect Editor Tokens and Scopes)。它将为您提供大量有关光标位置处的令牌如何限定范围/突出显示的信息:

还有一个 Scope Info 扩展,它做的事情非常相似,但在悬停时(我个人更喜欢 usability-wise)。但是,它只列出范围名称,不包括 VSCode 的 built-in 检查员拥有的任何附加信息。