如果创建新的tmux窗格或调整tmux窗格的大小,它会立即如下所示:
然后修复它的唯一方法是在vim中滚动,然后返回到此:
是什么原因引起的?
#1 楼
您可能会尝试在.vimrc中添加以下内容。if &term =~ '256color'
" disable Background Color Erase (BCE)
set t_ut=
endif
t_ut
选项(默认= y)描述了vim如何处理背景色而不是尝试使用当前的背景色。此代码段清除了该选项。如果没有,您可以尝试
set ttyfast
这是一个处理vim重绘屏幕的选项。
评论
设置t_ut选项有效!
–aharris88
2015年2月4日在6:04
这对我不起作用。我已经设置了ttyfast,并尝试清除t_ut无效。我的设置与OP相同,除了我在配置为支持真彩色的Tmux中使用termguicolors。 Vim在iTerm内出色地绘制,但是当我在Tmux内运行时,开始显示与上述相同的屏幕怪异感。让我知道是否应该提出一个新问题;我以为我会在这里伸出援手,因为我遇到了基本上相同的问题。
– djmoch
16 Jun 6'在10:17
#2 楼
我相信这与ttyfast
有关,因此屏幕未完全重绘。尝试将其设置为打开:'ttyfast' 'tf' boolean (default off, on when 'term' is xterm, hpterm,
sun-cmd, screen, rxvt, dtterm or
iris-ansi; also on when running Vim in
a DOS console)
global
{not in Vi}
Indicates a fast terminal connection. More characters will be sent to
the screen for redrawing, instead of using insert/delete line
commands. Improves smoothness of redrawing when there are multiple
windows and the terminal does not support a scrolling region.
Also enables the extra writing of characters at the end of each screen
line for lines that wrap. This helps when using copy/paste with the
mouse in an xterm and other terminals.
评论
这也发生在没有tmux的标准gnome终端中。请参阅以下响应以获取有关如何解决此问题的一些启发:stackoverflow.com/a/37863269/5153834