如果我理解正确,这两个命令都会剪掉 10 行并允许您将它们粘贴到任何地方。
它们是否都与 (n-1)dd 和 dn+enter 相同,其中 n 是要剪切的行数?
下面复制了两个相关的帮助部分。
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.
10dd是从您当前位置删除 10 行的第二个。
d9什么也没做。d9j(或d9<CR>)从光标删除到光标结束的位置(即9j)在当前行下方九行。但是jor<CR>使它成为线性的,所以同样的东西被删除了。
这两个命令都删除了 10 行。所以ndd等价于d(n-1)j。
d9j可能比打开时更容易键入10dd,set relativenumber因为您所在的行与要删除的行之间的差异位于屏幕的左侧。
您可以使用d9k从光标行中删除 10 行无法使用dd. 或者您可以使用dfa删除最多和包括下一个。d{motion}比它更强大,dd因为它不仅限于逐行删除。
您使用哪一个取决于您,但某些组合更容易取决于您的光标所在的位置。