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

322 active golfers, 991 entries

Leaderboard (lowest score wins):
18
#151 - Igor Czerwinski / @igoratron

09/14/2017 at 10:11PM

18
#152 - Sean Moogan / @Moogarillo

09/22/2017 at 05:16PM

18
#153 - herbage / @herbage2

09/30/2017 at 07:57AM

18
#154 - Elton Kamami / @pixel_grid

10/08/2017 at 07:43PM

18
#155 - Koo Zhengqun / @zhengqunkoo

10/10/2017 at 02:09AM

18
#156 - Armaan Shah / @armaani96

10/26/2017 at 02:15AM

18
#157 - BouboulouVimGolf / @BouboulouVG

10/31/2017 at 05:54PM

18
#158 - Mike Harris / @MikeMJHarris

11/11/2017 at 09:50AM

18
#159 - Bradley M. Small / @BradleySmall

11/17/2017 at 07:56PM

18
#160 - Philipp Aeschbach / @ihbmifqerg

11/20/2017 at 04:01PM

18
#161 - Jon Krause / @jkrause314

11/26/2017 at 04:15PM

18
#162 - BareTull / @BareTull3

11/28/2017 at 02:45AM

18
#163 - John C Shea / @MHSSachems

01/28/2018 at 11:15PM

18
#164 - Lisa Ugray / @lisa_ugray

03/14/2018 at 11:34AM

18
#165 - Pablo / @suspekt007

04/09/2018 at 02:40AM

18
#166 - Dylan Nelson / @dlnnlsn

06/08/2018 at 04:58AM

18
#167 - Norbert / @mullno

06/24/2018 at 02:36PM

18
#168 - Henry Woolenthorpe / @woolenthorpe

07/04/2018 at 10:10PM

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

07/11/2018 at 09:12AM

18
#170 - steph-query / @StephQuery

07/13/2018 at 08:33PM

18
#171 - Francesco Sacchi / @depsir

07/17/2018 at 05:09PM

18
#172 - Frank Korf / @OMGFrank

08/28/2018 at 07:39PM

18
#173 - Not real / @Notreal70353016

09/21/2018 at 10:00PM

18
#174 - Rasmus Bergström / @JRasmusBm

09/27/2018 at 03:34PM

18
#175 - Roger Bongers / @RogerBongers

10/06/2018 at 04:04PM

18
#176 - Dave Brda / @BrdaDave

10/31/2018 at 02:57AM

18
#177 - Brendan B Amdocs / @AmdocsB

11/06/2018 at 03:45PM

18
#178 - name / @name65894813

11/15/2018 at 07:02PM

19
#179 - Joseph Barratt / @josuf107

06/07/2017 at 07:39PM

19
#180 - AleksandarTrifunovic / @akstrfn

06/07/2017 at 08:26PM