I've always been a Vim user, from the moment I had to make a change to a config file on my first Linux distribution (Corel Linux, be advised: stay clear!)
Vim is one of those programs that can amaze you after 10 years of daily use. It's mysteries and powers are only known to the one or two coders that know all of it's source code inside and out.
Enough, blabber: time for some great gems of Vim ingenuity!
While in insert mode (i) press the CTRL+N or CTRL+P to start keyword completion. CTRL+N moves to the next item in the list, CTRL+P to the previous item. Very handy when you have to keep typing some obnoxiously long word such as nantuckednantucked, which yes, I made up.
guu Change entire line to lowercase
gUU Change entire line to uppercase
xp Switch the letter under the cursor with the next letter, easy fro fixign typo's
gf Open the filename under the cursor
* Search for the word under the cursor
Recording multiple commands is possible the best Vim feature there is.
qa Start recording a macro called 'a', you can use all letters from a - z
After you started recording, simply enter all Vim commands you want your macro to execute. Stop recording by pressing q again.
@a Execute the commands you recorded in the macro called 'a'