复制粘贴行为不一致。有解决办法吗?

复制粘贴行为不一致。有解决办法吗?

我遇到过可以形容为“剪贴板”行为“不可预测”的情况。但就其本身而言,它实际上是“可预测””因为它不是一个Xbug,就是这样的。

这很大程度上是由于不同的 X 应用程序以不同的方式使用不同的 X 功能……

但知道事实并非如此也没什么帮助“实际上”一个错误。因为它感觉像一只虫子!

以下是我发现的内容列表(如下)/已测试。

是否有某种方法(守护进程?)可以解决所有这些问题? 我更喜欢一些不放在面板上的东西。

X/Ubuntu 剪贴板具有非常棒的潜力,因为它具有 2/3 级别的能力,但由于实现不一致而有点烦人......

我一直在试图理解为什么复制/粘贴并不总是按照我预期的那样进行......当你阅读信息文档时你能学到的东西真是令人惊奇:)......但问题可以更快地击中目标。

主要问题似乎发生在源应用程序关闭时,而您尝试访问来自该应用程序的“剪贴板”数据。

X GUI 应用程序有两种主要的复制/粘贴方法(模式)。

Mode NAME    Text Copy method         Text Paste  method
----------   ---------------------    -------------------
PRIMARY      currently selected       mouse middle-click
CLIPBOARD    Control+C selection      Control+V

我已经测试了选择模式适用于一些不同的 X 应用程序:gvimgeditfirefoxgnome-terminal

注意: * 所有粘贴操作均已完成gedit * gedit 源来自另一个 (root) 实例)
* 我尝试了几个“管理器”parcelitepastie,但我看不出比较它们有什么意义,因为它们都没有解决问题。也就是说,通常预期复制/粘贴键盘操作“不一致”

+ --------------------------------------------- + ------------------------------------------- + ------------
| Modes used in the source Application          | Availability upon CLOSING the Applicaton    | Application
+ --------------------------------------------- + ------------------------------------------- + ------------
| --- No manager --- 
| PRIMARY only, no CLIPBOARD Copy/Cut used:     | PRIMARY Empty!   (previous)CLIPBOARD ok     | (all tested)
|                                               | --                                          |      
| CLIPBOARD as last action (implicit PRIMARY):  | PRIMARY Empty!             CLIPBOARD Empty! | gvim
|                                               | PRIMARY Empty!             CLIPBOARD ok     | gedit, gnome-terminal
|                                               | PRIMARY Empty!             CLIPBOARD Empty! | firefox
|                                               | --                                          |
| PRIMARY as last action, preceded by CLIPBOARD | PRIMARY ok                 CLIPBOARD Empty! | gvim
|                                               | PRIMARY Empty!             CLIPBOARD ok     | gedit, gnome-terminal
|                                               | PRIMARY Empty!             CLIPBOARD Empty! | firefox
| --- Manager: parcelite --- 
| PRIMARY only, no CLIPBOARD Copy/Cut used:     | PRIMARY ok       (previous)CLIPBOARD ok     | (all tested)
|                                               | --                                          |      
| CLIPBOARD as last action (implicit PRIMARY):  | PRIMARY ok                 CLIPBOARD Empty! | gvim, firefox
|                                               | PRIMARY ok                 CLIPBOARD ok     | gedit, gnome-terminal
|                                               | --                                          |      
| PRIMARY as last action, preceded by CLIPBOARD | PRIMARY ok                 CLIPBOARD Empty! | gvim, firefox
|                                               | PRIMARY ok                 CLIPBOARD ok     | gedit, gnome-terminal
| 
+ --------------------------------------------- + ------------------------------------------- + ------------

答案1

这是 X 的一个已知限制,请参考官方 wiki 的这篇文章:

https://wiki.ubuntu.com/ClipboardPersistence

主要问题仍然是应用程序之间的不一致,因为它们可能使用不同的剪贴板处理方法。

在 wiki 文章中列出了可以工作和不工作的应用程序(唯一建议的解决方法是安装包裹体作为剪贴板管理器)

答案2

尝试使用 repos 中的 autocutsel - 它可以同步两者。您必须将其添加到 .bashrc 或启动 aps,或者手动启动它(它是命令行,而不是 gui),但它对我来说一直很有效。您必须记住在粘贴之前将焦点切换到字段(例如,如果是浏览器)或文档(gedit、kate、gvim...),否则它似乎不起作用。

答案3

我只是在看格氏膏这是我使用的。即使您关闭了复制的应用程序,它似乎也可以处理复制和粘贴操作!

甚至还有一个适用于 Gnome-shell 的出色扩展 :-)

相关内容