在vim中,我喜欢使用相对行号来查看需要复制、删除或其他操作的行数。
但是,当使用相对行号时,当前行为0,这意味着,如果我想要复制直到第3行,我必须键入4yy,这有点不直观并且使我变慢了。
有没有办法显示相对行号从1开始而不是0?
但是,当使用相对行号时,当前行为0,这意味着,如果我想要复制直到第3行,我必须键入4yy,这有点不直观并且使我变慢了。
有没有办法显示相对行号从1开始而不是0?
我建议,与系统协同工作。不要使用“repeat”,而是可以修改为按照意图使用运动方式:
y3j 而非 4yy
你会注意到复制命令需要一个运动方式。 yy 只是当你不想使用运动方式时的快捷键(按定义,它复制整行)。
从某种意义上说,使用 4yy 有点别扭('4次'复制这整行;你依赖于隐含的运动方式被有效地乘以重复次数,但这并不自然,因为运动方式是隐含的)。
好的一面是,你甚至可以结合使用:4d3j(连续删除 3 行向下4次,不是很有用的例子)
vim
并修改其源代码。不行,因为行号是相对的。当前行下面的第一行被正确地编号为1,上面的第一行也是如此。
当你使用像yy
、dd
等命令时,你必须做这些小算术。
y4k
),而不必先将光标移动四行,然后使用4yy
向下复制。 - joelostblom