打造vim IDE环境,管理大型项目

这里以ubuntu为例, 利用cscope实现文件间的跳转

1、安装cscode:

  sudo apt-get install cscope

2 、生成工程目录下的文件列表:

  find /my/project/dir -name '*.h' >/my/cscope/dir/cscope.files
 find /my/project/dir -name '*.c' >>/my/cscope/dir/cscope.files

3、 在当前工程目录下执行 cscope -b -q -k 生成 cscope Database

4、快捷建设置:

mkdir ~/.vim/plugin -p

将cscope_maps.vim(http://cscope.sourceforge.net/cscope_maps.vim)的文件放在plugin底下:

5、完成


6、.vimrc

设置成

   set cindent  
    syntax on  
    set autoindent  
    
    set shiftwidth=4  
    
        set smarttab
        set smartindent
    set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s  
    set nu  
    if &term=="xterm"  
    set t_Co=8  
                 set t_Sb=^[[4%dm  
    set t_Sf=^[[3%dm  
    endif  
    if has("cscope")  
        set cscopetag  
        set csto=0  
        if filereadable("/home/paul08colin/cscope/cscope.out")  
            cs add /home/paul08colin/cscope/cscope.out    
        elseif $CSCOPE_DB != ""  
            cs add $CSCOPE_DB  
        endif  
        set cscopeverbose    
    
        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>    
    
        nmap <C-@>s :scs find s <C-R>=expand("<cword>")<CR><CR>   
        nmap <C-@>g :scs find g <C-R>=expand("<cword>")<CR><CR>   
        nmap <C-@>c :scs find c <C-R>=expand("<cword>")<CR><CR>   
        nmap <C-@>t :scs find t <C-R>=expand("<cword>")<CR><CR>   
        nmap <C-@>e :scs find e <C-R>=expand("<cword>")<CR><CR>   
        nmap <C-@>f :scs find f <C-R>=expand("<cfile>")<CR><CR>   
        nmap <C-@>i :scs find i ^<C-R>=expand("<cfile>")<CR>$<CR>    
        nmap <C-@>d :scs find d <C-R>=expand("<cword>")<CR><CR>   
    
        nmap <C-@><C-@>s :vert scs find s <C-R>=expand("<cword>")<CR><CR>  
        nmap <C-@><C-@>g :vert scs find g <C-R>=expand("<cword>")<CR><CR>  
        nmap <C-@><C-@>c :vert scs find c <C-R>=expand("<cword>")<CR><CR>  
        nmap <C-@><C-@>t :vert scs find t <C-R>=expand("<cword>")<CR><CR>  
        nmap <C-@><C-@>e :vert scs find e <C-R>=expand("<cword>")<CR><CR>  
        nmap <C-@><C-@>f :vert scs find f <C-R>=expand("<cfile>")<CR><CR>    
        nmap <C-@><C-@>i :vert scs find i ^<C-R>=expand("<cfile>")<CR>$<CR>   
        nmap <C-@><C-@>d :vert scs find d <C-R>=expand("<cword>")<CR><CR>  
    
    endif  



7、可以设置一个脚本:

#!/bin/sh
find /home/paul08colin/richman/server /tool/ -name "*.h" -o -name "*.cpp"   -o -name  "*.c" -o -name  '*.pb.h' -o -name  '*.pb.cc'  -o -na
me  '*.cc' -o -name  '*.proto' > cscope.files

cscope -bkq -i cscope.files
ctags -R








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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值