This is a list of my favorite Vim plugins. You can find my dotfiles over at GitHub.

1. gmarik/Vundle.vim

To make your life much easier, you should install Vundle. It's a plugin manager for Vim. To add a plugin to your Vim installation, you only need to add a line like this Plugin 'github_user/vim_plugin_repo' to your .vimrc file and install them with :PluginInstall.

2. bling/vim-airline

Most people know vim-powerline, a nifty status bar for your vim interface. vim-airline is basically the same, but with a modern twist and a lighter implementation.

3. ctrlpvim/ctrlp.vim

This is an awesome fuzzy finder. Much like vim-airline it's a modern take on Command-T an older but very popular plugin, which got "replaced" by a better and faster solution.

You bind the fuzzy finder to some shortcut (<Leader>t in my case), type the file name, path name or whatever and it will find your files. Even though i use NerdTree as a filebrowser, ctrlp is how i open files inside Vim.

4. scrooloose/nerdtree

I guess it's the most popular plugin, because most people that start out with Vim want to have some kind of file browser and NerdTree is exactly that. It's good to start out with NerdTree if you're new to Vim.

5. wesQ3/vim-windowswap

Sometimes i have a few buffers open and want to switch those around. With vim-windowswap it's possible to mark a Buffer and paste it somewhere else. Otherwise you would have to close and reopen certain buffers, or switch them manually.

6. nathanaelkane/vim-indent-guides

If you have huge templates or methods (which you shouldn't) it is sometimes kinda nice to show line indentations. I toggle it with <Leader>ig.

7. danro/rename.vim

Renaming files is to hard? Just call :Rename <new filename> and it will rename the file in your active buffer. If you type :Rename and press the Tab key multiple times, it will shuffle through filenames of the current directory.

8. tpope/vim-surround

Gives you many useful ways to surround words with parentheses, brackets, quotes and so on. It has some handy features to replace " with ' and so on. VERY useful!

9. jiangmiao/auto-pairs

Type [ and it will add the corresponding closing bracket behind your cursor. This works with other symbols too! It's a good addition to tpope/vim-surround.

10. vim-scripts/tComment

If you want to comment / uncomment one line or huge blocks of code. Just type CTRL + __ (underscore, twice). Nicely formatted comments!

11. tpope/vim-fugitive

Git wrapper for Vim. Commit, push, do whatever you want, but take a look at the documentation first!

12. rizzatti/dash.vim

If you're a Mac user, you might know Dash.app, a really well made documentation App. You can use this plugin to search in Dash via :Dash <keyword>, or just type :Dash to search for the word under your cursor.

13. tpope/vim-bundler

Shortcut for bundle. You can call :Bundle or open gems with Bopen <gemname>. Plus some handy extras! Really useful if you want to see what a certain gem is doing internally.

14. tpope/vim-rails

This plugin does so many good things, i can't name them all. Just take a look at the documentation. But as a Rails developer, you want this plugin!

15. tpope/vim-endwise

Adds "end" to def and ifand so on. A must for Ruby developers!

16. thoughtbot/vim-rspec

Run RSpec from your Vim window. There are a few methods that you can use to interact with RSpec (run current spec, nearest spec, all specs).

17. slim-template/vim-slim

This plugins provides syntax highlighting for the slim template language. I use slim-rails wherever possible, it's awesome!

18. csexton/jekyll.vim

Handy plugin for the Jekyll blogging engine. Open Vim, type :JekyllPost, add a title and it will create a new file with a valid title inside your _posts directory. Nobody has time to write those filenames!

19. asux/vim-capybara

Snippets for the capybara acceptance test framework.

20. scrooloose/syntastic

This plugin is awesome! It checks if there are any syntax errors and highlights them inside your buffer.

It also displays things like unused variables and few other things. You can also call :Errors and get a full list.

21. kchmck/vim-coffee-script

You can start the CoffeeScript compiler from Vim, but since this is done by the asset pipeline (in case of RoR) i use it primarily for syntax highlighting.

22. garbas/vim-snipmate

Many, many, many snippets! If you want snippets, this is the plugin to get!