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 @mcguire:

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

865 active golfers, 2927 entries

Solutions by @mcguire:
13
#89 - TimMcGuire / @mcguire

12/23/2018 at 04:08PM

13
#>89 - TimMcGuire / @mcguire

12/23/2018 at 04:09PM

13
#>89 - TimMcGuire / @mcguire

12/23/2018 at 04:25PM

13
#>92 - TimMcGuire / @mcguire

01/02/2019 at 03:41PM

13
#>201 - TimMcGuire / @mcguire

10/29/2019 at 06:37PM

14
#>346 - TimMcGuire / @mcguire

12/23/2018 at 12:29PM

14
#>422 - TimMcGuire / @mcguire

10/29/2019 at 06:38PM

15
#>518 - TimMcGuire / @mcguire

12/23/2018 at 12:26PM

15
#>542 - TimMcGuire / @mcguire

10/29/2019 at 06:31PM

16
#>575 - TimMcGuire / @mcguire

12/23/2018 at 12:23PM

16
#>575 - TimMcGuire / @mcguire

12/23/2018 at 12:24PM

20
#>724 - TimMcGuire / @mcguire

12/23/2018 at 12:19PM

21
#>734 - TimMcGuire / @mcguire

12/23/2018 at 12:16PM

21
#>734 - TimMcGuire / @mcguire

01/02/2019 at 03:32PM

23
#>764 - TimMcGuire / @mcguire

12/23/2018 at 12:15PM

26
#>788 - TimMcGuire / @mcguire

12/23/2018 at 12:11PM