区别:d [count]和d [count]

时间:2011-02-04 08:51:38

标签: vim

作为新手vim用户,我使用d[count]<Enter>删除了行 它让我感到奇怪,因为总有 count + 1 行被删除 如果我想删除2行,则输入d1,3行占用d2,...

我终于花时间试图了解原因,看来我应该使用:d<count>

但这确实是一个问题,为什么:d1<Enter>&lt;&gt; d1<Enter>

2 个答案:

答案 0 :(得分:11)

正常模式下的

d<count>没有做任何事情,因为计数后面没有动作。因此,大概您已经点击d<count><Enter>,在这种情况下,与d相关联的动作为<count><Enter>,向下移动<count>行。由于<Enter>是一个逐行运动,d也将是行方向,从当前一行向下删除所有行,包括<count>行。

实际想要的命令是<count>dd

答案 1 :(得分:4)

d{motion}删除{motion}移动的文字。当您键入3<ENTER>时,光标会在当前位置移动3行,因此d3<ENTER>会删除该区域。

:d[count]只会删除[count]行。

不同之处在于{motion}count不同。

要解决此问题,您可以使用visual模式并选择要删除的内容,然后只需按d