众所周知,在大多数Linux发行版中,剪贴板是由程序本身管理的,这意味着当托管程序停止时,剪贴板中的内容将会消失。
然而,像 xclip 这样的剪贴板管理器似乎是例外。即使我们从这些程序中获得了返回值,我们仍然可以粘贴剪贴板中的内容。所以,我想知道是否可以使 xclip 成为实时备份剪贴板中内容的守护程序服务。这样,即使原始程序在每个进程中都停止,我们仍然可以从剪贴板粘贴内容。
如果是这样,我相信会省去很多精力,尤其是你不需要重新打开你关闭的libreoffice来重新复制以便粘贴一些句子。
答案1
如果您打算编写自己的剪贴板管理器,您可以看看这个 python例子它使用 gtk 库来完成大部分工作。您可能想更改SELECTION_CLIPBOARD
为SELECTION_PRIMARY
.该类已记录这里。
选择可以是富文本或图像,但如果您只想处理文本,则可以更简单。这个短多了例子只需在每次更改时打印选择,并且可能足以让您保留文本选择的历史记录。
包裹岩声称可以做你想做的事,保留选择的历史记录,但我无法测试它,因为我没有使用合适的桌面环境。
如果你使用gnome,你可以尝试粘贴,它应该作为一个包提供。它是一个剪贴板管理器,但似乎使用 dbus 而不是 X11 选择机制,因此它可能不适用于纯 X11 客户端,而仅适用于 gnome 应用程序。
自动切割机如果您用 C 语言编程,也可以作为一个起点。每当 PRIMARY 选择发生更改时,它都会将其复制到 cutbuffer 0,以便在使用 VNC 时提供与某些其他系统的兼容性。
答案2
看一下xclipboard
。不幸的是,它只存储CLIPBOARD
选择,而大多数现代 X 应用程序只使用PRIMARY
选择......
但来源是可用的,你可以根据需要更改它。