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 99 remaining solutions by signing in and submitting your own entry
#100 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

100 active golfers, 395 entries

Leaderboard (lowest score wins):
38
#31 - 林新 / @Lingshinx

11/14/2024 at 07:30AM

38
#32 - Michael Cuffaro / @maiku1008

11/15/2024 at 07:03PM

38
#33 - iantalks / @iantalks

11/28/2024 at 03:52PM

38
#34 - Magnus Wahlstrand / @magnuswahlstrand

01/11/2025 at 03:22PM

38
#35 - martinorav / @martinorav

01/22/2025 at 09:48PM

38
#36 - Aaron Hunt / @ach5910

10/16/2025 at 11:45PM

39
#37 - yaskur0 / @yaskur0

11/10/2025 at 08:54AM

39
#38 - ヨーマンウォーダ / @YeomenWarder

12/06/2025 at 03:18PM

40
#39 - UrbanNinja1010 / @UrbanNinja1010

04/07/2025 at 11:20AM

40
#40 - Bthxtly / @Bthxtly

06/24/2025 at 08:44AM

40
#41 - UdonSari / @udonsari

06/20/2026 at 05:28AM

41
#42 - Oleksandr Zymohliad / @ozymohliad

04/24/2025 at 10:25AM

41
#43 - Konrad Guzek / @kguzek

12/24/2025 at 09:53PM

42
#44 - Christopher Robson / @crobson-scottlogic

11/21/2024 at 02:07PM

42
#45 - hiro1234omochi / @hiro1234omochi

05/13/2025 at 12:50AM

43
#46 - _3tHeR_ / @3ther-joyboy

11/18/2024 at 04:14PM

43
#47 - Toby™ / @TobyFranksBTC

11/26/2024 at 01:59PM

44
#48 - Jean-Valery / @Jvaxx

03/22/2026 at 11:41AM

45
#49 - cqjxx / @cqjxx1

11/22/2024 at 08:17PM

45
#50 - thierryharte / @thierryharte

04/19/2025 at 09:33PM

46
#51 - Oleksii Sanin / @AlexSanin

11/18/2024 at 08:28PM

47
#52 - thedvd98 / @thedvd98

11/16/2024 at 06:14PM

47
#53 - OuterSoda / @OuterSoda

01/24/2025 at 08:31AM

47
#54 - dbil25 / @dbil25

10/23/2025 at 12:52AM

48
#55 - k1mosabe / @k1mosabe

12/02/2024 at 07:15PM

48
#56 - Herschel / @herschel-ma

01/04/2025 at 06:34AM

48
#57 - phaym / @phaym

10/13/2025 at 07:27PM

49
#58 - canabadyweb / @canabadyweb

08/11/2025 at 02:03PM

51
#59 - editor3D / @editor3D

11/14/2024 at 11:33PM

56
#60 - Pablo Acuna / @pacuna

11/13/2024 at 02:12AM