Supercharging VIM
tags: [vim code I decided that I want to set up vim as my developer environment. This is mostly because I love vim, but also for the smaller projects that I work on some of the available IDEs feel too heavy and unnecessary. In general, the tools described below are useful even if you are not doing code development. Things like being able to navigate through the file tree and see syntax highlighting, search for other files etc are nice in any scenario. This setup should take 20 - 30 minutes.
So let’s go from:
 
 
	To:
 
 
	in a few easy steps.
Package manager
This takes all the pain out of installing new plugins.
- vundleseems like a good option.
- A very thorough guide on how to set up vundle.
- A quick-start guide for the impatient:
    - Clone the repo:
 
git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
- Edit your ~/.vimrc:
"""" START Vundle Configuration
"""" Vundle is a VIM package manager - all plugins go in here
 
set nocompatible              " be iMproved, required
filetype off                  " required
 
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" " let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
 
Plugins go here
" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required
 
"""" END Vundle Configuration
A file tree navigator
This lets you see where you are in the filesystem. It also lets you browse through and look for other files that could be of interest.
- NERDTreeis the clear choice.
- Allows you to open a file tree from vim and navigate through.
- I suggest enabling the mouse, add set mouse=rto~/.vimrc.
- Note, you can use ctrl+wto toggle between the tabs.
- To open up the tree from vim, just type:NERDTree.
- Standard vimcommands can close the tree:q.
A Tagbar
Tagbars are used for navigating code. A tag bar shows the tags of the current file. The tags are things like classes, functions and variables in a code file.
- OSX - get exuberant ctags brew install ctags.
- Open up vimand usevundleto search for packages Tagbar.
:PluginSearch Tagbar
- Navigate to the Tagbarpackage and hiti.
- Now simply add Plugin 'Tagbar'line to your~.vimrcin thePlugins go here section.
- To use :TagbarToggleturns it on/off.
Tab completion
Because of course you want tab completion. Supertab is a good option.
- Open vim.
- :PluginSearch supertab.
- Navigate to supertaband hiti.
- Now simply add Plugin 'supertab'line to your~.vimrcin thePlugins go here section.
- To use, just hit tab while typing.
A fuzzy finder
 
 
	Just like Google or Mac spotlight search, fzf gives you autocomplete finding (allowing for spelling mistakes etc) from the command line! And, you can plugin to vim to allow for fuzzy searching of your file system from your favourite text editor! See this video of examples of how useful it can be.
- Download fzf:
brew install fzf
- Add the following to your .vimrc:
Plugin 'junegunn/fzf'
Plugin 'junegunn/fzf.vim'
- Open viand run:
:PluginInstall
- To use:
    - :Files <path>searches in- <path>for files.
- :Buffersopen buffers.
- :Historycommand history.
- :CommitsGit commits.
- Many more.
 
Airbar
 
 
	I’m not going to lie, although airbars are useful, this one is more about the look than the utility. It just sits at the bottom of the screen making you look like a pro. Although it does give useful information like the file format, the mode you are in.
- Add the following to your .vimrc:
Plugin 'vim-airline/vim-airline'
- Open viand run:
:PluginInstall