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

53 active golfers, 177 entries

Leaderboard (lowest score wins):
47
#31 - thedvd98 / @thedvd98

11/16/2024 at 06:14PM

47
#32 - OuterSoda / @OuterSoda

01/24/2025 at 08:31AM

48
#33 - k1mosabe / @k1mosabe

12/02/2024 at 07:15PM

48
#34 - Herschel / @herschel-ma

01/04/2025 at 06:34AM

51
#35 - editor3D / @editor3D

11/14/2024 at 11:33PM

56
#36 - Pablo Acuna / @pacuna

11/13/2024 at 02:12AM

57
#37 - Stoyan Dimov / @stoyandimov

11/20/2024 at 08:12AM

59
#38 - MerryElvira / @ElviraBTC

11/24/2024 at 01:25PM

66
#39 - Fi McAfee / @finsqm

11/20/2024 at 01:58PM

68
#40 - Ryo3110 / @r-3110

03/08/2025 at 01:45AM

73
#41 - Sebastian Caicedo / @jsebdev

04/19/2025 at 11:06PM

77
#42 - fpf3 / @jovial_cavalier

11/19/2024 at 09:19PM

77
#43 - ak@developer / @Ajay-056

04/20/2025 at 07:28AM

82
#44 - chujDK / @chujDK

02/21/2025 at 09:40AM

94
#45 - Zhenkai Weng / @tinkerrc

11/22/2024 at 01:47AM

97
#46 - countime / @countime

11/27/2024 at 12:39AM

113
#47 - SRINIVASU SALADI / @SRINIVASUS22587

03/12/2025 at 06:38AM

122
#48 - dp403aan / @dp403aan

02/02/2025 at 09:22PM

138
#49 - lovebigwei / @lovebigwei

12/19/2024 at 05:50AM

145
#50 - 0xf00ff00f / @0xf00ff00f

02/19/2025 at 12:03PM

146
#51 - Heitor Dantas / @heitordnts

12/17/2024 at 02:20AM

164
#52 - Joe Reddington / @joereddington

11/20/2024 at 05:11PM

415
#53 - Filmon Abrha / @Wedi-Nachew

11/14/2024 at 03:37PM