我的鼠标中键粘贴我突出显示的文本。
Shift+Ins也粘贴文本,但有时它粘贴的内容与通过单击鼠标中键粘贴的内容不同。
Shift使用鼠标中键粘贴和+粘贴有什么区别Ins?Shift+是否与+Ins访问相同的缓冲区?CtrlV
(我正在使用 Linux Mint 发行版,如果这有什么区别的话。)
答案1
SHIFT+INS
粘贴剪贴板的内容,如您所见这里。它是相同的CTRL+V
(不同之处CTRL+V
在于在图形终端中不起作用,您必须使用SHIFT+INS
鼠标中键单击技巧)。
当您选择一段文本时,它将被加载到与上述缓冲区完全不同的缓冲区(分别是另一个剪贴板),并且即使没有 Xorg,您也可以在 tty 中通过鼠标中键使用它!
Ryran 写道:highlight + middle click
不是 xorg 的事情。许多发行版也在虚拟控制台 (tty) 上开箱即用地支持它。 (例如,RedHat/Fedora 需要一个名为的包+服务gpm
来安装和运行。)也就是说,每个highlight + middle click
剪贴板都是其 tty 本地的(即,您无法在不同的 virt 控制台和/或 X 之间突出显示和粘贴)。
总结:在 Xorg 中你有两个不同的剪贴板。一种可以通过键盘操作,另一种可以通过鼠标操作。
答案2
你问的是二大多数(如果不是全部)Linux 系统中都存在不同类型的文本选择和数据交换。这变得很重要,因为在 Wayland(xorg 的完全替代品)的开发过程中,保留中键粘贴(称为“主要选择”)的问题成为了充分的讨论。事实证明,这是我见过的关于该主题的最佳背景,因为团队讨论了是否保留初选,其中的详细信息被保留这里。我在下面复制了相关的背景信息,以防万一这个堆栈交换帖子比任意网址寿命更长(我知道,我说过这不太可能!):
X 有一个通用的选择机制,允许应用程序拥有任意选择并通过它们交换数据。这既可用于免打扰,也可用于剪贴板。从历史上看,X 中多个剪贴板的预期语义存在一些混乱,但是http://www.freedesktop.org/wiki/Specifications/clipboards-extension-spec/关于 X 下的工作方式,已经成为或多或少的普遍共识:
- CLIPBOARD 选择对应于用户的显式复制粘贴操作,通常绑定到 Ctrl-C/Ctrl-V
- PRIMARY 选择始终对应于焦点应用程序中当前选择的文本(或其他数据),并且中键单击会将 PRIMARY 选择的内容粘贴到任何上下文(通常是文本条目或编辑器)
接下来是关于重新实现 Wayland 初步选择的讨论和方法的更多详细信息,该方法已经完成(并且效果很好!)。
tl;dr:您会发现中键单击将粘贴“主要选择”缓冲区的内容,该缓冲区由突出显示文本填充,并且最近在 Wayland 中重新实现为与剪贴板系统不同,就像在 xorg 中一样。
答案3
在我的 Linux 计算机上,Shift+粘贴与+Ins相同。鼠标选择和中键单击是不同的剪贴板。CtrlV
答案4
[@ops 这个“最低 50 声望”的事情真的很烦人,我被迫在与我应该在的地方不同的地方回答!]
@eoinoc
在 Xorg 下简单地突出显示文本后,没有键盘快捷键来粘贴该文本,对吗?
您可以使用“xsel”CLI 工具来获取当前所选文本的内容:)
例如,我在下面的脚本中使用它,我已将其附加到特定的键绑定,这使我可以“大声朗读”任何应用程序中的任何(选定的)文本......
#!/usr/bin/env bash
FIFO=/tmp/test.wav
LANG=$(cat /tmp/CURRENT_LANG || echo "fr-FR") # "en-US"
SPEED="1.6"
MAX_VOL="130"
mkfifo "$FIFO"
xsel | sed 's/^[[:print:]]//g' | sed 's/[[:space:]][[:space:]]*/ /g' | sed '/^\s*$/d' | pico2wave -w /tmp/test.wav -l $LANG & mplayer -softvol -softvol-max $MAX_VOL -af scaletempo -speed $SPEED "$FIFO" # -volume 100 -af volume=30:0
\rm "$FIFO"