idea 虽然审美倒退了n年. 不过功能还是相当好用的.
idea 的go插件堪称最好的go ide.
1. 语法高亮支持
2. 智能提示
3. 跳转定义(反跳转回来)
4. 集成debugger
还有重构等等功能也不错.
这些都是用起来让人很舒服的功能. 你要是用vim/emacs/sublime啥的. 当我没说.
很多人可能都不知道golang 代码可以debug. 很多人用console gdb命令式的调试. 如果不需要界面化的调试器, 也可以略过了.
配色看起来挺搓的. 默认的, 我也懒得改. 大家可以随便改...
虽然我觉得VS + VA的提示更吊一点. 不过这样也还不错.
这在查看代码时很有用.
比如我跳转到fmt.Print的声明. 我还想跳转回来. 就可以back一下, 然后继续code.
这个是重头戏. 先上两个图.
可以很方便的增删断点.
可以单步调试等等.
下面的debugger 页签中有三个窗口
frames窗口 : 查看stack 堆栈
variables窗口 : 查看变量, 可以看出来, 支持显示复杂变量. 比如 []byte string struct等.
watch窗口 : 监视变量
这个是gdb的命令窗口. 直接手动输入gdb 命令. 呵呵. 就和console的gdb一样.
还有重构什么的. 都基于idea. 体验也不错.
好了, 可以实现的效果都看了. 下面说下如何实现这些效果.
从这里https://www.jetbrains.com/idea/ 下载idea 最新的community版本.
从这里https://github.com/go-lang-plugin-org/go-lang-idea-plugin/releases 下载最新的golang plugin 版本.
也可以直接从idea 的插件仓库中在线安装. 但那个版本比较旧. 不支持go 1.4. 而插件的作者还没有发布修复版的release. 所以建议直接使用alpha版本.
打开idea后, 选择configure -> plugins , 然后选择 install plugin from disk . 选择刚才下载的golang plugin的jar包. 即可.
打开configure -> Project Default -> Project Structure. 在这里配置golang的sdk.
选择 菜单run -> edit configurations 打开 run/debug configurations窗口.
这里似乎有点小问题. 如果enable debugging无法勾选的话. 先勾选/反勾选 build before run. 然后勾选enable debugging.
注意. 必须勾选enable debugging. 否则无法调试.
然后切换到debug标签.
gdb 可以从mingw / liteide / zesu 等等中复制出来. 要求版本应该是7.1以上.
gdb.exe对应32位系统.
gdb64.exe对于64位系统.
不能混用. 否则无法识别exe的格式.
最后, run -> debug "test" . 骚年开始调试喽.