web-dev-qa-db-fra.com

Indentation dans Go: onglets ou espaces?

Existe-t-il un document standard sur les conventions de codage de Google Go qui détermine si les tabulations ou les espaces sont préférés pour l'indentation dans le code source Go? Si non, quelle est l'option (statistiquement) la plus populaire?

  1. Quelle est la recommandation officielle? (si seulement)
  2. Quel est le choix le plus populaire?
97
Erik Allik

La recommandation officielle est de formater votre code avec

go fmt

ou en utilisant la commande gofmt directement

gofmt -w .

Vous pouvez en lire plus à ce sujet ici sur le blog de golang.org ou à partir du Effective Go document:

Indentation
Nous utilisons des onglets pour l'indentation et gofmt les émet par défaut. Utilisez des espaces seulement si vous devez.

160
ANisus

Selon http://golang.org/src/cmd/gofmt/doc.go , les valeurs par défaut sont les suivantes:

EDIT: La réponse originale en bas est maintenant incorrecte. La section correcte du fichier source lié (en date du 25/07/2014) est la suivante:

Gofmt formats Allez programmes.
Il utilise des tabulations (largeur = 8) pour l'indentation et des blancs pour l'alignement.

Réponse originale (obsolète):

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