http://www.cs.ualberta.ca/~luca/tricks.vim.html