Go 中的缩进:制表符还是空格?

问题描述 投票:0回答:2

是否有标准的 Google Go 编码约定文档来设置 Go 源代码中缩进是否首选制表符或空格?

官方建议是什么(如果有的话)?

go formatting indentation gofmt
2个回答
265
投票

官方建议使用

格式化您的代码
go fmt

或者直接使用gofmt命令

gofmt -w .

您可以在 go.dev 博客上此处阅读更多相关信息,或者从 Effective go 文档:

缩进
我们使用制表符进行缩进,gofmt 默认情况下会发出它们。仅在必要时使用空格。


28
投票

编辑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.
© www.soinside.com 2019 - 2024. All rights reserved.