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

Generate an entry for each month

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

Start file
gs://my-bucket/some-dir/2016-01-01/*.avro
End file
gs://my-bucket/some-dir/2016-01-01/*.avro
gs://my-bucket/some-dir/2016-02-01/*.avro
gs://my-bucket/some-dir/2016-03-01/*.avro
gs://my-bucket/some-dir/2016-04-01/*.avro
gs://my-bucket/some-dir/2016-05-01/*.avro
gs://my-bucket/some-dir/2016-06-01/*.avro
gs://my-bucket/some-dir/2016-07-01/*.avro
gs://my-bucket/some-dir/2016-08-01/*.avro
gs://my-bucket/some-dir/2016-09-01/*.avro
gs://my-bucket/some-dir/2016-10-01/*.avro
gs://my-bucket/some-dir/2016-11-01/*.avro
gs://my-bucket/some-dir/2016-12-01/*.avro
gs://my-bucket/some-dir/2017-01-01/*.avro
gs://my-bucket/some-dir/2017-02-01/*.avro
gs://my-bucket/some-dir/2017-03-01/*.avro
gs://my-bucket/some-dir/2017-04-01/*.avro
gs://my-bucket/some-dir/2017-05-01/*.avro
gs://my-bucket/some-dir/2017-06-01/*.avro
gs://my-bucket/some-dir/2017-07-01/*.avro
gs://my-bucket/some-dir/2017-08-01/*.avro
gs://my-bucket/some-dir/2017-09-01/*.avro
gs://my-bucket/some-dir/2017-10-01/*.avro
gs://my-bucket/some-dir/2017-11-01/*.avro
gs://my-bucket/some-dir/2017-12-01/*.avro
gs://my-bucket/some-dir/2018-01-01/*.avro
gs://my-bucket/some-dir/2018-02-01/*.avro
gs://my-bucket/some-dir/2018-03-01/*.avro
gs://my-bucket/some-dir/2018-04-01/*.avro
gs://my-bucket/some-dir/2018-05-01/*.avro
gs://my-bucket/some-dir/2018-06-01/*.avro
gs://my-bucket/some-dir/2018-07-01/*.avro
gs://my-bucket/some-dir/2018-08-01/*.avro
gs://my-bucket/some-dir/2018-09-01/*.avro
gs://my-bucket/some-dir/2018-10-01/*.avro
gs://my-bucket/some-dir/2018-11-01/*.avro
gs://my-bucket/some-dir/2018-12-01/*.avro
gs://my-bucket/some-dir/2019-01-01/*.avro
gs://my-bucket/some-dir/2019-02-01/*.avro
gs://my-bucket/some-dir/2019-03-01/*.avro
gs://my-bucket/some-dir/2019-04-01/*.avro
gs://my-bucket/some-dir/2019-05-01/*.avro
gs://my-bucket/some-dir/2019-06-01/*.avro
gs://my-bucket/some-dir/2019-07-01/*.avro
gs://my-bucket/some-dir/2019-08-01/*.avro
gs://my-bucket/some-dir/2019-09-01/*.avro
gs://my-bucket/some-dir/2019-10-01/*.avro
gs://my-bucket/some-dir/2019-11-01/*.avro
gs://my-bucket/some-dir/2019-12-01/*.avro

View Diff

