The biggest thing that helped me to learn to use vim fluently by building up muscle memory (and making commands automatic) was playing Vim Adventures, a browser based adventure game that gradually teaches you vim commands: http://vim-adventures.com/ I haven't tried the full (paid) version yet, but the demo was enough to get me moving around text quickly. Now I finally understand why people use this crazy thing. :) Al…
Every time you use vim and catch yourself repeating a command over and over (x, dd, hjkl) take a moment and think about if there is a more efficient way to do it by combining the commands you know.
Let's say you need to delete everything from you current cursor position to the next paren in the current line, ok you know that:
t -> move till char x in the current line
T -> move till previous char x in the current line
d -> delete
so you can combine that to:
dt( -> delete everything till next ( in line
Delete 10 lines, instead of 10 times "dd" you can just do: 10dd
Go from line 0 to line 20, instead of pressing j 20 times: 20G
Delete from current position to line 20: d20G
These are all really simple examples, but once you get the hang of it you move on to more complex stuff in no time, and you probably won't even have to look it up, it will just make sense.