两部分问题:首先,在使用 VIM 时,我要采取什么过程以及我键入哪些键来“转到定义”或“转到声明”等?这份文件可能是我问题的答案,但我无法让它工作,所以我不确定。它看起来只是与字符串匹配的文本,而不是找到真正的定义。如果我能得到这个工作,然后将我能够跳以外当前文档的下一个定义/声明?或者这仅适用于单个文档?其次,我如何专门使用 Go 编程语言进行这项工作?这肯定将是不错的“点击”Client的clnt := &http.Client{Transport: tr}并转到定义 http.Client的实际代码。可能的?如何?
2 回答
青春有我
TA贡献1784条经验 获得超8个赞
正如您猜测的那样,gd(和其他命令)只是文本匹配,vim 不理解语法,因为它只是一个文本编辑器,:h gd将解释如何gd工作。
通常,“转到定义”是通过使用CTRL-]和标记文件带来的。可以阅读有关此主题的用户手册:h 29.1。
首先你需要为你的项目生成一个标签文件,因为最新的Exuberant Ctags已经支持 golang(来自这里),命令
cd /path/to/your/project
ctags -f tags -R --fields=+K+a
会做的工作。
其次,开放VIM,默认情况下vim会(根据找到的标记文件的工作目录下的'tags'选项),如果标签文件被成功找到,然后CTRL- ]'应该效果很好。
还要检查两个有用的插件Tagbar和Easytags。
- 2 回答
- 0 关注
- 506 浏览
添加回答
举报
0/150
提交
取消