go-plus 0,2,1,-1,3,0,2 travis-ci npm

An Enhanced Go Experience For The Atom Editor

go-plus Build Status Build status Slack Slack

Greenkeeper badge

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 and go env
  • Autocomplete using gocode
  • Format your code with gofmt, goimports, or goreturns; optionally run one of these tools on save of any .go file
  • Run go install . and go test -c -o {tempdir} . to verify your code can compile and to keep gocode suggestions up to date
  • Run a variety of linters (e.g. golint, vet, etc.) against your code using gometalinter
  • Run tests, display test output, and display test coverage using go test -coverprofile
  • Display documentation for identifiers in source code using gogetdoc
  • Rename the symbol under your cursor using gorename
  • Go to definition using guru or godef
  • Highlight occurrences of an identifier using guru
  • Find usages of an identifier using guru

You can add debug functionality to Atom by installing the following package:


How Are The Builds Performed?

The following commands are run for the directory of the current file: * go install . (for normal .go files) * go test -o {tmpdir} -c . (for _test.go files)

Why Are You Running go install Instead Of go build?

gocode (and a few other tools, like gotype) work on .a files (i.e. the package object archive), and the way to keep these up to date is to run go install periodically. This ensures your autocomplete suggestions are kept up to date without having to resort to gocode set autobuild true :tada:.

But What About gb?

We are open to suggestions for detecting a package which is built with gb; please feel free to submit a pull request that detects a gb package without any explicit configuration and runs it.


The package has CI for OS X, Windows and Ubuntu.

Installing Missing Tools

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 golang.org/x/tools/cmd/gorename
go get -u github.com/sqs/goreturns
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
go get -u golang.org/x/tools/cmd/guru

Having Issues?

Please consult the FAQ prior to opening an issue: https://github.com/joefitzgerald/go-plus/wiki/FAQ

If you have an issue with debugging, file an issue with go-debug here.



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 :heart:. You are awesome!


Contributions are greatly appreciated. Please fork this repository, make your changes, and open a pull request. See Contributing for detailed instructions.

Related Repositories



An Enhanced Go Experience For The Atom Editor ...



Cocoa noise drawing code plus a ready to go noise view! ...



Rust + Go ...



the unofficial Pokémon Go Plus SDK ...



A paste tool written in Golang (plus some API libraries for pastebin like sites). ...

Top Contributors

joefitzgerald simurai rubyist zmb3 greensnark soygul hansrodtang vanackere ma314smith fourcube philk carlosbrando andysumskoy manucheri alex dgryski danielchatfield db47h derekperkins tucnak JohannWeging kamilszymanski mgutz miguel250 svanharmelen skibum55 gitter-badger lloiser


package version
ansi-style-parser ^1.1.0
etch 0.12.4
etch-octicon ^1.0.0
fs-extra ^3.0.0
lodash ^4.17.4
semver ^5.3.0
temp ^0.8.3
dev standard ^10.0.2


-   v4.3.2 zip tar
-   v4.3.1 zip tar
-   v4.3.0 zip tar
-   v4.2.0 zip tar
-   v4.1.0 zip tar
-   v4.0.1 zip tar
-   v4.0.0 zip tar
-   v3.5.4 zip tar
-   v3.5.3 zip tar
-   v3.5.2 zip tar
-   v3.5.1 zip tar
-   v3.5.0 zip tar
-   v3.4.5 zip tar
-   v3.4.4 zip tar
-   v3.4.3 zip tar
-   v3.4.2 zip tar
-   v3.4.1 zip tar
-   v3.4.0 zip tar
-   v3.3.12 zip tar
-   v3.3.11 zip tar
-   v3.3.10 zip tar
-   v3.3.9 zip tar
-   v3.3.8 zip tar
-   v3.3.7 zip tar
-   v3.3.6 zip tar
-   v3.3.5 zip tar
-   v3.3.4 zip tar
-   v3.3.3 zip tar
-   v3.3.2 zip tar
-   v3.3.1 zip tar