vim中10dd和d9的切割线之间的差异?

use*_*637 2 vim

如果我理解正确,两个命令都会剪切10行并允许您将它们粘贴到任何位置.

它们是否与(n-1)dd和dn +相同,其中n是要切割的行数?

FDi*_*off 7

下面复制了两个相关的帮助部分.

                                                        d
["x]d{motion}           Delete text that {motion} moves over [into register
                        x].  See below for exceptions.

                                                        dd
["x]dd                  Delete [count] lines [into register x] linewise.
Run Code Online (Sandbox Code Playgroud)

10dd 是第二个从你当前位置删除10行的.

d9什么也没做.d9j(或d9<CR>)从光标删除光标到达的位置(即9j)是当前光标下方的九行.然而,j或者<CR>使它成行,所以删除相同的东西.

这两个命令都删除了10行.所以ndd相当于d(n-1)j.

d9j可能会更容易,而不是键入10dd如果你set relativenumber因为打开你就行了,你想删除对都在屏幕的左侧的线之间的差值.

您可以使用d9k从光标行中删除10行,这是您无法使用的dd.或者您可以使用dfa删除最多并包括下一个a.d{motion}dd它更强大,因为它不仅限于线性删除.

您使用哪一种取决于您,但根据光标的位置,某些组合更容易.