eh vim

Someone recently asked about what vim plugins to use. As I’m somewhat against putting everything on github I figured I’d go the more painstaking path of blogging about them.

Vundle

  " let Vundle manage Vundle
  " required!
  Bundle 'gmarik/vundle'

Vundle plugin manager it’s this or pathogen but Vundle will download the things for you from github, so it just seemed easier. Just use one of them.

Airline

I used to use powerline to modify the status bar. Airline is the rewrite of it. In pure vimscript and fast.

It’s worth getting the powerline fonts for whatever console font you’re using. powerline/fonts. I’m currently trying out Mensch 2.0 and there’s this gist, which has a powerline version.

Tabs

If you have to code, you’ll need tabular which aligns text, correctly.

Tim Pope

No collection of Vim plugins is complete without some tpope goodness.

  Bundle 'tpope/vim-fugitive.git'
  Bundle 'tpope/vim-git.git'
  Bundle 'tpope/vim-haml.git'
  Bundle 'tpope/vim-markdown.git'
  Bundle 'tpope/vim-rbenv.git'
  Bundle 'tpope/vim-surround'
  Bundle 'tpope/vim-endwise'
"  Bundle 'tpope/vim-commentary.git'

The main ones in this are vim-fugitive for handling git functions (:Gblame and :Gbrowse being the most useful) in the current buffer and vim-surround for making changing things inside quotes or brackets easier.

Others

  • tcomment for toggling comment blocks in code.
  • matchit to make % matching more powerful.
  • YankRing Better handling of yanked text.
  • ack.vim and configured to use ag to quickly find things in filepaths.
  • syntastic syntax check 100s of files on load/save. Fiddly at times, but really worth it.
  • ctrlp ctrlp file finder. Yeah, opinions are split about this versus command-t or fuzzyfinder.
  • raindbow rainbow up the parenthesis, so functionA(functionB(functionC))) doesn’t look impossible.
  • supertab use Tab rather than ctrl-o ctrl-I can never remember.
  • dash look up documentation in the excellent Dash.
  • vim-deckset I’ve started using Deckset for making presentations.

I use a bunch more, but looking over it all, I haven’t a clue what half of them do.

Themes

  " Themes
  Bundle 'altercation/vim-colors-solarized'
  Bundle 'Lokaltog/vim-distinguished'
  Bundle 'tpope/vim-vividchalk'
  " Bundle 'tomasr/molokai'
  Bundle 'fatih/molokai'
  Bundle 'nanotech/jellybeans.vim.git'
  Bundle 'alem0lars/vim-colorscheme-darcula'

  Bundle 'chriskempson/tomorrow-theme', {'rtp': 'vim/'}

  " new as of 2015
  Plugin 'chriskempson/base16-vim'
  Plugin 'freeo/vim-kalisi'
  Plugin 'barn/Pychimp-vim.git'

For Python I use a fork of pychimp and “au FileType python colorscheme pychimp”.

But I’m never sure about them.