Package: emacs;
Reported by: Oleksandr Manzyuk <manzyuk <at> gmail.com>
Date: Tue, 28 Feb 2012 11:50:02 UTC
Severity: normal
Merged with 10748
Found in version 24.0.94
Done: Chong Yidong <cyd <at> gnu.org>
Bug is archived. No further changes may be made.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Oleksandr Manzyuk <manzyuk <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 24.0.94; "emacsclient -t" doesn't honor terminal fore- and background colors Date: Tue, 28 Feb 2012 11:44:48 +0000
First of all, this bug is a duplicate of bug#10748, but I am submitting this bug report anyway because bug#10748 doesn't seem to receive any attention from the developers (probably because it doesn't conform to the Emacs bug reporting rules). Here is how to reproduce the bug: 1. emacs -Q 2. M-x server-start 3. Open a terminal with nonstandard foreground and/or background colors. For the sake of example, I assume that you've run "xterm -bg yellow". 4. Run "emacsclient -t" in the terminal. The observed behavior: the background becomes grey, whereas the expected behavior is that Emacs honors the terminal background color. I normally set the background to white in .Xresources. I've used yellow color only to make my point. This behavior is a regression in Emacs 24. I've chased it down to this commit: commit 27528399fd429b2f510e13f361affb1e2211ceb3 Author: Chong Yidong <cyd <at> gnu.org> Date: Tue Jan 31 16:38:58 2012 +0800 Fix menu-set-font interaction with Custom themes. In particular, prevent it from setting non-font-related attributes like the foreground and background color. This requires a bugfix to face-spec-reset-face to make "resetting" the default face work. * lisp/faces.el (face-spec-reset-face): Don't apply unspecified attribute values to the default face. * lisp/frame.el (set-frame-font): New arg ALL-FRAMES. * lisp/menu-bar.el (menu-set-font): Use set-frame-font. `face-spec-reset-face' has been changed to reset only non-default faces. While I understand the rationale of this change, it seems to break handling of fore- and background colors in terminal. If I evaluate the old definition of `face-spec-reset-face' in the *scratch* buffer, connecting to Emacs with "emacsclient -t" works the way I am used to. In GNU Emacs 24.0.94.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.20.1) of 2012-02-28 on pandora Windowing system distributor `The X.Org Foundation', version 11.0.10707000 Configured using: `configure '--prefix=/home/manzyuk'' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: en_IE.utf8 value of $XMODIFIERS: nil locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Lisp Interaction Minor modes in effect: paredit-mode: t eldoc-mode: t diff-auto-refine-mode: t ido-everywhere: t shell-dirtrack-mode: t savehist-mode: t icomplete-mode: t global-auto-revert-mode: t show-paren-mode: t delete-selection-mode: t tooltip-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: C-x o q ESC [ > 1 ; 2 4 0 3 ; 0 c C-x C-c M-x C-g ESC [ > 0 ; 2 6 1 ; 0 c C-x b C-s RET C-x C-c M-x r e p o r t SPC e m a c s SPC b u g <return> Recent messages: Done (Total of 2 files compiled, 1 skipped) Loading /home/manzyuk/.emacs.d/elpa/haskell-mode-2.8.0/haskell-site-file.el (source)...done Loading /home/manzyuk/quicklisp/slime-helper.el (source)...done Loading /home/manzyuk/emacs-preamble/init.el (source)...done For information about GNU Emacs and the GNU system, type C-h C-a. When done with this frame, type C-x 5 0 (No files need saving) Quit When done with this frame, type C-x 5 0 (No files need saving) Load-path shadows: None found. Features: (shadow sort flyspell ispell mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader preamble-scheme preamble-ruby inf-ruby preamble-org org-install preamble-magit preamble-diff preamble-lisp info-look slime-autoloads preamble-haskell ghci-completion preamble-google-translate google-translate preamble-emacs-lisp preamble-paredit paredit preamble-auctex reftex reftex-vars preamble-package paredit-autoloads magit-autoloads magit-bisect magit-key-mode magit esh-var esh-io esh-cmd esh-ext esh-proc esh-arg eldoc esh-groups eshell esh-module esh-mode esh-util ediff-merg ediff-diff ediff-wind ediff-help ediff-util ediff-mult ediff-init ediff iswitchb view diff-mode log-edit pcvs-util add-log inf-ruby-autoloads ruby-mode haskell-mode-autoloads imenu haskell-font-lock haskell-mode pp google-translate-autoloads json ghci-completion-autoloads parse-time auctex-autoloads timezone texinfo toolbar-x prv-emacs info reporter desktop context latex derived tex-style tex-buf tex easy-mmode tex-site easymenu warnings cl compile autoload tar-mode finder-inf executable whitespace vc-git network-stream starttls url-cache url-http tls mail-parse rfc2231 url-gw url-auth url url-proxy url-privacy url-expand url-methods url-history url-cookie url-util url-parse url-vars mailcap package tabulated-list preamble-text preamble-shell preamble-prog preamble-makefile preamble-mail smtpmail sendmail rfc2047 rfc2045 ietf-drums mail-utils preamble-ido ido preamble-ibuffer preamble-dired preamble-comint preamble-ansi-color preamble-windows preamble-tramp tramp tramp-compat auth-source eieio byte-opt bytecomp byte-compile cconv macroexp assoc gnus-util mm-util mail-prsvr password-cache shell pcomplete comint ansi-color ring format-spec tramp-loaddefs regexp-opt preamble-server server preamble-mouse preamble-mode-line preamble-minibuffer savehist icomplete preamble-keyboard preamble-initialization preamble-frames preamble-files uniquify advice help-fns advice-preload autorevert preamble-env preamble-editing paren delsel edmacro kmacro preamble-data saveplace preamble-browse-url preamble-utils time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.