开篇
熟悉老夫的人都知道,开篇都要讲点废话。此文也不例外。众所周知,IDE中最强大的功能在于refactor, 查找函数的定义和调用。那么在无所不能的emacs中,该如何配置呢?
其实解决方案有许多种,诸如cscope, ctags等等,不过就本人的使用经验而言,global + gtags(helm-gtags) 方为最佳。尤其是配置上 helm-gtags-mode。
global
介绍
global的使用不仅仅局限于emacs,他是一个CUI形式的软件,类似grep, egrep。具体请参考官网。
在Download连接的页面中,可以看到他提供了多种安装方式。本人使用宇宙第一笔记本--macbook pro,因此使用brew install global
完成了安装。-
安装
完成安装之后,进行测试,在某个项目中(哦,请注意,global目前只支持 C,C++, JAVA, 汇编, YACC),执行 gtags 命令。可以看到生成了3个文件:GPATH, GRTAGS, GTAGS。执行ls -alh
命令,查看生成的文件大小.
文件大小 使用
官方提供了tutorial,此处不在赘述(如需翻译,请各位看客留言,需求量大的话,老夫翻译一份。)
ggtags
介绍
ggtags是emacs中的一个mode,可以方便的执行函数跳转,函数定义查看等等-
安装与配置
可以用过melpa进行下载,配置的.el文件中只需要使用(require-package 'ggtags)
。也可以下载作者的ggtags.el源文件,然后进行配置。(add-to-list xxx)
配置代码可参考作者的github。
-
使用命令
看图即可.
命令图