Я следил за этим , этим , этим , этим и этим , чтобы создать свой собственный Шаблон в ST3. Поэтому, когда я создаю новый файл, я предварительно загружаю файл с содержимым шаблона. Я прочитал, что я должен сделать это с помощью фрагмента.
Я создаю файл и пытаюсь применить snippet
в новом view
, но ничего не происходит, я не получаю никакой обратной связи (даже когда я специально ввел неправильное имя фрагмента). Мой фрагмент находится внутри моей папки плагинов:
C:\Users\...\AppData\Roaming\Sublime Text 3\Packages\MyPlugin\templ.sublime-snippet
Мои многочисленные попытки приведены ниже:
def on_done(...):
...
open(path, 'a').close()
new_view = self.window.open_file(path)
# These seem to work, so the view seems valid
print(new_view.file_name())
print(new_view.line_height())
# Attempt 1
template = """<snippet>
<content><![CDATA[
Hello, \${1:this} is a \${2:snippet}.
]]></content>
</snippet>
"""
new_view.run_command("insert_snippet", {"contents": template})
# Attempt 2: from the user folder. Nothing happens
new_view.run_command("insert_snippet", { "name": "Packages/User/templ.sublime-snippet" })
# Attempt 3: from current (?) folder just in case
new_view.run_command("insert_snippet", {"name" : "templ.sublime-snippet"})
# Attempt 4, from the actual plugin folder
new_view.run_command("insert_snippet", {"name" : "Packages/MyPlugin/templ.sublime-snippet"})
# Attempt 5, absolute directory
new_view.run_command("insert_snippet", {"name" : "C:\\Users\\nerea\\AppData\\Roaming\\Sublime Text 3\\Packages\\MyPlugin\\templ.sublime-snippet"})
# Attempt 6, to check if I mistook the path if I would get any error
new_view.run_command("insert_snippet", {"name" : "Packages/User/nonexisting.sublime-snippet"})
# Attempt 7, nothing either
new_view.run_command("insert_snippet", {"contents" : "<snippet><content><![CDATA[Hello, ${1:this} is a ${2:snippet}.]]></content></snippet>"})
# This does nothing either. I supposed that should do something
new_view.run_command("insert", "wawawiwa")