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

Rearrange array to single level - 1425 entries

The goal is to flatten the array into a single list and remove any empty elements.

  • Best score: 14
  • Best player score: 69
  • Position: #215 / 233
  • Number of attempts: 1
Copy punctuation - 536 entries

I want to copy the last line’s brackets, quotes, and commas to each line. How?

  • Best score: 19
  • Best player score: 85
  • Position: #122 / 137
  • Number of attempts: 2
Quicksort - 2005 entries

We need the numbers in the first row sorted as quickly as possible! Be careful not to disturb the data below the divider though: that must remain unchanged.

  • Best score: 6
  • Best player score: 6
  • Position: #77 / 442
  • Number of attempts: 10
Populate 3D bone names list - 633 entries

Ran into this at work, excited to see how this gets optimized

  • Best score: 21
  • Best player score: 27
  • Position: #69 / 163
  • Number of attempts: 3
Find fix point of cos - 1408 entries

Write a function to find the fix point of cos. It is not a good code; It is just to use vim. Inspired by the excellent https://mvanier.livejournal.com/2897.html about the Y combinator.

  • Best score: 14
  • Best player score: 15
  • Position: #196 / 418
  • Number of attempts: 4
Paste a column after a column - 2557 entries

This task is very common while using multi-cursor. What is the elegant vim way ?

  • Best score: 14
  • Best player score: 16
  • Position: #184 / 558
  • Number of attempts: 6
HS exam question - 1589 entries

Convert the data to a python dictionary

  • Best score: 47
  • Best player score: 107
  • Position: #351 / 417
  • Number of attempts: 2
Many duplicates - 1451 entries

Quick and easy

  • Best score: 7
  • Best player score: 8
  • Position: #272 / 471
  • Number of attempts: 5
Fix the shell script! - 2596 entries

Fix the shell script with the fewest keystrokes!

  • Best score: 26
  • Best player score: 30
  • Position: #241 / 603
  • Number of attempts: 7
One number per line - 18776 entries

Just give me the numbers.

  • Best score: 14
  • Best player score: 29
  • Position: #3633 / 3875
  • Number of attempts: 2
Every other line - 2916 entries

AaAaAaA

  • Best score: 12
  • Best player score: 20
  • Position: #624 / 705
  • Number of attempts: 1
comment and uncomment code inline - 1130 entries

It's very useful to be able to comment out a block of code in a quick edit. And likewise to uncomment the code. This operation often involves multi-line stanzas and even large blocks. With just line-wise navigation and insert mode this would cost you about 4 keystrokes per line. Master this hole of VimGolf and you'll quickly drop your key count in day to day Vim as well.

  • Best score: 9
  • Best player score: 9
  • Position: #165 / 324
  • Number of attempts: 6
diwa
Github:

entered into 12 challenges

contributed 0 challenges