如何使用 for inside IntelliJ Live Template?
How to use for inside IntelliJ Live Template?
我正在尝试编写一个连接字符串的简单 Groovy 脚本。
此 Groovy 脚本旨在用作 IntelliJ 实时模板中的变量并生成一些代码。
当我将 $variableResolvedWithGroovyScript$ 设置为具有以下值时:
groovyScript("def elements=[\"firstElem\",\"secondElem\",\"thirdElem\"];
String result=\"\";
for (String element : elements) {
result=result+element;
}
return result;"
, clipboard())
我遇到以下错误:
startup failed:
Script1.groovy: 1: expecting EOF, found 'return' @ line 1, column 183.
lt+element; } return res
^
1 error
但是,如果我尝试删除 for 大括号({ 和 }) 它没有任何问题:
groovyScript("def elements=[\"firstElem\",\"secondElem\",\"thirdElem\"];
String result=\"\";
for (String element : elements)
result=result+element;
return result;"
, clipboard())
如果我将上面的脚本 运行 放在 Groovy 控制台中,它可以正常工作,所以我认为这是一个实时模板问题。
我试图以与转义引号相同的方式转义大括号,但没有任何运气。
如何在实时模板中编写 for(包含多个指令)?
我设法通过从磁盘加载 Groovy 脚本使其工作。所以 $variableResolvedWithGroovyScript$ 的值是:
groovyScript("def elements=[\"firstElem\",\"secondElem\",\"thirdElem\"];
String result=\"\";
for (String element : elements) {
result=result+element;
}
return result;"
, clipboard())
我简单地使用了:
groovyScript("d:\Some\Path\Concatenate.groovy" , clipboard())
d:\Some\Path\Concatenate.groovy 使用大括号,我还能够定义新方法等等。
我正在尝试编写一个连接字符串的简单 Groovy 脚本。 此 Groovy 脚本旨在用作 IntelliJ 实时模板中的变量并生成一些代码。
当我将 $variableResolvedWithGroovyScript$ 设置为具有以下值时:
groovyScript("def elements=[\"firstElem\",\"secondElem\",\"thirdElem\"];
String result=\"\";
for (String element : elements) {
result=result+element;
}
return result;"
, clipboard())
我遇到以下错误:
startup failed:
Script1.groovy: 1: expecting EOF, found 'return' @ line 1, column 183.
lt+element; } return res
^
1 error
但是,如果我尝试删除 for 大括号({ 和 }) 它没有任何问题:
groovyScript("def elements=[\"firstElem\",\"secondElem\",\"thirdElem\"];
String result=\"\";
for (String element : elements)
result=result+element;
return result;"
, clipboard())
如果我将上面的脚本 运行 放在 Groovy 控制台中,它可以正常工作,所以我认为这是一个实时模板问题。 我试图以与转义引号相同的方式转义大括号,但没有任何运气。
如何在实时模板中编写 for(包含多个指令)?
我设法通过从磁盘加载 Groovy 脚本使其工作。所以 $variableResolvedWithGroovyScript$ 的值是:
groovyScript("def elements=[\"firstElem\",\"secondElem\",\"thirdElem\"];
String result=\"\";
for (String element : elements) {
result=result+element;
}
return result;"
, clipboard())
我简单地使用了:
groovyScript("d:\Some\Path\Concatenate.groovy" , clipboard())
d:\Some\Path\Concatenate.groovy 使用大括号,我还能够定义新方法等等。