玩转VIM之将Vim全副武装

  懒癌末期的我貌似很久没有写博客了,已经欠了多少篇在计划中的博客我已然不好意思说了。好了,言归正传,在前三篇介绍了Vim作为代码编辑器之后可能会有人说,要学习那么多指令真的就比真正的IDE好用么?在IDL里面有自动补全,有自动生成各种格式的代码,岂不是方便至极,效率高Vim好几条街好么?而且还能调背景色以及代码颜色可以方便调试blablabla、、、恩,我只想说这是因为你并不真正的了解传说中的Vim,你以为它就没有自动补全高亮显示拼写检查这些么?太天真了~另外请问你打开IDE的时候能开N多其它软件而不卡么?总而言之言而总之我就是喜欢Vim。下面开始介绍如何将Vim打造成工作中的神器。

主题

  第一步咱们还是说说主题吧,不管怎么说,一个好看的背景以及代码颜色不仅赏心悦目而且也能间接的提高工作效率,so,换种主题换种心情~由于编码工作中偏爱Sublime text 2的背景色,因此我找了个和这个差不多的Vim主题,名为monokai。喜欢的朋友可以从这里下载。不喜欢的朋友可以网上搜索自己喜欢的主题进行配置。下面说一下如何对Vim的主题进行配置:

  • 首先你需要建立一个文件夹.vim,在根目录下(如果有的话请直接跳到第2步)。具体操作如下:
$ mkdir ~/.vim
  • 接下来在.vim目录下创建一个名为colors的目录,将你下载的主题文件*.vim放到这个目录下。
  • 最后一步,编辑.vimrc文件,使用下载的目录:
$vim ~/.vimrc

  在里面加入如下两行代码:

 syntax enable
colorscheme monokai

  再次用Vim打开文件你将看到如下的界面:

  

Vim上的插件管理神器-Vundle 

  至于为什么一上来不先介绍各种功能强大的插件,这当然是有原因的。众所周知,VIM的强大不仅仅体现在操作的高效率,更有强大而充沛的插件做支援,插件丰富了之后,就面临查找和管理的问题。如果每个插件都要自己手动安装,那么将是一件多么耗时的工作,麻烦且毫无意义,因为别人用了Vundle插件管理神器之后分分钟自动安装完毕,你却一个个手动安装,我只能说:你好勤快!反正我这种懒人是不会那么做的。好了,接下来说下如何使用Vundle来管理各种插件吧。首先,你要确保你电脑上已然安装了Git,并且你也会使用它的一些简单的指令。不知道的同学可以看这里。然后执行如下指令将Vundle项目clone到本地。指令如下:

 $ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

  OK之后,先在你的~/.vimrc里面进行一些配置,配置清单如下:

 set nocompatible              " 必须
filetype off " 必须 " 设置含有并且初始化Vundle的运行环境
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin() Plugin 'gmarik/Vundle.vim' Plugin 'tpope/vim-fugitive' call vundle#end() " required
filetype plugin indent on " required
" Brief help
" :PluginList - lists configured plugins
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line

  现在简单说一下如何使用这个插件管理神器,首先你需要把你想要安装的插件都放在下面的两行代码之间。

 call vundle#begin()
call vundle#end()

   其中第8行的时必装的Plugin,这样才能让Vundle管理插件,最后再简单介绍一下使用方法(其实刚刚贴出来的里面已经有了英文的简单的help)。

  • :PluginList          列出配置的Plugins。
  • :PluginInstall      安装在vundle#begin()和vundle#end()之间的插件。
  • :PluginClean       卸载不在vundle#begin()和vundle#end()代码段之间的插件。

  基本情况就是酱紫了。下面重点介绍两个最赞的插件。

自动补全神器—YCM

  听名字就知道是干嘛的,好多人说IDE效率高,因为有自动补全,其实我想说,其实Vim也是有的,YCM包含以下的几个插件的功能,所以以下的插件可以不用装了,地址在这里

 clang_complete
AutoComplPop
Supertab
neocomplcache
jedi(对python的补全)

  另外YCM的常用快捷键如下所示:

 ctrl+j 选择下一个补全
ctrl+k 选择上一个补全 ctrl+n 选择下一个补全
ctrl+p 选择上一个补全
回车 选中
,jd 跳转到函数定义, 分屏打开一个buffer(非常有用!!!!!!!!!)
,gd 跳到声明位置, 仅 filetypes: c, cpp, objc, objcpp, python 有效(比较少用)

  效果图如下:

目录树神器-Nerdtree

  有时候工作的时候发现从在编辑一个文件的时候想打开另一个文件很麻烦,不像IDE在左侧有个目录,这个需求那么大的功能Vim插件会没有?你错了,当然有。那就是Nerdtree

  更为强大的是Nerdtree还有各种你想不到的方便的功能,常用的快捷键如下:

