*встает на защиту WebStorm
*
Например, я захотел создать новый плагин и мне нужно реализовать новую сцену.
В редакторе я пишу nscene и нажимаю таб, после чего вставляется следующий кусок кода:
//===========================================================================
// $NAME$
//===========================================================================
function $NAME$ () {
this.initialize.apply(this, arguments);
}
$NAME$.prototype = Object.create(DKTools.Scene.prototype);
$NAME$.prototype.constructor = $NAME$;
$NAME$.prototype.createAllWindows = function() {
$BODY$
};
$END$
Переменные, которые обернуты в $$ теги являются "указателями". То есть, после вставки этого фрагмента кода курсор устанавливается на позицию переменной. В данном случае курсор будет установлен на $NAME$. Этой переменной я пометил название сцены. После того, как вы ввели название сцены, вы можете нажать на таб снова, чтобы переключиться на следующую переменную (в данном случае $BODY$). Если переменных нет, то курсор переходит на зарезервированное слово $END$. Если и его нет, то курсор просто переходит на конец текста.
Еще один пример:
Но сначала важное уточнение: для данного примера сначала нужно скопировать название требуемой функции.
Допустим, я хочу сделать "алиас" на стандартную функцию мейкера, то есть доопределить ее под свои нужды.
В редакторе я пишу слово alias и жму таб.
Получаю следующий кусок кода:
const $PLUGIN$_$CLASS$_$FUNC$ = $CLIP$;
$CLIP$ = function($PARAMETERS$) {
$PLUGIN$_$CLASS$_$FUNC$.call(this$PARAMETERS$);
$END$
};
$PLUGIN$ - Автоматически сгенерированное имя (на основе названия файла, настраивается)
$CLASS$ - Название класса
$FUNC$ - Название функции
$CLIP$ - Автоматически вставляет системный буфер (скопированное название функции)
$PARAMETERS - Параметры функции
$END$ - перемещаем курсор, чтобы писать свой функционал