vim 实用配置指南

最近在linux下写程序,实在是找不到好一点的编辑器,只能自己配置自己的vim,我相信开始会费一点时间,也许只有开始费一点时间,到后面才会省时间吧。

本文章会一点一点的进行完善,都是本人实践中遇到的。


1.安装使用ctags


1.从http://ctags.sourceforge.net/下载源代码包,解压缩生成源代码目录,
2.然后cd进入根目录执行./configure,
3.执行make,make install。

到此,我们的ctags就安装成功了。

我们可以试着查看你的ctags是否安装成功,

试着执行:

ctags --help


接下来就是如何使用ctags了。


首先生成ctags文件,在源码根目录执行

ctags -R



Ctrl + ]    跳转到光标所在符号的定义。
Ctrl + t 或 Ctrl + o    回到上次跳转前的位置。

:tn 下一个tag

:tp  上一个tag



2.安装使用taglist

taglist是一个可以将源码的方法,成员等等列举出来的工具。

类似于Android studio 的 Structure窗口,相当于eclipse的outline窗口


1.下载taglist     http://www.vim.org/scripts/script.php?script_id=273下载安装包

2.进入~/.vim目录,将taglist安装包解压,解压后会增加了两个目录,doc和plugin,

3.我们进入doc目录,执行以下命令,可以在vim内执行help taglist.txt来查看帮助

helpztags .

4.我们打开~/.vimrc,加入前两行,如果你想以后打开文件自动打开taglist,请加入第三行。

如果你不想打开文件时自动打开taglist,则使用命令  :TlistToggle即可。关闭命令也是这个。

let Tlist_Show_One_File=1  
let Tlist_Exit_OnlyWindow=1 
let Tlist_Auto_Open=1


移动光标到指定窗口就是 ctrl + w + w即可。

ctrl + w + w 光标移动下一窗口

ctrl + w + h 向左窗口移动光标

ctrl + w + l 向右窗口移动光标



3.安装cscope

一般现在vim都默认会安装好cscope,大家可以通过以下命令查看。

进入vim,在命令模式输入version,如果有+cscope,说明vim自己已经安装好,如果没有安装好,大家请自行安装。

安装下载方式:

可以在http://cscope.sourceforge.net/下载源码包,然后解压,编译安装。
./configure
make
make install


使用cscope,首先要生成cscope文件。

在源代码根目录执行

cscope -Rbq
这样生成cscope生成数据库之后,我们发现根目录多了三个文件。

cscope.in.out,cscope.out,cscope.po.out

有了这三个文件之后我们在这三个文件的目录打开vim

执行

cs add cscope.out
这样cscope.out数据库加入了vim里面。

然后就可以用cscope的命令了。

cscope命令概览。


cs find c|d|e|g|f|i|s|t name

用法 :cs find {querytype} {name}


   {querytype} 对应 cscope 控制台接口编号和 nvi 的缺省命令:


0 或 s: 查找本 C 符号
1 或 g: 查找本定义
2 或 d: 查找本函数调用的函数
3 或 c: 查找调用本函数的函数
4 或 t: 查找本字符串
6 或 e: 查找本 egrep 模式
7 或 f: 查找本文件
8 或 i: 查找包含本文件的文


以上句子的意思,举个栗子:

想查询 app_usage()函数都在哪里调用了,我们在vim的命令模式执行:

cs find d app_usage
其他的同理。


但是我们发现每次进入vim都会先添加cscope.out,也就是执行cs add cscope.out,

然后每次执行也需要输入4个单词。太麻烦了。

我们通过配置让打开vim自动添加cscope.out

打开~/.vimrc,添加以下语句:

if filereadable("cscope.out")
       cs add cscope.out
elseif $CSCOPE_DB  != ""
       cs add $CSCOPE_DB
endif
这样每次打开的时候就会先判断有没有cscope.out文件,然后存在的话自动添加。

然后再~/.vimrc文件,添加以下语句:

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("<cword>")<CR><CR>
nmap <C-@>i :cs find i ^<C-R>=expand("<cword>")<CR>$<CR>
nmap <C-@>d :cs find d <C-R>=expand("<cword>")<CR><CR>

这样我们以后就不用执行一段很长的命令了。

还是举个栗子,我们想看app_usage()函数在哪里被调用:

以前执行:

cs find d app_usage

我们配置好了快捷键之后,首先光标移动到app_usage函数,需要按Ctrl+@,然后按d,就相当于

执行了ccs find d app_usage命令。

到这里就配置好cscope了











猜你喜欢

转载自blog.csdn.net/hanhan12312/article/details/51912722