debian man page for gofmt

Query: gofmt

OS: debian

Section: 1

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

GOFMT(1)						      General Commands Manual							  GOFMT(1)

NAME
gofmt - formats Go programs
SYNOPSIS
gofmt [flags] [ path ... ]
DESCRIPTION
Without an explicit path, it processes the standard input. Given a file, it operates on that file; given a directory, it operates on all .go files in that directory, recursively. (Files starting with a period are ignored.) By default, gofmt prints the reformatted sources to standard output.
OPTIONS
-d Do not print reformatted sources to standard output. If a file's formatting is different than gofmt's, print diffs to standard out- put. -e Print all (including spurious) errors. -l Do not print reformatted sources to standard output. If a file's formatting is different from gofmt's, print its name to standard output. -r rule Apply the rewrite rule to the source before reformatting. -s Try to simplify code (after applying the rewrite rule, if any). -w Do not print reformatted sources to standard output. If a file's formatting is different from gofmt's, overwrite it with gofmt's version. 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. The rewrite rule specified with the -r flag must be a string of the form: pattern -> replacement Both pattern and replacement must be valid Go expressions. In the pattern, single-character lowercase identifiers serve as wildcards match- ing arbitrary sub-expressions; those expressions will be substituted for the same identifiers in the replacement. When gofmt reads from standard input, it accepts either a full Go program or a program fragment. A program fragment must be a syntactically valid declaration list, statement list, or expression. When formatting such a fragment, gofmt preserves leading indentation as well as leading and trailing spaces, so that individual sections of a Go program can be formatted by piping them through gofmt.
EXAMPLES
To check files for unnecessary parentheses: gofmt -r '(a) -> a' -l *.go To remove the parentheses: gofmt -r '(a) -> a' -w *.go To convert the package tree from explicit slice upper bounds to implicit ones: gofmt -r 'a[B:len(a)] -> a[B:]' -w $GOROOT/src/pkg
BUGS
The implementation of -r is a bit slow.
AUTHOR
This manual page was written by Michael Stapelberg <stapelberg@debian.org>, for the Debian project (and may be used by others). 2012-05-13 GOFMT(1)
Related Man Pages
go-list(1) - debian
godoc(1) - debian
plan9-grep(1) - debian
indent(9) - minix
sed(1) - plan9
Similar Topics in the Unix Linux Community
Removing spaces from data
remove trailing and leading spaces using tr command
formatting output
Simplest way to format with If on stout?
print only the first occurrence of a pattern