当存在垂直分割时,Tmux 输出会变慢:为什么?

当存在垂直分割时,Tmux 输出会变慢:为什么?

当我使用 Tmux 并将窗口拆分为多个窗格时,我注意到在垂直拆分(两个窗格并排)时,程序打印文本行的速度比水平拆分(窗格堆叠)时要慢得多。有谁知道为什么?

答案1

这个答案(特别是最后一点)。基本上,tmux与模拟高度减小的终端相比,模拟宽度减小的终端必须执行更多的光标移动和其他额外工作。对于全角终端,tmux 可以让其运行的终端仿真器处理换行,而它必须自己进行换行以模拟并排窗格的缩小宽度终端。每次光标移动都涉及输出几个字节(可能是 7 或 8 字节或更多)的转义序列,以告诉 tmux 的控制终端移动光标,并且当文本行快速输出到屏幕并滚动时,这总计可以达到明显的差异。

答案2

稍微有帮助的一件事是使用:set lazyredrawand :set ttyfast

这些设置允许 vim 仅更新屏幕上必要的字符。

相关内容