What's the best way to manage Vim plugins? Some plugins use Vimball, but I read somewhere that it was seriously broken, and manually dropping each plugin into ~/.vim/ results in a mess of files that are near impossible to update or organise. Is there a plugin-manager for Vim that functions similarly to Linux package managers? Or can plugins be reorganised into their own directories to make administering them easier?
To reorganize plugins in their own directories, pathogen is quite popular.
See a blog post detailing the installation or a Vimcast from Drew Neil.
This is what I actually use. It basically puts each plugin in its separate directory, so you can easily add or remove them.
There is a new splendid tool, vundle, found here : https://github.com/gmarik/vundle
It is Awesome, like a wedding of pathogen with git.
I personally prefer vim-addon-manager: it installs each plugin into separate directory, is able to download and update them. Documentation of vim-addon-manager contains some references to related projects, you may also want to try them.
Matthew Weier O'Phinney, PHP Zend Framework project lead, writes a little about it. Maybe you will find it useful: http://weierophinney.net/matthew/archives/249-Vim-Toolbox,-2010-Edition.html
Pathogen has already been mentioned as a way of managing plugins.
A way of enhancing this is to add the extra plugins as git submodules (or whatever your VCS of choice is). This makes it easier to keep up to date, and easier to replicate when using other machines.
Here is an example from github.
Check out NeoBundle, the ultimate package manager for vim. It's a fork of Vundle.
I use this script for updating and removing vim pathogen plugins