如何在Sublime Text 2中编辑默认的“New Snippet”模板?

时间:2013-05-01 19:28:54

标签: sublimetext2 code-snippets

我为Sublime Text 2创建了很多片段。我总是使用可选的tab触发器,从不使用触发器范围。我想编辑“新代码段”模板,因此我不必每次都取消注释并删除这些相应的选项。

TL; DR - 这个默认的“新代码片段”文字来自哪里,所以我可以更改它:

<snippet>
    <content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <!-- <tabTrigger>hello</tabTrigger> -->
    <!-- Optional: Set a scope to limit where the snippet will trigger -->
    <!-- <scope>source.python</scope> -->
</snippet>

1 个答案:

答案 0 :(得分:4)

新的代码段命令在 Packages / Default / new_templates.py 中定义。在那里编辑它。 (我通过在崇高中打开Packages找到它并搜索其中一行。

class NewSnippetCommand(sublime_plugin.WindowCommand):
    def run(self):
        v = self.window.new_file()
        v.settings().set('default_dir',
            os.path.join(sublime.packages_path(), 'User'))
        v.settings().set('default_extension', 'sublime-snippet')
        v.set_syntax_file('Packages/XML/XML.tmLanguage')

        template = """<snippet>
    <content><![CDATA[
Hello, \${1:this} is a \${2:snippet}.
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <!-- <tabTrigger>hello</tabTrigger> -->
    <!-- Optional: Set a scope to limit where the snippet will trigger -->
    <!-- <scope>source.python</scope> -->
</snippet>
"""