Linux 下 Sublime Text 3 安装 Godef 进行代码跳转/跳回
16lz
2021-01-22
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)更多相关文章
- Linux安装ElasticSearch-2.2.0-分词器插件(IK)
- 无法为Windows编译QT MYSQL插件。
- MySQL 插件CONNECTION_CONTROL和CONNECTION_CONTROL_FAILED_LOGI
- Android studio 升级2.2 之后 Maven插件使用报错
- 微信抢红包插件与Android辅助功能
- android插件化-apkplug框架启动-02
- android插件apk杂记
- android插件化-apkplug中以监听方式获取OSGI服务-09
- Eclipse Juno 4.2的Swing插件[重复]