2011-07-19 49 views
6

我的Emacs安装具有全彩色支持(list-colors-display显示此内容)。但是,Emacs * shell *似乎只能处理基本的8 ANSI颜色转义。我有我的.emacs中的以下处理:在Emacs * shell中获取256种颜色*

(autoload 'ansi-color-for-comint-mode-on "ansi-color" nil t) 
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on) 

有没有办法增加* shell *支持的颜色数量?

+0

Emacs是否已经在终端或作为X/OS X/Win32框架运行? – ocodo

回答

2

如果我读正确设置ANSI标志/设置只允许8种颜色,摆脱他们,并替换此设置tty-color-mode 256

来源:

http://www.gnu.org/software/emacs/elisp/html_node/Font-and-Color-Parameters.html

http://www.gnu.org/software/libtool/manual/emacs/Colors.html

+1

嗯,不,我没有能够得到它与这个变量玩弄。我认为这与emacs本身支持的颜色有关,而不是\ * shell \ *支持的颜色。如果你能这样做,你能否详细说明一下? –

3

要在终端中获得256色,您必须使用适当的终端仿真程序。

检查,如果你的终端询问服务这样的:

 
    $ infocmp -1 $TERM | grep colors 
colors#8, 

例如的xterm允许这样做,但你必须设置TERM = xterm方式256color

+1

请在投票中加入评论以改善答案。 – gavenkoa