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)

文章评论

点击排行

本栏推荐

标签

站点信息

  • 微信公众号