vim插件管理-pathogen
pathogen
功能说明
一个插件包往往具备多种功能,每个文件根据Vim的路径约定会放置到不同的目录下,通用插件放到plugin下,语法高亮插件放到syntax下,自动加载插件放到autoload下,文件类型插件放到ftplugin下,编码格式插件的放到indent下......如果你是重度插件用户,你会发现在.vim主目录下会有一堆文件夹,无论是你想要安装新插件,还是想删除旧插件,都非常麻烦,你不得不在每个文件夹下找相关的vim文件。
pathogen是管理插件的插件,主要用来解决上述问题。pathogen在.vim目录下建立bundle文件,所有的插件都会在该目录下管理。当Vim启动时,会自动执行runtimepath(rtp)列表中所包含文件夹下的vim脚本,pathogen会在启动时把./vim/bundle下的文件夹中的插件按照一定顺序递归加载到rtp中,这样Vim启动时,通过pathogen管理的插件就生效了。
有了pathogen之后,一般.vim文件夹下只有三个文件夹:autoload、bundle和doc,其他插件将被安装在bundle文件夹下。
安装
- 在.vim文件夹下建立autoload和bundle目录;
- 下载pathogen:https://github.com/tpope/vim-pathogen;
- 把vim-pathogen/autoload/pathogen.vim文件,将其复制到.vim/autoload目录下;
- 在.vimrc文件中增加如下代码:call pathogen#infect().
注意事项:
新插件安装到bundle目录下后,如果插件中包含doc,则需要在Vim中运行:Helptags来生成在线帮助tags。
NERDTree
功能说明:
NERDTree是Vim最常用的插件之一,可以在Vim运行时显示目录和文件结构,类似TextMate左侧的文件浏览器,但操作起来更为方便,你可以在手不离开键盘的情况下快速浏览文件,并在文件和文件夹之间进行切换。
安装
- 进入.vim/bundle目录;
- 执行git clone git://github.com/scrooloose/nerdtree.git;
- 下载完成后,在bundle下会多出一个nerdtree的文件夹,所有相关插件都在该文件夹下;
- 在Vim中运行:Helptags来生成NERDTree的在线帮助tags。
使用说明
打开Vim,输入:NERDTree,即可呼出执行Vim命令的当前目录的文件目录。
NERDTree提供了丰富的键盘操作方式来浏览和打开文件,我简单介绍一些常用的快捷键:
- o打开关闭文件或者目录,如果是文件的话,光标出现在打开的文件中;
- go效果同上,不过光标保持在文件目录里,类似预览文件内容的功能;
- i和s可以水平分割或纵向分割窗口打开文件,前面加g类似go的功能;
- t在标签页中打开;
- T在后台标签页中打开;
- p到上层目录;
- P到根目录;
- K到同目录第一个节点;
- J到同目录最后一个节点;
- m显示文件系统菜单(添加、删除、移动操作);
- ?帮助;
- q关闭。
Command-T
功能说明
Command-T是一个基于Ruby和C扩展实现的快速文件浏览的插件,类似TextMate的Go to File(Command+T呼出)功能,或Eclipse的Open Resource(Command+Shift+r)功能,可以通过模糊匹配快速定位并打开文件。
安装
- 下载最新vba文件:https://wincent.com/products/command-t;
- 在~/.vim/bundle目录下创建文件夹command-t;
- 用Vim打开command-t-1.4.vba;
- 执行:UseVimball ~/.vim/bundle/command-t;
- 进入ruby目录下编译C扩展(当然你需要安装ruby)
cd ~/.vim/bundle/command-t/ruby/command-t - ruby extconf.rb
- make
使用说明:
输入:CommandT可进入文件快速定位功能,如图所示:
- ctrl+j/k 上下选择文件,选中后回车打开文件
- ctrl+t 以tab方式打开文件
- ctrl+s/v 可以水平或垂直分割窗口打开文件
- ctrl+c 退出该模式
该插件还有个常用命令,:CommandTBuffer,可以浏览缓冲区的文件,并重新打开。操作方式同上。
注意事项
Vim版本需要支持ruby扩展。我们可以在Vim中输入:ruby 1检查,如果出现E319: Sorry, the command is not available in this version就表示不支持。
如果出现上述情况,我们就需要自己去编译能够支持ruby的Vim,嫌麻烦的话可以直接安装vim-nox,自带Ruby支持,在Ubuntu下安装命令如下:sudo apt-get install vim-nox。
执行ruby extconf.rb命令时如果出现找不到mkmf包的情况,说明你需要安装ruby-dev的包,在Ubuntu下安装命令如下:sudo apt-get install ruby1.8-dev。
Powerline
功能说明:
Powerline是Vim的一个非常漂亮的状态栏插件,安装了Powerline之后,Vim底部将会出现一个增强型状态栏,当Vim处于NORMAL、INSERT、BLOCK等状态时,状态栏会呈现不同的颜色,同时状态栏还会显示当前编辑文件的格式(uft-8等)、文件类型(java、xml等)和光标位置等,喜欢的就装。
如图所示:
安装
- 进入.vim/bundle目录;
- 执行git clone git://github.com/Lokaltog/vim-powerline.git;
- 在.vimrc中设置状态栏主题
"powerline{ - set guifont=PowerlineSymbols\ for\ Powerline
- set nocompatible
- set t_Co=256
- let g:Powerline_symbols = ‘fancy‘
- "}