Как использовать переменное содержимое в шаблонах файлов WebStorm - PullRequest
0 голосов
/ 18 ноября 2018

У меня есть этот шаблон файла в WebStorm 2018.2:

#set($TestSuiteName = ${StringUtils.removeAndHump(${NAME}, "-")})

describe("#[[$TestSuiteName$]]#", () => {

    it("should work", () =>
    {
        #[[$END$]]#
    });
});

Важным моментом этого вопроса является #[[$TestSuiteName$]]# часть шаблона.Я хочу добиться того, чтобы $TestSuiteName заменялось значением, вычисленным в первой строке шаблона, и выбиралось для редактирования, но его можно принять, нажав return.

Все, что шаблон сейчас делает, - это печатьout "TestSuiteName" для выражения #[[$TestSuiteName$]]#, что не то, что я хочу.Что он делает правильно, так это выбирает текст «TestSuiteName», который требуется, когда я нажимаю return.

Когда я изменяю шаблон на

#set($TestSuiteName = ${StringUtils.removeAndHump(${NAME}, "-")})

describe("$TestSuiteName", () => {

    it("should work", () =>
    {
        #[[$END$]]#
    });
});

, тогда имя файла корректно верблюжий, нооно не выбрано, и курсор сразу переходит к месту #[[$END$]]#.

Как правильно выбрать имя файла с верблюдом, выбранное для редактирования?

1 Ответ

0 голосов
/ 18 ноября 2018

Нет способа сделать это в настоящее время: (

Синтаксис

$VAR$ имеет особое значение в шаблонах Webstorm - это своего рода переменная шаблона, заполнитель, который позволяет поместить курсор в определенную позицию и редактировать значение при применении шаблона. Для работы таких заполнителей используется синтаксис #[[$VAR$]]#, чтобы избежать конфликтов с переменными скорости (текст в #[[]]# отображается как есть - см. http://velocity.apache.org/engine/1.7/user-guide.html#literals). используя #[[$TestSuiteName$]]#.

Мы планируем предоставить возможность использовать всю мощь живых шаблонов (функции живых шаблонов, предопределенные переменные, значения по умолчанию и т. Д.) В шаблонах файлов. Если вы пропустите это, пожалуйста, проголосуйте за IDEA-161937 , IDEA-173721 и связанные билеты

...