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 59384eb3652ee111a0000001

From argument to object

This task typifies those programmers endure while coding. This C-family pseudocode needs a function argument to be repurposed as an object call. Simply search and replace? Repeat a pattern of edits?

Start file
organize(cupboard, 3, 2);
prioritize(bureau, 8, 7);
realize(bannister, 4, 4);
moralize(railing, 3,9);
End file
cupboard.organize(3, 2);
bureau.prioritize(8, 7);
bannister.realize(4, 4);
railing.moralize(3,9);

View Diff

1,4c1,4
< organize(cupboard, 3, 2);
< prioritize(bureau, 8, 7);
< realize(bannister, 4, 4);
< moralize(railing, 3,9);
---
> cupboard.organize(3, 2);
> bureau.prioritize(8, 7);
> bannister.realize(4, 4);
> railing.moralize(3,9);

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 369 remaining solutions by signing in and submitting your own entry
#370 William Dankspeare / @will_dankspeare - Score: 81 - 06/29/17 @ 17:31
c2w<Esc>ux2w<Esc>uwwdwxx0P<Esc>uuuu0d2w<Esc>uww10x0Pvhc.<Esc><Esc>jww8x0Pvhc.<Esc>jww11x0Pvhc.<Esc>j9x0Pvhc.<Esc>:wq<CR>

0 comments


Created by: @toddagibson

370 active golfers, 1132 entries

Leaderboard (lowest score wins):
18
#181 - Jon Krause / @jkrause314

11/26/2017 at 04:15PM

18
#182 - BareTull / @BareTull3

11/28/2017 at 02:45AM

18
#183 - John C Shea / @MHSSachems

01/28/2018 at 11:15PM

18
#184 - Lisa Ugray / @lisa_ugray

03/14/2018 at 11:34AM

18
#185 - Pablo / @suspekt007

04/09/2018 at 02:40AM

18
#186 - Dylan Nelson / @dlnnlsn

06/08/2018 at 04:58AM

18
#187 - Norbert / @mullno

06/24/2018 at 02:36PM

18
#188 - Henry Woolenthorpe / @woolenthorpe

07/04/2018 at 10:10PM

18
#189 - 赤佐田奈葉 / @akasatanaha_

07/11/2018 at 09:12AM

18
#190 - steph-query / @StephQuery

07/13/2018 at 08:33PM

18
#191 - Francesco Sacchi / @depsir

07/17/2018 at 05:09PM

18
#192 - Frank Korf / @OMGFrank

08/28/2018 at 07:39PM

18
#193 - Not real / @Notreal70353016

09/21/2018 at 10:00PM

18
#194 - Rasmus Bergström / @JRasmusBm

09/27/2018 at 03:34PM

18
#195 - Roger Bongers / @RogerBongers

10/06/2018 at 04:04PM

18
#196 - Dave Brda / @BrdaDave

10/31/2018 at 02:57AM

18
#197 - Brendan B Amdocs / @AmdocsB

11/06/2018 at 03:45PM

18
#198 - name / @name65894813

11/15/2018 at 07:02PM

18
#199 - abgalphabet / @abgalphabet

01/22/2019 at 12:31PM

18
#200 - TimMcGuire / @mcguire

02/04/2019 at 07:08PM

18
#201 - 默罕默德 / @Rt6RjEAJ987Woes

02/19/2019 at 09:34AM

18
#202 - james_bunch / @james_bunch

04/20/2019 at 08:00AM

18
#203 - Tom Cammann / @tea_sea

05/03/2019 at 08:48AM

18
#204 - Sherab Giovannini / @shaddycls

05/03/2019 at 08:46PM

18
#205 - Nick Yeow / @nickyeow

05/24/2019 at 02:59PM

18
#206 - Neil Struthers / @struthersneil

07/18/2019 at 04:30PM

18
#207 - Chris Shorrock / @EbinFlow

08/17/2019 at 06:29PM

18
#208 - kevinski / @kevinsk30746831

08/22/2019 at 01:42PM

18
#209 - vimRunnerUp3000 / @VUp3000

09/02/2019 at 06:36PM

18
#210 - Lory / @Lory46845742

11/08/2019 at 02:00PM