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 359 remaining solutions by signing in and submitting your own entry
#360 /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

360 active golfers, 1256 entries

Leaderboard (lowest score wins):
15
#211 - joe / @wyohjoe

01/23/2019 at 11:45AM

15
#212 - Michael Aquilina / @mikeaquilina4

01/27/2019 at 10:29PM

15
#213 - Matti Sairanen / @MattiSairanen

02/09/2019 at 08:39PM

15
#214 - Tim White / @antichrist65535

02/12/2019 at 01:44AM

16
#215 - Alon L / @0xa10

10/08/2018 at 06:31PM

16
#216 - Cj-bc_sd.sh🐟@mltermコンパイルチャレンジ / @Cj_bc_sd

10/18/2018 at 01:36PM

16
#217 - Paul Inc / @hiniol1982

10/18/2018 at 08:08PM

16
#218 - Peter Ruschhaupt / @PeterRuschhaupt

10/19/2018 at 07:44AM

16
#219 - Urbanovics Péter / @UrbanovicsP

10/19/2018 at 09:06AM

16
#220 - Aubrey Lavigne / @AubreySLavigne

10/20/2018 at 07:31AM

16
#221 - namongk / @namongk

10/25/2018 at 11:47AM

16
#222 - @pfitz@chaos.social / @Pfitz

10/27/2018 at 05:47PM

16
#223 - Hatsubaku / @hatsubaku

11/02/2018 at 03:12PM

16
#224 - Luis Rodriguez / @luisthecoder

11/11/2018 at 11:23PM

16
#225 - Andreas Nordahl / @andreasnordahl

11/12/2018 at 12:02PM

16
#226 - Hachemi / @HachemiHarizi

11/12/2018 at 10:50PM

16
#227 - steve N ӾlvЮ / @xlvio

11/13/2018 at 08:22PM

16
#228 - dyson dark / @U9gJt7mOEOjbRN7

11/17/2018 at 05:31PM

16
#229 - Levi Self / @LeviRSelf

11/18/2018 at 05:55AM

16
#230 - PJ Frazer / @pj_frazer

11/22/2018 at 12:45AM

16
#231 - Jess Lim / @Jessica01075434

12/02/2018 at 05:12PM

16
#232 - Mitch / @miffstarr

12/09/2018 at 07:24AM

16
#233 - Aurélien Blicq / @AurelienBlicq

12/09/2018 at 04:48PM

16
#234 - Adam Procio / @AdamProcio

12/10/2018 at 02:10AM

16
#235 - sstar / @sstar60015687

12/26/2018 at 09:26AM

16
#236 - AKYS / @G0G0BIKE

12/27/2018 at 02:11AM

16
#237 - Mat / @matpbo

01/09/2019 at 05:18PM

16
#238 - Мастер Гервант / @Dr_Dmatrix

01/10/2019 at 06:50PM

16
#239 - Kyle Safran / @kylesafran

01/18/2019 at 05:22PM

16
#240 - Deepstack / @deepstackux

01/29/2019 at 03:55PM