用jeffy-vim配置vim,秒杀其他的配置方法

1.下载jeffy-vim-read.tar.gz配置脚本,下载地址为:http://blog.chinaunix.net/attachment/attach/26/83/38/8326833883a1bf4bf34db4032c2954dd857ab312d0.zip
2.解压jeffy-vim-read.tar.gz

tar -zxvf jeffy-vim-read.tar.gz

3.解压完成 后,进入jeffy-vim-read目录

cd jeffy-vim-read

4.执行install.sh,会出现以下界面

./install.sh
 
等待几分钟,会自动从网络上下载一些插件来配置vim,下载配置完成后,会自动关闭,所以你要做的就是等待......。

5.最后安装一下ctags插件,就完全配置好了

sudo apt-get install ctags(ubuntu)
sudo yum install ctags(centos)
6.测试下,通过vi 打开一个C语言的.c文件,如下
 
   


使用方法:
     这样配置好以后,vim所想要的功能基本上都有了,总结几个Fn键的用法:F2:在左边列出你的这个文件里面的有的函数,然后可以选择跳到那个函数里面。F3:在右边列出与现在打开文件同目录下的所有文件,并且可以跳到上层目录。F4:列出最近最频繁使用的文件。F5:搜索一个文件。F6:搜索你指定的词在同目录下其他文件中的出现情况。F11:将vim变成全屏或还原。

插件使用
  • jeffy-vim的配置使用pathogen来管理插件,每个插件在vimfiles/bundle下都有一个目录,大部分的插件在相应的doc目录下都有对应的帮助文档,少部分在相应的plugin里面对应插件的开始部分就是帮助文档。你也可以添加你自己想要的插件到vimfiles/bundle下。
  • 首先你要做的就是,找一个不太大的C项目,此项目可以有几十个文件,一层一层的子目录。进入到项目的根目录下,启动VIM。按照下面的文档一步一步做,你就可以对jeffy-vim的功能有个大致了解。其它关于Vim的操作请参考其它文档。
  • 按",jc"会生成项目的ctags和cscope的数据库。此命令会在当前目录下生成project.vim的目录,所有的项目数据库文件会放到这个目录下。以后打开Vim后(根目录和子目录都可以),就会自动加载项目数据库,源文件修改后可以用",ju"来更新项目数据库,如果项目太大的话你可能就得等一会了。
  • 按",f"会在VIM的右边打开一个文件浏览器窗口。再按一下",f"会关闭这个窗口。你可以在这个窗口里面上下左右移动选择文件,按回车打开文件。按"?"可以打开和关闭帮助菜单。详细的使用方法请参考插件NERD_tree。
  • 如果你的项目文件及子目录太多,你又不知道你想打开的文件在哪里,此时你就可以按",e"并输入你想打开的文件的名字(可以使用正则表达式)再按Tab进行选择,回车就可以打开。
  • 现在你已经打开了一个C文件,按",t"将会在Vim的左边打开一个Taglist窗口,这个窗口里面包含了C文件里面的定义,如struct,typedef,全局变量,函数等。使用"Ctrl-h"将光标移动到左边的窗口,上下选择tag按回车定位到tag的定义处。再按",t"就会关闭Taglist窗口。详细的使用方法请参考插件Taglist。
  • 你可能会发现,你定义的函数、类型、宏用不同的颜色高亮起来了,这个是用一个叫jeffy-plugins的插件来实现的。该插件是我实现的,虽然远没有SI那样强大,但有总比没有好了,将就着用吧-。当你定义了新类型后,Vim不会立即给你高亮起来,你得用",ju"更新数据库。该插件还不完善,如果在使用的过程中给你带来了不便,请见谅!
  • 将光标放在某个宏上,按"Ctrl+]"就会跳到宏的定义处,按"Ctrl+o"就会跳回来。更详细的使用方法可以使用命令":help tagsrch.txt"查看帮助文档。
  • cscope也可以用来在代码间跳来跳去,但有些功能是ctags所没有的,比如查找某个函数被哪些函数调用过、查找某个文件被哪些文件引用过等等,在.vimrc里面定义了使用cscope的快捷键,比如将光标放在某个函数上使用命令",sc"就可以查看这个函数被哪些函数调用过,使用命令",sg"就可以跳转到函数的定义处。更多的使用方法请使用命令":help if_cscop.txt"查看帮助文档。
  • 如果你想调试,你得先安装gdb。在Gvim下有插件完美支持Vim下的gdb调试,但终端下的Vim只有当Vim编译的时候打了vimgdb的补丁才能用gdb来调试。如果你的Vim在编译的时候打了此补丁,你可以通过<F7>来调试。详细的调试命令请使用":help vimgdb"打开帮助文档。
  • 现在你可能打开了很多个文件,如果你想查看当前打开了哪些文件,可以使用命令",be"在当前窗口中打开buffer浏览器,上下选择文件回车就可以打开。更多的使用方法请使用":help bufexplorer.txt"查看帮助文档。
  • 打开一个C文件,输入几个字符,除非你运气实在不好,否则你就会看到一个弹出菜单。里面会根据你输入的内容提示补全。用上下或"Ctrl-p","Ctrl-n"进行选择。在结构体变量后输入"."或"->"的时候也会根据结构成员补全。更多的使用方法请使用":help acp.txt"和":help omnicppcomplete.txt"查看帮助文档。
  • 打开一个C文件,在一个函数实现体中调用另外一个函数。当你输入完这个被调用的函数名,在输入左括号的时候在Vim的下方就会显示函数的原型。详细帮助文档请参考echofunc插件。
  • 打开一个文件,在一行的开头输入main再按"Tab"键试试,main函数就这样出来了,在main函数里面输入for再按几个"Tab"看看会出现什么效果。更多的代码自动完成请查看文件"vimfiles/bundle/snipMate/snippets/c.snippets",当然你也可以自己定义代码自动完成,定义方法请使用":help snipMate.txt"。请在vimrc里面修改自己的个人信息g:snip_name,g:snip_mail,g_snip_company。
  • 此时你可以关闭Vim,下次打开Vim的时候按",r"会打开一个MRU窗口,这个窗口里面记录了最近打开的文件,上下选择文件回车打开。如果没有你想打开的文件可以按"q"关闭窗口。详细使用方法请参考插件MRU。
如果你想你的vim想IDE一样可以按键就调试和运行,那就请看下面:
"C,C++,java,luajit,shell 按F7编译运行
map <F7> :call CompileRunGcc()<CR>
func! CompileRunGcc()
    exec "w"
    if &filetype == 'c'
        exec "!g++ % -o %<"
        exec "! ./%<"
    elseif &filetype == 'cpp'
        exec "!g++ % -o %<"
        exec "! ./%<"
    elseif &filetype == 'java'
        exec "!javac %"
        exec "!java %<"
    elseif &filetype == 'lua'
        exec "!luajit ./%"
    elseif &filetype == 'sh'
        :!./%
    endif
endfunc
"c,c++的调试
map <F8> :call Rungdb()<CR>
func! Rungdb()
    exec "w"
    exec "!g++ % -g -o %<"
    exec "!gdb ./%<"
endfunc

用上面这些命令就可以达到你想要的要求。

这样配置下来你的vim就非常强大了,哦,对了,还有一个问题就是当你复制到vim中时如果有注释时会产生一大片下面的注释,或者缩进的非常远,这时,你需要在粘帖前:set paste,粘帖完成后,:set nopaste。然后一切恢复。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值