题目链接

Applying same text modification in several lines

题目说明

去掉代码中多余的内容。

开始文件

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());

结束文件

_auction.StartSellingItem();
_application.StartBiddingIn(_auction);
_auction.HasReceivedJoinRequestFromSniper();
_auction.AnnounceClosed();
_application.ShowsSniperHasLostAuction();

最佳分数

13

我的分数

15

qqdt_f)x<CR>q4@qZZ

第一次尝试

用宏试试。

qqdt_f)x<CR>q4@qZZ

15 分,差 2 分。

第二次尝试

看能不能优化。没想到什么方法。

@walker_boh

qqdt_$X+q4@qZZ

14 分。又把 X 给忘了。

第三次尝试

试试从后往前操作。

qq$XBd0jq4@qZZ

14 分,一样的。继续看吧。

@jkrause314

I$XBd0+<Esc>5@.ZZ

13 分。不服不行啊。用 @. 的例子我也看过了几个,通常只有在插入模式开始时才会省步数。但这个场景有一个特点,前边的内容都会被删掉,所以就不需要用 u 来恢复现场了。

@Vildu3

<C-V>Gt_x:%s/)<CR>ZZ

13 分。没想到列模式加替换也能 13 分,而且十分简单。

最佳操作

@jkrause314

I$XBd0+<Esc>5@.ZZ

实用操作

@jkrause314

I$XBd0+<Esc>5@.ZZ

13 分。

对宏的灵活运用。

@Vildu3

<C-V>Gt_x:%s/)<CR>ZZ

13 分。多种模式的灵活组合。

文章目录