如果我在两个终端打开了vim,如何共享复制/粘贴缓冲区?

3

我想从一个终端模拟器中正在运行的vim实例中复制一行,然后将该行p粘贴到另一个终端模拟器中正在运行的另一个vim实例中。可以吗?需要使用特殊设置吗?

2个回答

5

系统剪贴板可以用于在多个终端之间共享数据,也可以在GUI应用程序中使用 shift + insert 进行操作。

首先,检查您的 Vim 安装是否启用了系统剪贴板。

vim --version | grep clipboard

如果你看到 +clipboard ,那么可以继续操作,否则请参考这个页面启用系统剪贴板。

一旦系统剪贴板被启用,你可以使用"+yy将行复制到+缓冲区(即系统剪贴板),并使用命令"+p在另一个有vim的终端进行粘贴。


1
一个也可以使用*寄存器代替+ - Enlico
你是对的,据我所知,在Windows上它们是同义词,而在Linux上则不同,“+”用于复制缓冲区,而“*”用于鼠标选择缓冲区。 - Tarek Dakhran
不仅限于Linux系统——任何带有XWindows接口的POSIX操作系统均适用。vim需要与X库链接(gvim始终可行,但终端上的vim则不一定)。 - phd

1
你可以选择: 按下Esc取消所有模式 将file.txt文件的所有内容粘贴到您的文件中,但如果您想从文件的第5行到第11行进行粘贴,则可以使用以下命令: :r! sed -n 5,11p file.txt

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