web-dev-qa-db-ja.com

Goのインデント:タブまたはスペース?

Goソースコードのインデントにタブまたはスペースを優先するかどうかを設定する標準のGoogle Goコーディング規則ドキュメントはありますか?そうでない場合、(統計的に)より人気のあるオプションは何ですか?

  1. 公式の推奨事項は何ですか? (もしあれば)
  2. より人気のある選択肢は何ですか?
97
Erik Allik

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

go fmt

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

gofmt -w .

詳細については here をgolang.orgブログで、または Effective go ドキュメントから読むことができます。

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

160
ANisus

http://golang.org/src/cmd/gofmt/doc.go によると、デフォルトは次のとおりです。

EDIT:下部にある元の答えは正しくありません。リンクされたソースファイル(現在の25/07/2014)の正しいセクションは次のとおりです。

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.
20
Intermernet