A quick post about some of the vim plugins I use. Since doing all of this I see there is a nice Vim distribution called spf13 that I want to try. It has most of these plugins and a whole lot more, bundled into a nice modern vim distro.
Pathogen
https://github.com/tpope/vim-pathogen
This is a plugin to solve the install of all plugins problem. Typical vim installs require manually copying files into an assortment of plugin/autoload/syntax, etc. directories under ~/.vim. If you extract a file wrong, good luck repairing the damage there. With pathogen, all you have are plugin roots in your ~/.vim/bundle directory. If you extract incorrectly, just delete the doc/plugin/syntax directories since they stick out like sore thumbs and retry. It’s nice having a clean ~/.vim. This is all I have in ~/.vim/bundle:
- ctrlp.vim
- nerdtree
- taglist_45
- vim-fugitive
- vim-powerline
jdunne recommended pathogen a while back, glad I finally got around to installing it.
vim-powerline
https://github.com/Lokaltog/vim-powerline
Another jdunne recommendation. Lots of cool doo-dads are added to the status line by vim-powerline. Some you may find useful. Here it prettifies by status line:
Each item on the statusline is a called a 'segment' and there are plugins that allow you to add segments with arbitrary content. By default, they show your git branch. Eg. BR: upcoming, above.
When I use Control-P, it uses purple for specialized statuslines:
If you run gvim and you want a single configuration, you can add some conditional code for gui/text-only in your vimrc. Here is a sample of what that might look like:
[code]
if has('gui_running')
set guifont=Monaco:h12
set transparency=5
set guioptions=egmrt
let g:Powerline_symbols = 'fancy'
else
let g:Powerline_symbols = 'compatible'
endif
[/code]
vim-fugitive
https://github.com/tpope/vim-fugitive
This is a must-gave if you’re a git and vim user. Out of all the plugins I mention here, this is the one that offers the best productivity gains for mw. This blows my mind still:
Bring up the output of git status
with :Gstatus
. Press -
to add
/reset
a file's changes, or p
to add
/reset
--patch
that mofo. And guess what :Gcommit
does!
You just have to try that. It’s amazing. Show diffs right in the editor with :Gdiff
.
:Gmove
does a git mv
on a file and simultaneously renames the buffer. :Gremove
does a git rm
on a file and simultaneously deletes the buffer
Oh just go and install it already.
My entire dotfiles setup is over at my github account: https://github.com/NickCody/dotfiles
ッ