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 [challenge ID]

Played Challenges

Convert list of enums to list of localization terms - 105 entries

While making my game Piloteer, I had a large list of TaskTypes and needed to convert them to an equivalent list of localization terms, to be used when translating the game's text into different languages.

  • Best score: 75
  • Best player score: 113
  • Position: #19 / 35
  • Number of attempts: 3
From brakets to parens - 932 entries

This is one of the most common problem when you wrap an array for error handling. Vim is useful when you convert foo[i][j][k] into foo(i, j, k) for many times.

  • Best score: 24
  • Best player score: 37
  • Position: #113 / 215
  • Number of attempts: 2
π - 261 entries

1200 π chars

  • Best score: 16
  • Best player score: 1219
  • Position: #63 / 65
  • Number of attempts: 1
Reordering properties - 1136 entries

Arrange the CSS lines for the #topbar selector based on their complete line length, from shortest to longest.

  • Best score: 24
  • Best player score: 87
  • Position: #170 / 269
  • Number of attempts: 2
Changing date formats - 687 entries

Change the date format to Y/M/D.

  • Best score: 37
  • Best player score: 85
  • Position: #108 / 188
  • Number of attempts: 1
YAML to dotenv - 1459 entries

Convert this YAML config file to a .env file.

  • Best score: 16
  • Best player score: 28
  • Position: #188 / 298
  • Number of attempts: 3
Change to ascending order - 487 entries

Change each line of numbers consistently from descending to ascending order.

  • Best score: 17
  • Best player score: 73
  • Position: #86 / 120
  • Number of attempts: 2
Swap columns and transform to CSV format - 426 entries

Turn this spreadsheet output into a CSV file but first swap the columns

  • Best score: 16
  • Best player score: 29
  • Position: #137 / 154
  • Number of attempts: 1
Nested JSON Flattener - 126 entries

Transform a deeply nested JSON structure into a flattened key-value format where each path is represented by dot notation

  • Best score: 44
  • Best player score: 277
  • Position: #28 / 29
  • Number of attempts: 2
The Fibonacci Spacer - 157 entries

Split the words, remove punctuation and add spaces before each line following the Fibonacci sequence (0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89)

  • Best score: 25
  • Best player score: 74
  • Position: #38 / 47
  • Number of attempts: 1
Replace markdown sections with numbering - 303 entries

Replace each section and subsection with their respective numbers

  • Best score: 29
  • Best player score: 60
  • Position: #38 / 80
  • Number of attempts: 3
Reorganize Pokémon - 772 entries

Change the format of the each line and sort alphabetically.

  • Best score: 18
  • Best player score: 38
  • Position: #201 / 214
  • Number of attempts: 2
Seagull2004
Github:

entered into 12 challenges

contributed 0 challenges