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 5bbb82f969a25f0009541350

Applying same text modification in several lines

Remove identical text at the beginning of several lines and the closing parenthesis.

Start file
Assert.ThrowsAsync<Exception>(() => _auction.StartSellingItem());
Assert.ThrowsAsync<Exception>(() => _application.StartBiddingIn(_auction));
Assert.ThrowsAsync<Exception>(() => _auction.HasReceivedJoinRequestFromSniper());
Assert.ThrowsAsync<Exception>(() => _auction.AnnounceClosed());
Assert.ThrowsAsync<Exception>(() => _application.ShowsSniperHasLostAuction());
End file
_auction.StartSellingItem();
_application.StartBiddingIn(_auction);
_auction.HasReceivedJoinRequestFromSniper();
_auction.AnnounceClosed();
_application.ShowsSniperHasLostAuction();

View Diff

1,5c1,5
< Assert.ThrowsAsync<Exception>(() => _auction.StartSellingItem());
< Assert.ThrowsAsync<Exception>(() => _application.StartBiddingIn(_auction));
< Assert.ThrowsAsync<Exception>(() => _auction.HasReceivedJoinRequestFromSniper());
< Assert.ThrowsAsync<Exception>(() => _auction.AnnounceClosed());
< Assert.ThrowsAsync<Exception>(() => _application.ShowsSniperHasLostAuction());
\ No newline at end of file
---
> _auction.StartSellingItem();
> _application.StartBiddingIn(_auction);
> _auction.HasReceivedJoinRequestFromSniper();
> _auction.AnnounceClosed();
> _application.ShowsSniperHasLostAuction();
\ No newline at end of file

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 568 remaining solutions by signing in and submitting your own entry
#569 /home/ck / @_CarlKenny - Score: 70 - 11/12/18 @ 01:34
dF_<Esc>jkkdf_<Esc>j.j.j.j.<C-V>kkkkI_<Esc>jjkkdf_f)<Esc>lxjwwwblxjwwbllxjhxjwllx<Esc>;:;x<BS><BS>x<CR>

0 comments


Created by: @alvesmarcell

569 active golfers, 1997 entries

Leaderboard (lowest score wins):
17
#451 - Mr_Djez / @DjezMr

08/05/2019 at 08:05PM

17
#452 - Bruno Machado / @brunosmmachado

10/20/2019 at 12:21PM

18
#453 - Brent Woo / @BrentPWoo

10/10/2018 at 04:42PM

18
#454 - Stefan Stutz / @0VIIXI

10/10/2018 at 06:56PM

18
#455 - m472 / @m4729

10/26/2018 at 11:46PM

18
#456 - Juliette but spooky / @namebrandloser

10/27/2018 at 12:10AM

18
#457 - ary31415 / @ary31415

10/29/2018 at 07:13AM

18
#458 - Omar Zeidan / @OZeidan97

11/13/2018 at 11:38AM

18
#459 - Chris Vasicek / @aixChris

11/17/2018 at 03:42AM

18
#460 - Álvaro Melgosa / @AlvaroMlgs

11/17/2018 at 02:28PM

18
#461 - Shunichi Kanade / @shunkana

11/18/2018 at 01:45AM

18
#462 - Pablo / @suspekt007

11/25/2018 at 08:02PM

18
#463 - Jacob Xu / @jacobhxu

12/05/2018 at 06:38AM

18
#464 - thvdburgt / @thvdburgt

12/06/2018 at 12:54PM

18
#465 - Zeming Lin / @ebetica

01/17/2019 at 07:31PM

18
#466 - churaki / @churaki

01/24/2019 at 01:45PM

18
#467 - Robinson Bernand / @RobynBekouz

02/15/2019 at 02:18PM

18
#468 - Stefan Käser / @stivi_kivi

03/22/2019 at 12:14PM

18
#469 - Raul / @Raul50174499

03/23/2019 at 04:17AM

18
#470 - Atanas Karamanov / @AtanasKaramanov

03/29/2019 at 11:33AM

18
#471 - Fernando Motta / @Fmmotta01

06/07/2019 at 01:08PM

18
#472 - Chris G / @AboutThatThing

06/10/2019 at 09:37AM

18
#473 - MartinRAndersen / @MyrionSC2

06/27/2019 at 08:24AM

18
#474 - Hampus HAUFFMAN / @HampusHauffman

07/23/2019 at 09:25AM

18
#475 - Adrien / @beudbeud

08/12/2019 at 11:26AM

19
#476 - Sam Kim / @samkimhis

10/11/2018 at 06:18AM

19
#477 - Julius / @cShortForC

10/24/2018 at 07:59PM

19
#478 - vimgolfer1234 / @vimgolfer12342

10/24/2018 at 10:29PM

19
#479 - Max / @bionic_pi

11/01/2018 at 01:50AM

19
#480 - Di Peng / @DCodier

11/06/2018 at 03:45AM