很多时候,我发现我会想要在引号之间拉动内容并将它们粘贴到另一组引号中。例如,以这段代码为例。
var foo = 'bar',
baz = 'buz';
我通常会在'bar'
内部做一个yi'
来拉动单词栏。
如何用我的拉杆替换buz?我知道一种选择是做一个di'"0P
,我只是想知道是否有我忽略的更简单的解决方案。
将光标放在单词buz
上的任意位置,vi'p
直观地选择引号内的内容,然后放置最近拉动的内容。
我经常需要这个,我写了一个插件来简化并允许最大速度:ReplaceWithRegister。
该插件提供了一个二合一的gr
命令,该命令将{motion}/文本对象,整行或当前选择所覆盖的文本替换为寄存器的内容;旧文本被删除到黑洞寄存器中,即它消失了。它透明地处理许多极端情况,并允许通过标准.
命令快速重复。如果您不喜欢它,它的页面有指向替代方案的链接。
另请注意,在可视模式下替换内容后,被替换的内容现在将在您的注册中。 命令:reg将显示它。 在您的示例中,命令p
会将buz
粘贴到编辑器中。