如何在没有 X11 的 Linux 服务器上获得剪贴板支持

Bre*_*ent 8 vim tmux virtualbox vagrant

我有一个在 VirtualBox 和 Vagrant 下运行的虚拟 Linux 开发环境。我使用 tmux 和 vim 来设置多个打开的 vim 实例。我希望能够在这些实例之间复制和粘贴。

我了解到剪贴板功能仅随 X11 提供。如何在仅限命令行的 Linux 环境中启用多个 vim 实例之间的剪贴板功能?

mjt*_*ner 4

由于您已经在使用它,我建议您tmux完全支持复制和粘贴 - 请参阅手册页以获取更多信息。

您可以使用tmux list-keys命令查看当前的键绑定 - 在该列表中查找begin-selectioncopy-selectionpaste-buffer命令。

默认情况下,绑定是:

  • [- 启动复制/粘贴模式
  • h, j, k, l-vi导航键移动光标
  • v- 开始文本选择(选择后,点击Enter复制到缓冲区以便稍后粘贴)
  • ]- 粘贴复制的文本

将其与基于诅咒的应用程序一起使用时存在一些限制vim(因为tmux无法管理滚动) - 您无法滚动回以前的输出。

作为替代方案(如果您仅在vim会话之间进行复制),您可以使用临时文件作为剪贴板(如果您不使用 X11,则需要这样做)。有关更多信息,请参阅@muru 建议的这篇文章。