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

Reordering properties - 825 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: 44
  • Position: #40 / 195
  • Number of attempts: 9
Sort and Tag - 446 entries

The goal is to sort these lines alphabetically, assign a unique identifier to each line in the format "[01]", "[02]", etc., and then restore the original order of the lines while preserving the assigned identifiers.

  • Best score: 36
  • Best player score: 119
  • Position: #72 / 94
  • Number of attempts: 2
Changing date formats - 458 entries

Change the date format to Y/M/D.

  • Best score: 37
  • Best player score: 61
  • Position: #43 / 141
  • Number of attempts: 4
Change to ascending order - 351 entries

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

  • Best score: 17
  • Best player score: 34
  • Position: #26 / 94
  • Number of attempts: 5
Swap columns and transform to CSV format - 319 entries

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

  • Best score: 16
  • Best player score: 18
  • Position: #64 / 118
  • Number of attempts: 2
Generate an entry for each month - 237 entries

The input file contains a URI with a month in it. Generate the URIs for all the other months up to a couple of years

  • Best score: 27
  • Best player score: 70
  • Position: #52 / 67
  • Number of attempts: 1
Fix the git merge conflicts - 214 entries

Solve the merge conflicts in the Python file

  • Best score: 36
  • Best player score: 54
  • Position: #29 / 61
  • Number of attempts: 3
Frank Benoit
Twitter2:

entered into 7 challenges

contributed 0 challenges