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

Paste a column after a column - 2537 entries

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

  • Best score: 14
  • Best player score: 14
  • Position: #61 / 553
  • Number of attempts: 15
Poorly indented Python comments - 1315 entries

Fix the alignment of some Python comments as quickly as possible.

  • Best score: 15
  • Best player score: 43
  • Position: #156 / 221
  • Number of attempts: 1
delete swap - 1786 entries

delete all swap

  • Best score: 5
  • Best player score: 5
  • Position: #137 / 555
  • Number of attempts: 6
Migrated to Postgres! - 331 entries

Celebration completion of this project. https://github.com/igrigorik/vimgolf/pull/322

  • Best score: 26
  • Best player score: 27
  • Position: #30 / 131
  • Number of attempts: 1
Generate a very basic Python constructor - 316 entries

I actually needed to do this myself, so I look forward to learning how.

  • Best score: 38
  • Best player score: 66
  • Position: #75 / 98
  • Number of attempts: 1
Simple, Practical, and Common - 33616 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: 28
  • Position: #4367 / 7420
  • Number of attempts: 3
V to the i - 4802 entries

Input is 99 V's. Output is 100 i's.

  • Best score: 7
  • Best player score: 7
  • Position: #614 / 1893
  • Number of attempts: 1
Applying same text modification in several lines - 2880 entries

Remove identical text at the beginning of several lines and the closing parenthesis.

  • Best score: 12
  • Best player score: 13
  • Position: #93 / 851
  • Number of attempts: 3
Preferably without multi-cursor plugin - 540 entries

Originally asked as question on reddit by kpthunder: https://www.reddit.com/r/vim/comments/9fvsro/what_is_the_most_efficient_way_to_go_about/

  • Best score: 30
  • Best player score: 36
  • Position: #73 / 129
  • Number of attempts: 1
Number Sort - 314 entries

sort the list of newline-separated numbers incrementally. Numbers are in the range 1 to 1000, with 500 missing

  • Best score: 9
  • Best player score: 9
  • Position: #86 / 166
  • Number of attempts: 1
Team names - 1836 entries

The team names are misspelled.

  • Best score: 16
  • Best player score: 18
  • Position: #379 / 588
  • Number of attempts: 3
Missing Library and a Typo - 887 entries

I forgot to add a c library, please add it for me. Also I'm bad at typing so fix my typo too.

  • Best score: 14
  • Best player score: 15
  • Position: #21 / 213
  • Number of attempts: 4
Order and join - 983 entries

There's something special about the input order.

  • Best score: 10
  • Best player score: 12
  • Position: #169 / 259
  • Number of attempts: 3
comments galore - 1045 entries

Basic comment reformatting

  • Best score: 10
  • Best player score: 10
  • Position: #267 / 424
  • Number of attempts: 5
Delete to the end of the current line - 812 entries

Delete to the end of the current line, but keep the character under the cursor.

  • Best score: 5
  • Best player score: 5
  • Position: #10 / 391
  • Number of attempts: 1
Change your calendar - 392 entries

Happy New Year!

  • Best score: 18
  • Best player score: 18
  • Position: #5 / 87
  • Number of attempts: 9
Mute the second method of this script - 455 entries

prepend a # infront of every line of the second method

  • Best score: 8
  • Best player score: 9
  • Position: #128 / 239
  • Number of attempts: 2
I forgot quotes - 15983 entries

Oops.

  • Best score: 10
  • Best player score: 17
  • Position: #3004 / 4180
  • Number of attempts: 1
-a-b-c- - 3213 entries

Put hyphens everywhere.

  • Best score: 13
  • Best player score: 16
  • Position: #851 / 1137
  • Number of attempts: 2
A HAPPY NEW YEAR 2014 ! - 10663 entries

A HAPPY NEW YEAR 2014 !

  • Best score: 11
  • Best player score: 13
  • Position: #2605 / 3683
  • Number of attempts: 1
Vertical Limit - 2538 entries

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

  • Best score: 21
  • Best player score: 29
  • Position: #642 / 754
  • Number of attempts: 1
The holy-grail may help - 366 entries

Can you find it in less than 20 strokes, Arthur?

  • Best score: 16
  • Best player score: 16
  • Position: #146 / 209
  • Number of attempts: 1
Jonathan Gin
Twitter:

Dev Degree @shopify

entered into 22 challenges

contributed 0 challenges