如何将当前光标行中的文本块删除到vi中的给定行号?
例如:
49 <j:set var="changeSet" value="${build.changeSet}" /> <----- delete from here (cursor position)
50 <j:if test="${changeSet!=null}">
51 <j:set var="hadChanges" value="false" />
52 <TABLE width="100%">
53 <TR><TD class="bg1" colspan="2"><B>CHANGES</B></TD></TR>
54 <j:forEach var="cs" items="${changeSet.logs}" varStatus="loop">
55 <j:set var="hadChanges" value="true" />
56 <j:set var="aUser" value="${cs.hudsonUser}"/>
57 <TR>
58 <TD colspan="2" class="bg2">${spc}Revision <B>${cs.revision}</B> by
59 <B><j:choose>
60 <j:when test="${aUser!=null}">${aUser.displayName}: </j:when>
61 <j:otherwise>${cs.user}: </j:otherwise>
62 </j:choose></B>
63 <B>(${cs.msgAnnotated})</B> <----- to here (line 63)
64 </TD>
65 </TR>
66 <j:forEach var="p" items="${cs.paths}">
67 <TR>
68 <TD width="10%">
在Vim中,我通常会使用视觉选择模式,但我没有在这台服务器上使用Vim。在某些情况下,指定行号而不是计算块内有多少行也会更快。
答案 0 :(得分:176)
您可以使用d63G
之类的内容从当前行中删除,直到第63行。
答案 1 :(得分:102)
要从 a 删除 b ,请使用
:a,bd
从当前到 b 使用
:,bd
(代码中的 a 和 b 将替换为您的号码)
答案 2 :(得分:11)
与接受的答案相同,但输入稍快一些:
d63gg
从当前行删除到第63行。
答案 3 :(得分:6)
删除Vi中的一行行:
n
:来自行号
m
:到行号
从当前行到给定的行号 -
:,md
从/到特定行号
:n,md
答案 4 :(得分:5)
为什么要数行?转到要删除的最后一行,并通过键入标记为“a”的“{1}}来标记它。然后转到要删除的第一行,并键入ma
进行删除以标记“a”。 BAM!