Sublime - 将#放在行的开头而不是注释时代码的开头

时间:2015-04-28 03:26:34

标签: python sublimetext2 sublimetext sublimetext3

当通过 super + / 将注释插入Python时,它会将#放在代码的开头,如下所示:

enter image description here

我想将#放在一行的开头,如下所示:

enter image description here

是否有任何设置可以让我这样做?

2 个答案:

答案 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"}
}