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

Search and Replace 0 - 5159 entries

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

  • Best score: 12
  • Best player score: 12
  • Position: #132 / 1674
  • Number of attempts: 5
Interweave two blocks of text - 692 entries

Suppose you've got data on a list of things from multiple sources. They're all in separate chunks, so how might you create a tabular output?

  • Best score: 15
  • Best player score: 17
  • Position: #102 / 217
  • Number of attempts: 1
Recursively Palindrome - 290 entries

Note that there are 2^6-1 characters.

  • Best score: 21
  • Best player score: 23
  • Position: #22 / 76
  • Number of attempts: 4
PHP <--> Java class conversion Part 1 - 258 entries

Convert this tiny php class to adequate java one.

  • Best score: 65
  • Best player score: 71
  • Position: #12 / 64
  • Number of attempts: 5
Sort the cardinal numbers - 328 entries

Maybe a simple challenge.

  • Best score: 12
  • Best player score: 14
  • Position: #93 / 151
  • Number of attempts: 1
Line Zipper - 480 entries

Zip/pair related lines.

  • Best score: 12
  • Best player score: 14
  • Position: #76 / 217
  • Number of attempts: 2
PHP <--> Java class conversion Part 2 - 98 entries

Same class but reverse!

  • Best score: 79
  • Best player score: 106
  • Position: #14 / 39
  • Number of attempts: 1
Alphabetize the directory - 331 entries

Put the contacts and their information in alphabetical order.

  • Best score: 30
  • Best player score: 51
  • Position: #97 / 104
  • Number of attempts: 1
Complete the hex array data - 215 entries

Do not use external tools(e.g. tac, seq) [My interpretation of Rule #7]

  • Best score: 23
  • Best player score: 25
  • Position: #22 / 76
  • Number of attempts: 4
Complete the hex array data (Part II) - 192 entries

Do not use external tools(e.g. tac, seq) [My interpretation of Rule #7]

  • Best score: 20
  • Best player score: 22
  • Position: #24 / 72
  • Number of attempts: 2
Numbering a List - 1969 entries

Pretty simple, number the list.

  • Best score: 13
  • Best player score: 19
  • Position: #207 / 661
  • Number of attempts: 5
Shebangs for all - 2103 entries

We've all seen or used a shebang once or twice. Ditch the specific paths and leave just a dynamic Ruby and Python bath behind.

  • Best score: 11
  • Best player score: 12
  • Position: #115 / 533
  • Number of attempts: 8
Letters are numbers - 179 entries

Letters and numbers are interchangeable. A lot of programming languages give you simple ways to convert individual letters to hex, binary and decimal but does Vim?

  • Best score: 20
  • Best player score: 26
  • Position: #31 / 78
  • Number of attempts: 3
Reverse Simple Deletion - 874 entries

You did the simple deletion, now reverse it.

  • Best score: 11
  • Best player score: 12
  • Position: #212 / 466
  • Number of attempts: 2
Fix the Haiku - 331 entries

Change this slightly scrambled haiku to its unscrambled form and fix the capitalisation and punctuation along the way.

  • Best score: 28
  • Best player score: 33
  • Position: #25 / 116
  • Number of attempts: 4
Compile C - 454 entries

You might have to get clever to do this one.

  • Best score: 19
  • Best player score: 21
  • Position: #54 / 146
  • Number of attempts: 2
Reformat most common surnames - 834 entries

Reformat copy-pasted table into a list of the most common surnames

  • Best score: 23
  • Best player score: 25
  • Position: #54 / 238
  • Number of attempts: 9
Remember FizzBuzz? - 818 entries

Output FizzBuzz to 100. Start with nothing.

  • Best score: 39
  • Best player score: 61
  • Position: #125 / 209
  • Number of attempts: 2
Change the content of a string - 1799 entries

This docstring is a complete lie. Fix it.

  • Best score: 22
  • Best player score: 22
  • Position: #59 / 655
  • Number of attempts: 3
Deleting folded text - 428 entries

The text below contains three folds. Delete them (and the text inside them). For example: 123 456 /*{{{*/ 789 /*}}}*/ 012 Should become: 123 012 Also, add `aoeuaoeu` to make sure small solutions don't get flagged as cheating.

  • Best score: 17
  • Best player score: 20
  • Position: #57 / 130
  • Number of attempts: 3
Whitespace, empty lines and tabs - 4044 entries

Convert tabs to spaces, strip empty lines and trailing whitespace.

  • Best score: 16
  • Best player score: 19
  • Position: #221 / 862
  • Number of attempts: 7
Simple text editing with Vim - 13626 entries

Make the pairs of lines match up by making each second line same as first

  • Best score: 13
  • Best player score: 13
  • Position: #29 / 3902
  • Number of attempts: 7
Reformat/Refactor a Golfer Class - 7681 entries

A simple case of removing unneeded code and fixing broken indentation.

  • Best score: 7
  • Best player score: 41
  • Position: #922 / 1889
  • Number of attempts: 1
Tim Tsu
Twitter:

entered into 23 challenges

contributed 0 challenges