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 by @matheusr_dev:

Unlock 10 remaining solutions by signing in and submitting your own entry
Created by: @alvesmarcell

840 active golfers, 2845 entries

Solutions by @matheusr_dev:
14
#292 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:57AM

15
#>494 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:55AM

16
#>538 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:46AM

17
#>613 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:45AM

18
#>651 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:41AM

19
#>681 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:35AM

21
#>708 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:31AM

22
#>718 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:30AM

23
#>733 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:28AM

24
#>747 - Matheus Rezende / @matheusr_dev

10/18/2018 at 10:22AM