All Projects → joefitzgerald → Go Plus

joefitzgerald / Go Plus

Licence: other
An Enhanced Go Experience For The Atom Editor

Programming Languages

javascript
184084 projects - #8 most used programming language
go
31211 projects - #10 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to Go Plus

Zb
an opinionated repo based tool for linting, testing and building go source
Stars: ✭ 111 (-92.69%)
Mutual labels:  build, lint, test
Platformio Atom Ide
PlatformIO IDE for Atom: The next generation integrated development environment for IoT
Stars: ✭ 475 (-68.73%)
Mutual labels:  build, ide, atom
knuckle
Project configuration handler, without efforts
Stars: ✭ 14 (-99.08%)
Mutual labels:  lint, test, format
Gogradle
A Gradle Plugin Providing Full Support for Go
Stars: ✭ 712 (-53.13%)
Mutual labels:  build, ide, test
Laravel Whoops Editor
Laravel Whoops Editor helps to open your code editor from exception stack trace.
Stars: ✭ 83 (-94.54%)
Mutual labels:  ide, editor
Swoole Ide Helper
Auto completion, trigger suggest and view docs for Swoole in editor.
Stars: ✭ 1,116 (-26.53%)
Mutual labels:  ide, autocomplete
Atom Linter Alex
Linter plugin using alex to catch insensitive, inconsiderate writing
Stars: ✭ 87 (-94.27%)
Mutual labels:  lint, atom
Texstudio
TeXstudio is a fully featured LaTeX editor. Our goal is to make writing LaTeX documents as easy and comfortable as possible.
Stars: ✭ 1,300 (-14.42%)
Mutual labels:  ide, editor
O
🌀 Text editor suitable for writing git commit messages and editing Markdown files. Can build executables and jump to errors at the press of `ctrl-space`, for several programming languages. Can format code with `ctrl-w`. Provides general syntax highlighting, rainbow parenthesis and cut/paste portals. o is intentionally limited to VT100.
Stars: ✭ 54 (-96.45%)
Mutual labels:  editor, autocomplete
Develnext
JavaFX and IDE for JPHP (only russian localization, english - in progress)
Stars: ✭ 89 (-94.14%)
Mutual labels:  ide, editor
Packcheck
Universal build and CI testing for Haskell packages
Stars: ✭ 91 (-94.01%)
Mutual labels:  build, test
Basicpawn
BasicPawn - SourcePawn Editor
Stars: ✭ 60 (-96.05%)
Mutual labels:  ide, editor
Atom Latex
The only LaTeX package you need for typesetting with Atom.
Stars: ✭ 60 (-96.05%)
Mutual labels:  atom, autocomplete
Atom Supercollider
SuperCollider development environment for Atom.io
Stars: ✭ 85 (-94.4%)
Mutual labels:  ide, atom
Atom Auto Prettier
An Atom package that semantically reformats Javascript based on the window size
Stars: ✭ 60 (-96.05%)
Mutual labels:  atom, format
Rebar3
Erlang build tool that makes it easy to compile and test Erlang applications and releases.
Stars: ✭ 1,295 (-14.75%)
Mutual labels:  build, test
Retro
[Work in Progress] Minimalist Vim Based Editor for the 30th Century
Stars: ✭ 103 (-93.22%)
Mutual labels:  atom, editor
Superblocks Lab
Superblocks Lab for DApp development
Stars: ✭ 100 (-93.42%)
Mutual labels:  ide, editor
Orchestra
One language to be RegExp's Successor. Visually readable and rich, technically safe and extended, naturally scalable, advanced, and optimized
Stars: ✭ 103 (-93.22%)
Mutual labels:  ide, editor
Php Language Server
PHP Implementation of the VS Code Language Server Protocol 🆚↔🖥
Stars: ✭ 1,019 (-32.92%)
Mutual labels:  ide, autocomplete

go-plus Build Status Build status Slack Slack

Greenkeeper badge

An Improved Go Experience For The Atom Editor

image

Overview

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 compiles and to keep gocode suggestions up to date
  • Run a variety of linters (e.g. golint, vet, etc.) against your code using gometalinter, revive or golangci-lint
  • 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:

Builds

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.

Platforms

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/mdempsky/gocode
go get -u github.com/alecthomas/gometalinter
go get -u github.com/mgechev/revive
go get -u github.com/golangci/golangci-lint/cmd/golangci-lint
go get -u github.com/zmb3/gogetdoc
go get -u github.com/zmb3/goaddimport
go get -u github.com/rogpeppe/godef
go get -u golang.org/x/tools/cmd/guru
go get -u github.com/fatih/gomodifytags
go get -u github.com/tpng/gopkgs
go get -u github.com/ramya-rao-a/go-outline

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.

Maintainers

Contributors

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!

Contributing

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].