假设我有行存储在缓冲区k中。如何用缓冲区的内容替换某些行?
答案 0 :(得分:7)
去任何地方进行替换。执行缓冲区P(如上所述)。使用dd删除当前行。
所以“xPdd
答案 1 :(得分:5)
转到您想要更改的行,然后执行
V"kp
答案 2 :(得分:4)
正如其他人所说的那样,总的答案是使用dd“kP。我想补充说你可能想要使用:g,所以如果你想把所有与'foo'匹配的行替换为内容注册k,你可以这样做:
:g/foo/normal dd"kP
请注意,如果缓冲区的第一行与模式匹配,则使用p代替P将导致一些问题。
答案 3 :(得分:3)
我能当场思考的最佳方式是
“ayy(这会将线条复制/复制到”缓冲区
然后
dd(删除标准缓冲区的行)
然后
“aP在当前行之前插入缓冲区”a
答案 4 :(得分:1)
引用键“是你需要的。这使得你的yank / put寄存器具体。所以你在寄存器k中有一些东西,你想用它键入的当前行替换:
^c$<esc>"kp
答案 5 :(得分:0)
您可以使用ctrl-v并选择要复制的内容,然后按“y”以“猛拉”它。然后按ctrl-v或shift-v选择要替换的“某些行”,按“p”键将其粘贴。