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

Quicksort - 1558 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: #35 / 343
  • Number of attempts: 3
Pick and sort servers from mirror list - 344 entries

Retrieve the primary server for each country from a mirror list file and organize them alphabetically by country name. Given a mirror list file containing server information for various countries, the objective is to extract the primary server from each country and then arrange these servers in alphabetical order based on the respective country names.

  • Best score: 28
  • Best player score: 33
  • Position: #36 / 75
  • Number of attempts: 2
Remove line numbers - 540 entries

From http://web.archive.org/web/20140831121704/http://dirac.org/linux/gdb/02a-Memory_Layout_And_The_Stack.php#investigatingthestackwithgdb.

  • Best score: 8
  • Best player score: 12
  • Position: #34 / 144
  • Number of attempts: 5
Find fix point of cos - 1125 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: #162 / 337
  • Number of attempts: 1
Insert column data on Confluence-style table - 425 entries

Add ip addresses into new "IP" column based on the last digits from the "Server" column

  • Best score: 33
  • Best player score: 48
  • Position: #54 / 99
  • Number of attempts: 2
Surround the 'z' character with brackets, quotes, and print as formatted string. - 485 entries

Surround the 'z' character with brackets, quotes, and print as formatted string.

  • Best score: 17
  • Best player score: 17
  • Position: #158 / 271
  • Number of attempts: 1
Easier Align - 344 entries

Align the columns of a markdown table

  • Best score: 51
  • Best player score: 148
  • Position: #38 / 89
  • Number of attempts: 5
Paste a column after a column - 2249 entries

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

  • Best score: 14
  • Best player score: 20
  • Position: #263 / 488
  • Number of attempts: 2
Filter number combinations that don't add to 11 - 376 entries

Append the sum of each line to its end, alongside an equals sign, and remove any that do not sum to 11. The ordering of lines should stay the same. Note that the combinations are semi-arbitrary and not all 4-number combinations are present in the file.

  • Best score: 27
  • Best player score: 27
  • Position: #34 / 110
  • Number of attempts: 6
Fizzbuzz - 509 entries

type the first 100 lines of the fizzbuzz problem

  • Best score: 47
  • Best player score: 89
  • Position: #112 / 157
  • Number of attempts: 1
Fix the shell script! - 2339 entries

Fix the shell script with the fewest keystrokes!

  • Best score: 26
  • Best player score: 31
  • Position: #256 / 541
  • Number of attempts: 3
Put a newline after every 10 lines in vim - 1577 entries

Goal is to put a newline after every 10 lines in vim.

  • Best score: 10
  • Best player score: 14
  • Position: #422 / 524
  • Number of attempts: 1
CSV to MD format - 388 entries

To convert a CSV list to Markdown list

  • Best score: 36
  • Best player score: 114
  • Position: #80 / 91
  • Number of attempts: 2
Turn the x - 297 entries

Turn the x to a +

  • Best score: 19
  • Best player score: 25
  • Position: #63 / 77
  • Number of attempts: 2
Extract wireshark capture filter - 198 entries

Extract wireshark capture filter from IP plan

  • Best score: 25
  • Best player score: 42
  • Position: #60 / 67
  • Number of attempts: 1
Todo list specification - 385 entries

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

  • Best score: 37
  • Best player score: 46
  • Position: #175 / 176
  • Number of attempts: 2
I forgot quotes - 15931 entries

Oops.

  • Best score: 10
  • Best player score: 15
  • Position: #2377 / 4161
  • Number of attempts: 1
Saving the hashes(#) - 1992 entries

The following file is copied from vimcasts.org(Its only for learning purpose,hope the site owner doesn't mind it), its probably the easiest of challenges.Our goal is to delete every line which doesn't contain a hash signs. The remaining hash signs with numbers are then sorted to get the final output.

  • Best score: 20
  • Best player score: 33
  • Position: #422 / 473
  • Number of attempts: 1
HTML to Haml - 842 entries

Help convert this HTML page to Haml.

  • Best score: 23
  • Best player score: 45
  • Position: #145 / 202
  • Number of attempts: 1
Frédéric Heulin
Github:

entered into 19 challenges

contributed 0 challenges