help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: e23 inverse video on mode line and nowhere else


From: Juri Linkov
Subject: Re: e23 inverse video on mode line and nowhere else
Date: Sun, 17 Jan 2010 00:35:46 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.91 (x86_64-pc-linux-gnu)

> A couple years ago Juri Linkov kindly sent me the Elisp below to
> disable faces by default, leaving only faces matching ^mode-line
> untouched.  This seems to generally give what I want.  (Thanks again, Juri.)
>
> But what I'm finding now is that the compilation status string, such as
> ":run", ": exit[0]", and so on, is shown as normal text (not inverse
> video) in the mode line.
>
> I can get the compilation string in inverse video in the mode line with
> this (or by excluding ^compilation in my-faces-fix below):
>
>   (set-face-attribute 'compilation-info nil    :inverse-video t)
>   (set-face-attribute 'compilation-warning nil :inverse-video t)
>   (set-face-attribute 'compilation-error nil   :inverse-video t)
>
> But then filenames and various other strings show up in inverse video in
> the buffer contents.
>
> Short of reverting back to old versions of M-x compile, etc., which I
> don't want to do, is there any way to control this?
>
> Perhaps by doing something in the mode line display to force all faces
> to inverse video?  (It seems like the same compilation-* faces should
> not be used both within the buffer contents and in the mode line, but
> anyway.)

Currently I see no way to display the compilation status string
differently in the mode line and in the compilation buffer because
compile.el reuses non-mode-line faces for the mode line.

A good solution would be to add new faces to compile.el like

  mode-line-compilation-info
  mode-line-compilation-warning
  mode-line-compilation-error

-- 
Juri Linkov
http://www.jurta.org/emacs/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]