IntelliJ自定义模板变量

时间:2016-04-18 17:46:01

标签: templates intellij-idea

我正在尝试使用名为$MyName的自定义变量创建自定义模板。而且我认为如果没有初始化,IntelliJ应该可以询问变量的值。在文档中,他们提供了有关如何执行此操作的一些信息,但他们没有真正的示例。他们只是说,它以某种方式IntelliJ Idea会要求我指定它。

  

如果在应用模板时,某些模板变量的值   如果不知道,IntelliJ IDEA会要求您指定它们。

如何创建像$MyName这样的自定义变量,然后当用户使用模板时,它会询问他的名字是什么?

IntelliJ IDEA 2016.1 Documentation

编辑(19.04.2016):添加了屏幕截图

Screenshot Settings Window

如您所见,自定义变量无法识别或无效。如果我将其声明为${MyName},则它也无效。

New File Screenshot

2 个答案:

答案 0 :(得分:2)

这是IntelliJ IDEA中的一个错误,提交为https://youtrack.jetbrains.com/issue/IDEA-154958。感谢您的注意!

答案 1 :(得分:-1)

文件模板变量

File | Settings | Editor | File and Code Templates
您应该在files中进行设置。如果在includes中设置,则新文件直接输出变量名而不是变量内容。例如,设置Java Class文件自定义变量$DESCRIPTION。如果未在模板中定义变量的值,则IntelliJ IDEA将要求您在应用模板时指定它。
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #parse("File Header.java") /** * Description: $DESCRIPTION * Created by ${USER} * Date: ${YEAR}/${MONTH}/${DAY} * Time: ${TIME} */ public class ${NAME} { }

您还可以使用#set指令在模板中定义自定义变量的值。 例如,如果要使用全名而不是通过预定义变量${USER}定义的登录名,请使用以下结构:
#set( $MyName = "John Smith" )

参考链接