Install, remove and search for new plug-ins for Vim with one touch. After all, Vim without plugins is not Vim.
Vundle is a package manager for Vim, just like the Bundler for Ruby. It organizes the directory structure and also allows you to:
- track and customize plugins right in. vimrc
- install and update plugins
- convenient to search for plugins (vim-scripts.org, github)
- remove unused plugins
- administer plugins interactively

')
Usually the .vim directory has this form.
/.vim /.vim/ftplugin /.vim/ftplugin/plugin1.vim /.vim/ftpluginplugin2.vim /.vim/syntax /.vim/syntax/plugin1.vim /.vim/syntax/plugin2.vim
The problem that users encounter in this case: to update the plugin you need to find out what files it consists of, find them, delete them, and then you can reinstall. With such a sequence of actions you can cope if the plug-ins are few. But as soon as their number passes for a dozen, it becomes truly scary.
Vundle is designed to solve this problem. It makes the .vim directory neat and leads to the following form.
/.vim /.vim/bundle /.vim/bundle/plugin1 /.vim/bundle/plugin1/ftplugin /.vim/bundle/plugin1/ftplugin/plugin1.vim /.vim/bundle/plugin1/syntax /.vim/bundle/plugin1/syntax/plugin1.vim /.vim/bundle/plugin2 /.vim/bundle/plugin2/plugin /.vim/bundle/plugin2/plugin/plugin2.vim /.vim/bundle/plugin2/syntax /.vim/bundle/plugin2/syntax/plugin2.vim
Each plugin quietly lies in its directory and does not touch anyone. And the installation of Vundle is simple:
$ git clone github.com/gmarik/vundle.git ~/.vim/bundle/vundle
Add the following lines to .vimrc:
set nocompatible filetype off “! set rtp+=~/.vim/bundle/vundle/ call vundle#rc() filetype plugin indent on " ! " github Bundle 'tpope/vim-fugitive' Bundle 'lokaltog/vim-easymotion' Bundle 'rstacruz/sparkup', {'rtp': 'vim/'} " vim/scripts Bundle 'L9' Bundle 'FuzzyFinder' Bundle 'rails.vim' "git ( github) Bundle 'git://git.wincent.com/command-t.git' " git ( ) Bundle 'file:///Users/gmarik/path/to/plugin'
As you can see for the github repositories, you just need to specify username / repo_name. To connect scripts with vim / scripts, you need to specify their names used on
vim .org . The last example shows how to connect git repositories.
Now you have a list of plugins that you want to use in .vimrc. What's next? Open Vim and execute the command
:BundleInstall
. This will install all the plugins written in your .vimrc. This command is also responsible for updating the plugins.
If you want to get rid of the plugin, remove it from your .vimrc (or comment out). Then a simple command
:BundleClean
will remove all plugins that are not written in .vimrc.
You can look at the installed plugins using
:BundleList
.
Another huge plus in favor of the Vundle plugin manager is a search.
:BundleSearch foo
will find the foo plugin.
You can get help on the
wiki . Or proven over the years
:h vundle
Finally, Vundle is a derivative of Vim bandle.
Sources:
Repository on
github .
My
.vimrc .