MacVim:如何在窗口之间共享命名寄存器?

3
我希望在MacVim的不同窗口间(就像单个实例内的缓冲区一样)共享命名寄存器缓冲区。换句话说,假设我标记了一个位置m,然后去别处:
我从当前点到'm'复制一些文本到a寄存器:"a'm"
然后我去到另一个窗口(不是同一个窗口中的拆分视图...),想要粘贴:"ap"
有什么好方法可以在所有实例之间共享命名寄存器?
3个回答

2
MacVim的不同顶层窗口都是具有自己状态的Vim实例,这使得这很困难。据我所知,您有两个选项:
  1. 使用“+”或“*”寄存器,它们都使用Mac系统剪贴板。(顺便说一句:在X11中它们不同,但所有其他GUI都将它们视为相同)。 MacVim将标准的Cmd + X / C / V绑定到使用“+”。不幸的是,这只给您提供了一个共享缓冲区。
  2. 保留一个包含您寄存器的文本文件,如通过共享文本文件使vim yankings全局中max所解释的那样。

1
顶级窗口使用不同的vim实例,因此它们不共享相同的寄存器,但是不同的标签页共享相同的寄存器。为了快速而简单地解决问题,请在同一个窗口的不同标签页中打开文件以共享其命名寄存器。

1
你应该看一下YankRing插件。它“维护了以前的复制、更改和删除历史记录。”我认为它会满足你的需求。

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