在nerdtree窗口常用操作:(小写当前,大写root)
x.......收起当前目录树
X.......递归收起当前目录树
r.......刷新当前目录
R.......刷新根目录树 p.......跳到当前节点的父节点
P.......跳到root节点
k/j.....上下移动
K.......到同目录第一个节点
J.......最后一个节点 o.......Open files, directories and bookmarks s.......split上下分屏[原来是i, 改键]
v.......vsplit左右分屏[原来是s, 改键] c.......将当前目录设为根节点
q.......关闭

  下面上一个效果图:

  更多的插件请看这里。好了,赶紧用插件武装你的Vim了。另外提一个忠告:插件并不是越多越好,够用就行~

玩转VIM之将Vim全副武装的更多相关文章

  1. VIM使用(一) VIM插件管理利器-vundle

    有关VIM的文件网上一大堆,这里只是记录一下我新配置环境的步骤.以备查看参考. sudo apt-get install gitgit clone https://github.com/gmarik/ ...

  2. vim常用命令 vim键盘布局

    vim键盘布局,vim快捷键 vim常用命令:

  3. Cygwin下安装vim后,vim中退格键无法正常使用

    问题描述: 在Cygwin中安装完vim后 进入vim,发现上下左右键和退格键都无法正常使用 问题分析: 首先考虑到的就是缺少vim的配置文件,首先查看/etc路径下是否有vim的配置文件 admin ...

  4. vim note(6)--vim的一个较全的介绍(转)

    vim的配置文件 ~/.vimrc       用户的默认配置文件 ~/.vim/plugin/   用户的默认脚本文件的存放文件夹 ~/.vim/ftplugin/ 用户的默认文件类型相关脚本文件的 ...

  5. 请通过vim练习:vim vimtutor

    vim vimtutor ================================================================================ W e l ...

  6. vim 安装Vundle.vim

    1.下载 git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim 2.配置vimrc set no ...

  7. linux 下vi与vim区别以及vim的使用

    vi与vim vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器.他是我们使用Linux系统不能缺少的工具.由于对 ...

  8. Linux centosVMware Vim介绍、vim颜色显示和移动光标、vim一般模式下移动光标、vim一般模式下复制、剪切和粘贴

    一.Vim介绍 vim 是一款功能强大的文本编辑器,是vi的升级版,带有颜色显示, 默认有三种模式:一般模式, 命令模式,  编辑模式   安装Vim [root@davery ~]# vim /et ...

  9. linux下vi与vim区别以及vim的使用-------vim编辑时脚本高光显示语法

    vi与vimvi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器.他是我们使用Linux系统不能缺少的工具.由于对U ...

随机推荐

  1. 2018.11.1 Hibernate中的Mapper关系映射文件

    Customer.hbm.xml 基本的参数都在里面了 <?xml version="1.0" encoding="UTF-8"?> <!DO ...

  2. [转]Matlab2012b安装详解

    matlab2012b安装文件下载: http://yunpan.cn/cVY5VsSeUXzai (提取码:ec84) 1.双击setup.exe进行安装.安装中选择“不使用Internet安装” ...

  3. 解决:Visual Studio 启动就报错退出

    Please open an administrative CMD window and navigate to C:\Program Files (x86)\Microsoft Visual Stu ...

  4. U盘空间释放

    U盘做成启动盘后,怎么释放空间,恢复到原来的容量.这里有个帖子,我觉得很方便,不用安装什么东西,简单直接. http://blog.sina.com.cn/s/blog_68f6e8a901014cv ...

  5. IPv4和IPv6的兼容问题

    一网络拓扑 Ipv6网络1 路由器A IPv4网络 路由器B IPv6网络2 二知识补充 [注]双协议栈主机(路由器A.B)通过域名解析器区分传过来的是IPv4还是IPv6 三处理技术 双协议栈 Ip ...

  6. C#中rpt的数据类型和Oracle中数据类型的匹配

    Oracle中number数据类型对应C#中decimal数据类型,结果是整数 Oracle中number数据类型对应C#中int32数据类型,结果是小数,保留两位小数 Oracle中中date类型数 ...

  7. oracle远程导出/导入

    创建db_link,远程导出/导入.expdp/impdp Oracle数据库本地磁盘空间有限,或应用系统的需要,会通过远程的方式导出数据库.在oracle当中,exp远程导库的速度太慢,而expdp ...

  8. Sass 基础(六)

    join() 函数 join()函数是将两个列表连接合并成一个列表. >>join(10px 20px, 30px 40px) (10px 20px 20px 40px) >> ...

  9. Java的内存--存储(1)

    有次去面试,面试官突然问我这个问题,当时我只知道怎么写最优化,但是具体不知道为什么那样写,身价立马下降哦 1. 以下开发习惯,你怎么看? for(int i=0;i<2;i++){ Person ...

  10. PC QQ客服代码

    一. <a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=QQ号&site=qq&am ...