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 51cd1be19f3290000200000e

Assign list

Assign list elements to matrix

Start file
A challenge can hide secrets

  M00
=
  M01
=
  M10
=
  M11
=
  M20
=
  M21
= 0
End file
  M[0][0] = 'A'
  M
[0][1] = 'challenge'
  M
[1][0] = 'can'
  M
[1][1] = 'hide'
  M
[2][0] = 'secrets'
  M
[2][1] = 0

View Diff

A challenge can hide secrets                                  <

  M00
=                                                       |   M[0][0] = 'A'
  M01
=                                                       |   M[0][1] = 'challenge'
  M10
=                                                       |   M[1][0] = 'can'
  M11
=                                                       |   M[1][1] = 'hide'
  M20
=                                                       |   M[2][0] = 'secrets'
  M21
= 0                                                     |   M[2][1] = 0

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 60 remaining solutions by signing in and submitting your own entry
#61 moo goo / @m00g000 - Score: 73 - 07/01/13 @ 15:28
qwdw/=$<CR>pggq@w@@@@@@dd:%s/\vM(\d)(\d)/M[\1][\2]<CR>:%s/\v\=(\w+) */= '\1'<CR>ZZ

@zulolosi: Hi! it doesn't need M, only this :%s/\v(\d)(\d)/[\1][\2]

1 comment


Created by: @zulolosi

61 active golfers, 192 entries

Leaderboard (lowest score wins):
40
#31 - Ingo / @ist3fani

07/27/2013 at 02:51PM

44
#32 - Nikolay Frantsev / @Shutnik

02/04/2014 at 10:11AM

44
#33 - Joonas Pihlajamaa / @jokkebk

03/15/2014 at 10:15AM

45
#34 - zmf_tim / @zmf_tim

07/09/2013 at 11:51AM

46
#35 - Carlos A Henríquez Q / @lagunex

01/19/2015 at 12:16PM

48
#36 - Nathan / @NathanHarperoni

07/19/2013 at 01:12PM

49
#37 - RobertT / @techrt2050

07/14/2013 at 09:52AM

49
#38 - brett / @brettyukich

09/20/2013 at 12:59AM

49
#39 - Domingue Justin / @_jdomingue

12/30/2013 at 06:28PM

51
#40 - Jason Davidson / @aka_lingy

08/24/2013 at 10:48PM

51
#41 - nona urbiz / @nospampleasemam

09/28/2013 at 08:25AM

52
#42 - newton / @newtonsmartt

10/16/2013 at 02:16AM

52
#43 - evilmoe ☮ / @evilmoe

11/10/2013 at 10:53AM

53
#44 - Tom Gould / @tomgould92

07/16/2013 at 11:23PM

54
#45 - cj / @cj01101

08/04/2013 at 04:01AM

54
#46 - Ram Tamtam / @ramtamtamtam

07/01/2014 at 08:26AM

55
#47 - Roland Schatz / @fl_Overmind

07/14/2013 at 11:48PM

55
#48 - Andrew Crites / @ExplosionPills

09/13/2013 at 01:43AM

57
#49 - Thiago Alves / @townk

07/05/2013 at 06:03AM

57
#50 - lastsseldon / @lastsseldon

08/18/2013 at 12:02AM

58
#51 - Yongho / @YONG_HO

07/05/2013 at 07:39AM

58
#52 - RockerZZY / @rocker_zzy

06/04/2020 at 03:39PM

59
#53 - ltn614 / @ltn614

10/01/2015 at 05:35PM

60
#54 - Eric Potter / @pottereric

12/20/2013 at 04:24PM

61
#55 - Aaron Bieber / @aaronbieber

07/14/2013 at 11:40AM

61
#56 - Jacob Straszynski / @jacobstr

07/28/2013 at 10:01PM

61
#57 - Mauro Persano / @fzort

11/20/2014 at 09:08PM

61
#58 - Pacific Grove / @frank_green_012

03/31/2023 at 06:56AM

67
#59 - mooqual / @mooqual

06/30/2013 at 04:18AM

68
#60 - James Scriven / @JamesDScriven

07/06/2013 at 07:49PM