建议先阅读并实践(配置notepad++支持go语言语法着色(高亮)):https://mp.csdn.net/mp_blog/creation/editor/new/128759191
1.Windows上安装Go语言开发包
参考链接:http://c.biancheng.net/view/3992.html
1.1.下载Go语言开发包
可以在Go语言官网 (https://golang.google.cn/dl/) 下载Windows 系统下的Go语言开发包,如下图所示。

这里我们下载的是64 位的开发包,如果读者的电脑是 32 位系统的话,则需要下载 32 位的开发包,在上图所示页面中向下滚动即可找到 32 位开发包的下载地址,如下图所示。

注意:下载Windows 版本的Go语言开发包时尽量选择 MSI 格式,因为它可以直接安装到系统,不需要额外的操作。
1.2.安装Go语言开发包
双击我们下载好的Go语言开发包即可启动安装程序,如下图所示,这是Go语言的用户许可协议,无需管它,直接勾选“Iaccept ...”然后点击“Next”即可。

在 Windows系统下Go语言开发包会默认安装到 C 盘的 Go目录下,推荐在这个目录下安装,使用起来较为方便。当然,你也可以选择其他的安装目录,确认无误后点击“Next”,如下图所示:

Go语言开发包的安装没有其他需要设置的选项,点击“Install”即可开始安装,如下图所示:

等待程序完成安装,然后点击“Finish”退出安装程序。

安装完成后,在我们所设置的安装目录下将生成一些目录和文件,如下图所示:

这个目录的结构遵守 GOPATH 规则,后面的章节会提到这个概念。目录中各个文件夹的含义如下表所示。
Go开发包的安装目录的功能及说明
目录名 | 说明 |
api | 每个版本的 api 变更差异 |
bin | go 源码包编译出的编译器(go)、文档工具(godoc)、格式化工具(gofmt) |
doc | 英文版的 Go 文档 |
lib | 引用的一些库文件 |
misc | 杂项用途的文件,例如 Android 平台的编译、git 的提交钩子等 |
pkg | Windows 平台编译好的中间文件 |
src | 标准库的源码 |
test | 测试用例 |
开发时,无须关注这些目录。如果读者希望深度了解底层原理,可以通过上面的介绍继续探索。
1.3.设置环境变量
右击此电脑,选择高级系统设置,选择环境变量,双击环境变量中的Path,填写你的go语言路径,如图:

cmd,后运行 go version,不报错,说明成功
必须先安装go语言再进行后续的操作,否则后续操作无法成功。
2. 配置Notepad++
自行百度下载一个Notepad++软件并安装好后再进行后续的配置操作。
2.1、设置菜单语言为中文
设置——首选项——常用——界面语言(中文简体)


2.2、设置缩进为4空格
设置——首选项——语言——制表符宽度4,替换为空格(勾选)


2.3、设置在Notepad++中直接运行GO
2.3.1.Notepad++ ->"运行"菜单->"运行"按钮(或者快捷键F5)

2.3.2.在弹出的窗口内输入以下命令:
cmd /kgo run "$(FULL_CURRENT_PATH)"& ECHO. & PAUSE & EXIT
命令解释:
cmd /kgo run: 表示打开Cmd窗口,运行/k后边的命令,并且执行完毕后保留窗口。此处即go run
$(FULL_CURRENT_PATH):Notepad++的宏定义,表示当前文件的完整路径。
& 用来连接多条命令
ECHO:换行
PAUSE:表示运行结束后暂停(cmd中显示“请按任意键继续. . .”),等待一个按键继续
EXIT: 表示“按任意键继续. ..”后,关闭命令行窗口。

2.3.3.然后点击“保存”,随意取一个名字,比如“运行go语言”,为方便,配置一下快捷键(比如 ALT+ W),点OK即可。之后运行GO文件只要按配置的快捷键或者在运行菜单上点“运行go语言”即可。
注意不要跟已有的快捷键冲突。查看已有的快捷键,可以点击"运行"菜单->"管理快捷键"按钮查看



3、测试
创建一个测试文件,保存为*.go的文件,源码如下:
package main
import "fmt"
func main() {
// 终端输出hello world
fmt.Println("Hello world!")
}
"运行"菜单->"运行go语言"按钮(或者快捷键ALT+ W)

看是否能输出hello world。
