[Pkg-golang-commits] [SCM] Packaging for Google Go branch, debian-sid, updated. debian/2%1.0.2-1-4-g41772a0

Michael Stapelberg michael at stapelberg.de
Fri Jun 15 10:59:02 UTC 2012


The following commit has been merged in the debian-sid branch:
commit 41772a06c7e11d5d23ca11b5fe17888eb911539f
Author: Michael Stapelberg <michael at stapelberg.de>
Date:   Sun May 13 23:30:53 2012 +0200

    add manpages (Closes: #632964)

diff --git a/debian/golang-go.manpages b/debian/golang-go.manpages
new file mode 100644
index 0000000..19f429f
--- /dev/null
+++ b/debian/golang-go.manpages
@@ -0,0 +1 @@
+debian/man/*
diff --git a/debian/man/go-build.1 b/debian/man/go-build.1
new file mode 100644
index 0000000..6e1794c
--- /dev/null
+++ b/debian/man/go-build.1
@@ -0,0 +1,80 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-BUILD 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go build
+.RB [\|\-o
+.IR output \|]
+.RB [
+.IR "build flags"
+.RB ]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Build compiles the packages named by the import paths,
+along with their dependencies, but it does not install the results.
+
+If the arguments are a list of .go files, build treats them as a list
+of source files specifying a single package.
+
+When the command line specifies a single main package,
+build writes the resulting executable to output.
+Otherwise build compiles the packages but discards the results,
+serving only as a check that the packages can be built.
+
+The \-o flag specifies the output file name.  If not specified, the
+name is packagename.a (for a non-main package) or the base
+name of the first source file (for a main package).
+.SH OPTIONS
+The build flags are shared by the build, install, run, and test commands:
+.TP
+.B \-a
+force rebuilding of packages that are already up-to-date.
+.TP
+.B \-n
+print the commands but do not run them.
+.TP
+.B \-p n
+the number of builds that can be run in parallel. The default is the number of CPUs available.
+.TP
+.B \-v
+print the names of packages as they are compiled.
+.TP
+.B \-work
+print the name of the temporary work directory and do not delete it when exiting.
+.TP
+.B \-x
+print the commands.
+.TP
+.B \-compiler name
+name of compiler to use, as in runtime.Compiler (gccgo or gc)
+.TP
+.B \-gccgoflags 'arg list'
+arguments to pass on each gccgo compiler/linker invocation
+.TP
+.B \-gcflags 'arg list'
+arguments to pass on each 5g, 6g, or 8g compiler invocation
+.TP
+.B \-ldflags 'flag list'
+arguments to pass on each 5l, 6l, or 8l linker invocation
+.TP
+.B \-tags 'tag list'
+a list of build tags to consider satisfied during the build.
+See the documentation for the go/build package for
+more information about build tags.
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.P
+For more about where packages and binaries are installed, see \fBgo-gopath\fP(1).
+
+.SH SEE ALSO
+.BR go-install (1),
+.BR go-get (1),
+.BR go-clean (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-clean.1 b/debian/man/go-clean.1
new file mode 100644
index 0000000..bff689e
--- /dev/null
+++ b/debian/man/go-clean.1
@@ -0,0 +1,82 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-CLEAN 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go clean
+.RB [\|\-i\|]
+.RB [\|\-r\|]
+.RB [\|\-n\|]
+.RB [\|\-x\|]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Clean removes object files from package source directories.
+The go command builds most objects in a temporary directory,
+so go clean is mainly concerned with object files left by other
+tools or by manual invocations of go build.
+
+Specifically, clean removes the following files from each of the
+source directories corresponding to the import paths:
+
+.TP
+.B _obj/
+old object directory, left from Makefiles
+.TP
+.B _test/
+old test directory, left from Makefiles
+.TP
+.B _testmain.go
+old gotest file, left from Makefiles
+.TP
+.B test.out
+old test log, left from Makefiles
+.TP
+.B build.out
+old test log, left from Makefiles
+.TP
+.B *.[568ao]
+object files, left from Makefiles
+
+.TP
+.B DIR(.exe)
+from go build
+.TP
+.B DIR.test(.exe)
+from go test \-c
+.TP
+.B MAINFILE(.exe)
+from go build MAINFILE.go
+.P
+In the list, DIR represents the final path element of the
+directory, and MAINFILE is the base name of any Go source
+file in the directory that is not included when building
+the package.
+.SH OPTIONS
+.TP
+.B \-i
+The \-i flag causes clean to remove the corresponding installed
+archive or binary (what 'go install' would create).
+
+.TP
+.B \-n
+The \-n flag causes clean to print the remove commands it would execute,
+but not run them.
+
+.TP
+.B \-r
+The \-r flag causes clean to be applied recursively to all the
+dependencies of the packages named by the import paths.
+
+.TP
+.B \-x
+The \-x flag causes clean to print remove commands as it executes them.
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-doc.1 b/debian/man/go-doc.1
new file mode 100644
index 0000000..cf20d78
--- /dev/null
+++ b/debian/man/go-doc.1
@@ -0,0 +1,35 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-DOC 1 "2012-06-15"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go doc
+.RB [\|\-n\|]
+.RB [\|\-x\|]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Doc runs the godoc command on the packages named by the
+import paths.
+.P
+For more about godoc, see 'godoc godoc'.
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.P
+To run godoc with specific options, run godoc itself.
+.SH OPTIONS
+.TP
+.B \-n
+The \-n flag causes tool to print the command that would be
+executed but not execute it.
+.TP
+.B \-x
+The \-x flag causes clean to print remove commands as it executes them.
+.SH SEE ALSO
+.BR godoc (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-env.1 b/debian/man/go-env.1
new file mode 100644
index 0000000..48a506d
--- /dev/null
+++ b/debian/man/go-env.1
@@ -0,0 +1,21 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-ENV 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go env
+.RB [
+.IR "var ..."
+.RB ]
+.SH DESCRIPTION
+Env prints Go environment information.
+
+By default env prints information as a shell script
+(on Windows, a batch file).  If one or more variable
+names is given as arguments,  env prints the value of
+each named variable on its own line.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-fix.1 b/debian/man/go-fix.1
new file mode 100644
index 0000000..ed36888
--- /dev/null
+++ b/debian/man/go-fix.1
@@ -0,0 +1,25 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-FIX 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go fix
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Fix runs the Go fix command on the packages named by the import paths.
+.P
+For more about fix, see 'godoc fix'.
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.P
+To run fix with specific options, run 'go tool fix'.
+.SH SEE ALSO
+.BR go-fmt (1),
+.BR go-vet (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-fmt.1 b/debian/man/go-fmt.1
new file mode 100644
index 0000000..fc555b8
--- /dev/null
+++ b/debian/man/go-fmt.1
@@ -0,0 +1,37 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-FMT 1 "2012-06-15"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go fmt
+.RB [\|\-n\|]
+.RB [\|\-x\|]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Fmt runs the command 'gofmt \-l \-w' on the packages named
+by the import paths.  It prints the names of the files that are modified.
+.P
+For more about gofmt, see 'godoc gofmt'.
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.P
+To run gofmt with specific options, run gofmt itself.
+.SH OPTIONS
+.TP
+.B \-n
+The \-n flag causes tool to print the command that would be
+executed but not execute it.
+.TP
+.B \-x
+The \-x flag causes clean to print remove commands as it executes them.
+.SH SEE ALSO
+.BR go-doc (1),
+.BR go-fix (1),
+.BR go-vet (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-get.1 b/debian/man/go-get.1
new file mode 100644
index 0000000..8f09ed1
--- /dev/null
+++ b/debian/man/go-get.1
@@ -0,0 +1,59 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-GET 1 "2012-06-15"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go get
+.RB [\|\-a\|]
+.RB [\|\-d\|]
+.RB [\|\-fix\|]
+.RB [\|\-n\|]
+.RB [\|\-p
+.IR n \|]
+.RB [\|\-u\|]
+.RB [\|\-v\|]
+.RB [\|\-x\|]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Get downloads and installs the packages named by the import paths,
+along with their dependencies.
+
+When checking out or updating a package, get looks for a branch or tag that
+matches the locally installed version of Go. The most important rule is that if
+the local installation is running version "go1", get searches for a branch or
+tag named "go1". If no such version exists it retrieves the most recent version
+of the package.
+
+.SH OPTIONS
+.TP
+.B \-a, \-n, \-v, \-x, \-p
+The \-a, \-n, \-v, \-x, and \-p flags have the same meaning as in 'go build'
+and 'go install'.  See \fBgo-build\fP(1).
+.TP
+.B \-d
+The \-d flag instructs get to stop after downloading the packages; that is,
+it instructs get not to install the packages.
+.TP
+.B \-fix
+The \-fix flag instructs get to run the fix tool on the downloaded packages
+before resolving dependencies or building the code.
+.TP
+.B \-u
+The \-u flag instructs get to use the network to update the named packages
+and their dependencies.  By default, get uses the network to check out
+missing packages but does not use it to look for updates to existing packages.
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.P
+For more about how 'go get' finds source code to download, see \fBgo-remote\fP(7).
+.SH SEE ALSO
+.BR go-build (1),
+.BR go-install (1),
+.BR go-clean (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-install.1 b/debian/man/go-install.1
new file mode 100644
index 0000000..9e53bb2
--- /dev/null
+++ b/debian/man/go-install.1
@@ -0,0 +1,28 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-INSTALL 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go install
+.RB [
+.IR "build flags"
+.RB ]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Install compiles and installs the packages named by the import paths,
+along with their dependencies.
+.P
+For more about the build flags, see \fBgo-build\fP(1).
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.SH SEE ALSO
+.BR go-build (1),
+.BR go-get (1),
+.BR go-clean (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-list.1 b/debian/man/go-list.1
new file mode 100644
index 0000000..b97c250
--- /dev/null
+++ b/debian/man/go-list.1
@@ -0,0 +1,104 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GO-LIST 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go list
+.RB [\|\-e\|]
+.RB [\|\-f
+.IR format \|]
+.RB [\|\-json\|]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+List lists the packages named by the import paths, one per line.
+
+The default output shows the package import path:
+
+.Vb 6
+\&      code.google.com/p/google-api-go-client/books/v1
+\&      code.google.com/p/goauth2/oauth
+\&      code.google.com/p/sqlite
+.Ve
+
+.SH OPTIONS
+
+.TP
+.B \-f
+The \-f flag specifies an alternate format for the list,
+using the syntax of package template.  The default output
+is equivalent to \-f '{{.ImportPath}}'.  The struct
+being passed to the template is:
+
+.Vb 6
+\&      type Package struct {
+\&          Dir        string // directory containing package sources
+\&          ImportPath string // import path of package in dir
+\&          Name       string // package name
+\&          Doc        string // package documentation string
+\&          Target     string // install path
+\&          Goroot     bool   // is this package in the Go root?
+\&          Standard   bool   // is this package part of the standard Go library?
+\&          Stale      bool   // would 'go install' do anything for this package?
+\&          Root       string // Go root or Go path dir containing this package
+\&      
+\&          // Source files
+\&          GoFiles  []string  // .go source files (excluding CgoFiles, TestGoFiles, XTestGoFiles)
+\&          CgoFiles []string  // .go sources files that import "C"
+\&          CFiles   []string  // .c source files
+\&          HFiles   []string  // .h source files
+\&          SFiles   []string  // .s source files
+\&          SysoFiles []string // .syso object files to add to archive
+\&      
+\&          // Cgo directives
+\&          CgoCFLAGS    []string // cgo: flags for C compiler
+\&          CgoLDFLAGS   []string // cgo: flags for linker
+\&          CgoPkgConfig []string // cgo: pkg-config names
+\&      
+\&          // Dependency information
+\&          Imports []string // import paths used by this package
+\&          Deps    []string // all (recursively) imported dependencies
+\&      
+\&          // Error information
+\&          Incomplete bool            // this package or a dependency has an error
+\&          Error      *PackageError   // error loading package
+\&          DepsErrors []*PackageError // errors loading dependencies
+\&      
+\&          TestGoFiles  []string // _test.go files in package
+\&          TestImports  []string // imports from TestGoFiles
+\&          XTestGoFiles []string // _test.go files outside package
+\&          XTestImports []string // imports from XTestGoFiles
+\&      }
+.Ve
+.TP
+.B \-json
+The \-json flag causes the package data to be printed in JSON format
+instead of using the template format.
+.TP
+.B \-e
+The \-e flag changes the handling of erroneous packages, those that
+cannot be found or are malformed.  By default, the list command
+prints an error to standard error for each erroneous package and
+omits the packages from consideration during the usual printing.
+With the \-e flag, the list command never prints errors to standard
+error and instead processes the erroneous packages with the usual
+printing.  Erroneous packages will have a non-empty ImportPath and
+a non-nil Error field; other information may or may not be missing
+(zeroed).
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-packages.7 b/debian/man/go-packages.7
new file mode 100644
index 0000000..ab6078d
--- /dev/null
+++ b/debian/man/go-packages.7
@@ -0,0 +1,66 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GO-PACKAGES 7 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH DESCRIPTION
+Many commands apply to a set of packages:
+
+.Vb 6
+\&      go action [packages]
+.Ve
+
+Usually, [packages] is a list of import paths.
+
+An import path that is a rooted path or that begins with
+a . or .. element is interpreted as a file system path and
+denotes the package in that directory.
+
+Otherwise, the import path P denotes the package found in
+the directory DIR/src/P for some DIR listed in the GOPATH
+environment variable (see 'go help gopath'). 
+
+If no import paths are given, the action applies to the
+package in the current directory.
+
+The special import path "all" expands to all package directories
+found in all the GOPATH trees.  For example, 'go list all' 
+lists all the packages on the local system.
+
+The special import path "std" is like all but expands to just the
+packages in the standard Go library.
+
+An import path is a pattern if it includes one or more "..." wildcards,
+each of which can match any string, including the empty string and
+strings containing slashes.  Such a pattern expands to all package
+directories found in the GOPATH trees with names matching the
+patterns.  As a special case, x/... matches x as well as x's subdirectories.
+For example, net/... expands to net and packages in its subdirectories.
+
+An import path can also name a package to be downloaded from
+a remote repository.  Run 'go help remote' for details.
+
+Every package in a program must have a unique import path.
+By convention, this is arranged by starting each path with a
+unique prefix that belongs to you.  For example, paths used
+internally at Google all begin with 'google', and paths
+denoting remote repositories begin with the path to the code,
+such as 'code.google.com/p/project'.
+
+As a special case, if the package list is a list of .go files from a
+single directory, the command is applied to a single synthesized
+package made up of exactly those files, ignoring any build constraints
+in those files and ignoring any other files in the directory.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-path.7 b/debian/man/go-path.7
new file mode 100644
index 0000000..13f696a
--- /dev/null
+++ b/debian/man/go-path.7
@@ -0,0 +1,77 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GO-PATH 7 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH DESCRIPTION
+The Go path is used to resolve import statements.
+It is implemented by and documented in the go/build package.
+
+The GOPATH environment variable lists places to look for Go code.
+On Unix, the value is a colon-separated string.
+On Windows, the value is a semicolon-separated string.
+On Plan 9, the value is a list.
+
+GOPATH must be set to build and install packages outside the
+standard Go tree.
+
+Each directory listed in GOPATH must have a prescribed structure:
+
+The src/ directory holds source code.  The path below 'src'
+determines the import path or executable name.
+
+The pkg/ directory holds installed package objects.
+As in the Go tree, each target operating system and
+architecture pair has its own subdirectory of pkg
+(pkg/GOOS_GOARCH).
+
+If DIR is a directory listed in the GOPATH, a package with
+source in DIR/src/foo/bar can be imported as "foo/bar" and
+has its compiled form installed to "DIR/pkg/GOOS_GOARCH/foo/bar.a".
+
+The bin/ directory holds compiled commands.
+Each command is named for its source directory, but only
+the final element, not the entire path.  That is, the
+command with source in DIR/src/foo/quux is installed into
+DIR/bin/quux, not DIR/bin/foo/quux.  The foo/ is stripped
+so that you can add DIR/bin to your PATH to get at the
+installed commands.  If the GOBIN environment variable is
+set, commands are installed to the directory it names instead
+of DIR/bin.
+
+Here's an example directory layout:
+
+.Vb 4
+\&    GOPATH=/home/user/gocode
+\&
+\&    /home/user/gocode/
+\&        src/
+\&            foo/
+\&                bar/               (go code in package bar)
+\&                    x.go
+\&                quux/              (go code in package main)
+\&                    y.go
+\&        bin/
+\&            quux                   (installed command)
+\&        pkg/
+\&            linux_amd64/
+\&                foo/
+\&                    bar.a          (installed package object)
+.Ve
+
+Go searches each directory listed in GOPATH to find source code,
+but new packages are always downloaded into the first directory 
+in the list.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-remote.7 b/debian/man/go-remote.7
new file mode 100644
index 0000000..a1ca7a9
--- /dev/null
+++ b/debian/man/go-remote.7
@@ -0,0 +1,166 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GO-REMOTE 7 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH DESCRIPTION
+An import path (see \fBgo-importpath\fP(1)) denotes a package
+stored in the local file system.  Certain import paths also
+describe how to obtain the source code for the package using
+a revision control system.
+
+A few common code hosting sites have special syntax:
+
+.TP
+.B BitBucket (Mercurial)
+.Vb 4
+\&import "bitbucket.org/user/project"
+\&import "bitbucket.org/user/project/sub/directory"
+.Ve
+
+.TP
+.B GitHub (Git)
+.Vb 4
+\&import "github.com/user/project"
+\&import "github.com/user/project/sub/directory"
+.Ve
+
+.TP
+.B Google Code Project Hosting (Git, Mercurial, Subversion)
+.Vb 4
+\&import "code.google.com/p/project"
+\&import "code.google.com/p/project/sub/directory"
+.Ve
+
+.Vb 4
+\&import "code.google.com/p/project.subrepository"
+\&import "code.google.com/p/project.subrepository/sub/directory"
+.Ve
+
+.TP
+.B Launchpad (Bazaar)
+
+.Vb 4
+\&import "launchpad.net/project"
+\&import "launchpad.net/project/series"
+\&import "launchpad.net/project/series/sub/directory"
+.Ve
+
+.Vb 4
+\&import "launchpad.net/~user/project/branch"
+\&import "launchpad.net/~user/project/branch/sub/directory"
+.Ve
+
+.P
+For code hosted on other servers, import paths may either be qualified
+with the version control type, or the go tool can dynamically fetch
+the import path over https/http and discover where the code resides
+from a <meta> tag in the HTML.
+
+To declare the code location, an import path of the form
+
+.Vb 6
+\&    repository.vcs/path
+.Ve
+
+specifies the given repository, with or without the .vcs suffix,
+using the named version control system, and then the path inside
+that repository.  The supported version control systems are:
+
+.TP
+.B Bazaar
+ .bzr
+.TP
+.B Git
+ .git
+.TP
+.B Mercurial
+ .hg
+.TP
+.B Subversion
+ .svn
+
+.P
+For example,
+
+.Vb 6
+\&    import "example.org/user/foo.hg"
+.Ve
+
+denotes the root directory of the Mercurial repository at
+example.org/user/foo or foo.hg, and
+
+.Vb 6
+\&    import "example.org/repo.git/foo/bar"
+.Ve
+
+denotes the foo/bar directory of the Git repository at
+example.com/repo or repo.git.
+
+When a version control system supports multiple protocols,
+each is tried in turn when downloading.  For example, a Git
+download tries git://, then https://, then http://.
+
+If the import path is not a known code hosting site and also lacks a
+version control qualifier, the go tool attempts to fetch the import
+over https/http and looks for a <meta> tag in the document's HTML
+<head>.
+
+The meta tag has the form:
+
+.Vb 6
+\&    <meta name="go-import" content="import-prefix vcs repo-root">
+.Ve
+
+The import-prefix is the import path corresponding to the repository
+root. It must be a prefix or an exact match of the package being
+fetched with "go get". If it's not an exact match, another http
+request is made at the prefix to verify the <meta> tags match.
+
+The vcs is one of "git", "hg", "svn", etc,
+
+The repo-root is the root of the version control system
+containing a scheme and not containing a .vcs qualifier.
+
+For example,
+
+.Vb 6
+\&    import "example.org/pkg/foo"
+.Ve
+
+will result in the following request(s):
+
+.Vb 6
+\&    https://example.org/pkg/foo?go-get=1 (preferred)
+\&    http://example.org/pkg/foo?go-get=1  (fallback)
+.Ve
+
+If that page contains the meta tag
+
+.Vb 6
+\&    <meta name="go-import" content="example.org git https://code.org/r/p/exproj">
+.Ve
+
+the go tool will verify that https://example.org/?go-get=1 contains the
+same meta tag and then git clone https://code.org/r/p/exproj into
+GOPATH/src/example.org.
+
+New downloaded packages are written to the first directory
+listed in the GOPATH environment variable (see \fBgo-path\fP(1)).
+
+The go command attempts to download the version of the
+package appropriate for the Go release being used.
+See \fBgo-install\fP(1) for more.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-run.1 b/debian/man/go-run.1
new file mode 100644
index 0000000..a43f503
--- /dev/null
+++ b/debian/man/go-run.1
@@ -0,0 +1,24 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-RUN 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go run
+.RB [
+.IR "build flags"
+.RB ]
+.IR gofiles...
+.RB [
+.IR arguments...
+.RB ]
+.SH DESCRIPTION
+Run compiles and runs the main package comprising the named Go source files.
+.P
+For more about build flags, see \fBgo-build\fP(1).
+.SH SEE ALSO
+.BR go-build (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-test.1 b/debian/man/go-test.1
new file mode 100644
index 0000000..3fdfa20
--- /dev/null
+++ b/debian/man/go-test.1
@@ -0,0 +1,75 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GO-TEST 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go test
+.RB [\|\-c\|]
+.RB [\|\-i\|]
+.RB [
+.IR "build flags"
+.RB ]
+.RB [
+.IR packages
+.RB ]
+.RB [
+.IR "flags for test binary"
+.RB ]
+.SH DESCRIPTION
+"Go test" automates testing the packages named by the import paths.
+It prints a summary of the test results in the format:
+
+.Vb 6
+\&      ok   archive/tar   0.011s
+\&      FAIL archive/zip   0.022s
+\&      ok   compress/gzip 0.033s
+\&      ...
+.Ve
+
+followed by detailed output for each failed package.
+
+"Go test" recompiles each package along with any files with names matching
+the file pattern "*_test.go".  These additional files can contain test functions,
+benchmark functions, and example functions.  See \fBgo-testfunc\fP(7) for more.
+
+By default, go test needs no arguments.  It compiles and tests the package
+with source in the current directory, including tests, and runs the tests.
+
+The package is built in a temporary directory so it does not interfere with the
+non-test installation.
+
+.SH OPTIONS
+
+In addition to the build flags, the flags handled by 'go test' itself are:
+
+.TP
+.B \-c
+Compile the test binary to pkg.test but do not run it.
+.TP
+.B \-i
+Install packages that are dependencies of the test.
+Do not run the test.
+.P
+The test binary also accepts flags that control execution of the test; these
+flags are also accessible by 'go test'.  See \fBgo-testflag\fP(7) for details.
+.P
+For more about build flags, see \fBgo-build\fP(1).
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.SH SEE ALSO
+.BR go-build (1),
+.BR go-vet (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-testflag.7 b/debian/man/go-testflag.7
new file mode 100644
index 0000000..f2b9f49
--- /dev/null
+++ b/debian/man/go-testflag.7
@@ -0,0 +1,87 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GO-TESTFLAG 7 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH DESCRIPTION
+The 'go test' command takes both flags that apply to 'go test' itself
+and flags that apply to the resulting test binary.
+
+The test binary, called pkg.test, where pkg is the name of the
+directory containing the package sources, has its own flags:
+
+.TP
+.B \-test.v
+Verbose output: log all tests as they are run.
+.TP
+.B \-test.run pattern
+Run only those tests and examples matching the regular expression.
+.TP
+.B \-test.bench pattern
+Run benchmarks matching the regular expression.
+By default, no benchmarks run.
+.TP
+.B \-test.cpuprofile cpu.out
+Write a CPU profile to the specified file before exiting.
+.TP
+.B \-test.memprofile mem.out
+Write a memory profile to the specified file when all tests
+are complete.
+.TP
+.B \-test.memprofilerate n
+Enable more precise (and expensive) memory profiles by setting
+runtime.MemProfileRate.  See 'godoc runtime MemProfileRate'.
+To profile all memory allocations, use \-test.memprofilerate=1
+and set the environment variable GOGC=off to disable the
+garbage collector, provided the test can run in the available
+memory without garbage collection.
+.TP
+.B \-test.parallel n
+Allow parallel execution of test functions that call t.Parallel.
+The value of this flag is the maximum number of tests to run
+simultaneously; by default, it is set to the value of GOMAXPROCS.
+.TP
+.B \-test.short
+Tell long-running tests to shorten their run time.
+It is off by default but set during all.bash so that installing
+the Go tree can run a sanity check but not spend time running
+exhaustive tests.
+.TP
+.B \-test.timeout t
+If a test runs longer than t, panic.
+.TP
+.B \-test.benchtime n
+Run enough iterations of each benchmark to take n seconds.
+The default is 1 second.
+.TP
+.B \-test.cpu 1,2,4
+Specify a list of GOMAXPROCS values for which the tests or
+benchmarks should be executed.  The default is the current value
+of GOMAXPROCS.
+.P
+For convenience, each of these \-test.X flags of the test binary is
+also available as the flag \-X in 'go test' itself.  Flags not listed
+here are passed through unaltered.  For instance, the command
+
+.Vb 6
+\&      go test \-x \-v \-cpuprofile=prof.out \-dir=testdata \-update
+.Ve
+
+will compile the test binary and then run it as
+
+.Vb 6
+\&      pkg.test \-test.v \-test.cpuprofile=prof.out \-dir=testdata \-update
+.Ve
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-testfunc.7 b/debian/man/go-testfunc.7
new file mode 100644
index 0000000..839fe15
--- /dev/null
+++ b/debian/man/go-testfunc.7
@@ -0,0 +1,63 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GO-TESTFUNC 7 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH DESCRIPTION
+The 'go test' command expects to find test, benchmark, and example functions
+in the "*_test.go" files corresponding to the package under test.
+
+A test function is one named TestXXX (where XXX is any alphanumeric string
+not starting with a lower case letter) and should have the signature,
+
+.Vb 6
+\&      func TestXXX(t *testing.T) { ... }
+.Ve
+
+A benchmark function is one named BenchmarkXXX and should have the signature,
+
+.Vb 6
+\&      func BenchmarkXXX(b *testing.B) { ... }
+.Ve
+
+An example function is similar to a test function but, instead of using *testing.T
+to report success or failure, prints output to os.Stdout and os.Stderr.
+That output is compared against the function's "Output:" comment, which
+must be the last comment in the function body (see example below). An
+example with no such comment, or with no text after "Output:" is compiled
+but not executed.
+
+Godoc displays the body of ExampleXXX to demonstrate the use
+of the function, constant, or variable XXX.  An example of a method M with
+receiver type T or *T is named ExampleT_M.  There may be multiple examples
+for a given function, constant, or variable, distinguished by a trailing _xxx,
+where xxx is a suffix not beginning with an upper case letter.
+
+Here is an example of an example:
+
+.Vb 6
+\&      func ExamplePrintln() {
+\&          Println("The output of\\nthis example.")
+\&          // Output: The output of
+\&          // this example.
+\&      }
+.Ve
+
+The entire test file is presented as the example when it contains a single
+example function, at least one other function, type, variable, or constant
+declaration, and no test or benchmark functions.
+
+See the documentation of the testing package for more information.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-tool.1 b/debian/man/go-tool.1
new file mode 100644
index 0000000..ebf8c26
--- /dev/null
+++ b/debian/man/go-tool.1
@@ -0,0 +1,26 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-TOOL 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go tool
+.RB [\|\-n\|]
+.IR command
+.RB [
+.IR args...
+.RB ]
+.SH DESCRIPTION
+Tool runs the go tool command identified by the arguments.
+With no arguments it prints the list of known tools.
+.SH OPTIONS
+.TP
+.B \-n
+The \-n flag causes tool to print the command that would be
+executed but not execute it.
+.P
+For more about each tool command, see 'go tool command \-h'.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-version.1 b/debian/man/go-version.1
new file mode 100644
index 0000000..2c1ebe0
--- /dev/null
+++ b/debian/man/go-version.1
@@ -0,0 +1,13 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-VERSION 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go version
+.SH DESCRIPTION
+Version prints the Go version, as reported by runtime.Version.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go-vet.1 b/debian/man/go-vet.1
new file mode 100644
index 0000000..a165fd5
--- /dev/null
+++ b/debian/man/go-vet.1
@@ -0,0 +1,35 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO-VET 1 "2012-06-15"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go vet
+.RB [\|\-n\|]
+.RB [\|\-x\|]
+.RB [
+.IR packages
+.RB ]
+.SH DESCRIPTION
+Vet runs the Go vet command on the packages named by the import paths.
+.P
+For more about vet, see 'godoc vet'.
+.P
+For more about specifying packages, see \fBgo-packages\fP(7).
+.P
+To run the vet tool with specific options, run 'go tool vet'.
+.SH OPTIONS
+.TP
+.B \-n
+The \-n flag causes tool to print the command that would be
+executed but not execute it.
+.TP
+.B \-x
+The \-x flag causes clean to print remove commands as it executes them.
+.SH SEE ALSO
+.BR go-fmt (1),
+.BR go-fix (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/go.1 b/debian/man/go.1
new file mode 100644
index 0000000..27ae4df
--- /dev/null
+++ b/debian/man/go.1
@@ -0,0 +1,66 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH GO 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+go \- tool for managing Go source code
+.SH SYNOPSIS
+.B go
+.RI command
+.RI [ arguments ]
+.SH DESCRIPTION
+The Go distribution includes a command, named \fBgo\fP, that automates the
+downloading, building, installation, and testing of Go packages and commands.
+.SH COMMANDS
+Each command is documented in its own manpage. For example, the \fBbuild\fP
+command is documented in \fBgo-build\fP(1). The commands are:
+.TP
+.B build
+compile packages and dependencies
+.TP
+.B clean
+remove object files
+.TP
+.B doc
+run godoc on package sources
+.TP
+.B env
+print Go environment information
+.TP
+.B fix
+run go tool fix on packages
+.TP
+.B fmt
+run gofmt on package sources
+.TP
+.B get
+download and install packages and dependencies
+.TP
+.B install
+compile and install packages and dependencies
+.TP
+.B list
+list packages
+.TP
+.B run
+compile and run Go program
+.TP
+.B test
+test packages
+.TP
+.B tool
+run specified go tool
+.TP
+.B version
+print Go version
+.TP
+.B vet
+run go tool vet on packages
+.SH EXAMPLES
+TODO
+.SH SEE ALSO
+.BR go-build (1),
+.BR go-clean (1).
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/godoc.1 b/debian/man/godoc.1
new file mode 100644
index 0000000..1894445
--- /dev/null
+++ b/debian/man/godoc.1
@@ -0,0 +1,209 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GODOC 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+godoc \- extracts and generates documentation for Go programs
+.SH SYNOPSIS
+.B godoc
+.RI [ flag ]
+.RI command
+.RI [
+.IR "name ..."
+.RI ]
+.SH DESCRIPTION
+Godoc extracts and generates documentation for Go programs.
+
+It has two modes.
+
+Without the \-http flag, it runs in command-line mode and prints plain
+text documentation to standard output and exits. If both a library
+package and a command with the same name exists, using the prefix cmd/
+will force documentation on the command rather than the library package.
+If the \-src flag is specified, godoc prints the exported interface of a
+package in Go source form, or the implementation of a specific exported
+language entity:
+
+.Vb 6
+\&      godoc fmt                # documentation for package fmt
+\&      godoc fmt Printf         # documentation for fmt.Printf
+\&      godoc cmd/go             # force documentation for the go command
+\&      godoc \-src fmt           # fmt package interface in Go source form
+\&      godoc \-src fmt Printf    # implementation of fmt.Printf
+.Ve
+
+In command-line mode, the \-q flag enables search queries against a godoc
+running as a webserver. If no explicit server address is specified with
+the \-server flag, godoc first tries localhost:6060 and then
+http://golang.org.
+
+.Vb 6
+\&      godoc \-q Reader
+\&      godoc \-q math.Sin
+\&      godoc \-server=:6060 \-q sin
+.Ve
+
+With the \-http flag, it runs as a web server and presents the
+documentation as a web page.
+
+.Vb 6
+\&      godoc \-http=:6060
+.Ve
+
+By default, godoc looks at the packages it finds via $GOROOT and $GOPATH
+(if set). Additional directories may be specified via the \-path flag
+which accepts a list of colon-separated paths; unrooted paths are
+relative to the current working directory. Each path is considered as an
+additional root for packages in order of appearance. The last (absolute)
+path element is the prefix for the package path. For instance, given the
+flag value:
+
+.Vb 6
+\&      path=".:/home/bar:/public"
+.Ve
+
+for a godoc started in /home/user/godoc, absolute paths are mapped to
+package paths as follows:
+
+.Vb 6
+\&      /home/user/godoc/x -> godoc/x
+\&      /home/bar/x        -> bar/x
+\&      /public/x          -> public/x
+.Ve
+
+When godoc runs as a web server and \-index is set, a search index is
+maintained. The index is created at startup.
+
+The index contains both identifier and full text search information
+(searchable via regular expressions). The maximum number of full text
+search results shown can be set with the \-maxresults flag; if set to 0,
+no full text results are shown, and only an identifier index but no full
+text search index is created.
+
+The presentation mode of web pages served by godoc can be controlled
+with the "m" URL parameter; it accepts a comma-separated list of flag
+names as value:
+
+.TP
+.B all
+show documentation for all declarations, not just the exported ones
+.TP
+.B methods
+show all embedded methods, not just those of unexported anonymous fields
+.TP
+.B src
+show the original source code rather then the extracted documentation
+.TP
+.B text
+present the page in textual (command-line) form rather than HTML
+.TP
+.B flat
+present flat (not indented) directory listings using full paths
+.P
+For instance, http://golang.org/pkg/math/big/?m=all,text shows the
+documentation for all (not just the exported) declarations of package
+big, in textual form (as it would appear when using godoc from the
+command line: "godoc \-src math/big .*").
+
+By default, godoc serves files from the file system of the underlying
+OS. Instead, a .zip file may be provided via the \-zip flag, which
+contains the file system to serve. The file paths stored in the .zip
+file must use slash ('/') as path separator; and they must be unrooted.
+$GOROOT (or \-goroot) must be set to the .zip file directory path
+containing the Go root directory. For instance, for a .zip file created
+by the command:
+
+.Vb 6
+\&      zip go.zip $HOME/go
+.Ve
+
+one may run godoc as follows:
+
+.Vb 6
+\&      godoc \-http=:6060 \-zip=go.zip \-goroot=$HOME/go
+.Ve
+
+See "Godoc: documenting Go code" for how to write good comments for
+godoc: http://golang.org/doc/articles/godoc_documenting_go_code.html
+
+.SH OPTIONS
+
+.TP
+.B \-v
+verbose mode
+.TP
+.B \-q
+arguments are considered search queries: a legal query is a
+single identifier (such as ToLower) or a qualified identifier
+(such as math.Sin).
+.TP
+.B \-src
+print (exported) source in command-line mode
+.TP
+.B \-tabwidth=4
+width of tabs in units of spaces
+.TP
+.B \-timestamps=true
+show timestamps with directory listings
+.TP
+.B \-index
+enable identifier and full text search index
+(no search box is shown if \-index is not set)
+.TP
+.B \-index_files=""
+glob pattern specifying index files; if not empty,
+the index is read from these files in sorted order
+.TP
+.B \-index_throttle=0.75
+index throttle value; a value of 0 means no time is allocated
+to the indexer (the indexer will never finish), a value of 1.0
+means that index creation is running at full throttle (other
+goroutines may get no time while the index is built)
+.TP
+.B \-write_index=false
+write index to a file; the file name must be specified with
+\-index_files
+.TP
+.B \-maxresults=10000
+maximum number of full text search results shown
+(no full text index is built if maxresults <= 0)
+.TP
+.B \-path=""
+additional package directories (colon-separated)
+.TP
+.B \-html
+print HTML in command-line mode
+.TP
+.B \-goroot=$GOROOT
+Go root directory
+.TP
+.B \-http=addr
+HTTP service address (e.g., '127.0.0.1:6060' or just ':6060')
+.TP
+.B \-server=addr
+webserver address for command line searches
+.TP
+.B \-templates=""
+directory containing alternate template files; if set,
+the directory may provide alternative template files
+for the files in $GOROOT/lib/godoc
+.TP
+.B \-url=path
+print to standard output the data that would be served by
+an HTTP request for path
+.TP
+.B \-zip=""
+zip file providing the file system to serve; disabled if empty
+
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).
diff --git a/debian/man/gofmt.1 b/debian/man/gofmt.1
new file mode 100644
index 0000000..969a245
--- /dev/null
+++ b/debian/man/gofmt.1
@@ -0,0 +1,108 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.TH GOFMT 1 "2012-05-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+gofmt \- formats Go programs
+.SH SYNOPSIS
+.B gofmt
+.RI [ flags ]
+.RI [
+.IR "path ..."
+.RI ]
+.SH 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.
+
+.SH OPTIONS
+.TP
+.B \-d
+Do not print reformatted sources to standard output.
+If a file's formatting is different than gofmt's, print diffs
+to standard output.
+.TP
+.B \-e
+Print all (including spurious) errors.
+.TP
+.B \-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.
+.TP
+.B \-r rule
+Apply the rewrite rule to the source before reformatting.
+.TP
+.B \-s
+Try to simplify code (after applying the rewrite rule, if any).
+.TP
+.B \-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.
+.P
+Formatting control flags:
+.TP
+.B \-comments=true
+Print comments; if false, all comments are elided from the output.
+.TP
+.B \-tabs=true
+Indent with tabs; if false, spaces are used instead.
+.TP
+.B \-tabwidth=8
+Tab width in spaces.
+.P
+
+The rewrite rule specified with the \-r flag must be a string of the
+form:
+
+.Vb 6
+\&      pattern -> replacement
+.Ve
+
+Both pattern and replacement must be valid Go expressions. In the
+pattern, single-character lowercase identifiers serve as wildcards
+matching 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.
+.SH EXAMPLES
+To check files for unnecessary parentheses:
+
+.Vb 6
+\&      gofmt \-r '(a) \-> a' \-l *.go
+.Ve
+
+To remove the parentheses:
+
+.Vb 6
+\&      gofmt \-r '(a) \-> a' \-w *.go
+.Ve
+
+To convert the package tree from explicit slice upper bounds to implicit
+ones:
+
+.Vb 6
+\&      gofmt \-r 'α[β:len(α)] \-> α[β:]' \-w $GOROOT/src/pkg
+.Ve
+.SH BUGS
+The implementation of \-r is a bit slow.
+.SH AUTHOR
+.PP
+This manual page was written by Michael Stapelberg <stapelberg at debian.org>,
+for the Debian project (and may be used by others).

-- 
Packaging for Google Go



More information about the pkg-golang-commits mailing list