emacs use Gnu GLOBAL system

用了一下 emacs  自带的 tags,发现不是很方便,经常会找不到符号,可能我没有掌握要领吧,所以又在网上搜罗了另外一种类似 source insight 的 GNU GLOBAL system,初试了一下感觉还不错,下面记录一下使用过程吧。

安装:
直接解压源码,然后 ./configure; make; make install---------》ok

然后配置 emacs:
随便创建一个目录, 如 ~/lisp, 将 gtags.el  放入该目录,然后编辑 ~/.emacs 文件
(setq load-path (cons "~/lisp" load-path));;意思是将 ~/lisp 加入 load-path
load-path 是 emacs 查找命令的目录列表,就像 linux 中的 PATH 环境变量
(autoload 'gtags-mode "gtags" "" t)
自动装载 gtags-mode 模式

运行 emacs 后直接 m-x gtags-mode就可以用 GLOBAL 了
如果想以开启 C-mode 就装载 gtags-mode 可以加入以下代码:
(setq c-mode-hook
      '(lambda ()
                (gtags-mode 1)))

用法:
首先要建立几个文件,用作 global 的索引,进入所在代码的根目录,在命令行敲入
[xxx]$ etags
则 global 会递归代码中所有目录,生成 GPATH, GRTAGS, GSYMS, GTAGS
  • gtags-find-tag (已经与 m-. 进行了绑定), 用来搜索函数或宏定义,不能搜索变量
  • gtags-find-rtag 用来查找 tag 以及 tag reference(引用),同时给出一个列表,像 source insight 一样
  • gtags-select-mode 用来指定上面 rtag 的行数
  • gtags-find-tag-from-here 最全面了,好像只要是 symbol 它都给你标出来,像 rtag 一样列出来,这个也不用手动去输入字符,光标指向那个字符串就查找哪个字符串
  • gtags-find-with-grep 用正则表达式查找字符串
  • 其实 gtags-find-tag 也支持 POSIX 正则表达式。。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值