在vi编辑器中从当前光标位置删除给定的行号
如何从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中,我通常会使用视觉select模式,但是我没有在这个服务器上使用Vim。 在某些情况下,指定一个行号,而不是统计块内有多less行,也会更快。
你可以使用类似d63G
东西从当前行删除,直到63行。
从a到b删除使用
:a,bd
从目前到b的使用
:,bd
(代码中的a和b被您的数字replace)
与接受的答案相同,但键入的速度稍快:
d63gg
从当前行删除到第63行。
为什么要数线? 转到要删除的最后一行,并通过inputma
标记它,标记为“a”。 然后转到您要删除的顶行,inputd'a
删除以标记“a”。 巴姆!
要在Vi中删除一行代码块:
n
: 来自行号
m
:是行号
-
从当前行到给定的行号 –
:,md
-
从/到特定的行号
:n,md