11

很多时候我发现我会想要在引号之间拉出内容并将它们粘贴到另一组引号中。例如,以这段代码为例。

var foo = 'bar',
    baz = 'buz';

我通常会做一个yi'inside of来拉出bar'bar'这个词。

如何用我的 yank替换buz ?我知道一个选择是做 a di'"0P,我只是想知道是否有一个我忽略的更简单的解决方案。

4

3 回答 3

27

将光标放在单词上的任意位置buzvi'p以直观地选择引号内,然后放置最新的 yank 的内容。

于 2012-11-06T03:03:05.660 回答
2

我经常需要这个,我写了一个插件来简化并允许最大速度:ReplaceWithRegister

这个插件提供了一个二合一的gr命令,用寄存器的内容替换被 {motion} / 文本对象、整行或当前选择覆盖的文本;旧文本被删除到黑洞寄存器中,即它消失了。它透明地处理许多极端情况,并允许通过标准.命令快速重复。如果您不喜欢它,它的页面有指向替代品的链接。

于 2012-11-06T11:32:20.507 回答
0

另请注意,在您以可视模式替换内容后,被替换的内容现在将在您注册中。命令 :reg 将显示它。在您的示例中,命令p将粘贴buz到编辑器中。

于 2016-01-19T07:20:10.210 回答