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

swap number pairs - 2173 entries

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

  • Best score: 16
  • Best player score: 32
  • Position: #259 / 394
  • Number of attempts: 3
Rural Post - 4596 entries

Simple challenge to remove all but the post code on each line

  • Best score: 9
  • Best player score: 11
  • Position: #525 / 1122
  • Number of attempts: 7
Satisfy the go linter - 2485 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: 27
  • Position: #328 / 495
  • Number of attempts: 6
Capitalize the Names - 430 entries

I want to capitalize the names in quotes, but just the people's names, not the file names.

  • Best score: 21
  • Best player score: 32
  • Position: #73 / 101
  • Number of attempts: 2
Simple, Practical, and Common - 33982 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: 22
  • Best player score: 32
  • Position: #5882 / 7508
  • Number of attempts: 2
prepend * to every non-blank line - 6390 entries

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

  • Best score: 10
  • Best player score: 11
  • Position: #676 / 1560
  • Number of attempts: 7
One number per line - 18894 entries

Just give me the numbers.

  • Best score: 14
  • Best player score: 22
  • Position: #2693 / 3901
  • Number of attempts: 4
Refactor typescript arrow function type - 350 entries

Make arrow function type less verbose and easier to read

  • Best score: 20
  • Best player score: 28
  • Position: #56 / 75
  • Number of attempts: 2
Add semicolons - 10951 entries

Simply add a semicolon at the end of each line

  • Best score: 10
  • Best player score: 12
  • Position: #1945 / 3096
  • Number of attempts: 1
remove lines containing the word "reader" - 3646 entries

easy stuff

  • Best score: 9
  • Best player score: 10
  • Position: #685 / 1183
  • Number of attempts: 3
Com(m)a Trouble - 3990 entries

Someone was real stupid when placing his commas. Can you fix it?

  • Best score: 12
  • Best player score: 24
  • Position: #721 / 909
  • Number of attempts: 5
Box it - 7999 entries

Create a box around a line.

  • Best score: 21
  • Best player score: 24
  • Position: #845 / 1899
  • Number of attempts: 7
From argument to object - 1552 entries

This task typifies those programmers endure while coding. This C-family pseudocode needs a function argument to be repurposed as an object call. Simply search and replace? Repeat a pattern of edits?

  • Best score: 17
  • Best player score: 18
  • Position: #225 / 469
  • Number of attempts: 2
Array propagate - 346 entries

Complete the array with the keys as part of the value

  • Best score: 23
  • Best player score: 26
  • Position: #58 / 123
  • Number of attempts: 3
Search and Replace 0 - 5124 entries

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

  • Best score: 12
  • Best player score: 14
  • Position: #1049 / 1670
  • Number of attempts: 4
Just the middle - 11611 entries

Delete the instructions at the top and bottom.

  • Best score: 7
  • Best player score: 8
  • Position: #2558 / 4252
  • Number of attempts: 5
Team names - 1860 entries

The team names are misspelled.

  • Best score: 16
  • Best player score: 16
  • Position: #12 / 595
  • Number of attempts: 8
Todo list specification - 409 entries

The every item on the todo list must be done today. Modify the list to reflect that.

  • Best score: 37
  • Best player score: 39
  • Position: #140 / 185
  • Number of attempts: 4
Back to the roots - 74 entries

Johnny has a file with more integers. He wants to change each number with its square root. Can you help him?

  • Best score: 20
  • Best player score: 31
  • Position: #41 / 41
  • Number of attempts: 1
Interactive git rebase changing commands - 189 entries

How to change the action of some commits in git rebase dialog.

  • Best score: 14
  • Best player score: 15
  • Position: #44 / 81
  • Number of attempts: 6
Order and join - 1030 entries

There's something special about the input order.

  • Best score: 10
  • Best player score: 14
  • Position: #218 / 264
  • Number of attempts: 3
Change part of a function name in multiple occurrences - 681 entries

Change the middle part of the function name in multiple places, preferably using the next and dot commands.

  • Best score: 14
  • Best player score: 15
  • Position: #88 / 213
  • Number of attempts: 1
convert yml into java pojo field - 874 entries

How fast vim can create fields for java pojo i.e class declaration referring to a (simple) yml file

  • Best score: 29
  • Best player score: 32
  • Position: #153 / 232
  • Number of attempts: 2
I forgot quotes - 16185 entries

Oops.

  • Best score: 10
  • Best player score: 14
  • Position: #1737 / 4221
  • Number of attempts: 6
-a-b-c- - 3237 entries

Put hyphens everywhere.

  • Best score: 13
  • Best player score: 19
  • Position: #1075 / 1145
  • Number of attempts: 2
Words in parens - 13033 entries

We should all ace this, right?

  • Best score: 13
  • Best player score: 18
  • Position: #2958 / 3987
  • Number of attempts: 2
Mike Harris
Twitter:

Helping make beautiful, personalised children's books as tech lead with @wonderbly. Mainly tech tweets with some swimming, gardening and art thrown in.

entered into 26 challenges

contributed 0 challenges