How do I change the color settings in emacs23 running in a terminal emulator?

Posted by Anonymous on Stack Overflow See other posts from Stack Overflow or by Anonymous
Published on 2010-06-12T01:03:49Z Indexed on 2010/06/12 1:22 UTC
Read the original article Hit count: 426

Filed under:
|
|

I use xterm and set its appearance in ~/.Xdefaults:

XTerm*background:       paleTurquoise
XTerm*foreground:       black

I also use emacs, but set its appearance differently in ~/.emacs:

(set-background-color "black")
(set-foreground-color "yellow")

I usually run emacs within the terminal emulator with emacs -nw, rather than creating a separate X window. For some reason, this doesn't work properly for emacs23; instead, emacs retains the pale turquoise background of my xterm window. Looking at what's new in emacs23, I noted that:

** When running in a new enough xterm (newer than version 242), Emacs asks xterm what the background color is and it sets up faces accordingly for a dark background if needed (the current default is to consider the background light).

So it's a feature, not a bug? Anyway, is there some way that I can I tell emacs23 to ignore the xterm background settings when running in console mode, and use the settings in ~/.emacs instead?

I'll also note that:

  • It works fine in emacs23 running in a separate X window (without the -nw option).
  • It worked fine in emacs22; and I'm not really sure whether I need to use emacs23...
  • Running M-x set-background-color within emacs23 -nw has no effect.
  • It's not just xterm: the same problem exists with $TERM=cygwin, for example.

© Stack Overflow or respective owner

Related posts about emacs

Related posts about emacs23