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

Extract argument from function - 2376 entries

The aim is to see if you can do some refactoring very fast.

  • Best score: 13
  • Best player score: 13
  • Position: #14 / 759
  • Number of attempts: 8
Search and Replace 0 - 5027 entries

Replace every instance of 'aaa' with 'xaaax'.

  • Best score: 12
  • Best player score: 14
  • Position: #988 / 1637
  • Number of attempts: 1
That hyphen - 2602 entries

"vim vi improved"

  • Best score: 9
  • Best player score: 12
  • Position: #392 / 704
  • Number of attempts: 5
Winding path - 122 entries

It's a maze, but the bad paths have been blocked off. Mark the correct path.

  • Best score: 27
  • Best player score: 113
  • Position: #39 / 42
  • Number of attempts: 1
Where should I put the Newline? - 883 entries

Help me put the newline.

  • Best score: 7
  • Best player score: 8
  • Position: #244 / 438
  • Number of attempts: 4
Mess in revision history - 1210 entries

Help Joe clean up what Steve has cobbled.

  • Best score: 17
  • Best player score: 28
  • Position: #176 / 254
  • Number of attempts: 1
Shuffle puzzle - 346 entries

Sort the lines in each indent group, and sort the groups. That's the pattern. Or just move lines around manually to get a better score.

  • Best score: 13
  • Best player score: 15
  • Position: #57 / 104
  • Number of attempts: 5
Going underground.... - 357 entries

Simple reformatting: in this case changing from the format London underground supplies its customers with, to the format that Google Calendar likes...

  • Best score: 22
  • Best player score: 30
  • Position: #77 / 129
  • Number of attempts: 4
A HAPPY NEW YEAR 2014 ! - 10713 entries

A HAPPY NEW YEAR 2014 !

  • Best score: 11
  • Best player score: 19
  • Position: #3507 / 3700
  • Number of attempts: 3
attr_aligner - 3525 entries

Two attr keywords. Two separate indentations. Align the colons.

  • Best score: 19
  • Best player score: 37
  • Position: #609 / 706
  • Number of attempts: 1
quotes inside quotes - 3185 entries

taken from tip 85 of the very good book 'Practical Vim: Edit Text at the Speed of Thought' ! I'd be interested what people use :)

  • Best score: 14
  • Best player score: 18
  • Position: #969 / 1086
  • Number of attempts: 1
Words in parens - 12992 entries

We should all ace this, right?

  • Best score: 13
  • Best player score: 14
  • Position: #351 / 3977
  • Number of attempts: 6
Readable Rubyhash - 274 entries

Rubyists talk about being cutting edge but how many are using 1.9 in production? Time to convert those verbose 1.8 hashes in to symbolic, succinct 1.9 beauties!

  • Best score: 23
  • Best player score: 27
  • Position: #42 / 97
  • Number of attempts: 6
Printable ASCII characters - 142 entries

From a blank input, print all 95 printing ASCII characters one per line, from space to tilde.

  • Best score: 22
  • Best player score: 39
  • Position: #28 / 44
  • Number of attempts: 1
replacing each line of a block selection - 3007 entries

replace each line's ../assets/js with /javascripts

  • Best score: 18
  • Best player score: 19
  • Position: #162 / 780
  • Number of attempts: 10
Numbering a List - 1940 entries

Pretty simple, number the list.

  • Best score: 13
  • Best player score: 17
  • Position: #104 / 656
  • Number of attempts: 9
Nic West
Twitter:

PEWPEW!

entered into 16 challenges

contributed 0 challenges