我在使用 Ubuntu 设置 PuTTY 时遇到了麻烦。
我正在尝试让行字符在 aptitude 中工作以及获得 256 色支持,但只能获得其中一个。
- Ubuntu 配置
- 使用 64 位 Ubuntu
- 终端类型 xterm-256color 或 putty-256color 给出 256 色,但行字符不正确。
- 终端类型 linux 在 aptitude 中给出了正确的线条,但只有 16 种颜色。
- PuTTY 配置
- 使用带有 Unicode 字符的字体。(DejaVu Sans Mono)
- 接收数据假定为 UTF-8。
- 设置为使用 Unicode 线条绘制代码点。
输出自locale
:
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
答案1
问题在于,UTF-8 模式下的 PuTTY 会忽略1 VT100 “备用字符集”命令,而 ncurses 会尝试使用“图形”字符集来绘制 GUI。(方框绘制字符的位置与klmqx
通常的位置相同。)
export NCURSES_NO_UTF8_ACS=1
对于您的环境,它应该通过告诉 ncurses 在选择 UTF-8 语言环境时始终使用 Unicode 框绘制字符来解决问题。
1有一个PuTTY愿望清单条目为此,以及解释为什么当前的行为更好。
更新(2018-05-12):看来这个组合将要在 PuTTY 0.71 中得到支持。
更新:PuTTY 现在在设置窗口->翻译中有了“即使在 UTF-8 模式下也启用 VT100 线条绘制”选项。