在光标前粘贴 Vim

6

我的寄存器中有一段选中的文本,其中不包含新行。例如:

Happy-

我想把这段文本粘贴到一行的开头。比如说:

New-Year

结果应该是:

Happy-New-Year

由于New-Year在一行的开头,我可以将光标放在N上面:

[N]ew-Year

如果我在普通模式下按p键,将会得到以下结果:

NHappy-ew-Year

是否有和p功能类似的命令可以在光标前粘贴?

2个回答

17

通常情况下,大小写字母的差别是:小写字母 p 表示在之后粘贴,大写字母 P 表示在之前粘贴。


0

是的,在正常模式下,您可以使用[p在光标前粘贴所选内容。如果您的光标位于N

[N]ew-Year

并且您的默认寄存器中有Happy-,则[p将导致:

Happy-New-Year

这也适用于非默认寄存器。例如,如果Happy-在寄存器a中,则可以通过执行以下操作在光标前粘贴:"a[p


2
Vim的[p帮助文档中说:“类似于‘P’,但会根据当前行调整缩进”。其实有一个更简单的答案:直接使用P。更不用说,如果你使用了行内复制(从Y),那么使用[p将会改变前导空格/制表符。 - DJMcMayhem

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接