Добрался я и до сниппетов. Очень удобная штука, когда нужно один и то же код постоянно применять в разных файлах, а copy->paste не получается т.к. периодически копируется еще что-то и нужно заново обновлять буфер.
Собственно, пример на скриншоте. Это один из элементов микроразметки, который нужно было раскидать примерно на 20 файлов, но держать в буфере не было возможности, т.к. приходилось использовать и другие элементы микроразметки, как на скриншоте ниже.
И все это сразу довольно проблематично использовать. По очереди копировать, затем вставлять. Затем новый файл и такой бесконечный многочасовой велосипед. Поэтому придумали сниппеты.
Создание сниппета в Sublime Text
Открывается файл-заготовка под сниппет, где мы увидим следующий код:
<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>
Нужный нам код размещен внутри квадратных скобок блока CDATA
<![CDATA[ вот тут ]]>
Долларами отмечаются каретки. Т.е. $1 – при развертывании сниппета каретка встанет в это место, а при нажатии на Tab отправится к следующей метке, которую мы установим.
Важно: $0 всегда идет последним. Этот параметр не обязателен, поэтому достаточно будет лишь одной метки в любом месте кода.
Ключ для вывода сниппета
Любой набор букв. В моем случае прямое назначение — микроразметка url. Введя mur в любом файле редактора и нажав на Tab у меня разворачивается заложенный код в CDATA.
<tabTrigger>mur</tabTrigger>
Остальные параметры не важны в принципе! Последняя строка позволяет ограничить типы файлов, где будет доступен данный сниппет. Правило для записи следующее:
<scope>source.python, source.css, source.html, source.php</scope>
Сниппет сохраняется под любым именем в папке редактора. Например, тут Packages\User\snippets. Ничего прописывать и указывать редактору не нужно. Он все помнит и знает.
Но есть проблемка. Частенько свежесозданный сниппет может тупить и не срабатывать по ключевому слову, но через некоторое время все проходит!
Сниппет можно вызывать и обходным путем. Tools-сниппеты
Комментарии