Inspringing in Go: tabs of spaties?

Is er ergens een standaarddocument met Google Go-coderingsconventies waarin wordt bepaald of tabs of spaties de voorkeur hebben voor inspringen in de Go-broncode?

Wat is de officiële aanbeveling, indien van toepassing?


Antwoord 1, autoriteit 100%

De officiële aanbeveling is om uw code op te maken met

go fmt

of direct het gofmt-commando gebruiken

gofmt -w .

Je kunt er hiermeer over lezen op de golang.org-blog, of uit het Effective go-document:

Inspringing
We gebruiken tabbladen voor inspringen en gofmt zendt ze standaard uit. Gebruik alleen spaties als het moet.


Antwoord 2, autoriteit 11%

EDIT 2:het oorspronkelijke antwoord onderaan is nu onjuist. Het juiste gedeelte van het gekoppelde bronbestand(huidig ​​30/12/2019) is :

Gofmt formatt Go-programma’s.
Het gebruikt tabs voor inspringen en spaties voor uitlijning.
Uitlijning gaat ervan uit dat een editor een lettertype met vaste breedte gebruikt.

Met dank aan TehSphinXvoor het wijzen hierop!

ALLE INFO ONDER DEZE REGEL IS NU ONJUIST

EDIT:Het oorspronkelijke antwoord onderaan is nu onjuist. De juiste sectie van het gekoppelde bronbestand (huidig ​​25/07/2014) is:

Gofmt formaten Go-programma’s.
Het gebruikt tabs (breedte = 8) voor inspringen en spaties voor uitlijning.

Oorspronkelijk antwoord (verouderd):

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.

Other episodes