前情提要: Windows Terminal 下的非窗口 Emacs 可能存在的幽灵字符现象
大概半年前,ewan 在 bug-gnu-emacs 上发了个让 Windows 终端支持真彩色的 patch:bug#79297: patch: full color in windows terminal,当时我就 Windows Terminal 下全角半角符号造成的伪影问题进行了一些讨论,当时提出的一种解法是根据 GetConsoleMode 的返回值判断是否位于 WT 环境下。但之后就没有后话了。
昨天突然收到关于伪影问题的讨论后续邮件和 patch 测试告知,这才发现这个 patch 终于被合并了: Support 24-bit TrueColor on MS-Windows console · emacs-mirror/emacs@2bca4ac,伪影问题相关代码也合并了: Fix display of ambiguous-width characters on MS-Windows terminal · emacs-mirror/emacs@1eb7218。
要想测试或使用这个功能,编译最新的 master 然后在终端中 emacs -nw 打开即可,可以试试加载主题,或者 list-colors-display。
