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

Filling braces - 160 entries

Inspired by a question on CoDidact (https://software.codidact.com/posts/296501), I wondered if Vim could offer a satisfactory ‘solution’ to this problem.

  • Best score: 24
  • Best player score: 27
  • Position: #20 / 52
  • Number of attempts: 3
Modifying .XCompose - 70 entries

You just wrote some lines in .XCompose, but now you want the compose sequences to be more verbose. Change the compose sequence for each Greek letter to its name.

  • Best score: 33
  • Best player score: 35
  • Position: #12 / 18
  • Number of attempts: 5
Swap function parameters and delete all comments in python. - 956 entries

Swap function parameters and delete all comments in python.

  • Best score: 19
  • Best player score: 20
  • Position: #60 / 235
  • Number of attempts: 11
Delete the last function argument in python. - 655 entries

Delete the last function argument in this python script.

  • Best score: 6
  • Best player score: 6
  • Position: #57 / 235
  • Number of attempts: 4
Flip All Bits - 401 entries

Perform a bitwise NOT operation on each bit, meaning that bits that are 0 become 1, and those that are 1 become 0.

  • Best score: 26
  • Best player score: 56
  • Position: #101 / 123
  • Number of attempts: 1
From brakets to parens - 1312 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: 34
  • Position: #123 / 296
  • Number of attempts: 5
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: 40
  • Position: #54 / 298
  • Number of attempts: 14
Change to ascending order - 556 entries

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

  • Best score: 17
  • Best player score: 30
  • Position: #34 / 135
  • Number of attempts: 5
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: 19
  • Position: #114 / 177
  • Number of attempts: 3
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: 75
  • Position: #80 / 101
  • Number of attempts: 2
Fix the git merge conflicts - 353 entries

Solve the merge conflicts in the Python file

  • Best score: 36
  • Best player score: 50
  • Position: #33 / 107
  • Number of attempts: 2
CaN yOuR ViM dO ThAt? #2 - 116 entries

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

  • Best score: 49
  • Best player score: 80
  • Position: #24 / 30
  • Number of attempts: 5
CaN yOuR ViM dO ThAt? #1 - 301 entries

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

  • Best score: 41
  • Best player score: 47
  • Position: #85 / 119
  • Number of attempts: 4
Шамиль Рахимов
Github:

entered into 13 challenges

contributed 0 challenges