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

Create json from a .env file - 608 entries

A simple everyday task.

  • Best score: 39
  • Best player score: 55
  • Position: #59 / 139
  • Number of attempts: 4
Reordering properties - 758 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: 102
  • Position: #134 / 184
  • Number of attempts: 2
Sort and Tag - 409 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: 7
  • Best player score: 36
  • Position: #11 / 89
  • Number of attempts: 20
Changing date formats - 412 entries

Change the date format to Y/M/D.

  • Best score: 37
  • Best player score: 40
  • Position: #7 / 129
  • Number of attempts: 12
YAML to dotenv - 884 entries

Convert this YAML config file to a .env file.

  • Best score: 16
  • Best player score: 17
  • Position: #49 / 197
  • Number of attempts: 8
Swap columns and transform to CSV format - 295 entries

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

  • Best score: 16
  • Best player score: 17
  • Position: #49 / 110
  • Number of attempts: 1
Generate an entry for each month - 229 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: 27
  • Position: #3 / 64
  • Number of attempts: 15
Fix the git merge conflicts - 207 entries

Solve the merge conflicts in the Python file

  • Best score: 36
  • Best player score: 50
  • Position: #20 / 59
  • Number of attempts: 2
Nested JSON Flattener - 76 entries

Transform a deeply nested JSON structure into a flattened key-value format where each path is represented by dot notation

  • Best score: 44
  • Best player score: 56
  • Position: #8 / 21
  • Number of attempts: 12
The Fibonacci Spacer - 127 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: 44
  • Position: #17 / 37
  • Number of attempts: 3
Replace markdown sections with numbering - 205 entries

Replace each section and subsection with their respective numbers

  • Best score: 29
  • Best player score: 59
  • Position: #26 / 61
  • Number of attempts: 4
Fix the Scala Method - 218 entries

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

  • Best score: 9
  • Best player score: 22
  • Position: #34 / 71
  • Number of attempts: 4
Change class fields from camel case to snake case - 449 entries

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

  • Best score: 18
  • Best player score: 18
  • Position: #32 / 109
  • Number of attempts: 12
Change class fields from snake case to camel case - 230 entries

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

  • Best score: 13
  • Best player score: 13
  • Position: #52 / 88
  • Number of attempts: 1
Reorganize Pokémon - 582 entries

Change the format of the each line and sort alphabetically.

  • Best score: 18
  • Best player score: 18
  • Position: #32 / 158
  • Number of attempts: 4
Replace csv column if it's not empty - 191 entries

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

  • Best score: 15
  • Best player score: 15
  • Position: #27 / 65
  • Number of attempts: 5
Convert plain text into a markdown table - 27 entries

Convert the table to markdown to make it more usable

  • Best score: 56
  • Best player score: 121
  • Position: #10 / 13
  • Number of attempts: 2
Change readonly files - 69 entries

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

  • Best score: 20
  • Best player score: 53
  • Position: #16 / 21
  • Number of attempts: 1
extract struct tag in go - 83 entries

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

  • Best score: 29
  • Best player score: 41
  • Position: #17 / 28
  • Number of attempts: 6
CaN yOuR ViM dO ThAt? #2 - 52 entries

Tsoding's famous "Can your Vim do that?" https://www.youtube.com/watch?v=F4xc4jQO7ck&t=1429s

  • Best score: 49
  • Best player score: 70
  • Position: #9 / 14
  • Number of attempts: 3
CaN yOuR ViM dO ThAt? #1 - 176 entries

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

  • Best score: 41
  • Best player score: 41
  • Position: #18 / 70
  • Number of attempts: 5
Append leading hyphen count to each line - 81 entries

Append the number of leading hyphens to the end of each line.

  • Best score: 23
  • Best player score: 24
  • Position: #8 / 26
  • Number of attempts: 4
Move list of uuids into a SQL query - 154 entries

Take the list of UUIDs and use them as a filter in the where statement of a SQL query

  • Best score: 57
  • Best player score: 66
  • Position: #27 / 52
  • Number of attempts: 1
Markdown Blog Editing - 356 entries

Convert the given link text in start file to a markdown link list.

  • Best score: 30
  • Best player score: 43
  • Position: #39 / 84
  • Number of attempts: 5
winter-loo
Github:

entered into 24 challenges

contributed 0 challenges