使用 screen 后,less 和 man 等命令不会清除屏幕

使用 screen 后,less 和 man 等命令不会清除屏幕

相反这个问题我想重新启用屏幕清除功能。它在Cygwin/mintty 或 Gnome Terminal (两者均为s)下的终端less中运行良好。xtermxterm

然而,当在screen会话中,屏幕清除功能不知何故被禁用。我尝试了几种方法,例如

screen -T xterm

或者把自动核弹在我的 语句中~/.screenrc。此外,在 screen 会话中

export TERM=xterm
tset

没有效果。所以,现在我没有主意了。任何帮助都值得感激。

答案1

您可能希望避免screen -T或重置 TERM 的默认值屏幕会话(它应该是screen或者至少是以 开头的东西screen)。

尝试将以下行放入您的.screenrc

altscreen on

要在每次会话中激活它,您可以执行Control+ a:altscreen on Return

我的手册页上写着:

开启|关闭 altscreen

如果设置为开启,虚拟终端将启用“备用屏幕”支持,就像 xterm 一样。初始设置为“关闭”。

顺便说一句,我已经解释过了“屏幕清除”的根本原因(实际上是交替/正常屏幕交换)在另一个答案中。您的 terminfo 条目可能screen缺失smcup/rmcup或者您的屏幕不支持交替屏幕。这两项功能似乎都不太可能altscreen关闭。

相关内容