4

Я пытался сохранить файлы фрагментов в папке проекта, но это не работает. У тебя есть другая идея?

1 ответ1

5

С пользовательским плагином

РЕДАКТИРОВАТЬ: обобщение следующего плагина был опубликован на https://packagecontrol.io/packages/ProjectCompletions

Если вы поместите этот плагин в вашу папку пользователя под именем ProjectCompletions.py

import sublime_plugin

class ProjectCompletions(sublime_plugin.EventListener):

    def on_query_completions(self, view, prefix, locations):
        return view.window().project_data().get("completions")

Вы можете вводить дополнения, используя запись "completions" в файле проекта:

{
  "folders": ...
  "completions":[
      ["I", "I am a ${1:snippet} baby!"]
  ]
}

Формат для дополнений: [trigger, snippet] . Возможны более сложные подходы, чтобы охват также принимался во внимание.

Анимированный Gif


Косвенным образом используя плагин ProjectSpecific

После установки вы можете использовать ключ settings вашего файла проекта для установки дополнительных команд. Затем, чтобы включить фрагмент, вы можете добавить это в свой проект:

{
    "folders": ...
    "settings": {
        "project-specific": {
            "sublime-commands": [
                {"caption": "My Snippet",
                 "command": "insert_snippet",
                 "args": {"contents": "I am a ${1:snippet} baby!"} }
            ]
        }
    ...
    }

}

и вы найдете команду "Мой фрагмент" в палитре команд только в текущем проекте.

Вы также можете связать ключи в конкретном проекте. Связав их с командой insert_snippet вы можете добиться аналогичного эффекта без необходимости проходить через палитру.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .