Skip to content

Instantly share code, notes, and snippets.

@ethanmuller
Created September 21, 2012 16:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ethanmuller/3762565 to your computer and use it in GitHub Desktop.
Save ethanmuller/3762565 to your computer and use it in GitHub Desktop.
Vimnastics: Writing Repetitive Markup in Vim
<select>
<option value="100">$100</option>
<option value="200">$200</option>
<option value="300">$300</option>
<!-- and so on... -->
</select>
<select>
<option value="100">$100</option>
</select>
# vim normal mode commands
qa # start recording our macro in the “a” register
yy # yank the current line
p # paste the yanked line
/\d<return> # search for the next digit (1 in this case)
100<ctrl-A> # increment 100 times
n # repeat the last search (\d)
100<ctrl-A> # increment 100 times*
q # stop recording our macro
<select>
<option value="100">$100</option>
<option value="200">$200</option>
<option value="300">$300</option>
</select>
<select>
<option value="100">$100</option>
<option value="200">$200</option>
<option value="300">$300</option>
<option value="400">$400</option>
<option value="500">$500</option>
<option value="600">$600</option>
<option value="700">$700</option>
</select>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment