goimports
commandThis package is not in the latest version of its module.
Details
Validgo.mod file
The Go module system was introduced in Go 1.11 and is the official dependency management solution for Go.
Redistributable license
Redistributable licenses place minimal restrictions on how software can be used, modified, and redistributed.
Tagged version
Modules with tagged versions give importers more predictable builds.
Stable version
When a project reaches major version v1 it is considered stable.
- Learn more about best practices
Repository
Links
Documentation¶
Overview¶
Command goimports updates your Go import lines,adding missing ones and removing unreferenced ones.
$ go install golang.org/x/tools/cmd/goimports@latest
In addition to fixing imports, goimports also formatsyour code in the same style as gofmt so it can be usedas a replacement for your editor's gofmt-on-save hook.
For emacs, make sure you have the latest go-mode.el:
https://github.com/dominikh/go-mode.el
Then in your .emacs file:
(setq gofmt-command "goimports")(add-hook 'before-save-hook 'gofmt-before-save)
For vim, set "gofmt_command" to "goimports":
https://golang.org/change/39c724dd7f252https://golang.org/wiki/IDEsAndTextEditorPluginsetc
For GoSublime, follow the steps described here:
http://michaelwhatcott.com/gosublime-goimports/
For other editors, you probably know what to do.
To exclude directories in your $GOPATH from being scanned for Gofiles, goimports respects a configuration file at$GOPATH/src/.goimportsignore which may contain blank lines, commentlines (beginning with '#'), or lines naming a directory relative tothe configuration file to ignore when scanning. No globbing or regexpatterns are allowed. Use the "-v" verbose flag to verify it'sworking and see what goimports is doing.
File bugs or feature requests at:
https://golang.org/issues/new?title=x/tools/cmd/goimports:+
Happy hacking!