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

Easier Align - 77 entries

Align the columns of a markdown table

  • Best score: 62
  • Best player score: 256
  • Position: #24 / 33
  • Number of attempts: 1
hello-world-vimgolf - 1978 entries

Simple number generation

  • Best score: 10
  • Best player score: 10
  • Position: #15 / 563
  • Number of attempts: 4
Fill in the chess board - 737 entries

Fill in the name of each square using its file (a-h) and rank (1-8).

  • Best score: 19
  • Best player score: 40
  • Position: #97 / 155
  • Number of attempts: 4
Transpose a python matrix - 684 entries

Rotate the matrix in 90 degrees.

  • Best score: 23
  • Best player score: 74
  • Position: #98 / 117
  • Number of attempts: 2
Create a diamond comment - 270 entries

Encapsulate the text in a diamond pattern.

  • Best score: 27
  • Best player score: 73
  • Position: #52 / 65
  • Number of attempts: 1
Lowercase first characters - 421 entries

This is the (abridged) input for Day 3 in Advent of Code 2019. The output is a format more suitable for Prolog programming: the two lines of input become two lists of pairs, joined together in a wires functor.

  • Best score: 33
  • Best player score: 44
  • Position: #103 / 152
  • Number of attempts: 2
Inverting Lines - 1562 entries

A simple challenge to invert all lines, except the first.

  • Best score: 10
  • Best player score: 13
  • Position: #270 / 423
  • Number of attempts: 2
swap number pairs - 1871 entries

Swap the numbers in a bunch of 2-element arrays.

  • Best score: 16
  • Best player score: 24
  • Position: #161 / 346
  • Number of attempts: 3
Satisfy the go linter - 2076 entries

You just came up with this briliant go vars package. But dang, you forgot to add comments to the exported variables. Can you add a comment over each variable with a TODO-placeholder?

  • Best score: 20
  • Best player score: 20
  • Position: #112 / 422
  • Number of attempts: 7
Hogwarts Email Sorting - 850 entries

Given a list of emails, get the students full name and their associated house.

  • Best score: 20
  • Best player score: 21
  • Position: #93 / 247
  • Number of attempts: 7
Get mail address from outlook format - 604 entries

Create a mail list space separated of mail list formatted by outlook

  • Best score: 15
  • Best player score: 15
  • Position: #69 / 190
  • Number of attempts: 3
Bad Copy Syntax - 1952 entries

Copy should be from right to left, but sometimes you type it wrong.

  • Best score: 18
  • Best player score: 19
  • Position: #205 / 502
  • Number of attempts: 1
Search and Replace 0 - 4749 entries

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

  • Best score: 12
  • Best player score: 12
  • Position: #679 / 1574
  • Number of attempts: 2
Line under headers - 1941 entries

Put a line under each header, and remove the other markdown formatting.

  • Best score: 24
  • Best player score: 27
  • Position: #189 / 479
  • Number of attempts: 3
Sorting database text output - 213 entries

Sometimes it is nice to be able to quickly take column-formatted text output from the SQL command line and turn it into a list of useful data. In this case we want a unique, sorted list of the values from the second column combined into one comma-separated list. What is the fewest strokes you can do this in?

  • Best score: 24
  • Best player score: 29
  • Position: #72 / 80
  • Number of attempts: 2
Sort the VimGolf challenges by popularity - 340 entries

"Sort by popularity" is a good order to play the challenges. Not perfect, but you could do a lot worse. ;) Input is a sample copy-pasted from vimgolf.com. Some of the challenge names have digits that will get in your way, so read ":help :sort" for hints on sorting with a regex. When you're done, try your solution on the full list!

  • Best score: 15
  • Best player score: 15
  • Position: #33 / 103
  • Number of attempts: 4
Sorting paragraphs - 502 entries

Order the paragraphs correctly, per prefixed index

  • Best score: 18
  • Best player score: 23
  • Position: #29 / 155
  • Number of attempts: 4
Reformat most common surnames - 612 entries

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

  • Best score: 23
  • Best player score: 25
  • Position: #58 / 192
  • Number of attempts: 5
Remember FizzBuzz? - 634 entries

Output FizzBuzz to 100. Start with nothing.

  • Best score: 39
  • Best player score: 57
  • Position: #77 / 173
  • Number of attempts: 2
Sort and add attributes - 1250 entries

Sort the states and add the attribute country to each record.

  • Best score: 33
  • Best player score: 38
  • Position: #436 / 505
  • Number of attempts: 1
Reconstruct the Sentence - 1220 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: 20
  • Position: #113 / 358
  • Number of attempts: 3
Simple text editing with Vim - 11896 entries

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

  • Best score: 13
  • Best player score: 14
  • Position: #1859 / 3481
  • Number of attempts: 2
Scott Berger
Twitter:

entered into 22 challenges

contributed 0 challenges