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

months to html list items - 1088 entries

Turn the months into list items.

  • Best score: 22
  • Best player score: 36
  • Position: #252 / 295
  • Number of attempts: 3
HS exam question - 1596 entries

Convert the data to a python dictionary

  • Best score: 47
  • Best player score: 94
  • Position: #319 / 418
  • Number of attempts: 2
Reformat symbols in list - 1633 entries

Saw this in some lecture, easy reformatting using multiple cursor in VS Code

  • Best score: 24
  • Best player score: 39
  • Position: #263 / 351
  • Number of attempts: 5
Many duplicates - 1459 entries

Quick and easy

  • Best score: 7
  • Best player score: 10
  • Position: #391 / 476
  • Number of attempts: 3
delete swap - 1801 entries

delete all swap

  • Best score: 5
  • Best player score: 5
  • Position: #100 / 561
  • Number of attempts: 5
Fix the shell script! - 2605 entries

Fix the shell script with the fewest keystrokes!

  • Best score: 26
  • Best player score: 42
  • Position: #436 / 606
  • Number of attempts: 1
hello-world-vimgolf - 2505 entries

Simple number generation

  • Best score: 10
  • Best player score: 28
  • Position: #661 / 712
  • Number of attempts: 2
Contribute to keyboard mashing - 898 entries

Speak in tongues

  • Best score: 17
  • Best player score: 24
  • Position: #256 / 272
  • Number of attempts: 1
simple replacements - 1814 entries

The goal is to see the replacement commands in action.

  • Best score: 19
  • Best player score: 24
  • Position: #224 / 392
  • Number of attempts: 6
Inverting Lines - 1923 entries

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

  • Best score: 10
  • Best player score: 17
  • Position: #426 / 516
  • Number of attempts: 3
Add quotes to ansible playbook - 1008 entries

You created an ansible playbook, but forgot to add quotes. Can you fix it?

  • Best score: 8
  • Best player score: 10
  • Position: #250 / 317
  • Number of attempts: 2
Yo To Hello - 1151 entries

Simply Turn Yo To Hello

  • Best score: 8
  • Best player score: 10
  • Position: #370 / 533
  • Number of attempts: 2
prepend * to every non-blank line - 6358 entries

Prepend an asterisk to every non-blank line in the input file.

  • Best score: 10
  • Best player score: 15
  • Position: #1002 / 1551
  • Number of attempts: 5
One number per line - 18780 entries

Just give me the numbers.

  • Best score: 14
  • Best player score: 26
  • Position: #3472 / 3877
  • Number of attempts: 2
That hyphen - 2595 entries

"vim vi improved"

  • Best score: 9
  • Best player score: 17
  • Position: #645 / 701
  • Number of attempts: 3
VimGolfNight - 575 entries

Based on "The name of the game".

  • Best score: 12
  • Best player score: 21
  • Position: #340 / 352
  • Number of attempts: 1
The Quick Brown Fox Jumps Over The Lazy Vim - 425 entries

Someone has vandalized this text file and replaced the beginning character of one word in each line with a Big "X." Please remove the big X's, and fix each line to read "The Quick Brown Fox Jumps Over The Lazy Dog."

  • Best score: 8
  • Best player score: 11
  • Position: #160 / 193
  • Number of attempts: 2
Stairs Indenting - 479 entries

Indent each line with <line number> whitespaces.

  • Best score: 12
  • Best player score: 34
  • Position: #194 / 199
  • Number of attempts: 2
replacing each line of a block selection - 3005 entries

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

  • Best score: 18
  • Best player score: 23
  • Position: #490 / 779
  • Number of attempts: 2
Remove semicolons after expressions - 663 entries

A follow-up for http://vimgolf.com/challenges/4fc9d767d3a0d4000100000e.

  • Best score: 6
  • Best player score: 8
  • Position: #236 / 264
  • Number of attempts: 5
Shebangs for all - 2039 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: 31
  • Position: #514 / 521
  • Number of attempts: 1
A Simple One - 1064 entries

Here is a very simple one - just to illustrate/introduce a vim feature that some people seem to miss...

  • Best score: 9
  • Best player score: 9
  • Position: #549 / 670
  • Number of attempts: 3
potatol33t
Twitter:

Pops!

entered into 22 challenges

contributed 0 challenges