Linux 下 Sublime Text 3 安装 Godef 进行代码跳转/跳回

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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

a_ran

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值