vim 使用配置
1. vim配置文件:一般情况下放在~/.vimrc
这个是我使用很久的配置文件
|
文件: | vimrc.tar.gz |
大小: | 1KB |
下载: | 下载 |
|
为了使vim功能更强大,需要安装软件和插件支持,这个仅仅是我常用的软件和插件,其他并不是不好用,只是个人习惯而已:2. ctags:
|
文件: | ctags-5.8.tar.gz |
大小: | 468KB |
下载: | 下载 |
|
使用方法:生成tags文件
正常使用:ctags -R
如果要是使用下面的插件code_complete.vim和omnicppcomplete,让你的vim含有自动补全功能,还需要添加一些额外的参数:
ctags -R --c-kinds=+p --fields=+S --extra=+q
如果是c++:
ctags -R --c++-kinds=+p --fields=+S --extra=+q
3. cscope:
|
文件: | cscope-15.7a.tar.bz2 |
大小: | 352KB |
下载: | 下载 |
|
这两个软件的安装方法:
./configure;make;make install
使用命令cscope -Rbkq,生成索引文件。
在vim中使用命令:(如:cscope find s pid_t)查找相应的符号。
下面列出更详细的使用方法。下面列出cscope的常用生成数据库选项:
-R: 在生成索引文件时,搜索子目录树中的代码,因为我们已经在cscope.files中把所有的文件都打印入了列表中,所以
-b: 只生成索引文件,不进入cscope的界面
-q: 生成cscope.in.out和cscope.po.out文件,加快cscope的索引速度
-k: 在生成索引文件时,不搜索/usr/include目录
-i: 如果保存文件列表的文件名不是cscope.files时,需要加此选项告诉cscope到哪儿去找源文件列表。可以使用“-”,表示由标准输入获得文件列表。
-I dir: 在-I选项指出的目录中查找头文件
-u: 扫描所有文件,重新生成交叉索引文件
-C: 在搜索时忽略大小写
-P path: 在以相对路径表示的文件前加上的path,这样,你不用切换到你数据库文件所在的目录也可以使用它了。
好了,到了这里,cscope的原理大家应该都清楚了,那么在vim中怎么使用呢?
"cscope find"的用法:
cs find c|d|e|f|g|i|s|t name
0 或 s 查找本 C 符号(可以跳过注释)
1 或 g 查找本定义
2 或 d 查找本函数调用的函数
3 或 c 查找调用本函数的函数
4 或 t 查找本字符串
6 或 e 查找本 egrep 模式
7 或 f 查找本文件
8 或 i 查找包含本文件的文件
但是谁也不想敲这么多命令吧,所以我在vimrc中建了这样一个映射:
nmap
s :cs find s =expand(""):copen
nmap g :cs find g =expand("")
nmap c :cs find c =expand(""):copen
nmap t :cs find t =expand(""):copen
nmap e :cs find e =expand(""):copen
nmap f :cs find f =expand(""):copen
nmap i :cs find i ^=expand("")$:copen
nmap d :cs find d =expand(""):copen
实际上就是参考 cscope_maps.vim 这个文件,大家可以去下载他,然后直接放到plugin目录就行。
最后,我们来说一下cscope和ctags的兼容问题。我在vimrc中配置了一段代码:
if has("cscope")
set cscopequickfix=s-,c-,d-,i-,t-,e-
set csto=0
set cst
set csverb
endif
4. code_complete.vim
这个插件之间复制到/usr/share/vim/vim72/plugin中就可以了。
|
文件: | code_complete.tar.gz |
大小: | 2KB |
下载: | 下载 |
|
5. taglist.vim
这个插件之间复制到/usr/share/vim/vim72/plugin中就可以了。
|
文件: | taglist.tar.gz |
大小: | 30KB |
下载: | 下载 |
|
这个插件是用于显示函数列表:
在vim中执行:Tlist
6. omnicppcomplete
这个插件装起来有点复杂:
将omni文件夹拷贝到/usr/share/vim/vim72/autoload中,
将ftplugin文件夹里的两个文件拷贝到/usr/share/vim/vim72/ftplugin中。
以上复制注意权限文件,我在设置的时候,就遇到插件功能用不了。
|
文件: | omnicppcomplete-0.41.zip |
大小: | 37KB |
下载: | 下载 |
|
code_complete.vim和omnicppcomplete使用于自动补全:
方法:
1. CTRL + n,列出变量函数等列表。
2. 当输入"."或"->"时,可以自动列出结构提成员。
3. 当一个函数写完时,写完"(",后,按TAB键,会列出函数的参数类型。
注意:
1. 在/usr/include下创建一个tags文件,需要在.vimrc配置文件中,添加这个tags路径,方便库函数,系统调用,各种变量等的自动补全。
set tags+=/usr/include/tags
7. autocomplpop.vim
|
文件: | autocomplpop.tar.gz |
大小: | 3KB |
下载: | 下载 |
|
这个插件之间复制到/usr/share/vim/vim72/plugin中就可以了。
这个之前使用CTRL+n,显示补全列表,使用这个插件后,会自动显示补全列表。
8. vim多窗口
vim 从 vim7 开始加入了多标签切换的功能, 相当于多窗口.之前的版本虽然也有多文件编辑功能, 但是总之不如这个方便啦。
用法
:tabnew [++opt选项] [+cmd] 文件建立对指定文件新的tab
:tabc 关闭当前的tab
:tabo 关闭所有其他的tab
:tabs 查看所有打开的tab
:tabp 前一个
:tabn 后一个
标准模式下:
gt , gT 可以直接在tab之间切换。
阅读(1364) | 评论(3) | 转发(1) |