[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#5502: compile.el uses non-mode-line faces in the mode line
From: |
Karl Berry |
Subject: |
bug#5502: compile.el uses non-mode-line faces in the mode line |
Date: |
Mon, 1 Feb 2010 02:04:05 GMT |
In Emacs 23.1[.92], compile.el uses non-mode-line faces to propertize
text used in the mode line. My goal is to have inverse video in the
mode line, and regular text only (no underlines, fake bold, etc.) in the
buffer contents.
To reproduce:
emacs -nw --no-site --no-init -l inv.el # where invtest.el is appended
M-x compile RET
[backspace to wipe out the "make -k", then] false RET
Observe that the compilation status in the mode line is in "regular"
video, unlike the rest of the mode line.
Thanks,
Karl
Here is invtest.el:
(setq compilation-mode-hook 'k-inverse-video-hook)
(defun k-inverse-video-hook ()
(set-face-attribute 'compilation-info nil :inverse-video nil)
(set-face-attribute 'compilation-warning nil :inverse-video nil)
(set-face-attribute 'compilation-error nil :inverse-video nil)
)
P.S. I don't suppose this is news to you, but it is apparently coming
from the following three pieces of compile.el. If the mode line stuff
used face names like mode-line-compilation-{warning,info,error}, which
could default to the same values they get now, then (I surmise) they
could be controlled independently. Everything else I've run across so
far does use face names mode-line-* for text that goes in the mode line.
(setq mode-line-process
(list (propertize ":%s" 'face 'compilation-warning)))
..
(setq mode-line-process
(list (propertize ":run" 'face 'compilation-warning)))
..
(propertize out-string
'help-echo msg 'face (if (> exit-status 0)
'compilation-error
'compilation-info))))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- bug#5502: compile.el uses non-mode-line faces in the mode line,
Karl Berry <=