Home / PostsPost
Goland 创建go文件时自动生成声明
嘟噜聪2023/02/26 17:14:23 [Golang] [go] [goland] 1100人已阅
简介 我们通常会将文件的相关信息带到注释里,如作者、创建时间、使用的软件等信息。我们使用Goland写代码时,可以在新建文件时自动将信息带上。## 在Goland上配置如果使用的是macOS
我们通常会将文件的相关信息带到注释里,如作者、创建时间、使用的软件等信息。
我们使用Goland写代码时,可以在新建文件时自动将信息带上。
在Goland上配置
如果使用的是macOS系统,敲击键盘的"CMD + ,"打开,设置。
在搜索框中搜索: "File and Code Templates",在右侧会显示建的的文件模版,我们可以在这里对创建相应的文件自动生成部分代码或注释等信息。
点击Go File选项目,右侧会显示创建文件时文件里带的内容
在里面填入想生成的信息
/**
* @Time: ${DATE} ${TIME}
* @Author: solacowa@gmail.com
* @File: ${FILE_NAME}
* @Software: ${PRODUCT_NAME} ${PROJECT_NAME}
*/
package ${GO_PACKAGE_NAME}
支持内容
Go File 是一个内置模板,每次创建新的 Go 文件时都会使用它。 要使用此模板,请导航至文件 | New,在Go类别中选择Go File,点击Empty File。 该模板是可编辑的。 在模板中,您可以使用下面列出的预定义变量。 这些变量稍后会在编辑器中扩展为相应的值。 也可以指定自定义变量。 自定义变量使用以下格式:
${VARIABLE_NAME}
,其中VARIABLE_NAME
是变量的名称(例如${MY_CUSTOM_FUNCTION_NAME}
)。 在 IDE 使用自定义变量创建新文件之前,您会看到一个对话框,您可以在其中为模板中的自定义变量定义值。 通过使用 #parse 指令,您可以从“包含”选项卡中包含模板。 要包含模板,请将模板的全名指定为引号中的参数(例如,#parse("File Header"))。 预定义变量列表
变更名 | 备注 | |
---|---|---|
${GO_PACKAGE_NAME_WITH_TEST_SUFFIX} |
在其中创建新测试文件的包的名称。 该文件必须具有 _test 后缀。 名称具有以下格式:package_test。 | |
${GO_PACKAGE_NAME} |
在其中创建新文件的包的名称。 | |
${DATE} |
当前系统日期。 | |
${DAY} |
本月的当前日期。 | |
${DAY_NAME_SHORT} |
当前日期名称的前三个字母(例如,Mon、Tue 等)。 | |
${DAY_NAME_FULL} |
当前日期的全名(例如,星期一、星期二等)。 | |
${DIR_PATH} |
新文件目录的路径。 此路径是相对于项目根目录的。 | |
${DS} |
美元符号 ($)。 此变量用于转义美元字符,因此它不会被视为模板变量的前缀。 | |
${FILE_NAME} |
新文件的名称。 | |
${HOUR} |
当前时间。小时 | |
${MINUTE} |
当前时间。分钟 | |
${SECOND} |
当前时间。秒 | |
${MONTH} |
当前月份 | |
${MONTH_NAME_SHORT} |
当前月份名称的前 3 个字母(例如,Jan、Feb 等)。 | |
${MONTH_NAME_FULL} |
当前月份的全名(例如,一月、二月等)。 | |
${NAME} |
新实体的名称:文件、类型、接口等。 | |
${PRODUCT_NAME} |
IDE 的名称。 | |
${PROJECT_NAME} |
当前项目的名称。 | |
${TIME} |
当前系统时间。 | |
${USER} |
当前用户的系统登录名。 | |
${YEAR} |
当前年份 | |
${PRODUCT_NAME} |
自己定义文件模版
我们还可以新建自己需要的文件模版,点击左上角的“+”号添加一个文件模版
我这里以创建一个Go File Logging为例,将以下内容贴到右侧广西框中,并取个文件名和后缀保存即可。
/**
* @Time: ${DATE} ${TIME}
* @Author: solacowa@gmail.com
* @File: ${FILE_NAME} ${NAME}
* @Software: ${PRODUCT_NAME} ${PROJECT_NAME}
*/
package ${GO_PACKAGE_NAME}
import (
"context"
"time"
"github.com/go-kit/log"
"github.com/go-kit/log/level"
)
type logging struct {
logger log.Logger
next Service
traceId string
}
func NewLogging(logger log.Logger, traceId string) Middleware {
logger = log.With(logger, "${GO_PACKAGE_NAME}", "logging")
return func(next Service) Service {
return &logging{
logger: level.Info(logger),
next: next,
traceId: traceId,
}
}
}
最后在项目里选择 新建文件时,选择新建Go FIle Logging就会自动生成相应的内容了。
很赞哦! (8)