gpt4 book ai didi

go - 生成后的模板标识

转载 作者:IT王子 更新时间:2023-10-29 02:09:39 25 4
gpt4 key购买 nike

我正在使用 GO text/template 生成一个 makefile模板按预期生成(内容正确),但问题是它没有缩进制表符,我在运行时遇到错误make 命令生成后。

这是模板的输出:

all: app app_2

DIR = $(PWD)
.PHONY: app
app:
@echo "run module 1"

.PHONY: app_2
app_2:
@echo "run module 2”

当我运行 make 时出现错误“makefile:7: *** missing separator. Stop”。 (这是第一个回显的行)

如果我使用 GolandvsCode 将想法更改为 tab(在文件生成后),我能够 成功运行文件并看到预期的输出......,知道如何让它与 go text/template 一起工作吗?

这是模板

all: {{- range .Load.Proc}} {{.Name}}{{end}}


{{- range .Load.Proc}}
.PHONY: {{.Name}}
{{.Name}}:
@echo {{.Text}}
{{end}}

这是 makefile 问题:makefile:4: *** missing separator. Stop但对我来说这是个问题,因为我想生成文件而不需要手动更改缩进。

最佳答案

在模板中使用制表符在输出中生成制表符。要修复问题中的模板,请将 @echo 之前的空格替换为制表符。

https://play.golang.org/p/c7v6eNsI2Fy

如果由于某种原因不能在模板中放置制表符,则使用 {{"\t"}} 在输出中生成制表符:

{{"\t"}}echo {{.Text}}

https://play.golang.org/p/3B-oIW-aCb4

关于go - 生成后的模板标识,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51027113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com