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 function parameters and delete all comments in python. - 130 entries

Swap function parameters and delete all comments in python.

  • Best score: 19
  • Best player score: 34
  • Position: #30 / 35
  • Number of attempts: 1
Convert list of enums to list of localization terms - 151 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: 107
  • Position: #20 / 46
  • Number of attempts: 7
From brakets to parens - 1134 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: 38
  • Position: #141 / 249
  • Number of attempts: 4
Create json from a .env file - 1581 entries

A simple everyday task.

  • Best score: 39
  • Best player score: 54
  • Position: #140 / 375
  • Number of attempts: 3
Reordering properties - 1220 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: 73
  • Position: #134 / 279
  • Number of attempts: 3
Sort and Tag - 685 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: 137
  • Position: #122 / 145
  • Number of attempts: 1
Changing date formats - 710 entries

Change the date format to Y/M/D.

  • Best score: 37
  • Best player score: 127
  • Position: #160 / 197
  • Number of attempts: 1
YAML to dotenv - 1542 entries

Convert this YAML config file to a .env file.

  • Best score: 16
  • Best player score: 24
  • Position: #165 / 316
  • Number of attempts: 5
Swap columns and transform to CSV format - 447 entries

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

  • Best score: 16
  • Best player score: 21
  • Position: #116 / 162
  • Number of attempts: 4
Generate an entry for each month - 372 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: 44
  • Position: #46 / 92
  • Number of attempts: 3
Fix the git merge conflicts - 332 entries

Solve the merge conflicts in the Python file

  • Best score: 36
  • Best player score: 59
  • Position: #55 / 98
  • Number of attempts: 1
The Fibonacci Spacer - 161 entries

Split the words, remove punctuation and add spaces before each line following the Fibonacci sequence (0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89)

  • Best score: 25
  • Best player score: 76
  • Position: #40 / 48
  • Number of attempts: 4
Fix the Scala Method - 338 entries

Fix the missing semicolons and the Int type, ensure the floating point division, and remove the unnecessary return.

  • Best score: 2
  • Best player score: 29
  • Position: #87 / 112
  • Number of attempts: 1
Change class fields from snake case to camel case - 312 entries

Change the class fields in this Scala class from snake case to camel case

  • Best score: 13
  • Best player score: 23
  • Position: #108 / 115
  • Number of attempts: 1
Reorganize Pokémon - 829 entries

Change the format of the each line and sort alphabetically.

  • Best score: 18
  • Best player score: 38
  • Position: #213 / 226
  • Number of attempts: 1
Replace csv column if it's not empty - 270 entries

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

  • Best score: 15
  • Best player score: 32
  • Position: #87 / 92
  • Number of attempts: 1
extract struct tag in go - 153 entries

Can you extract all struct tags in the fewest keystrokes possible?

  • Best score: 29
  • Best player score: 45
  • Position: #25 / 44
  • Number of attempts: 1
CaN yOuR ViM dO ThAt? #1 - 270 entries

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

  • Best score: 41
  • Best player score: 50
  • Position: #90 / 107
  • Number of attempts: 1
Search different SQL column with similar where clause - 336 entries

Replace a column in the where clause and convert all numbers from text to numeric, by replacing the leading 0 with the code 359.

  • Best score: 22
  • Best player score: 28
  • Position: #57 / 79
  • Number of attempts: 2
Jean-Valery
Github:

entered into 19 challenges

contributed 0 challenges