tmux 中的 vim 无法渲染正确的字符

tmux 中的 vim 无法渲染正确的字符

我正在尝试在本地 tmux 会话中运行 vim。 Vim 本身(通过终端,以及通过带有 gvim 的 gui)正在按预期工作。我正在运行 Debian stable、tmux 2.8、vim 8.1.549、urxvt 9.22。

问题似乎是屏幕并不总是在需要的地方刷新。当 vim 缓冲区大于屏幕尺寸时尤其明显。


场景一:直接打开vim。

就在航站楼

在 tmux 中——中心文本缺失,或位置错误(最后一行) 在此输入图像描述


场景2:在有很多文件的目录中打开NERDTree

就在航站楼 在此输入图像描述

在 tmux 中——主缓冲区中的工件。文件缓冲区显示错误的行,就好像它们都被移动了一样。请注意它顶部缺少“按?寻求帮助”的内容。当用光标浏览这些线条时,这些线条会刷新以进行纠正(我在第二个屏幕截图中向上和向下按了几次) 在此输入图像描述 在此输入图像描述


场景 3:将内容写入主缓冲区。我按“a”并输入几秒钟,然后按“b”并输入几秒钟,依此类推。

就在航站楼 在此输入图像描述

在 tmux 中——旧的信息行被拖着走 在此输入图像描述


我还观察到,vim 的内容从 tmux 之外泄漏到我的终端回滚中(即,当我退出 tmux 时我可以看到它)。在没有 tmux 的情况下使用 vim 时不会发生类似的情况。


我的 .Xresources 文件:

URxvt.font: xft:Monospace-10
URxvt.boldFont: xft:Monospace-10
URxvt.letterSpace: -1
URxvt.scrollBar: false
!urxvt*termname:         rxvt-unicode-256color

!! ================== seoul256 ====================================

! seoul256 (dark) theme adapted for URxvt
URxvt*background: #3a3a3a 
URxvt*foreground: #d0d0d0 
URxvt*color0: #4e4e4e
URxvt*color1: #d68787 
URxvt*color2: #5f865f
URxvt*color3: #d8af5f
URxvt*color4: #85add4
URxvt*color5: #d7afaf
URxvt*color6: #87afaf
URxvt*color7: #d0d0d0
URxvt*color8: #626262
URxvt*color9: #d75f87
URxvt*color10: #87af87
URxvt*color11: #ffd787 
URxvt*color12: #add4fb
URxvt*color13: #ffafaf
URxvt*color14: #87d7d7
URxvt*color15: #e4e4e4
URxvt*cursorColor: #d0d0d0
URxvt*cursorColor2: #3a3a3a
URxvt*colorBD: #e4e4e4

我的 tmux 配置

set -g default-terminal screen-256color

相关内容