I use a pretty large list of Vim plugins - currently, the count is at 45. I went through a lot of these as part of this post last year, but the list has changed a bit since then.

Using My Configuration

Using git, you can easily download my full Vim configuration, including plugins (as git submodules), and start using it pretty easily after making a few symlinks.

You really should read my vimrc if you intend to use it. There is a lot of stuff in there, not all of which you may want. Also, reading it is a great way to learn about what a lot of the plugins and shortcuts are doing for you.

Quick summary of how to download & use it:

$ git clone --recursive https://github.com/bhilburn/dotfiles.git bhilburn-configs.git
$ ln -s bhilburn-configs.git/vim ~/.vim
$ ln -s bhilburn-configs.git/vim/vimrc ~/.vimrc

The first command clones my configuration repository, including all submodules (which are how I store Vim plugins). The second two commands set up symbolic links to the vimrc file and vim directory you just downloaded.

In addition, you'll need ack to make use of the ack.vim plugin, and Steve Losh's 'friendly-find' to use my configuration for ctrlp. Both 'ctrlp' and 'ack.vim' are fantastic plugins that I use daily - they are absolutely worth the extra work.

To get ack, you'll need to download / install it. Instructions are here.

For 'friendly-find' (ffind), it's actually a submodule in my dotfiles.git repo, which you cloned above. Head into bhilburn-configs.git/tools/friendly-find.git, and put that ffind program in your '$PATH'.

Lastly, to get the cool-looking statusline shown in this post, you'll need to install the Powerline fonts (also a submodule in my dotfiles.git repo that you just cloned). Head into bhilburn-configs.git/fonts/powerline-fonts and install them.

My Plugin List

Since I use so many plugins, I didn't want to manually make a list - so, I wrote a quick Python program that goes through each of my vim plugin directories and queries information from the upsteam repository on Github. What follows is a list of the plugins I use, with their respective descriptions from their official Github page.


Plugin Description
/tpope/vim-unimpaired unimpaired.vim: pairs of handy bracket mappings
/MarcWeber/vim-addon-mw-utils vim: interpret a file by function and cache file automatically
/vim-scripts/slimv.vim SLIME-like Lisp and Clojure REPL inside Vim with Profiling, Hyperspec, Paredit
/kikijump/tslime.vim Send command from vim to a running tmux session
/sjl/clam.vim A lightweight Vim plugin for working with shell commands.
/sjl/AnsiEsc.vim ansi escape sequences concealed, but highlighted as specified (conceal)
/scrooloose/nerdtree A tree explorer plugin for vim.
/garbas/vim-snipmate snipMate.vim aims to be a concise vim script that implements some of TextMate's snippets features in Vim.
/godlygeek/tabular Vim script for text filtering and alignment
/kien/ctrlp.vim Fuzzy file, buffer, mru, tag, etc finder.
/honza/vim-snippets vim-snipmate default snippets (Previously snipmate-snippets)
/saltstack/salt-vim Vim files for editing Salt files
/majutsushi/tagbar Vim plugin that displays tags in a window, ordered by scope
/ervandew/supertab Perform all your vim insert mode completions with Tab
/tristen/vim-sparkup Sparkup for Vim like it's 2012 2013 2014
/vim-scripts/taglist.vim Source code browser (supports C/C++, java, perl, python, tcl, sql, php, etc)
/mileszs/ack.vim Vim plugin for the Perl module / CLI script 'ack'
/eagletmt/ghcmod-vim Happy Haskell programming on Vim, powered by ghc-mod
/sjl/gundo.vim A git mirror of gundo.vim
/tpope/vim-repeat repeat.vim: enable repeating supported plugin maps with "."
/pbrisbin/vim-syntax-shakespeare A set of vim syntax files for highlighting the various Html templating languages in Haskell
/vim-scripts/YankRing.vim Maintains a history of previous yanks, changes and deletes
/bling/vim-airline lean & mean status/tabline for vim that's light as air
/tpope/vim-fugitive fugitive.vim: a Git wrapper so awesome, it should be illegal
/klen/python-mode Vim python-mode. PyLint, Rope, Pydoc, breakpoints from box.
/tomtom/tlib_vim Some utility functions for VIM
/eagletmt/neco-ghc A completion plugin for Haskell, using ghc-mod
/AndrewRadev/linediff.vim A vim plugin to perform diffs on blocks of code
bhilburn/kernel-coding-style Vim plugin to respect the Linux kernel coding style
/pangloss/vim-javascript Vastly improved Javascript indentation and syntax support in Vim.
/sjl/strftimedammit.vim A single Vim documentation file that lists strftime-like formatting characters for a variety of languages.
/luochen1990/rainbow rainbow parentheses improved, shorter code, no level limit, smooth and fast, powerful configuration.
/tpope/vim-surround surround.vim: quoting/parenthesizing made simple
/sjl/splice.vim A Vim plugin for managing three-way merges.
/dag/vim2hs vim2hs :: Vim -> Haskell
/sjl/badwolf A Vim color scheme.
/tpope/vim-commentary commentary.vim: comment stuff out
/michaeljsmith/vim-indent-object Vim plugin that defines a new text object representing lines of code at the same indent level. Useful for python/vim scripts, etc.
/lukerandall/haskellmode-vim An unpacked copy of the haskellmode vimball. Ping me if it needs updating.
/tomasr/molokai Molokai color scheme for Vim
/Shougo/vimproc.vim Interactive command execution in Vim.
/othree/html5.vim HTML5 omnicomplete and syntax
/scrooloose/syntastic Syntax checking hacks for vim