Gnome+NX 剪贴板行为;选择时自动复制?

mik*_*ers 5 clipboard gnome

远程连接时,我遇到了 Gnome(/Linux/Debian+Ubuntu) 剪贴板问题;它的默认行为似乎是在选择文本时自动将文本添加到剪贴板缓冲区。这通常不是问题,直到我需要远程登录这些系统之一(使用 GUI)并尝试使用共享剪贴板。如果我在本地计算机上“复制”文本(旨在替换远程计算机上的某些文本),则一旦我选择远程计算机上要替换的文本,该复制缓冲区就会被覆盖。

有办法解决这个问题吗?这有点让我发疯。

谢谢!

更新:这确实是 NX 服务器问题;X11 支持行为不同的多个剪贴板(“选择”:剪贴板、主要、次要;请参阅这篇优秀文章),看来我的问题与 NX 服务器如何将其转换到主机有关。

mik*_*ers 5

X11 的剪贴板系统是使用三种类型的“选择”来实现的:“主要”、“次要”和“剪贴板”。‘Clipboard’用于“复制/粘贴”菜单和ctrl+c/v,primary用于鼠标选择和鼠标中键粘贴;“次要”是一个很少使用的区域,作为“主要”的备份。

freedesktop.org剪贴板规范对 PRIMARY 选择进行了以下解释:

1.It's inconsistent with Mac/Windows;
2.It's confusingly. Selecting anything overwrites the clipboard;
Run Code Online (Sandbox Code Playgroud)

因此,由于主选择会覆盖剪贴板选择,因此您永远无法使用从主机中选择的文本块有效地覆盖远程计算机上的文本块(一旦进行了第二个选择(进入主选择),它会覆盖第一个选择(在剪贴板中))。

这个问题的答案可能是“否”,除非链接的规范已过时(它们来自 2001 年),或者有一些我找不到的对此行为的覆盖。

  • 至少在 CentOS 上(我相信我使用过的大多数其他图形 Linux),设置 Primary 不会覆盖剪贴板。换句话说,我可以选择一些文本,复制,选择一些其他文本(覆盖主要文本),然后粘贴剪贴板中的第一个文本。你谈论的问题(我也有)是NX似乎正在获取本地剪贴板的值,将其放入Primary中,并使剪贴板以某种方式也指向它。当您在远程计算机上选择某些内容时,“主要”将设置为新值,并且“剪贴板”将被清除。 (2认同)