【问题标题】:How to avoid emacs (or vi) remaining on your screen after closing when using GNU screen?使用 GNU 屏幕关闭后如何避免 emacs(或 vi)留在屏幕上?
【发布时间】:2012-04-02 15:37:20
【问题描述】:
在常规 bash 会话中,如果我输入 vi 或 emacs -nw 然后退出或挂起它们,我会毫发无损地返回我的 shell(我之前输入的几个命令仍然可见)。外壳完好无损,就好像我从未启动过emacs 或vi。然而,当使用GNU Screen 时,退出后我仍然可以看到 vi/emacs 和我正在做的任何事情,这迫使我使用屏幕滚动或历史记录来回忆我在启动 emacs/vi 之前运行的最后一个命令。如何关闭这种混乱的行为?有可能吗?
【问题讨论】:
标签:
bash
unix
terminal
gnu-screen
【解决方案1】:
毫发无损的方面是因为 vi/emacs 正在使用终端的备用屏幕进行诅咒(允许他们将字符放置在终端屏幕上任意位置的库)。 screen(1) 程序已经在使用备用终端屏幕,并且默认情况下不会为在其中运行的程序创建自己的备用屏幕以通过curses访问。
但是,您可以在屏幕中启用它:
altscreen on
在您的 ~/.screenrc 文件中。
有关详细信息,请参阅屏幕手册页。