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

Find the devices that have no revoked time, and extract out the duration left on their leases. - 212 entries

Extract non-revoked devices and the duration of their leases.

  • Best score: 50
  • Best player score: 53
  • Position: #4 / 53
  • Number of attempts: 7
Convert list of enums to list of localization terms - 228 entries

While making my game Piloteer, I had a large list of TaskTypes and needed to convert them to an equivalent list of localization terms, to be used when translating the game's text into different languages.

  • Best score: 75
  • Best player score: 89
  • Position: #11 / 69
  • Number of attempts: 5
From brakets to parens - 1306 entries

This is one of the most common problem when you wrap an array for error handling. Vim is useful when you convert foo[i][j][k] into foo(i, j, k) for many times.

  • Best score: 24
  • Best player score: 25
  • Position: #47 / 295
  • Number of attempts: 5
π - 327 entries

1200 π chars

  • Best score: 16
  • Best player score: 28
  • Position: #53 / 80
  • Number of attempts: 1
Create json from a .env file - 1716 entries

A simple everyday task.

  • Best score: 38
  • Best player score: 40
  • Position: #49 / 416
  • Number of attempts: 4
Reordering properties - 1372 entries

Arrange the CSS lines for the #topbar selector based on their complete line length, from shortest to longest.

  • Best score: 24
  • Best player score: 45
  • Position: #72 / 298
  • Number of attempts: 4
Sort and Tag - 737 entries

The goal is to sort these lines alphabetically, assign a unique identifier to each line in the format "[01]", "[02]", etc., and then restore the original order of the lines while preserving the assigned identifiers.

  • Best score: 36
  • Best player score: 58
  • Position: #45 / 156
  • Number of attempts: 11
Change to ascending order - 549 entries

Change each line of numbers consistently from descending to ascending order.

  • Best score: 17
  • Best player score: 46
  • Position: #64 / 134
  • Number of attempts: 1
Swap columns and transform to CSV format - 494 entries

Turn this spreadsheet output into a CSV file but first swap the columns

  • Best score: 16
  • Best player score: 17
  • Position: #73 / 177
  • Number of attempts: 4
Generate an entry for each month - 397 entries

The input file contains a URI with a month in it. Generate the URIs for all the other months up to a couple of years

  • Best score: 27
  • Best player score: 31
  • Position: #6 / 101
  • Number of attempts: 5
Fix the git merge conflicts - 353 entries

Solve the merge conflicts in the Python file

  • Best score: 36
  • Best player score: 47
  • Position: #26 / 107
  • Number of attempts: 4
Change class fields from camel case to snake case - 669 entries

This is the reverse of the previous challenge: https://www.vimgolf.com/challenges/9v006705493c000000000513

  • Best score: 18
  • Best player score: 18
  • Position: #43 / 154
  • Number of attempts: 4
maksim-pinguin
Github:

entered into 12 challenges

contributed 0 challenges