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

Reformat/Refactor a Golfer Class - 5335 entries

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

  • Best score: 32
  • Best player score: 42
  • Number of attempts: 3
attr_aligner - 2779 entries

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

  • Best score: 19
  • Best player score: 31
  • Number of attempts: 4
Mess in revision history - 919 entries

Help Joe clean up what Steve has cobbled.

  • Best score: 17
  • Best player score: 28
  • Number of attempts: 4
Vertical Limit - 1995 entries

transform a succession of one word lines to a an array of strings

  • Best score: 21
  • Best player score: 25
  • Number of attempts: 8
Just the middle - 8425 entries

Delete the instructions at the top and bottom.

  • Best score: 7
  • Best player score: 8
  • Number of attempts: 6
Vim's not included features - 150 entries

Filter not included (-) features in a hypothetical installation of vim.

  • Best score: 23
  • Best player score: 25
  • Number of attempts: 6
switch variable - 4069 entries

how fast can you switch two variable ?

  • Best score: 3
  • Best player score: 14
  • Number of attempts: 1
Words in parens - 10279 entries

We should all ace this, right?

  • Best score: 14
  • Best player score: 14
  • Number of attempts: 7
Condensed Cases - 656 entries

Apple's new programming language, Swift, allows two style of case statements: 1) one Enum case on each line, or 2) multiple Enum cases on a single line. Convert the following from the first case (no pun intended) to the second type.

  • Best score: 12
  • Best player score: 13
  • Number of attempts: 6
Vice versa - 5294 entries

Little role switching.

  • Best score: 2
  • Best player score: 14
  • Number of attempts: 4
Mirror Symmetry - 676 entries

Add backslashes.

  • Best score: 7
  • Best player score: 14
  • Number of attempts: 2
VimGolfNight - 447 entries

Based on "The name of the game".

  • Best score: 12
  • Best player score: 12
  • Number of attempts: 3
Make it more readable - 1703 entries

Insert blank lines to make it more organized and readable

  • Best score: 13
  • Best player score: 15
  • Number of attempts: 3
camel riding - 668 entries

add a prefix on some camelCase variables

  • Best score: 15
  • Best player score: 17
  • Number of attempts: 2
Shebangs for all - 1550 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: 15
  • Number of attempts: 4
That hyphen - 1841 entries

"vim vi improved"

  • Best score: 9
  • Best player score: 9
  • Number of attempts: 5
Letter case trickery - 1403 entries

This file is in a downright esoteric format, consisting of hexadecimal numbers, non-hexadecimal keywords, and "Z" indicating end-of-line. Make the hexadecimal numbers lowercase.

  • Best score: 9
  • Best player score: 13
  • Number of attempts: 2
Collect List - 3118 entries

Convert to comma separated list.

  • Best score: 12
  • Best player score: 12
  • Number of attempts: 8
Shuffle puzzle - 284 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
  • Number of attempts: 3
Simple, Practical, and Common - 20844 entries

Simple things we do all the time should be able to be done with very few keystrokes, but sometimes I find something I need to do makes me go, "There MUST be a better way." This challenge is just a simple movement and entering text at a certain place.

  • Best score: 5
  • Best player score: 23
  • Number of attempts: 10
-a-b-c- - 2325 entries

Put hyphens everywhere.

  • Best score: 13
  • Best player score: 15
  • Number of attempts: 1
Shuffled numbers - 195 entries

Each number is paired with the number it should follow. That's enough information to put them in order.

  • Best score: 15
  • Best player score: 27
  • Number of attempts: 1
A HAPPY NEW YEAR 2014 ! - 9016 entries

A HAPPY NEW YEAR 2014 !

  • Best score: 11
  • Best player score: 16
  • Number of attempts: 1
I forgot quotes - 10037 entries

Oops.

  • Best score: 10
  • Best player score: 16
  • Number of attempts: 4
Reconstruct the Sentence - 995 entries

Get the sentence back in the proper order, remove duplicate lines, and then combine the separate lines into one.

  • Best score: 20
  • Best player score: 24
  • Number of attempts: 2
Extract argument from function - 1791 entries

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

  • Best score: 13
  • Best player score: 19
  • Number of attempts: 3
Make Fancy Header - 874 entries

Make the header text stand out with surrounding asterisks

  • Best score: 16
  • Best player score: 16
  • Number of attempts: 6
Assign numbers to fields - 80 entries

You are given a list of space-separated strings. Add an increasing numeric prefix to each one.

  • Best score: 19
  • Best player score: 20
  • Number of attempts: 1
Ben Vandervalk
Twitter:

entered into 28 challenges

contributed 0 challenges