答案1
从某种意义上说,是的,有两个不同的剪贴板(尽管 X11 称它们为“选择”,并且只有其中一个选项称为“剪贴板”)。
很可能,您正在考虑“主要选择”(这是一个可以理解的错误,因为它的功能更像 Linux 发行版上的功能,而不是 Windows 或 Mac 下的功能 - 不过,根据记录,通常可以使用相同的键盘快捷键进行交互Windows 和 Mac 下的主要选择与 Linux 下相同)。
剪贴板通常通过用于复制和粘贴(分别)的Ctrl+{ c, } 键绑定进行控制。v另一方面,初选有多种互动方式。使用鼠标选择任何内容都会自动将其放入主选择中。然后,通常可以单击鼠标中键来粘贴。还可以使用键盘:{ Ctrl, Shift}+Insert可用于从/向主选择复制和粘贴(再次分别)。
奇怪的是,似乎并不是所有应用程序都支持 X 的剪贴板。而且,虽然看起来很不幸,但没有办法统一主选择和剪贴板。但是,有两种解决方案适合您。
使用主要选择
它几乎普遍可用,并且(至少,我个人认为)更加灵活。使用替代的剪贴板管理器
有很多第三方剪贴板管理器,它们提供比内置的功能更强大的功能。
举例来说,您可以使用菜单或者剪辑。然而,还有更多的选择,多得我数不过来。
写完这个答案一段时间后,我偶然发现了一个名为的剪贴板管理器clipit
。除了其他非常方便的功能之外,clipit
还提供了同步主选择和 X 剪贴板的功能。这在功能上相当于统一两个选择,并且非常好;我想这正是您正在寻找的。
答案2
我在 FreeBSD 中使用 Firefox + uxterm/xterm 时遇到了这个问题。我不确定这是否与不使用桌面管理器有关(我正在使用 MWM)。
我发现这个问题的最佳解决方案是使用:
autocutsel -fork -selection CLIPBOARD
autocutsel -fork -selection PRIMARY
作为你的一部分.xinitrc
然后,每当您使用 CLIPBOARD 或 PRIMARY 时,所有内容都会同步,并且您可以从 Firefox 复制 (CONTROL+C) 到 xterm(中键单击或 SHIFT+INSERT)。
另一个有用的工具是查看正在发生的事情xcb
。
和autocutsel
都是xcb
经典的 X11 工具,通常在 Linux 发行版和 FreeBSD 中可用。
答案3
我不使用st
,但我有可能对普通受众有帮助的信息。我的 LXTerminal 默认设置使用Ctrl+ Shift+{ c, v} 分别进行复制和粘贴。使用Shift很有用,因为需要Ctrl+c来发送信号SIGINT
。