我注意到,在 Emacs 中LS_COLORS
运行 shell 时,某些颜色不起作用。M-x-ansi-term
例如;
di 00 94
应该在目录上打开浅蓝色粗体LS_COLORS
(请参阅代码列表这里),但ansi-term
在 Emacs 中不以颜色显示。事实上,只有该网站上列出的简单颜色似乎可以ansi-term
在 Emacs 中工作,而它们在我的常规 gnome 终端上工作得很好。
有没有一种方法可以让我们ansi-term
认识到所谓的额外的颜色?在哪里/如何查找ansi-term
Emacs 支持的颜色?
答案1
这个命令怎么样?
M-x ansi-color-for-comint-mode-on
答案2
ansi-term
支持 8 种 ANSI 颜色,使用TERM=eterm-color
。这为您提供了基本颜色,例如,如图所示为什么dialog在Debian上不支持emacs shell?(原文如此)。
那94
不是 8 种 ANSI 颜色之一。它(最初)来自 aixterm,但被广泛使用,因为它是在 20 世纪 90 年代末在 xterm 中实现的,如 ncurses 终端数据库条目中所示xterm-16color
。 dircolors,当然不使用终端数据库......
根据 Emacs wiki 上安西色彩,有一个xterm-colors.el
可以支持更多颜色的替代方案。
根据那页 (Atomontage/xterm-color),它可以支持xterm 256色。阅读脚本,我可以看到一些关于 xterm 的遗漏,但颜色应该可以。