在我的新 Ubuntu 系统上,我启动一个屏幕会话并在 vim 中编辑一个文件或在 less 中查看它。退出后,屏幕不会自行重绘,而是向上滚动以在我刚刚在 vim 或更少查看的所有内容下显示命令行。
如何更改此设置,以便退出 vim 将我返回到我调用 vim 之前的屏幕?
在我的新 Ubuntu 系统上,我启动一个屏幕会话并在 vim 中编辑一个文件或在 less 中查看它。退出后,屏幕不会自行重绘,而是向上滚动以在我刚刚在 vim 或更少查看的所有内容下显示命令行。
如何更改此设置,以便退出 vim 将我返回到我调用 vim 之前的屏幕?
默认情况下,屏幕的altscreen
(替代屏幕)功能处于关闭状态。
将此添加到您的.screenrc
:
altscreen on
见:http ://www.gnu.org/software/screen/manual/screen.html#Redisplay
这是由于您的 termcap for screen 不完整造成的。(这似乎是一个非常普遍的问题。) Vim 不知道恢复屏幕的顺序,所以它只是让它保持原样。
您可以通过将 vim 的 term 选项(或启动 vim 之前的 TERM 环境变量)设置为“屏幕兼容”的终端来解决此问题,例如 xterm。例如:
TERM=xterm vim
或(在 vim 中):
:set term=xterm
您可以将vim 中的t_ti
和选项设置为正确的代码。t_te
有关更多详细信息,请参见:help xterm-screens
vim。