Go Wiki: Go 的编辑器和 IDE
常用
Go 开发者调查显示这些是最常用的编辑器。
-
Visual Studio Code:微软提供的免费开源 IDE。Visual Studio Code 开箱即支持 Go 语法高亮。官方的 vscode-go 插件提供了附加功能。
-
GoLand:JetBrains 推出的跨平台、功能齐全的 Go IDE(商业软件)。学生、教师、开源开发者和用户组可免费使用(详见)。也可作为 IntelliJ IDEA Ultimate 的一部分获取。
-
Vim 和 Neovim:改进版 Vi。有许多可用插件可以使编辑 Go 代码更容易。
- vim-go 插件包含 misc/vim 并有许多其他新改进。
- ALE 用于 linting(代码检查),异步
- coc 用于代码补全
- tagbar 插件使用上面的 Gotags 来显示当前文件的结构大纲
- 用于语法检查的 Vim 编译器插件
- vim-godef 插件与上面的 ‘godef’ 工具集成
- vim-go-extra 是基于 go 仓库中 misc/vim 的 Vim 插件。这在 Windows 上也能正常工作!
- go-ide 是一个 Neovim 配置文件,它将 Go 相关插件绑定在一起,使自动补全、自动导入、代码片段、代码格式化以及文件搜索/浏览变得更容易。
- govim 是一个由 LSP 驱动的 Vim Go 开发插件,使用 Vim8 的通道支持以 Go 语言编写。
-
Emacs:可扩展和可定制的文本编辑器。它具有通用的 LSP 支持,与官方 Go 语言服务器 gopls 配合良好。
- LSP Mode 提供了“开箱即用”的 LSP 支持,许多集成默认启用,并由 lsp-mode 本身提供一些附加行为。
- Eglot 以最低侵入性的方式提供 LSP 支持,专注于与其他成熟包的顺畅集成。它提供了一些自己的 eglot- 命令,但默认不提供额外的键绑定。
- 模式文件维护在 https://github.com/dominikh/go-mode.el。
- GoFlyMake Flymake 风格的 Go 语法检查
- go-errcheck.el Errcheck 集成到 Emacs
- flycheck-metalinter Flycheck 集成 go-metalinter 工具
- go-playground Emacs 内的本地 playground
较少使用
这些编辑器较少使用,可能对 Go 的支持没那么现代化。特别是,它们可能不支持 Go modules。
- Atom:GitHub 推出的基于 JavaScript 的编辑器。可在 go-plus 获取 Go 支持
- BBEdit:macOS 免费文本编辑器(付费升级可获得专业功能)。
- 通过 Go-bbpackage 模块 提供 Go 支持,包括语法高亮、代码片段、ctags 标准库补全和工具
- Brackets:一个现代化的开源文本编辑器,了解网页设计。
- go-ide 通过 gocode 提供自动补全的 Go 支持。
- Chime:功能强大。专注。快速。一个用于 macOS 的 Go 编辑器。
- CodeLobster IDE 智能免费的跨平台 IDE,内置 Go 支持
- CodePerfect 95:一个极快的 Go IDE。
- jEdit:用 Java 编写的开源、跨平台文本编辑器。提供语法高亮文件。
- Kate Kate 是 KDE 开发的一款高级跨平台文本编辑器,开箱即支持 Go。
- Komodo IDE 功能强大的跨平台 IDE,内置 Go 支持
- Komodo Edit 功能强大的跨平台文本编辑器,可通过插件获得 Go 语言支持
- LiteIDE:一个简单、开源的跨平台 Go IDE
- Micro:用 Go 编写的现代化、直观的基于终端的文本编辑器
- 通过 插件 提供 Go 语言支持 (gofmt 和 goimports)
- Notepad++:Windows 免费源代码编辑器。
- notepadplus-go 语法高亮、函数列表面板(用于浏览代码)、关键字和内置函数的代码补全。
- GOnpp 插件 (可通过 Notepad++ 内置的插件管理器获取),提供代码补全(需要 gocode)、函数提示、goimports 集成以及常用 Go 命令的键盘快捷键。 [源代码, 二进制文件]。
- GoAutocomplete 是另一个代码补全插件。
- Nova:原生的 Mac 代码编辑器。
- Nova 的 Go 语言定义 — 使用 Google 官方 Go 语言服务器
gopls
(如果已安装) 的 Go 语法高亮和与语言服务器协议 (LSP) 的接口。 - Go Tools — 保存时或通过命令运行
goimports
。Go 语法高亮。
- Nova 的 Go 语言定义 — 使用 Google 官方 Go 语言服务器
- Source Insight:商业编程编辑器和代码浏览器,内置对 C、C++、C#、Java 等语言的实时分析;帮助您理解大型项目。
- golang.xclf 是一个自定义语言文件,为 Source Insight 添加了 Go 语言的语法格式和一些解析支持。
- Sublime Text:商业文本编辑器。
- (仅适用于 Sublime Text 4) LSP + gopls 是一个提供类 IDE 功能的插件集合。
- GoSublime 是一个插件集合,提供类似 IDE 的功能。
- Golang Build 是用于集成 Go 构建系统的官方 Sublime Text 包。
- Textadept:Textadept 是一个快速、简约且高度可扩展的跨平台文本编辑器。开箱即支持 Go 语法高亮。
- TextMate:macOS 商业文本编辑器。源码根据 GPLv3 授权可用。提供 Go Bundle。
- Zed:思如泉涌般编写代码。
云端 IDE
本内容是 Go Wiki 的一部分。