An interesting feature in mercurial is the ability to view the changes that will be committed in a vim split (see DiffsInCommitMessageInVIM).
Any hint on how to do so wi
I highly recommend tpopes's vim-fugitive plugin for working with git.
vim-fugitive
You can find it here