Tmux 鼠标模式上不允许用鼠标选择文本

Dmi*_*din 77 tmux configuration mouse

我正在使用tmux 2.1并尝试使用鼠标模式

set -g mouse on
Run Code Online (Sandbox Code Playgroud)

它工作正常,我可以tmux通过单击适当的窗口来切换窗口拆分。但这样做的缺点是我无法用鼠标选择文本。这是它的样子:

在此处输入图片说明

如您所见,当我按住鼠标按钮时,选择会变成红色,当我松开按钮时会消失。在没有启用鼠标模式的情况下,“用鼠标选择”完全正常。

是否有一些解决方法可以打开鼠标模式并能够选择文本?

Tho*_*key 126

如果您Shift在使用鼠标执行操作时按下,则会覆盖鼠标协议并让您选择/粘贴。例如,它记录在xterm 手册中,大多数终端仿真器都会复制该行为。

对于OS X注:在的iTerm,使用Option代替Shift。在 Terminal.app 中,使用Fn.

  • 注意:在 MacOS 的 iTerm 上使用 `option` 而不是 `shift` (12认同)
  • @BastianGruber 从 [this SO answer](/sf/answers/1389055531/) 的评论部分我发现在 Terminal.app 上你应该使用 FN 键 (10认同)
  • 如果您有多个 tmux 窗格,则此方法效果不佳。我可以选择文本,但选择与所有 tmux 窗格中的终端线重叠。 (6认同)
  • @EddyR。这就是 ctrl-b + z 派上用场的地方。 (3认同)
  • 所有这些“在 $foo 终端模拟器和 $bar 操作系统版本上,使用 $baz 键”确实阻碍了 vim 和 tmux 等工具的发展。为什么这是一个持续存在的问题? (3认同)

Jac*_*hal 12

Thomas Dickey 的答案可能是大多数人正在寻找的。

为了提供更多关于您正在观察的行为的背景信息,当 tmux的鼠标模式打开时,它会启用特定窗格中的文本选择。这是屏幕截图中突出显示的红色文本。当您有拆分窗格并只想复制其中的文本时,它会很有用。

当您释放鼠标按钮时,所选文本将复制到tmux的内部剪贴板。然后,您可以使用粘贴该文本Ctrl+B ]

不幸的是,它不会复制到系统的主剪贴板,因此您无法选择tmux然后粘贴到浏览器中。不过,您可以配置该行为。请参阅如何使用带有 tmux 的鼠标进行复制和粘贴的答案。