是否有标准的 Google Go 编码约定文档来设置 Go 源代码中缩进是否首选制表符或空格?
官方建议是什么(如果有的话)?
官方建议使用
格式化您的代码go fmt
或者直接使用gofmt命令
gofmt -w .
您可以在 go.dev 博客上此处阅读更多相关信息,或者从 Effective go 文档:
缩进
我们使用制表符进行缩进,gofmt 默认情况下会发出它们。仅在必要时使用空格。
编辑2:底部的原始答案现在不正确。 链接源文件(当前日期为 2019 年 12 月 30 日)的正确部分是:
Gofmt 格式化 Go 程序。 它使用制表符进行缩进,使用空白进行对齐。 对齐假设编辑器使用固定宽度字体。
感谢TehSphinX指出了这一点!
此行下方的所有信息现在都不正确
编辑:底部的原始答案现在不正确。链接源文件的正确部分(当前 2014 年 7 月 25 日)是:
Gofmt 格式化 Go 程序。
它使用制表符(宽度 = 8)进行缩进,使用空白进行对齐。
原始答案(已弃用):
Formatting control flags:
-comments=true
Print comments; if false, all comments are elided from the output.
-tabs=true
Indent with tabs; if false, spaces are used instead.
-tabwidth=8
Tab width in spaces.