GoSublime插件中的跳转使用的是GsDoc,只能跳转包名点出来的成员和函数(例如 fmt.Println),很不方便

后来发现了Godef这个插件,可以实现任意对象跳转(瞬间爽的飞起,此外,我还添加了跳转回来的方法)

http://blog.buaa.us/godef-plugin-for-sublime-released/这个是Godef作者(在此感谢)的发布文档

以下记录下安装过程和遇到的问题

1. 安装godef到$GOPATH/bin

go get -v github.com/rogpeppe/godef
cd xxx/godef # 目标目录
go install

2.安装guru 到$GOPATH/bin

# go get -v golang.org/x/tools/cmd/guru
# 因为被墙所以使用 github 上的镜像手动复制过去
mkdir $GOPATH/src/golang.org/x -p
cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/tools.git
cd ./tools/cmd/guru
go install

3.安装 Godef

git clone https://github.com/buaazp/Godef.git ~/.config/sublime-text-3/Packages/Godef
# 或者在 Sublime Package Control 搜索 Godef 安装

4.配置Godef.sublime-settings

默认不需要,安装过程中能自动发现,内容示例:

{
    "goroot": "/xxx",
    "gopath": "/xxx"
}

但由于我的GOPATH 中包含了 $HOME目录没有找到 godef和 guru(修改 Godef配置或 $GOPATH都可以)

这个问题是通过 Sublime的控制台(Ctrl + `)打印的日志发现的(Godef.py中用了 os.path.isfile()校验文件是否存在)

(或者在第3步中使用我提交了补丁的 Godef: https://github.com/chinaran/Godef.git)

5.自定义跳转快捷键

默认是{ "keys": ["g","d"], "command": "godef" }(按顺序按下 g和 d)

我修改成了 ["alt+q"](看个人喜好了)

对于跳转回来,原作者没提供这个功能,所以我自己实现了一个(类似于ctags插件的 jump_prev)

默认是{ "keys": ["g","h"], "command": "godef_prev" }(按顺序按下 g和 h)

我修改成了 ["alt+s"]

(可以使用我提交了补丁的 Godef: https://github.com/chinaran/Godef.git)

更多相关文章

  1. Linux安装ElasticSearch-2.2.0-分词器插件(IK)
  2. 无法为Windows编译QT MYSQL插件。
  3. MySQL 插件CONNECTION_CONTROL和CONNECTION_CONTROL_FAILED_LOGI
  4. Android studio 升级2.2 之后 Maven插件使用报错
  5. 微信抢红包插件与Android辅助功能
  6. android插件化-apkplug框架启动-02
  7. android插件apk杂记
  8. android插件化-apkplug中以监听方式获取OSGI服务-09
  9. Eclipse Juno 4.2的Swing插件[重复]

随机推荐

  1. 关于App.config的9篇文章推荐
  2. 关于处理指令的10篇文章推荐
  3. 有关XHTML的相关推荐10篇
  4. 关于原理及性能的详细介绍
  5. 总结关于百度新闻注意点
  6. 关于添加链接的详细介绍
  7. 有关WSD的详细介绍
  8. 关于XML开发的详细介绍
  9. OpenSearch的汇总分享
  10. 关于基本代码的10篇文章推荐