[VimGolf] 去掉代码中的多余内容
题目链接
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 分。多种模式的灵活组合。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。