我使用 GNU screen 来运行 pine 邮件阅读器。我使用外部 aspell 对我发送的电子邮件进行拼写检查。问题是,当 aspell 完成时,pine 恢复了终端的旧内容,但颜色全错了。字体变成白色而不是黑色,在灰色背景下看起来很糟糕。输入一段时间后,pine 会重新绘制屏幕的部分内容,看起来不错,但最初看起来很难阅读。
当 pine 直接运行而不是从屏幕内运行时,该问题不存在。我不知道如何开始故障排除。有任何想法吗?
Pine version: Alpine 2.00 (LRH 1167 2008-08-23)
GNU screen version: Screen version 4.00.03 (FAU) 23-Oct-06
2011 年 12 月 11 日更新: 在某些情况下,当使用 Ctrl+O(不涉及拼写)恢复合成时,也会出现此问题。
以下内容没有帮助:
- 松树中的 Ctrl+L 刷新屏幕,
- 添加“altscreen on”
~/.screenrc
- 添加“bce on”或“bce off”
~/.screenrc
(我尝试了两者,因为我不确定默认值是什么) - 启动屏幕为
TERM=xterm-256color screen
答案1
我想我已经解决了。 phunehehe 尝试更改终端类型是正确的。但是,“TERM=xterm-256color screen”不起作用,因为 TERM 变量仅告诉 screen 运行的是哪种终端 screen。它不会告诉 screen 模拟该特定终端。所以,解决方案是包括
term "screen-256color"
在 ~/.screenrc 配置文件中。这似乎解决了问题,但是......
2011 年 12 月 12 日更新:实际上,执行上述操作解决了颜色问题,但产生了另一个问题:删除键在松树中不再起作用。原来,运行 screen 的计算机缺少“screen-256color”terminfo 文件,由于找不到它,因此恢复到基本的 vt100 终端。在尝试了几种术语设置后,我发现“xterm-color”既没有删除键也没有颜色问题。我不明白它为什么或如何工作。