151

vim-plug is a nice alternative to Vundle, it does things a bit different from a technical point of view which should make it faster (see this). It has most (or all?) of the features of Vundle. Parallel update procedure for Vim with any of +ruby, +python, or Neovim. Falls back to sequential mode using Vimscript if none is available. Lazy loading, for faster ...


59

Pathogen is simple. Essentially it just does: autoload plugins from a folder generate help tags for these plugins Pros: minimalist Cons: everything else done manually (installing, updating, removing, etc.) no lazy loading To install it download pathogen.vim to ~/.vim/autoload: mkdir -p ~/.vim/autoload ~/.vim/bundle && \ curl -LSso ~/.vim/...


45

Vundle is more complex. It is a package manager à la apt or yum for plugins. It can: search a plugin index update plugins generate helptags automatically keep, but not use, plugins in the autoload folder clean out such unused plugins Works on Linux, OSX, and MS Windows To install: git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim ...


25

The primary reason is precisely your second point, since there has been an active movement on a community level to use source control for managing plugins with the aid of plugin managers like pathogen, vundle, neobundle etc, it's become more of an easier approach to upgrading the plugins. You can also more easily control which release you would like to lock ...


20

Both Vim 8.0 and Neovim have their own built-in package manager. In Vim 8.0 create the following directories: .vim/pack/*/start, where * is any name you want to use; e.g. .vim/pack/jimmy/start. Clone your plugin into the start directory just as you would if you were using pathogen. With Neovim, the directories are a little more longwinded: .local/share/...


16

dein.vim: As a follow up of this question, I'll add here the plugin manager made by the well-known Shougo. According to the README, the plugin has the following dependencies: Vim >7.4 or neovim: while keeping Vim up to date is a good thing, it may be problematic for some users that previous versions are not supported git: which is pretty common for a ...


14

N.B., I'm one of the original authors of Debian's vim-addon-manager (which I'll refer to as dvam for the rest of this answer, to avoid confusion with Marc Weber's vam). dvam is intended solely to manage addons that are distributed in the form of Debian packages. There are people that prefer, for various reason, to use packaged software even for things like ...


11

For a plugin to be Pathogen/Vundle/NeoBundle/Plug/VAM-compatible, it needs to follow the standard structure expected by Vim in your ~/.vim/ directory: STANDARD STRUCTURE PLUGIN STRUCTURE ~/.vim/autoload/... ~/.vim/bundle/pluginname/autoload/... /doc/... /doc/... /ftplugin/... ...


10

I especially like VAM for its self-deployment: all you need is your .vimrc and then start vim. So you don't need the To Install line used by most other plugin-managers (the first step of installing the plugin manager itself).


9

Change the call pathogen#runtime_append_all_bundles() line in your vimrc to call pathogen#infect(), as the message suggests.


8

As far as I'm concerned, I want the plugin manager I use to support dependencies. The reasons are that I'm maintaining several plugins and I have a lot of inter-dependencies : a generic library is used by all, the template/snippet engine is used by the C++ suite, the refactoring plugin uses also the ctags library-plugin, and so on. Requiring end-user to ...


7

Do I really need a plugin manager like vundle? No. Plugin managers have always been and will always be optional. What is the utility of such tools, how would it affect my vim ecosystem? You don't have a "vim ecosystem"; you have a Vim setup. A plugin manager may be useful if: you use too many plugins, you like to try new plugins, you absolutely want ...


5

Disclaimer This answer contains comments that are based on my experience and on the opinion that I got with the time, it might not be universal. I wrote this answer with keeping in mind the experience of a new Vim user. EDIT The package vim-addon-manager installed by OP is a command-line plugin manager that you run outside of Vim. It was created to install ...


5

The current version of vim-plug allows you to specify tags with wildcards and it selects the latest version (--sort -version:refname) if multiple matching tags are found. So you can simply write * if you want the latest tag. For example, Plug 'fatih/vim-go', { 'tag': '*' } And you'll see that the installer handles it as expected. - Finishing ... Done! - ...


5

Most of these plugin managers do a great job of managing plugins but leave the headache of managing the vimrc to you. If you have multiple machines and want the same config across, Vire makes it super easy. You don't need git or figure out submodules or any extra effort to get setup or migrate. Install Python, which is what most modern Vim plugins are ...


3

TL;DR Use :h packages You will need the plugin code (github is easiest, though if you just have a copy of the source tree lying around, that works too) A brief history of time managing plugins1 I won't go into extreme detail here unless it is requested. This is mostly a background section, and can be skipped if needed. In the dark ages, you used to need ...


3

A plugin management helper like pathogen has the distinct advantage of keeping each of the plugins separate, on its own subdiroctery. In fact, you can also use it to keep parts of your own configuration in separate subdirectories. That way it is easy to act on a single plugin or a single part of your configuration (remove, update, etc...) without touching ...


3

I probably don't know all plugin managers, but most (including vundle), if not all, build on the plugin system that tpope invented with pathogen. This plugin system basically recreates the folder structure you have in ~/.vim. To make it short. They should be interchangeable.


2

For people who want a full plugin manager using Pathogen, there is also apt-vim. You can install it with curl -sL https://raw.githubusercontent.com/egalpin/apt-vim/master/install.sh | sh (as described here: https://www.linuxsecrets.com/1715-vi-editor-tips-trick-and-secrets-into-the-vi-vim-editor-part-ii ). Once installed, you can just type apt-vim install ...


2

I would like to recommend one like vundle for the following reasons: you'll have a lot plugins sooner than you think, once you get used to vim, it will make sense to do nearly 'everything' in it. it's not easy to manage all plugins and those configs. having a plugin to manage plugins makes it easier to migrate, say, deploy a new environment.


2

You can do it like this: if executable('ctags') || executable('global') call dein#add('...') endif


1

From :h neobundle-usage: Run this command to update your bundled plugins: :NeoBundleUpdate


1

Ugh, I was calling :NERD_Tree, not :NERDTree Also added to my .vimrc: autocmd vimenter * NERDTree "Problem" solved.


1

I was looking for a way to use pathogen but update easily and make it portable, so perhaps a bash script might be helpful (using vim-plug functionality)- #!/bin/sh # inspired by https://github.com/thoughtbot/dotfiles/blob/master/hooks/post-up if [ ! -e "$HOME"/.vim/autoload/pathogen.vim ]; then curl -fLo "$HOME"/.vim/autoload/pathogen.vim --create-dirs \...


Only top voted, non community-wiki answers of a minimum length are eligible