外观
Sublime Text 提供了一个默认命令来注释和取消注释代码行。此命令可以使用元数据文件为任何类型的文件启用。
注释标记是使用元数据文件定义的。但是,由于注释标记的元数据通常由包需要,因此为了方便起见,在本页中单独讨论。
与常规元数据文件一样,注释元数据文件具有 .tmPreferences 扩展名并使用属性列表格式。文件名被 Sublime Text 忽略。
.tmPreferences
另请参阅
元数据 关于元数据的详细文档。
让我们看一个注释元数据文件的简单示例
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>name</key> <string>Miscellaneous</string> <key>scope</key> <string>source.python</string> <key>settings</key> <dict> <key>shellVariables</key> <array> <dict> <key>name</key> <string>TM_COMMENT_START</string> <key>value</key> <string># </string> </dict> </array> </dict> </dict> </plist>
在示例中,我们突出显示了一些特定于注释元数据文件的部分。
所有注释元数据文件共享相同的顶层结构,该结构继承自属性列表格式
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> ... </dict> </plist>
这些是注释元数据文件中所有有效的元素
name : 可选。 元数据的名称。被 Sublime Text 忽略。
name
<key>name</key> <string>Shell Variables</string>
scope : 必需。 逗号分隔的范围选择器列表,用于确定元数据应在哪个上下文中处于活动状态。
scope
在大多数情况下,您将使用特定语法的基本范围。
<key>scope</key> <string>source.python</string>
settings : 必需。 设置的容器。
settings
<key>settings</key> <dict> ... </dict>
uuid : 可选。 文件的唯一标识符。被 Sublime Text 忽略。
uuid
<key>uuid</key> <string>BC062860-3346-4D3B-8421-C5543F83D11F</string>
shellVariables : 必需。注释标记的容器。
shellVariables
<key>shellVariables</key> <array> ... </array>
注意
shellVariables 数组可能包含任何任意子元素,但这里我们只关心与注释相关的子元素。有关详细信息,请参阅 Shell 变量。
TM_COMMENT_START : 必需。 定义默认注释标记。
TM_COMMENT_START
要定义其他注释标记,请将它们命名为 TM_COMMENT_START_2、TM_COMMENT_START_3 等。
TM_COMMENT_START_2
TM_COMMENT_START_3
<dict> <key>name</key> <string>TM_COMMENT_START</string> <key>value</key> <string># </string> </dict>
TM_COMMENT_END : 可选。 定义结束注释标记。如果省略,TM_COMMENT_START 将被视为行注释标记。
TM_COMMENT_END
如果存在并且可以找到相应的开始注释标记,则该对将被视为块注释标记。
要定义其他结束注释标记,请将它们命名为 TM_COMMENT_END_2、TM_COMMENT_END_3 等。
TM_COMMENT_END_2
TM_COMMENT_END_3
<dict> <key>name</key> <string>TM_COMMENT_END_2</string> <key>value</key> <string>*/</string> </dict>
TM_COMMENT_DISABLE_INDENT : 可选。 有效值为 yes 和 no。禁用 TM_COMMENT_START 标记的缩进。
TM_COMMENT_DISABLE_INDENT
yes
no
要定位其他组的标记,请使用 TM_COMMENT_DISABLE_INDENT_2 等。
TM_COMMENT_DISABLE_INDENT_2
<dict> <key>name</key> <string>TM_COMMENT_DISABLE_INDENT</string> <key>value</key> <string>yes</string> </dict>
这是一个使用一些刚刚讨论的功能的注释元数据文件的更完整的示例
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>name</key> <string>Comments</string> <key>scope</key> <string>source.c</string> <key>settings</key> <dict> <key>shellVariables</key> <array> <dict> <key>name</key> <string>TM_COMMENT_START</string> <key>value</key> <string>// </string> </dict> <dict> <key>name</key> <string>TM_COMMENT_START_2</string> <key>value</key> <string>/*</string> </dict> <dict> <key>name</key> <string>TM_COMMENT_END_2</string> <key>value</key> <string>*/</string> </dict> </array> </dict> </dict> </plist>
一旦定义了注释元数据,您就可以使用标准的快捷键来注释和取消注释代码行。
要将快捷键绑定到首选不同的注释变体,例如 TM_COMMENT_START_3,请在您的 Default.sublime-keymap 中向 toggle_comment 命令添加一个 variant 参数。
Default.sublime-keymap
toggle_comment
variant
{"keys":["ctrl+forward_slash"], "command":"toggle_comment","args":{"block":true, "variant":3}},
注释
Sublime Text 提供了一个默认命令来注释和取消注释代码行。此命令可以使用元数据文件为任何类型的文件启用。
文件格式
注释标记是使用元数据文件定义的。但是,由于注释标记的元数据通常由包需要,因此为了方便起见,在本页中单独讨论。
与常规元数据文件一样,注释元数据文件具有
.tmPreferences
扩展名并使用属性列表格式。文件名被 Sublime Text 忽略。另请参阅
元数据 关于元数据的详细文档。
示例
让我们看一个注释元数据文件的简单示例
在示例中,我们突出显示了一些特定于注释元数据文件的部分。
注释元数据文件的结构
所有注释元数据文件共享相同的顶层结构,该结构继承自属性列表格式
这些是注释元数据文件中所有有效的元素
name
: 可选。 元数据的名称。被 Sublime Text 忽略。scope
: 必需。 逗号分隔的范围选择器列表,用于确定元数据应在哪个上下文中处于活动状态。在大多数情况下,您将使用特定语法的基本范围。
settings
: 必需。 设置的容器。uuid
: 可选。 文件的唯一标识符。被 Sublime Text 忽略。settings
子元素 shellVariables
: 必需。注释标记的容器。shellVariables
子元素 注意
shellVariables
数组可能包含任何任意子元素,但这里我们只关心与注释相关的子元素。有关详细信息,请参阅 Shell 变量。TM_COMMENT_START
: 必需。 定义默认注释标记。要定义其他注释标记,请将它们命名为
TM_COMMENT_START_2
、TM_COMMENT_START_3
等。TM_COMMENT_END
: 可选。 定义结束注释标记。如果省略,TM_COMMENT_START
将被视为行注释标记。如果存在并且可以找到相应的开始注释标记,则该对将被视为块注释标记。
要定义其他结束注释标记,请将它们命名为
TM_COMMENT_END_2
、TM_COMMENT_END_3
等。TM_COMMENT_DISABLE_INDENT
: 可选。 有效值为yes
和no
。禁用TM_COMMENT_START
标记的缩进。要定位其他组的标记,请使用
TM_COMMENT_DISABLE_INDENT_2
等。示例
这是一个使用一些刚刚讨论的功能的注释元数据文件的更完整的示例
相关键盘快捷键
一旦定义了注释元数据,您就可以使用标准的快捷键来注释和取消注释代码行。
要将快捷键绑定到首选不同的注释变体,例如
TM_COMMENT_START_3
,请在您的Default.sublime-keymap
中向toggle_comment
命令添加一个variant
参数。