如何在Vim中从系统缓冲区进行行内粘贴?

6

当从系统缓冲区粘贴到类似以下行中时

foo( someVal , <cursor is here>, someVal3); 

如果我使用"*p",我会得到什么结果?
foo( someVal, , someVal3);
<pasted text>

如果我使用“*P”,会得到以下结果:

<pasted text>
foo( someVal, , someVal3);

但我希望

foo( someVal, <pasted text>, someVal3 );

我该如何获得想要的结果?

编辑

如果像@amardeep怀疑的那样,缓冲区中有一个换行符,有没有办法告诉vim忽略它?

3个回答

5
在插入模式下,您可以输入<C-r>*,然后使用<BS>删除行末的换行符。

2

在该命令中使用大写字母 P,而不是小写字母 p。


然后粘贴的文本在该行上方。更新问题并附上示例。 - µBio
当我尝试时,它运行良好。您的缓冲区中的文本可能包含换行符。 - Amardeep AC9MF
换行符可以,至少能保证代码在语法上正确:) - µBio

0

"*p 或者 "+p 对我来说都可以。你确定你实际上输入的就是这个吗?


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