鼠标单击仅适用于 iterm2/tmux/mosh

Wes*_*and 19 mouse vim tmux iterm2 macos

我正在尝试设置 iTerm2 + mosh + tmux 来完成我的远程工作。我可以连接所有东西,但由于某种原因,鼠标响应很奇怪。如果我拆分我的 tmux 窗口,因此我有两个窗格并单击以在它们之间切换,当我第一次这样做时,一切都已找到。第二次及以后,它根本不起作用。我也无法滚动或执行与鼠标相关的任何其他操作。这只会在我点击后发生。如果我所做的只是在两个窗口中滚动,没问题。

如果我使用 SSH 而不是 mosh,问题就不会出现,但这次尝试的重点是全职切换到 mosh。如果我不使用 tmux 而只有一个 vim 窗口,这个问题也不会发生。我可以整天在那里点击。

有谁知道什么设置可能是错误的,甚至从哪里开始?它显然与 tmux 有关,但我一直无法找到可能导致问题的设置。

配置文件

bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D

set -g mode-mouse on
set -g mouse-resize-pane on
set -g mouse-select-pane on
set -g mouse-select-window on
Run Code Online (Sandbox Code Playgroud)

小智 1

Mosh 有很多值得深入研究的地方,而且它还声称比 OpenSSH 具有更高的安全性。在发现漏洞之前,一切都是安全的。

\n

“iTerm2 与 tmux 集成,让您可以享受本机用户界面以及 tmux 持久性的所有好处。”

\n

https://iterm2.com/documentation-tmux-integration.html

\n

局限性

\n

“tmux 集成存在一些与 tmux 设计相关的限制。

\n
    \n
  • 带有 tmux 窗口的选项卡不能包含非 tmux 分割窗格。
  • \n
  • 带有分割窗格的选项卡可能有“空白”区域。这是因为 tmux\n希望每个 tmux 窗口具有相同的大小,但我们的分割窗格\n分隔符的大小并不完全是一个单元格一个单元格。”
  • \n
\n
\n

MOSH https://mosh.org/

\n

“Mosh 是一个命令行程序,就像 ssh 一样。您可以在 xterm、gnome-terminal、urxvt、Terminal.app、iTerm、emacs、screen 或tmux中使用它。但是 mosh 是从头开始设计的,仅支持一种字符集:UTF-8。它修复了其他终端和 SSH 中的 Unicode 错误。”

\n

问: 为什么我的终端的回滚缓冲区不完整?

\n
    \n
  • Mosh仅同步终端的可见状态。我们正在跟踪这个问题;请参阅此问题以及从那里链接的其他问题。目前,解决方法是在远程端使用 screen 或 tmux。
  • \n
\n

问: Mosh 的安全性与 SSH 相比如何?

\n

...这个小问题的答案留下了很大的空间进行激烈的辩论,并且可能是另一个答案来解释为什么你会得到“时髦”的回应。

\n

“~相比之下,Mosh 在不同的层应用其安全性(验证每个数据报),~”

\n

“但是,在典型用法中,Mosh 依赖 SSH在会话开始时交换密钥,因此 Mosh 将继承SSH\xe2\x80\x94 的弱点(?!),至少在它们影响简短的 SSH 会话的范围内。用于设置长时间运行的 Mosh 会话。”

\n

嗯,有人会想,如果 SSH 这么弱,不如 Mosh 的做事方式,那为什么 Mosh 会首先使用 SSH呢?

\n

个人意见:我会避开 mosh。

\n