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

Convert list of enums to list of localization terms - 252 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: 213
  • Position: #72 / 73
  • Number of attempts: 2
From brakets to parens - 1329 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: 39
  • Position: #176 / 302
  • Number of attempts: 4
Create json from a .env file - 1737 entries

A simple everyday task.

  • Best score: 38
  • Best player score: 77
  • Position: #303 / 421
  • Number of attempts: 2
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: 303
  • Position: #150 / 156
  • Number of attempts: 1
YAML to dotenv - 1639 entries

Convert this YAML config file to a .env file.

  • Best score: 16
  • Best player score: 19
  • Position: #110 / 343
  • Number of attempts: 6
Swap columns and transform to CSV format - 504 entries

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

  • Best score: 16
  • Best player score: 33
  • Position: #167 / 180
  • Number of attempts: 2
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: 170
  • Position: #98 / 101
  • Number of attempts: 1
Change class fields from camel case to snake case - 675 entries

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

  • Best score: 18
  • Best player score: 45
  • Position: #128 / 157
  • Number of attempts: 2
Reorganize Pokémon - 894 entries

Change the format of the each line and sort alphabetically.

  • Best score: 18
  • Best player score: 21
  • Position: #106 / 247
  • Number of attempts: 4
Replace csv column if it's not empty - 312 entries

Replace the credit_score_percentile column with the value 0.0 but leave the empty ones untouched

  • Best score: 15
  • Best player score: 16
  • Position: #63 / 101
  • Number of attempts: 3
Change readonly files - 139 entries

Try to write a file that was marked as read-only.

  • Best score: 17
  • Best player score: 71
  • Position: #36 / 38
  • Number of attempts: 1
CaN yOuR ViM dO ThAt? #1 - 303 entries

Tsoding's famous "Can your Vim do that?" https://youtu.be/Bafo3hhheHU?si=DfcT4sUEMTSAevnx&t=1091

  • Best score: 41
  • Best player score: 46
  • Position: #67 / 121
  • Number of attempts: 3
EthanMcGuire
Github:

entered into 12 challenges

contributed 0 challenges