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 5fa95fbdd285680008e41e4b

swap number pairs

Swap the numbers in a bunch of 2-element arrays.

Start file
[2, 1], [5, 4]
[6, 3]
[7, 4]
[8, 2], [12, 11]
End file
[1, 2], [4, 5]
[3, 6]
[4, 7]
[2, 8], [11, 12]

View Diff

1,4c1,4
< [2, 1], [5, 4]
< [6, 3]
< [7, 4]
< [8, 2], [12, 11]
---
> [1, 2], [4, 5]
> [3, 6]
> [4, 7]
> [2, 8], [11, 12]

Solutions

The best way to learn is to practice. Below, you will find some of the solutions other golfers have entered. To unlock higher ranked solutions, submit your own entry which does as well or better than the solutions you can currently see - climb the ladder!

Check out these helpful resources to improve your Vim skills... Game on.

Unlock 208 remaining solutions by signing in and submitting your own entry
#209 Andrii Soldatenko / @a_soldatenko - Score: 143 - 11/16/20 @ 14:11
:<50-53>nnoremap <silent> gl "_yiw:s/\(\%#\w\+\)\(\_W\+\)\(\w\+\)/\3\2\1/<CR><c-o>/\w\+\_W\+<CR><c-l><CR><Esc>[201~<CR><Right>gl<Up><Right><Right><Right><Right><Right><Right><Right><Right><Right>.gl<Right>gl<Right>glgl<Right>gl<Right><Right><Right><Right><Right>gl<Esc>:wq!<CR>

0 comments


Created by: @wedesoft

209 active golfers, 1107 entries

Leaderboard (lowest score wins):
17
#61 - A A A / @37fatos

01/09/2021 at 12:50AM

17
#62 - Tinko Minko / @tandikula

01/18/2021 at 11:20PM

17
#63 - Michael / @Michael62785035

05/23/2021 at 11:54PM

18
#64 - Ceda EI / @ceda_ei

11/10/2020 at 01:38PM

18
#65 - Saki Gw / @Sakigw

11/12/2020 at 02:06PM

18
#66 - David Kutschke / @D4KU_

11/12/2020 at 10:01PM

18
#67 - Andreas Siegrist / @andreaszwei

11/15/2020 at 12:33AM

18
#68 - Jonáš Šerých / @serycjon

11/15/2020 at 06:08PM

18
#69 - chocolate / @chocola81394123

11/18/2020 at 06:25AM

18
#70 - kse / @kse92733183

11/18/2020 at 04:01PM

18
#71 - ZackBurtAWS / @ZackBurtSDE

11/18/2020 at 04:10PM

18
#72 - Patty (Dionísio) / @patrickvillela

11/18/2020 at 07:01PM

18
#73 - Tyler Holien / @tylerholien

11/19/2020 at 01:17AM

18
#74 - OtterPy / @OtterPy

01/26/2021 at 03:27PM

18
#75 - grsh / @girish_i_am

05/27/2021 at 08:07AM

19
#76 - Kapildev Neupane / @KapildevNeupane

01/01/2021 at 10:44AM

19
#77 - Björn Struckmeier / @BjrnStruckmeie1

01/03/2021 at 04:55PM

19
#78 - zapakh / @zapakh

01/21/2021 at 05:42AM

20
#79 - Demian Martinez / @demianuco

12/09/2020 at 06:13PM

21
#80 - Bruce Woodward / @b00ffer

11/11/2020 at 10:26AM

21
#81 - Marcin Szamotulski / @me_coot

11/11/2020 at 07:01PM

21
#82 - Arne Winter / @ArneWinter5

11/19/2020 at 01:31PM

21
#83 - Vio / @vioxcd

11/23/2020 at 05:44PM

21
#84 - Askhento / @Askhento1

01/26/2021 at 12:47AM

22
#85 - José / @AngelGaldamez

11/14/2020 at 11:29PM

22
#86 - LeLycal.tar.gz 💾 / @Lycal3

12/01/2020 at 09:59AM

22
#87 - mevmev / @mevmev8

12/04/2020 at 01:06AM

22
#88 - angel / @anmaso

12/04/2020 at 10:30PM

22
#89 - Dave Millican / @dave_millican

01/18/2021 at 12:22PM

22
#90 - Calarasanu Andrei / @_fanfani4_

05/28/2021 at 03:01PM