IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    使用GNU GLOBAL索引代码

    发表于 2014-11-23 21:30:00
    love 0

    什么是GLOBAL

    GLOBAL是GNU出品的一款代码索引工具.

    GLOBAL有什么优点

    • 原生支持C, C++, 汇编等6种语言的代码索引, 借助插件支持的更多达25种

    • 支持多种查找功能, 例如最常用的查找定义, 调用和文件位置等

    • 提供gtags-cscope命令, 兼容cscope

    • 相对于cscope, 查找匹配更加快速和准确

    • 支持增量更新, 而且比cscope的增量更新快很多很多

    • 开发活跃, 上一次发布新版本是两个月前, 而cscope的上一次是两年前

    如何使用GLOBAL

    简单讲, 在代码目录中执行gtags -i建立索引数据库, 然后使用global命令查找匹配. 例如global symbol查看symbol的定义, global -r symbol查看symbol在哪被引用, 等等. 详见: https://www.gnu.org/software/global/globaldoc_toc.html

    Vim中使用GLOBAL的小技巧

    继承Vim中cscope的接口和键绑定:

    :set cscopeprg=gtags-cscope
    

    自动从当前文件夹递归向上搜索索引数据库并加载:

    function! LoadDatabase()
    	let db = findfile("GTAGS", ".;")
    	if (!empty(db))
    		set nocscopeverbose
    		exe "cs add " . db
    		set cscopeverbose
    	endif
    endfunction
    autocmd BufEnter *.[ch] call LoadDatabase()
    


沪ICP备19023445号-2号
友情链接