使用Sublime text 3打造一个小巧但强大的Go语言开发IDE

简介: 使用Sublime text 3打造一个小巧但强大的Go语言开发IDE

使用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
  • 输出go get test success! 证明你可以使用go get 了

go get test

get run 、go install 、go build 、go clean 等测试

  • 点击 Toos > Build With (Mac 快捷键 shift + command + b)

go build

  • 看到下面的命令,点击即可
    go build

安装GoSublime

GoSublime 是一个交互式的go build 工具,使用起来也是很方便,主要配合Golang build使用。

  • 点击 Preferences > Package control 菜单(MAC快捷键 shift + command + p)
  • 在弹出的输入框输入install 选择Package control:install package
  • 然后输入GoSublime 选择 GoSublime 安装

使用GoSublime

  • 配置GoSublime 自动的设置GOPATH

GoSublime

  • 设置 "use_gs_gopath": true ,默认是false

use_gs_gopath

  • 搞定了

使用方式也是:

  • 点击 Toos > Build With (Mac 快捷键 shift + command + b)
  • 选择GoSublime 会出现一个交互式输入

GoSublime

在这里你可以输入你想使用的命令,go get , go install 、go build 、go clean, 都可以。

文章写了一上午,内容较多,可能有些地方没有描述清楚,如有问题请留言。

相关文章
|
前端开发 JavaScript Linux
Sublime Text 3配置Go语言开发环境
【4月更文挑战第13天】本篇文章 Huazie 向大家介绍使用 Sublime Text 3搭建Go语言开发环境,并演示编译运行 Go语言代码
1302 8
Sublime Text 3配置Go语言开发环境
|
安全 Go
Golang深入浅出之-Go语言模板(text/template):动态生成HTML
【4月更文挑战第24天】Go语言标准库中的`text/template`包用于动态生成HTML和文本,但不熟悉其用法可能导致错误。本文探讨了三个常见问题:1) 忽视模板执行错误,应确保正确处理错误;2) 忽视模板安全,应使用`html/template`包防止XSS攻击;3) 模板结构不合理,应合理组织模板以提高可维护性。理解并运用这些最佳实践,能提升Go语言模板编程的效率和安全性,助力构建稳健的Web应用。
425 0
|
IDE Go 开发工具
Sublime Text3搭建go运行环境
Sublime Text3搭建go运行环境
658 1
|
SQL 开发框架 .NET
你确定不学?Go标准库之 text/template
你确定不学?Go标准库之 text/template
455 2
|
API 开发工具 C++
【专栏:工具与技巧篇】使用代码编辑器(VS Code/Sublime Text)提升开发效率
【4月更文挑战第30天】在VS Code与Sublime Text两大流行代码编辑器中,开发者可借助其高效特性提升编程效率。VS Code拥有丰富的插件生态、内置Git集成、强大的调试工具、智能提示和多文件导航功能。Sublime Text则以其轻量级、快速响应、多光标编辑及自定义构建系统见长。学习编辑器的键盘快捷键、自定义配置、使用内置终端以及键绑定和宏,将助开发者进一步提高开发效率。选择适合自己的编辑器并不断适应新技术是提升开发工作流的关键。
883 1
|
IDE Linux Go
记录一个go语言与IDE之间的问题
【7月更文挑战第1天】本文介绍在IDE中调试Go应用可能遇到的问题。当问题与IDE的自动完成有关,可以试着使用其他编辑器如Linux的vim是否无此问题。这可以验证表明IDE可能不完全兼容最新语言版本,建议使用无自动检测工具临时解决。
318 0
|
安全 Go 开发者
Golang深入浅出之-Go语言模板(text/template):动态生成HTML
【4月更文挑战第25天】Go语言的`text/template`和`html/template`库提供动态HTML生成。本文介绍了模板基础,如基本语法和数据绑定,以及常见问题和易错点,如忘记转义、未初始化变量、复杂逻辑处理和错误处理。建议使用`html/template`防止XSS攻击,初始化数据结构,分离业务逻辑,并严谨处理错误。示例展示了条件判断和循环结构。通过遵循最佳实践,开发者能更安全、高效地生成HTML。
741 0
|
IDE 安全 Java
Java 版本、语言规范、API、JDK、IDE、Java 源程序编译、执行原理(跨平台性根本原因)、特殊字符用法、8 大数据类型小结
Java 版本、语言规范、API、JDK、IDE、Java 源程序编译、执行原理(跨平台性根本原因)、特殊字符用法、8 大数据类型小结
502 0
Java 版本、语言规范、API、JDK、IDE、Java 源程序编译、执行原理(跨平台性根本原因)、特殊字符用法、8 大数据类型小结
|
Linux 编译器 Go
兔起鹘落全端涵盖,Go lang1.18入门精炼教程,由白丁入鸿儒,全平台(Sublime 4)Go lang开发环境搭建EP00
Go lang,为并发而生的静态语言,源于C语言又不拘泥于效率,高效却不流于古板,Python灵活,略输性能,Java严谨,稍逊风骚。君不见各大厂牌均纷纷使用Go lang对自己的高并发业务进行重构,原因无他,经济下行的大背景之下,性能突出、效率拉满的Go lang无疑是高并发场景下节约服务器资源的一剂灵药。
兔起鹘落全端涵盖,Go lang1.18入门精炼教程,由白丁入鸿儒,全平台(Sublime 4)Go lang开发环境搭建EP00

热门文章

最新文章