Clone this wiki locally
IDEs and Plugins for Go
- BBedit: commercial text editor for macOS.
Brackets: a modern, open source text editor that understands web design.
- go-ide Go support with autocompletion through gocode.
- Eclipse IDE: a very popular, open-source, cross-platform IDE. GoClipse plugin enables Go support.
- Emacs: Extensible and customizable text editor.
- Gedit: Official text editor for the GNOME Desktop. Plugin for Auto-Completion and Code-Formatting available.
- Geany: Geany is a text editor using the GTK2 toolkit with basic features of an integrated development environment. Supports Go syntax highlighting out of the box.
- Gocode: An autocompletion daemon that includes support for emacs and vim.
- godef: Prints the source location of definitions in Go programs. Integrates with acme, emacs, vim and SublimeText.
- GoLand: Jetbrains Golang IDE (commercial)
- Gotags: Generates ctags-compatible tag files
- GoWorks: NetBeans based open source Go IDE.
- IntelliJ IDEA: Commercial cross-platform IDE.
- jEdit: open-source, cross-platform text editor written in Java. Syntax-highlighting file available.
- joe: JOE is a full featured terminal-based screen editor which is distributed under the GNU General Public License (GPL). Supports Go syntax highlighting out of the box.
- Komodo IDE Powerful cross-platform IDE with built-in Go support
- Komodo Edit Powerful cross-platform text editor, Go-lang support available via plugin
- Lime Text: Developed in Go, aims to be a Free and open-source software alternative to Sublime Text. Not quite ready yet but welcoming contributions to the progress. https://github.com/limetext/lime
- LiteIDE: A simple, open source and cross-platform Go IDE
Notepad++: Free source code editor for Windows.
- notepadplus-go Syntax highlighting, functions list panel (for code browsing), code completion for keywords & builtins.
- The GOnpp plugin (available via Notepad++'s built-in Plugin Manager) provides code completion (requires gocode), function calltips, goimports integration, and keyboard shortcuts for common go commands. [sources, binaries].
- GoAutocomplete is another code completion plugin.
- Sublime Text: Commercial text editor.
- Textadept: Textadept is a fast, minimalist, and remarkably extensible cross-platform text editor. Supports Go syntax highlighting out of the box.
- TextMate: Commercial text editor for macOS. Source code available under the GPLv3. Bundle for Go available.
- TextWrangler: free little brother of BBedit. Both the Go module and Go.bbpackage for BBedit work for TextWrangler as well.
Vim & Neovim: Vi Improved. There are a number of plugins available that make editing Go code easier.
- The vim-go plugin includes misc/vim and has many other new improvements.
- The Syntastic plugin gives instant feedback on compile errors
- The tagbar plugin uses Gotags, above, to show an outline of the current file
- A vim compiler plugin for syntax checking
- A vim-godef plugin integrates with the 'godef' tool, above
- A vim-go-extra is vim plugin based on misc/vim in go repository. This works fine on windows too!
- A vim-bootstrap is generator provides a simple method of generating a .vimrc configuration for vim
- Visual Studio: Commercial IDE by Microsoft for Windows. A Go Language Support extension is available for Visual Studio 2010, 2012 and 2013 Pro, Enterprise, and Community.
- Visual Studio Code: Free & open source IDE by Microsoft. Visual Studio Code supports Go syntax highlighting out of the box. Additional features are provided by the vscode-go plugin.
- GNU Nano: a simple .nanorc for GNU Nano ("pico").
- Zeus: Commercial IDE for Go (Windows or Linux with Wine).
Cloud Base IDEs
Currently Wide is the only "cloud IDE" that supports go version 1.8.
- Cloud9: "blank" template includes go 1.7.1.
- CodeEnv: A cloud-based IDE. Supports go1.5 out of the box, which is not something I'd describe as "full Go support".
- Wide: A Web-based IDE for Teams using Go programming language/Golang.
Other environments such as Xcode and Kate also had minor support checked in to the Go tree up until Go 1.3. If you want these, search the standard repository's history. Here is a link: https://github.com/golang/go/tree/release-branch.go1.3/misc