12

在我的新 Ubuntu 系统上,我启动一个屏幕会话并在 vim 中编辑一个文件或在 less 中查看它。退出后,屏幕不会自行重绘,而是向上滚动以在我刚刚在 vim 或更少查看的所有内容下显示命令行。

如何更改此设置,以便退出 vim 将我返回到我调用 vim 之前的屏幕?

4

2 回答 2

27

默认情况下,屏幕的altscreen(替代屏幕)功能处于关闭状态。

将此添加到您的.screenrc

altscreen on

见:http ://www.gnu.org/software/screen/manual/screen.html#Redisplay

于 2010-02-02T00:33:19.903 回答
3

这是由于您的 termcap for screen 不完整造成的。(这似乎是一个非常普遍的问题。) Vim 不知道恢复屏幕的顺序,所以它只是让它保持原样。

您可以通过将 vim 的 term 选项(或启动 vim 之前的 TERM 环境变量)设置为“屏幕兼容”的终端来解决此问题,例如 xterm。例如:

TERM=xterm vim

或(在 vim 中):

:set term=xterm

您可以将vim 中的t_ti和选项设置为正确的代码。t_te有关更多详细信息,请参见:help xterm-screensvim。

于 2010-02-02T00:27:30.430 回答