教程:创建包含变量和函数的动态模板
In this tutorial, you will learn how to create and use a simple live template that includes variables and functions.
作为示例,您将创建一个生成新的 Go struct 的动态模板,添加一个具有可选值的字段,并使用这些值实现一个方法。
创建一个新的 Go struct 类型,并嵌入一个已有的
宠物struct。添加一个类型为
字符串的食物字段,其值从列表中选择。实现一个
PetFood()方法,使用 struct 的名称和食物打印消息。
为了展示变量和函数在模板中的作用,我们将以下变量添加到模板文本中:
创建包含变量的动态模板
按下 Ctrl+Alt+S 以打开设置,然后选择 。
选择 运行 组,点击
,然后选择 实时模板。
在 缩写 字段中,指定用于展开模板的字符。 例如,
pet。在 模板文本 字段中,粘贴以下模板:
type $TypeName$ struct { food string } func (p *$TypeName$) PetFood() { food := "$Food$" println("The $typeName$ eats " + food) }点击 编辑变量(E)… ,然后在 编辑模板变量 对话框中配置变量:
$TypeName$:将 表达式 字段留空。 使用模板时,GoLand 会在插入模板后提示用户输入类型名称。$typeName$:在 表达式 字段中输入decapitalize (TypeName)。 这会将$TypeName$的首字母转换为小写。 选择 如果已定义则跳过。$Food$:在 表达式 字段中输入enum("meat","grass", "fruit")。 使用模板时,GoLand 会在编辑器中显示这些值的列表供用户选择。

使用已创建的模板
在编辑器中开始输入模板缩写(本例中为
pet),然后从补全下拉列表中选择它。将类型名称作为变量值输入:
Horse。 按下 Tab 跳转到下一个变量。使用方向键选择
草作为食物字符串的值,并按下 Enter。