1a2,48
> gs://my-bucket/some-dir/2016-02-01/*.avro
> gs://my-bucket/some-dir/2016-03-01/*.avro
> gs://my-bucket/some-dir/2016-04-01/*.avro
> gs://my-bucket/some-dir/2016-05-01/*.avro
> gs://my-bucket/some-dir/2016-06-01/*.avro
> gs://my-bucket/some-dir/2016-07-01/*.avro
> gs://my-bucket/some-dir/2016-08-01/*.avro
> gs://my-bucket/some-dir/2016-09-01/*.avro
> gs://my-bucket/some-dir/2016-10-01/*.avro
> gs://my-bucket/some-dir/2016-11-01/*.avro
> gs://my-bucket/some-dir/2016-12-01/*.avro
> gs://my-bucket/some-dir/2017-01-01/*.avro
> gs://my-bucket/some-dir/2017-02-01/*.avro
> gs://my-bucket/some-dir/2017-03-01/*.avro
> gs://my-bucket/some-dir/2017-04-01/*.avro
> gs://my-bucket/some-dir/2017-05-01/*.avro
> gs://my-bucket/some-dir/2017-06-01/*.avro
> gs://my-bucket/some-dir/2017-07-01/*.avro
> gs://my-bucket/some-dir/2017-08-01/*.avro
> gs://my-bucket/some-dir/2017-09-01/*.avro
> gs://my-bucket/some-dir/2017-10-01/*.avro
> gs://my-bucket/some-dir/2017-11-01/*.avro
> gs://my-bucket/some-dir/2017-12-01/*.avro
> gs://my-bucket/some-dir/2018-01-01/*.avro
> gs://my-bucket/some-dir/2018-02-01/*.avro
> gs://my-bucket/some-dir/2018-03-01/*.avro
> gs://my-bucket/some-dir/2018-04-01/*.avro
> gs://my-bucket/some-dir/2018-05-01/*.avro
> gs://my-bucket/some-dir/2018-06-01/*.avro
> gs://my-bucket/some-dir/2018-07-01/*.avro
> gs://my-bucket/some-dir/2018-08-01/*.avro
> gs://my-bucket/some-dir/2018-09-01/*.avro
> gs://my-bucket/some-dir/2018-10-01/*.avro
> gs://my-bucket/some-dir/2018-11-01/*.avro
> gs://my-bucket/some-dir/2018-12-01/*.avro
> gs://my-bucket/some-dir/2019-01-01/*.avro
> gs://my-bucket/some-dir/2019-02-01/*.avro
> gs://my-bucket/some-dir/2019-03-01/*.avro
> gs://my-bucket/some-dir/2019-04-01/*.avro
> gs://my-bucket/some-dir/2019-05-01/*.avro
> gs://my-bucket/some-dir/2019-06-01/*.avro
> gs://my-bucket/some-dir/2019-07-01/*.avro
> gs://my-bucket/some-dir/2019-08-01/*.avro
> gs://my-bucket/some-dir/2019-09-01/*.avro
> gs://my-bucket/some-dir/2019-10-01/*.avro
> gs://my-bucket/some-dir/2019-11-01/*.avro
> gs://my-bucket/some-dir/2019-12-01/*.avro

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 87 remaining solutions by signing in and submitting your own entry
#88 Filmon Abrha / @Wedi-Nachew - Score: 415 - 11/14/24 @ 15:37
yyp/f6<BS><BS><BS>f6lll<C-A>yypf2<CR>f2<C-A>yypf3<C-A>yypf5f4<C-A>yypf6f6f5<C-A>yypf6f6<C-A>yypf7<C-A>u<C-A>u<C-A>uh<C-A><C-A><C-A><C-X><C-X><C-X>i<BS><BS><Right><BS>08<Esc>yypwwwwf8<C-A><C-A>R09-0<Esc>a1<Esc>yypf9r0<Esc>i<BS>1<Esc>yypf1f1<C-A><C-X><C-X><Esc>yyp<C-A><C-X>wwwh<C-A><C-X><C-X><Esc><Esc>ggyG12Gp/2<BS>s/<BS><BS><BS>:a<BS>s/2016/2017/g<BS><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left>%<BS>13-24<BS><BS><BS>%24<Right><Right><Right><Right><Right><Right><Right><Right><Right><Right><Right><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><BS>,<CR><Esc><Down><Esc>:nohls<CR>12GyG24gG24GpGp/<BS>:25,<BS><BS><BS><BS>uu13GyGGpGp:25,27<BS><BS>37<BS>6s/2017/2018<CR>:<Up><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Right><BS><BS>36<BS>7<Right><Right><Right><Right><BS>s<Left><BS><BS>42<BS>3<BS>9<Right><Right><Right><Right><Right><Right><BS>8<Right><Right><Right><Right><Right><BS>9<CR><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down>?<BS><Up><Up><Down>:<Up><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><BS>8<CR><Up><Down>:<Up><Down><Up><Left><Left><Left><Left><Left><BS>7<CR><Down>:w<CR>ZZ

0 comments


Created by: @pacuna

88 active golfers, 360 entries

Leaderboard (lowest score wins):
27
#1 - Danilo J. S. Bellini 🥊🇧🇷 / @danilobellini

11/16/2024 at 10:05AM

27
#2 - Peppa Pig / @PeppaPigSg

11/21/2024 at 01:25AM

27
#3 - winter-loo / @winter-loo

05/25/2025 at 07:24PM

27
#4 - dnzc / @dnzc

08/29/2025 at 01:56AM

31
#5 - mutilator630 / @mutilator630

01/15/2026 at 08:31AM

32
#6 - John Braxler / @braxler

11/13/2024 at 02:51PM

32
#7 - Wim Stockman / @wimstockman

11/15/2024 at 10:52AM

32
#8 - cr100 / @rekicc

11/15/2024 at 12:24PM

32
#9 - ShookerAndBeta / @Shooker2012

11/21/2024 at 09:33AM

32
#10 - dejam2007 / @dejam2007

12/29/2024 at 12:04PM

32
#11 - Tomek / @Madghostek

03/19/2025 at 05:07PM

32
#12 - Leon Kacowicz / @leonkacowicz

05/06/2025 at 11:58AM

32
#13 - petr-kx / @petr-kx

07/26/2025 at 03:43PM

32
#14 - Benjamin / @b2vqbw

07/29/2025 at 07:02AM

32
#15 - constap / @constap

09/21/2025 at 05:44AM

32
#16 - shooker2012 / @shooker2012

10/08/2025 at 07:04AM

32
#17 - Gavin / @GavinKoeng

11/01/2025 at 11:11PM

32
#18 - Aly Thobani / @alythobani

11/23/2025 at 09:58PM

33
#19 - Alexander Cai / @adzcai

02/01/2025 at 09:07PM

34
#20 - abgalphbetz / @abgalphabetz

12/22/2024 at 04:26PM

35
#21 - JustAnAverageGuy / @JustAnAverageGuy

11/18/2024 at 12:20PM

35
#22 - Rhea Astons / @rhea-machine

12/16/2024 at 09:40AM

35
#23 - Paroxyss / @Paroxyss

02/05/2025 at 08:52AM

36
#24 - MartnRamtin / @MartnRamtin

12/09/2024 at 10:57PM

37
#25 - mysper / @mysper

11/14/2024 at 09:52AM

37
#26 - Rob Pilling / @bobrippling

11/22/2024 at 10:59AM

37
#27 - Gibson Starkweather / @boaf

05/27/2025 at 05:45PM

38
#28 - æž—æ–° / @Lingshinx

11/14/2024 at 07:30AM

38
#29 - Michael Cuffaro / @maiku1008

11/15/2024 at 07:03PM

38
#30 - iantalks / @iantalks

11/28/2024 at 03:52PM