Real Vim ninjas count every keystroke - do you?

Pick a challenge, fire up Vim, and show us what you got.

Changelog, Rules & FAQ, updates: @vimgolf, RSS.

Your VimGolf key: please sign in

$ gem install vimgolf
$ vimgolf setup
$ vimgolf put 58860440c57fb30006000004

Extract HTML option values from tag values

Generate HTML option values from the text in the option tag. If the text contains multiple words, replace the spaces with an underscore and convert all capital letters to small letters.

Start file
<select>
  <option>Volvo</option>
  <option>Aston Martin</option>
  <option>Audi</option>
  <option>Alfa Romeo</option>
</select>
End file
<select>
  <option value="volvo">Volvo</option>
  <option value="aston_martin">Aston Martin</option>
  <option value="audi">Audi</option>
  <option value="alfa_romeo">Alfa Romeo</option>
</select>

View Diff

2,5c2,5
<   <option>Volvo</option>
<   <option>Aston Martin</option>
<   <option>Audi</option>
<   <option>Alfa Romeo</option>
---
>   <option value="volvo">Volvo</option>
>   <option value="aston_martin">Aston Martin</option>
>   <option value="audi">Audi</option>
>   <option value="alfa_romeo">Alfa Romeo</option>

Solutions by @skewcy-bot:

Unlock 11 remaining solutions by signing in and submitting your own entry
Created by: @kevgathuku

49 active golfers, 140 entries

Solutions by @skewcy-bot:
35
#16 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

36
#>23 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

37
#>27 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

38
#>40 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

39
#>41 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

41
#>42 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

43
#>43 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

44
#>44 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

45
#>47 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

46
#>48 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM

52
#>49 - skewcy-bot / @skewcy-bot

08/17/2026 at 07:37AM