PhpStorm живой шаблон переменная оболочка / объемный

У меня есть фрагмент Sublime Text, который я хотел бы преобразовать в живой шаблон PhpStorm. В настоящее время я застрял с возможностью обернуть уже определенные переменные.

например

${2:${1:HOOK}}_mail

Первый tab в возвышенном тексте будет выводить следующее.

MY_HOOK_mail

Второй tab тогда позволил бы мне перезаписать MY_HOOK

MY_OVERWRITE_mail

Будет ли это возможно с живыми шаблонами?

В качестве ссылки на фрагмент возвышенного текста, который я пытаюсь преобразовать: https://github.com/iampuma/d7ssnippets/blob/master/hook_mail.sublime-snippet

  • Ссылка, как это на самом деле работает в Sublime Text (строка 8):

РЕШЕНИЕ: - Спасибо @LazyOne.

Живой шаблон:

/**
 * Implements hook_mail().
 */
function $MODULE_NAME$_mail($key, &$message, $params) {
  switch($key) {
    case '$MODULE_NAME1$_mail':
      $message['subject'] = $SUBJECT$;
      $message['body'][] = '$BODY$';
  }
}

Переменные:

1 ответ

Решение

РЕШЕНИЕ: - Спасибо @LazyOne.

Хитрость заключается в том, чтобы просто использовать предыдущую переменную в качестве значения по умолчанию. Например:

Живой шаблон:

/**
 * Implements hook_mail().
 */
function $MODULE_NAME$_mail($key, &$message, $params) {
  switch($key) {
    case '$MODULE_NAME1$_mail':
      $message['subject'] = $SUBJECT$;
      $message['body'][] = '$BODY$';
  }
}

Переменные:

Другие вопросы по тегам