An Improved Go Experience For The Atom Editor
This package includes the following functionality:
- Display information about your current go installation, by running
go version
andgo env
- Format your code with
gofmt
,goimports
, orgoreturns
; optionally run one of these tools on save of any.go
file - Run tests, display test output, and display test coverage using
go test -coverprofile
This package adds extra functionality by installing the following additional packages:
- autocomplete-go: Autocomplete using
gocode
- builder-go: Run
go install .
andgo test -c -o {tempdir} .
to verify your code can compile and to keep gocode suggestions up to date - gometalinter-linter: Run a variety of linters (e.g.
golint
,vet
,gotype
, etc.) against your code - navigator-go: Go to definition using
godef
- gorename: Rename the symbol under your cursor using
gorename
- go-debug: Debug your package / tests using
delve
- godoc: Display documentation for identifiers in source code using
gogetdoc
The package has CI for OS X, Windows and Ubuntu.
If you are missing any required tools, you may be prompted to install them. You can also manually install the required tools in your terminal:
go get -u golang.org/x/tools/cmd/goimports
go get -u github.com/sqs/goreturns
go get -u golang.org/x/tools/cmd/cover
go get -u github.com/nsf/gocode
go get -u github.com/alecthomas/gometalinter
go get -u github.com/zmb3/gogetdoc
go get -u github.com/rogpeppe/godef
You can file any go-plus
issues here. You can optionally file an issue in a downstream repository for anything related to a bundled package:
runtime detection
: create issueautocompletion / gocode
: create issuebuilding
: create issuelinting / gometalinter
: create issuego to definition / godef
: create issuegorename
: create issuego-debug
: create issuegodoc
: create issue
- Joe Fitzgerald (@joefitzgerald)
- Zac Bergquist (@zmb3)
- Lukas Beranek (@lloiser)
A list of contributors can be found at https://github.com/joefitzgerald/go-plus/graphs/contributors. Thank you so much to everyone has contributed to the package ❤️. You are awesome!
Contributions are greatly appreciated. Please fork this repository, make your changes, and open a pull request. See Contributing for detailed instructions.