cscope数据库生成脚本

本文介绍如何通过编写shell脚本来自动更新Cscope与Ctags数据库,并提供Vim配置示例来增强代码导航功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/bin/sh
find $(pwd) -name "*.h" -o -name "*.c" -o -name "*.cc" > cscope.files
cscope -bkq -i cscope.files
ctags -R


将以上代码保存为.sh文件,例如cs.sh,然后终端中修改其属性,增加执行属性;


将以下内容增加到 .vimrc 内

" tags 设置
set tags=tags;
    set autochdir


if has("cscope")
    set csprg=/usr/bin/cscope
    "指定用来执行 cscope 的命令
    set csto=1
    "先搜索tags标签文件,再搜索cscope数据库
    set cst
    "使用|:cstag|(:cs find g),而不是缺省的:tag
    set nocsverb
    "不显示添加数据库是否成功
    " add any database in current directory
    if filereadable("cscope.out")
        cs add cscope.out
    "添加cscope数据库
    endif
    "显示添加成功与否
    set csverb
endif

:set cscopequickfix=s-,c-,d-,i-,t-,e-

nmap <C-_>s :cs find s <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>g :cs find g <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>c :cs find c <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>t :cs find t <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>e :cs find e <C-R>=expand("<cword>")<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>
nmap <C-_>d :cs find d <C-R>=expand("<cword>")<CR><CR>


运行cs.sh,此后可以参考其他的教程~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值