151

Goソースコードのインデントにタブまたはスペースを優先するかどうかを設定する標準のGoogle Goコーディング規約ドキュメントはどこかにありますか?

もしあれば、公式の推奨事項は何ですか?

4

2 に答える 2

232

公式の推奨事項は、コードを次のようにフォーマットすることです

go fmt

または gofmt コマンドを直接使用する

gofmt -w .

詳細については、 golang.orgブログ、またはEffective goドキュメントを参照してください。

インデント インデント
にはタブを使用し、gofmt はデフォルトでタブを出力します。必要な場合にのみスペースを使用してください。

于 2013-09-30T12:49:26.270 に答える
25

編集 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.
于 2013-09-30T12:52:21.513 に答える