cscope
待整理。。。有时间了继续 在vim的世界中,当查看源代码的时候,使用ctags工具可以实现函数方法的跳转,若要在源码中找到对应函数方法在哪些地方进行了调用或在哪儿定义的,只有使用grep命令进行查找得到,这样需要另起一个终端或在同一个终端中使用:!grep fucname ./* -rn | grep tags,这样的切换对于ssh到远程操作的并不那么方便。 那么,有没有更好的插件能够直接完成以上这个功能需求呢? 答案是肯定的,使用cscope工具。它能够完成以上描述的ctags+grep所能够完成的功能。 cscope的安装和配置cscope的安装教程链接 我ubuntu下cscope的配置如下: "-- CScope setting -- if has("cscope") set csprg=/usr/bin/cscope set csto=0 set cst set cscopequickfix=s-,c-,d-,i-,t-,e- set nocsverb if filereadable("cscope.out") cs add cscope.out elseif $CSCOPE_DB != "" cs add $CSCOPE_DB endif set csverb endif map <F4> :cs add ./cscope.out .<CR><CR><CR> :cs reset<CR> imap <F4> <ESC>:cs add ./cscope.out .<CR><CR><CR> :cs reset<CR> nmap <C-_>s :cs find s <C-R>=expand("<cword>")<CR><CR> :copen<CR><CR> nmap <C-_>g :cs find g <C-R>=expand("<cword>")<CR><CR> nmap <C-_>d :cs find d <C-R>=expand("<cword>")<CR><CR> :copen<CR><CR> nmap <C-_>c :cs find c <C-R>=expand("<cword>")<CR><CR> :copen<CR><CR> nmap <C-_>t :cs find t <C-R>=expand("<cword>")<CR><CR> :copen<CR><CR> nmap <C-_>e :cs find e <C-R>=expand("<cword>")<CR><CR> :copen<CR><CR> nmap <C-_>f :cs find f <C-R>=expand("<cfile>")<CR><CR> nmap <C-_>i :cs find i <C-R>=expand("<cfile>")<CR><CR> :copen<CR><CR> 在需要建立cscope索引的源码目录下,运行“cscope -Rbq . ”命令即可生成cscope索引。 :copen 打开 quickfix窗口,可以在后面添加窗口高度参数,如10行,:copen 10 Cscope相关命令所有的cscope命令都是通过向主cscope命令”:cscope”传递参数选项。她最短的缩写是”:cs”。”:scscope”命令也做同样的事情并且同时会横向分隔窗口(简称:”scs”)。 可用的缩写有: add :增加一个新的cscope数据库/链接库使用方法:
实例: :cscope add /home/user/workspace/project :cscope add ~/workspace/project/cscope.out /home/user/workspace/project【推荐格式】 :cscope add cscope.out /usr/local/vim –C find :查询cscope。所有的cscope查询选项都可用除了数字5(“修改这个匹配模式”)。使用方法: :cscope find c ftpd_send_resp # 查找所有调用这个函数的函数(们) :cscope find 3 ftpd_send_resp # 和上面结果一样 :cscope find 0 FTPD_CHECK_LOGIN # 查找FTPD_CHECK_LOGIN这个符号 help :显示一个简短的摘要。使用方法: kill :杀掉一个cscope链接(或者杀掉所有的cscope链接)使用方法: 假如指定的链接数字为-1,那么所有的cscope链接都会被杀掉。 reset:重新初始化所有的cscope链接。使用方法: show:显示cscope的链接使用方法: 假如你在使用cscope的同时也使用ctags,|:cstag|可以允许你在跳转之前指定从一个或另一个中查找。例如,你可以选择首先从cscope数据库中查找,然后再查找你的tags文件(由ctags生成)。上述执行的顺序取决于|csto|的值。 摘抄 vim技巧vim+ctags+cscope安装与使用总结 9、[[ 跳到函数头部,]] 跳到函数尾部 quick常用命令 (也可以配合cscope一起使用): 11、按v进入可视化界面,然后通过左右键选择文本,再按y进行复制,p就可以进行粘帖了 12、不退出vim,直接在vim中执行 “:!gcc file.c -o file” 就可以编译程序了 13、vim中查找特地字符串 / pattern enter /^pattern enter /pattern$ enter 如果要把^和$当作普通的符号,就需要在前面加上 Referencevim+ctags+cscope安装与使用总结 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |