Jetbrains Goland HTML 模板格式化和代码完成

Jetbrains Goland HTML Templates Formatting and Code Completion

我在 Jetbrains Goland 中使用 Go HTML 模板。我如何获得所有 3 个:HTML 格式、模板代码完成和模板的模板格式?

假设我安装了 Go Templates 插件并且我使用“*.tpl”作为我的模板的文件扩展名,我有两个选择:

  1. 设置 - 编辑器 - 文件类型 - HTML - 添加“*.tpl”作为 HTML 类型。 优点:我有一个 HTML 代码完成和语法高亮,但有一个警告(参见 CON 2) 缺点 1:我没有对模板项进行代码完成,编辑器根本不知道模板 CON 2:模板代码块被视为文本,即我没有 RANGE 块的代码缩进,例如当我尝试格式化我的代码时。

  2. 设置 - 编辑器 - 文件类型 - Go 模板 - 添加“*.tpl”作为注册类型,“HTML”作为基础类型(“模板数据语言”) 优点:我有 'dots' 的代码完成,可以看到它们的属性和方法(参见 https://www.jetbrains.com/help/go/integration-with-go-templates.html) 缺点:没有 HTML 突出显示、自动完成或格式化...

经过几个小时的研究,我终于找到了答案:

设置——语言和框架——模板数据语言——项目语言——设置“HTML”

此外,我建议使用“*.go.html”作为 Go 模板扩展。这样,即使在 VSCode、在线 GitHub 等

中打开模板时,您也可以看到语法高亮显示