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 9v0060b82e38000000000208

Transpose a python matrix

Rotate the matrix in 90 degrees.

Start file
((1, 2, 3, 4),
 (5, 6, 7, 8),
 (9, 10, 11, 12),
 (13, 14, 15, 16))
End file
((1, 5, 9, 13),
 (2, 6, 10, 14),
 (3, 7, 11, 15),
 (4, 8, 12, 16))

View Diff

1,4c1,4
< ((1, 2, 3, 4),
<  (5, 6, 7, 8),
<  (9, 10, 11, 12),
<  (13, 14, 15, 16))
---
> ((1, 5, 9, 13),
>  (2, 6, 10, 14),
>  (3, 7, 11, 15),
>  (4, 8, 12, 16))

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 102 remaining solutions by signing in and submitting your own entry
#103 Lucas Hourquin / @LHourquin - Score: 316 - 06/24/21 @ 01:29
kvll<Esc><Esc>hvllllllllllll<Esc>i<Left><Left><Down><Left><Left><Left><Left><Left><Left><Left><Left><BS>2<Down><BS>3<Down><Right><BS><BS>4<CR>(5<Up>,<Up><Up><Up><Right><BS><Right><BS> 6<Down><BS>7<Down><Right><BS><BS>8<Down><Right><Right>9<Left> <Down><Right><Right><BS>0<Up>,<Up><Up><Up><Right><Right><BS>11<Down><Left><BS>12<Down><BS>3<Down> 14<Down><Left><BS><Right><Right><Up>,<Up><Up><Up><Right><Right><BS>16<Left><Down><BS>17<Down><BS><BS>18<Down>19<Down><Right><BS><BS>3<BS>20<Right><Right><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS><BS> 5, 9, 14),<CR>(<Left> <Right>1<BS>2, 6, 10, 14<Up><Left><BS>3<Down><Right>),<CR>(3<CR>'<BS>(4<Up><Up><Up><Down><Down>, 7<Down>n<BS>, 8,<Up>, 11<Down> 21<BS><BS>12,<Up>, 13<Down><Up><BS>5),<CR><BS><BS><Down> 16))<Esc>:w<CR>:wq<CR>

0 comments


#104 Adam Ma / @6i9Bz4gMtVSByjj - Score: 316 - 08/08/21 @ 11:50
/sg<BS><BS><BS>:s<BS>%s//d<BS><BS>\d+<BS>[]<Left>1,2<BS><BS><BS><BS><Right><BS>{}<Left>1,2<BS><BS><BS><BS><Right><BS>+<BS>*<BS>/1/g<CR>/<BS>:%s/\d\1<BS><BS>/1/g<Left><Left><Left><Left><Left><Left>(<BS>[<Right><Right>]+<Left><Left><Left><Left><BS>(<Right><Right><Right><BS>)<Left><Left><Left><Left>\<Right><Right><Right>\<Right><BS><BS><Left><Left><BS><BS><Right><Right><Right><BS>*<BS>+<CR><Up>:s<BS>%s/\d+/1/g<Left><Left><Left><Left><Left>\<CR>jjkkkjlkjqaa<Esc><C-A>q@ajkkjr1jkkqaj<C-A>q2@ajjk<C-A>j<C-A><C-A>kkk:let i=1<CR>:g/^/ s//\i=.<BS> . ' '/ |let i = i<BS><BS><BS><BS>=i+1<CR>ukjljkkkllllr5lllr9lllr1a3<Esc>ji4<Esc>ji5<Esc>ji6hh<BS><BS>``<BS><BS><Esc>hhhha2<Esc>jki1j<BS>`<BS><Esc>ki0<Esc>hhhhr6jr7jr8<Esc>:wq<CR>

0 comments


Created by: @Kyle98675198

104 active golfers, 541 entries

Leaderboard (lowest score wins):
79
#91 - Ali Aslan / @AliAsla95742367

10/17/2021 at 12:42AM

79
#92 - Steven Yuan / @vesteny77

04/21/2022 at 08:56PM

83
#93 - 关红伟 / @speed2exe

09/26/2021 at 05:36PM

89
#94 - OliveWaterbuck / @OliveWaterbuck

09/07/2021 at 09:58PM

89
#95 - José Medrano / @happylilmexican

01/05/2022 at 06:17PM

95
#96 - Babil G. Sarwar / @gsbabil

08/19/2021 at 07:04AM

100
#97 - Eric Tran / @traneric94

01/20/2022 at 05:10PM

100
#98 - oleg / @oleg12573505

01/29/2022 at 03:12PM

101
#99 - Rohan Kumar / @RohanKu68633389

06/24/2021 at 06:57AM

149
#100 - Miaomiao@.dandan / @Miaomiao_dandan

01/24/2022 at 06:51AM

167
#101 - DosLin / @hidoslin

06/29/2021 at 08:58AM

258
#102 - Hugh / @haquaman

10/08/2021 at 11:00AM

316
#103 - Lucas Hourquin / @LHourquin

06/24/2021 at 01:29AM

316
#104 - Adam Ma / @6i9Bz4gMtVSByjj

08/08/2021 at 11:50AM