使用Sublime text 3打造一个小巧但强大的Go语言开发IDE
最近在学习GO语言,网上找了一下GO语言的IDE,发现GO语言目前没有一个专业的IDE,都是一些各种插件来实现的,由于go的特性:
- 开发过程中需要设置
GOPATH
- 用到第三方的包又要使用
go get
- 运行的时候要用
go run
- 打包的要使用
go install
- 交叉编译的时候还要配置
GOARCH
GOOS
go build
试了很多朋友分享的工具都很不好用,试用了一下Jetbrains的Goland Early build version,发现很多Bug,没有交叉编译,无法go get
,并不能满足开发、打包、分发的需求,不过Goland的代码提示还是特别棒的,希望以后正式版能够做的更好。
打造自己的Go语言开发IDE
好了废话不多说,来开始动手打造一个强大的Go语言开发IDE,强大到什么程度,自己体会吧:
- 支持自动配置
GOPATH
- 支持简单的
go run
- 支持
go get
- 支持
go install
- 当然也支持 “交叉编译”
- 而且还支持
go test
go clean
下载并安装 sublime text 3
sublime text 是一个小巧的文本编辑工具,支持windows、linux、macOS,官方下载地址点击sublime text.
下载好了就自行安装,这里大家应该不会有什么问题。
安装Package control
Package control 是一个sublime text 的插件管理工具,由于sublime text 自带python环境,Package control可以直接使用如下python脚本自动安装(建议自行去官网找脚本,以免脚本更新,无法安装):
为了方便查看,我在脚本里的分号
;
后面添加了换行符,但不影响使用。
import urllib.request,os,hashlib;
h = 'df21e130d211cfc94d9b0905775a7c0f' + '1e3d39e33b79698005270310898eea76';
pf = 'Package Control.sublime-package';
ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) );
by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read();
dh = hashlib.sha256(by).hexdigest();
print('Error validating download (got %s instead of %s), please try manual install' % (dh, h))
if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
官方安装地址Package control installation,进去之后就会看到以上脚本。
当然Package control也有手动安装方式:
- 点击 Preferences > Browse Packages… 菜单
- 打开 Installed Packages/ 文件夹
- 下载 Package Control.sublime-package
并将下载好的文件复制到 Installed Packages/ 目录 - 重启 Sublime Text
自动安装的也要重启一下才能生效。
安装Go语言官方提供的Golang build 包
- 点击 Preferences > Package control 菜单(MAC快捷键
shift + command + p
) - 在弹出的输入框输入
install
选择Package control:install package - 然后输入
Golang build
选择Golang build 安装
安装好之后点击 Preferences Preferences > Package Setting > Golang Config > Setting - User 设置一些参数
{
"PATH": "/usr/local/go/bin",
// 这里改成你自己的GOPATH
"GOPATH": "$HOME/golang/workspace"
}
好了,现在可以试试了
- 在workspace下创建一个src
目录:
mkdir -p $HOME/golang/workspace/src
- 创建一个go文件hello.go
- 写入如下内容
package main
import (
"github.com/iTaa/testGoGet"
)
func main() {
testGoGet.TestGoGet()
}
go get 测试
- -点击 Preferences > Package control 菜单(MAC快捷键
shift + command + p
) - 在弹出框里输入
go get
, 点击Go: get
- 输出go get test success! 证明你可以使用go get 了
get run 、go install 、go build 、go clean 等测试
- 点击 Toos > Build With (Mac 快捷键 shift + command + b)
- 看到下面的命令,点击即可
安装GoSublime
GoSublime 是一个交互式的go build 工具,使用起来也是很方便,主要配合Golang build使用。
- 点击 Preferences > Package control 菜单(MAC快捷键
shift + command + p
) - 在弹出的输入框输入
install
选择Package control:install package - 然后输入
GoSublime
选择 GoSublime 安装
使用GoSublime
- 配置GoSublime 自动的设置GOPATH
- 设置
"use_gs_gopath": true
,默认是false
- 搞定了
使用方式也是:
- 点击 Toos > Build With (Mac 快捷键 shift + command + b)
- 选择GoSublime 会出现一个交互式输入
在这里你可以输入你想使用的命令,go get , go install 、go build 、go clean, 都可以。
文章写了一上午,内容较多,可能有些地方没有描述清楚,如有问题请留言。