我的vim(配置+插件)

======================================================
下载安装
配置文件与插件目录已打包上传,下载地址
http://download.csdn.net/detail/zlzlei/4570644

http://f.xunlei.com/9343823/file/3d9ccc16-294d-42f7-a7df-70d6692670f9
本文章讲解我自己的vim配置与使用技巧,vim的使用方法见以下地址:
http://blog.csdn.net/zlzlei/article/details/7708602
包括taglist插件与omnicppcomplete以及相关的配置
下载以后直接解压到用户home目录(~目录)即可,里面有.vimrc配置文件与.vim插件目录。

======================================================
该套配置与插件使用技巧

配置是我在网上找的别人的然后装上插件按照我自己的习惯改了改,下面我说一下支持的操作与使用技巧:

1. 设置工程目录。
ctags是必须的,我需要支持c++文件,所以命令长些,进入你的工程目录,运行一下命令生成tag文件:
            ctags -R --c++-kinds=+p --fields=+iaS --extra=+q -f ~/tags `pwd`
                该命令将当前目录及子目录下的源码生成tag文件,存放为~/tags
                选项c++-kinds 用于指定C++语言的 tags记录类型, --c-kinds用于指定c语言的, 通用格式是 --{language}-kinds
由于一般情况下我们的代码工程目录都是分级的,不可能所有代码都放在一个目录下,并且经常要在不同目录下运行vim,所以直接使用ctags在实际开发中可能很难满足我们的要求,我也一直在找解决方法,未果,后来自己设计了一种方法,具体的实现等都已经配置好了,我们需要:
            1. .vim/tags/ctags-project是我自己写的一个脚本,你可以把它拷贝到/usr/bin或者/usr/local/bin,此时就可以在任意目录运行ctags-project命令了
            2. 在开发工程的根目录运行ctags-project命令,此时即会生成整个工程的tag文件
            3. 在此以后,在任何目录运行vim都会使用运行过ctags-project命令的那个工程目录的tag文件
            4. 在此之后,在任何目录打开的vim中按F12都会重新生成运行过ctags-project命令的那个工程目录的tag文件
这样的缺点就是一个系统中同时只能编辑一个项目,如果要更换项目,则就要在新项目的目录下重新运行ctags-project命令

2. Taglist
Taglist插件也已经放进去了,直接运行:Tlist即可显示文件函数列表。
快捷键Ctrl+w+w可以在文件函数列表与编辑窗口间切换光标。
下面是在文件函数列表窗口的快捷键:
<CR> 跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样
o 在一个新打开的窗口中显示光标下tag
<Space> 显示光标下tag的原型定义
u 更新taglist窗口中的tag
s 更改排序方式,在按名字排序和按出现顺序排序间切换
x taglist窗口放大和缩小,方便查看较长的tag
+ 打开一个折叠,同zo
- 将tag折叠起来,同zc
* 打开所有的折叠,同zR
= 将所有tag折叠起来,同zM
[[ 跳到前一个文件
]] 跳到后一个文件
q 关闭taglist窗口
<F1> 显示帮助

3. 自动补全
安装了omnicppcomplete插件,支持结构体或者类在输入.或->时自动弹出成员列表。
快捷键Ctrl+n    自动补全写了一半的变量或函数名,列表弹出后可以使列表选项下移
快捷键Ctrl+p    弹出类或结构体的成员列表,列表弹出后可以使列表选项上移

4. 自动跳转
快捷键 Ctrl+]  跳转到函数或变量定义处。
若跳转时发现有多个可跳转处,使用以下命令:
:ts    列出所有可跳转处 (ts 助记字:tags list, “:”开头的命令为VI中:cprevious命令行模式命令)
:tp    跳转到前一个  (tp 助记字:tags preview)
:tn    跳转到下一个 (tn 助记字:tags next)
快捷键 Ctrl+t  从函数定义处跳回到函数调用处。
快捷键 Ctrl+o 跳转回前一处。
快捷键 Ctrl+i  跳转到下一处。
快捷键 [+(Shift+i)  跳转到变量定义处(个人喜好,备用)。

快捷键 Ctrl+\ 跳转到函数或变量调用处。
该跳转与之前不同,使用了quickfix窗口,具体操作见第9节

5. 使用linux系统终端或putty等支持鼠标操作的客户端,可以直接用鼠标进行:
页面滚动;
文字选取,文字选取与按v键进视图模式选取文字方式相同,复制等也需要使用y,若要使用终端自带的文字选取功能(选中右键菜单功能)需要按住shift再用鼠标选择;
Taglist中的文件折叠展开,函数选择跳转;
Ctrl+单击变量或函数直接跳转到定义处;

6. c.vim插件自动添加代码与注释:
在~/.vim/c-support/templates/Templates可以设置版权信息,如作者、信箱、版权归属等,新建.c或.cpp文件是可以看到,并且列出了使用模板文件位置,可以自己编辑
在普通模式下输入以下命令:
\if 插入一般函数
\im 插入主函数
\cfu 插入函数头,即函数说明
\cfr 插入一个frame comment,可以用来写变量说明
\p< 插入一个include , 并且把光标放在<>中
\rc 保存并编译
\rr 运行
\nr 可以在~/.vim/c-support/codesnippets中编写一些预编译代码或者代码块,通过此命令使用
更多查看以下资料:
http://blog.csdn.net/zlzlei/article/details/7860494
http://blog.csdn.net/guolb57/article/details/7013076
我自己还改了c.vim里面的点东西,把中文时间改成了英文

7. closetag插件:
closetag插件用的不多,也不知道有多少功能,现在也就知道:
    ctrl+shift+- 自动补全xml与html的结尾tag

8. winmanager插件:
winmanager插件可以显示类似其他开发环境的文件选择窗口与函数列表窗口:
    普通模式下按m    显示或关闭winmanager窗口
    普通模式下按f       跳转到文件列表窗口
    普通模式下按t       跳转到taglist窗口

9. quickfix窗口:
quickfix窗口用于多标签跳转,多配合cscop及make使用,有以下命令:
:cw    显示quickfix窗口,供列表选择。在该窗口中光标处敲回车进行跳转
:ccl   关闭quickfix窗口,跳转后,quickfix窗口不会自动关闭,只能输入该命令手动关闭
:cn    跳转到下一个
:cp    跳转到上一个
:cl    列出所有标签,但只能看,不能选择
:cc    显示当前标签信息

10. Grep工程内查找:
可以使用Grep命令在工程内查找某个关键字所有出现的地方。
将光标移动到该关键字,运行:
:Grep -R
-R表示递归搜索全部文件,接下来出现以下提示,需要输入搜索的目录:
Search in files: *
修改目录后回车确认即可。查找到的结果使用quickfix窗口显示,该窗口操作方法见第9章。
也可以直接输入要查找的关键字进行查找:
:Grep -R main *

X. 杂项:
1. 本vim插件中包含了libstdc++标准库的tag文件,所以可以直接补全c++的std库类或函数
2. 配置了缩进使用4空格替代tab,自己习惯
3. 快捷键ctrl + k弹出光标所在系统函数的man页面

======================================================
这里只写了最常用的一部分,有其他技巧以后补充。

发布了20 篇原创文章 · 获赞 21 · 访问量 34万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章