当前位置: 首页>>技术教程>>正文


中间点击粘贴如何工作?

,

问题描述

我不了解中间点击粘贴。

有时,我高亮显示文本,在想要进入的窗口中单击鼠标中键,即可完成我想要的操作。有时并非如此。

例如,当我在Firefox中突出显示文本时,然后在终端vim中单击鼠标中键,则什么都没有发生。

到底是怎么回事?

谢谢!

最佳方案

由单独的X /DE剪贴板引起;使它们与ClipIt保持同步

  • 作为ImaginaryRobots’ answer explains,有两个不同的剪贴板:X剪贴板和桌面环境/窗口管理器剪贴板(Gnome /Unity,KDE等);根据所使用的选择方法(即仅突出显示或明确的Ctrl-C /right-click副本等),两个剪贴板可能不会同步。

    • 因此,在GUI程序和终端之间进行复制/粘贴时经常会出现问题。

  • 如果遇到此问题,最简单的解决方案是使用一种工具,使这两个单独的剪贴板保持同步。我推荐ClipIt(sudo apt-get install clipit)

    • 启动clipit(为方便起见添加到Startup Applications),然后在“ Preferences”下选中“ Use Primary”和“ Synchronize Clipboards”选项:

次佳方案

实际上有2种不同的复制和粘贴-基础X11图形系统提供了一个,而窗口管理器(Gnome,KDE等)提供了一个。

突出显示文本而无需单击就足以将其复制到X11 buffer-space,并且middle-clicking将从其中粘贴。如果您使用control-X或control-C,它也会使用window-manager的缓冲区空间(因为您必须突出显示它才能使用那些键),但是只有control-V会从那里得到文本-单击中间不会。

为了使事情更加混乱,窗口管理器复制并粘贴也适用于非文本项,因此,即使突出显示在两个缓冲区中都包含了一些文本,window-manager缓冲区中也可能会有一些文件或复杂数据,而这两者将不同步。

有些应用程序足够聪明,可以理解和使用两者,而其他应用程序则不够。终端窗口在复制和复制时通常是愚蠢的。糊。每个应用程序通常都有一些设置,可以告诉他们如何修复副本和内容。粘贴烂摊子,但要正确设置它们都是很多工作。我认为,Ubuntu默认会获取其中的大多数。

从历史上看,这种情况更加糟糕,导致freedesktop定义了周围的标准:

http://standards.freedesktop.org/clipboards-spec/clipboards-latest.txt

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9151.html,未经允许,请勿转载。