Emacs doesn't want to support 256 colors in terminal window

Grzegorz Junka cv at gjunka.com
Fri Feb 27 11:31:43 PST 2009


Paul B. Mahol wrote:

> On 2/27/09, Grzegorz Junka <cv at gjunka.com> wrote:
>   
>> Hi,
>> I hope someone will be able to help with this. I've already checked all
>> resources I could google but still can't get it to work. Basically my
>> terminal can show more than 16 colors but emacs doesn't want to use
>> these colors.
>>
>> I run FreeBSD (7.1-RELEASE) as a virtual machine and use it without any
>> X interface, only through ssh from a Windows machine (the host). I have
>> set up both putty and ssh in cygwin to report term type as
>> 'xterm-256color' (putty in the configuration window and xterm using -tn
>> command line parameter).
>>
>> That part works fine because I can run scripts available on the internet
>> (256colors2.pl, colortest), which surely show more than 8 colors in my
>> terminal window. The problem is when I run emacs and type: M-x
>> list-colors-display. Emacs shows only boring 8 colors (not even 16).
>>
>> A bit about my configuration. Emacs was compiled without X11 support
>> (from ports emacs-nox11-22.3). I also don't have xterm installed. I
>> tried to set env variable TERM=xterm-256color but it didn't help. There
>> is a special note about using terms in emacs in
>> "/usr/local/share/emacs/22.3/lisp/term/README" I unpacked xterm.el.gz
>> from that folder and tried to supply it as term/xterm-256color.el or
>> term/xterm.el to emacs, but that also didn't work.
>>
>> It is interesting to note, that when I type: tput color I get different
>> values depending on the user and terminal:
>>
>> user grzesiu, putty, TERM=xterm-256color, tput colors: 114
>> the same user, putty and TERM value, but tput colors: 123, another trial
>> and output is 80
>> user root, putty, TERM=xterm, tput colors: 184
>> the same user and putty, but TERM=xterm-256color, tput colors: 115
>> user grzesiu, ssh from cygwin, TERM=xterm-256color, tput colors: 139
>>
>> I don't understand these values because when I run these scripts above I
>> don't see any difference in colors shown (subjectively). In neither of
>> these configurations emacs show more than 8 colors. Any ideas or
>> suggestions greatly appreciated.
>>     
>
> This looks like emacs problem. Are you sure that emacs was compiled
> with 256 color support? (at least I know that elinks can be configured
> to support 88 and/or 256 and/or real colors)
> Also is there some kind of termcap option in emacs to be changed/read?
> I dont use emacs but in vim:
> :set t_Co=256
> will show 256 colors if terminal supports it.
> Actually if t_Co termcap setting is N, vim will not try to show more
> than N colors even if terminal supports X(>N) colors.
>
>   
FreeBSD port doesn't allow to configure Emacs in any way, neither from 
the original port, nor from the nox11 version. I don't think there is 
any special option for emacs to show 256 colors. Wherever I could find 
some information about this, people were saying that Emacs version >=22 
supports 256 colors without any additional configuration. As I 
mentioned, Emacs not only doesn't show 256 colors, but not even 16, 
which I bet should be supported without any problems. No matter what I 
get only 8 colors, even if terminal is able to shows much much more.

Another strange thing is that as far as I can see xterm-256color in 
FreeBSD termcap is simply an alias to xterm. Nevertheless, with these 
scripts mentioned above I can view more than 16 colors even if TERM is 
defined only as xterm.

Do you think I should report it as a defect in emacs ports?
Greg




More information about the freebsd-questions mailing list