我的问题

我的问题

tmux选择问题

我的问题

当我使用鼠标从 tmux 选择文本时,块选择会跨越相邻的窗格。

我尝试过什么

我的问题

如何配置tmux以允许在多窗格模式下选择鼠标?

答案1

这取决于 tmux 的版本。当 tmux 鼠标打开时,鼠标选择将不会跨越窗格,并将被复制到 tmux 的选择缓冲区中。当 tmux 鼠标关闭时(如描述中所示),鼠标选择将是本机 X(和跨窗格)。

我将以下内容添加到我的~/.tmux.conf.它将启用CTRL+b 中号(打开 tmux 鼠标)和CTRL+BM(关闭 tmux 鼠标)。

对于 tmux 1.x - 2.0

# Toggle mouse on
bind-key M \
  set-window-option -g mode-mouse on \;\
  set-option -g mouse-resize-pane on \;\
  set-option -g mouse-select-pane on \;\
  set-option -g mouse-select-window on \;\
  display-message 'Mouse: ON'

# Toggle mouse off
bind-key m \
  set-window-option -g mode-mouse off \;\
  set-option -g mouse-resize-pane off \;\
  set-option -g mouse-select-pane off \;\
  set-option -g mouse-select-window off \;\
  display-message 'Mouse: OFF'

对于 tmux 2.1+

# Toggle mouse on
bind-key M \
  set-option -g mouse on \;\
  display-message 'Mouse: ON'

# Toggle mouse off
bind-key m \
  set-option -g mouse off \;\
  display-message 'Mouse: OFF'

或者,对 tmux 2.1+ 使用单个绑定键切换

# Toggle mouse on/off
bind-key m \                  
set-option -gF mouse "#{?mouse,off,on}" \;\
display-message "#{?mouse,Mouse: ON,Mouse: OFF}"

当 tmux 鼠标打开并使用鼠标进行选择时,释放鼠标左键应将其复制到 tmux 选择缓冲区并CTRL+b]将粘贴它。

答案2

我不确定 2.7,我正在使用 tmux 3.1c。在 3.1c 中,您可以按prefix+z最大化(“缩放”)窗格(默认情况下)prefixCtrl+b然后,您可以进行复制,并再次prefix+z切换回来。

答案3

通常,在按下按钮进行复制时这是预期的行为 - 您将 tmux 转义到不关心垂直边界的底层终端。

否则它应该只突出显示您选择的内容。而且,一旦释放鼠标,选择通常就会消失。但它确实会将选择内容复制到其内部缓冲区,以便以后粘贴。

您可能还会发现相关问题的答案很有用:

如何使用 tmux 进行鼠标复制粘贴

答案4

@拉斐尔·施韦克特在评论中提到,只需设置set-option -g mouse即可修复它(而不是set -g mouse on),这对我有用,不需要其他任何东西。

相关内容