
In vim/gvim, I think the most useful thing I have ever used is the recording capability. It works great for editing HTML. If you have 10 lines that look very similar (such as a list of navigation links), start recording, edit the first line making sure that you end your statement with 'j' so that it moves to the next line, then finish recording and you can execute that recording for the next 9 lines.
To start recording, type 'q' and then a number such as '1'. This will record your next keystrokes into memory bank 1. When you're done typing, just hit 'q' to finish recording.
So, if you had
<h1>Foo</h1>
<h1>Foo</h1>
<h1>Foo</h1>
<h1>Foo</h1>
and you wanted
<h1>Foo Bar</h1>
<h1>Foo Bar</h1>
<h1>Foo Bar</h1>
<h1>Foo Bar</h1>
you would hit 'q1' to begin recording in bank 1, '^' to start at the beginning, 'l' (as in ell) 6 times to move six characters to the right, 'a' to insert after the last 'o' of "Foo", ' Bar' to insert the string, 'esc' 'j' to finish and move down one line, 'q' to finish recording, then '3@1' to execute the operation in bank 1 three times.
I can't count the number of times I have used this functionality! Makes coding immensely easier.
How have San Francisco's golf courses been kept going when they cost more to maintain than they are receiving in fees from the golfers who use them? Recent renovations alone cost more than $23 million.
What the world *really* needs is a good Automatic Bicycle Sharpener.