5

我最近一直在我的服务器上尝试使用 tmux 来替代 byobu(屏幕)。当我开始在 vim 上编辑一些代码时,我发现当我按住并上下滚动时它非常j滞后k

我认为这可能是因为我的连接有问题,但我尝试在没有 tmux 的情况下在 vim 上编辑相同的文件,我发现它的响应速度更快,几乎没有延迟。

那么,我能做些什么来让 tmux 上的 vim 不滞后?

4

2 回答 2

8

听起来您在 ssh 上使用 tmux。如果是这样,您可能想尝试一下mosh。它建立在 ssh 之上,但与 ssh 相比具有许多优势。其中之一是:

摆脱网络滞后。

SSH 在显示您自己的输入之前等待服务器的回复。这可能会导致糟糕的用户界面。Mosh 不同:它对输入、删除和行编辑提供即时响应。它可以自适应地执行此操作,甚至可以在 emacs 和 vim 等全屏程序中工作。在连接不良的情况下,突出的预测带有下划线,因此您不会被误导。

根据我的经验,它比通过 ssh 工作得更好。

于 2012-04-14T10:01:58.293 回答
5

我经常在远程机器上工作,我也有同样的 vim 滚动问题。当您在 tmux 中使用 vim 并且同时打开多个窗格时,tmux 不能只重绘运行 vim 的屏幕部分,而是必须重绘更大的部分(可能是整个屏幕)。这会增加 tmux 通过您的连接发送的转义字符的数量。

就我而言,启用 ssh 压缩大大减少了这种缓慢。您可以尝试一下:

ssh -C user@host

或放入Compression yes~/.ssh/config的使其永久化。

于 2015-12-10T15:53:10.267 回答