当通过 super + / 将注释插入Python时,它会将#
放在代码的开头,如下所示:
我想将#
放在一行的开头,如下所示:
是否有任何设置可以让我这样做?
答案 0 :(得分:6)
使用XML语法在Sublime中创建一个新文件,其中包含以下内容:
<?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.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>
<dict>
<key>name</key>
<string>TM_COMMENT_DISABLE_INDENT</string>
<key>value</key>
<string>yes</string>
</dict>
</array>
</dict>
<key>uuid</key>
<string>52CBA191-8A6C-4A04-8F2F-0D1642AE10F2</string>
</dict>
</plist>
您需要将此文件保存在Packages
目录中,该目录位于您的计算机上,方法是选择 Preferences -> Browse Packages...
。找到它后,返回Sublime并将文件另存为Packages/Python/Comments.tmPreferences
。对于Sublime Text 2,Python
目录已经存在,但对于ST3,您必须先创建它。
文件的工作方式非常简单。 TM_COMMENT_START
值告诉Sublime要为注释插入哪些字符 - 在此实例中后跟空格的哈希标记。 TM_COMMENT_DISABLE_INDENT
值指示Sublime是否应在行的开头(yes
)插入注释,或者仅在文本前面插入注释(no
,默认行为)。请注意,您可能需要重新启动Sublime才能使更改生效。
答案 1 :(得分:1)
除了@ MattDMo的有用答案外,您还可以考虑使用宏。例如,如果您希望保留默认注释功能,但也希望能够以您描述的方式进行注释,这可能是有益的。此外,这种创建宏和键绑定的一般方法可扩展到您可能想要使用的许多自定义功能。
创建它 - Packages/User/some_filename.sublime-macro
[
{"command": "split_selection_into_lines"},
{"command": "move_to", "args": {"to": "bol", "extend": false} },
{"command": "clear_fields"},
{"command": "move_to", "args": {"to": "bol", "extend": false} },
{"command": "insert", "args": {"characters": "#"}},
{"command": "single_selection"}
]
通过向用户的.sublime-keymap
文件添加密钥绑定来调用它:
{
"keys": ["super+shift+/"], "command": "run_macro_file",
"args": {"file": "Packages/User/some_filename.sublime-macro"}
}