Subject: Re: bug#16151: margin does not respect face-remapping-alist. no margin face.
From: Eli Zaretskii <[email-masked]>
To: David Reitter <[email-masked]>
Cc: [email-masked]
Date: Sun, 15 Dec 2013 19:03:39 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

> From: David Reitter <[email-masked]>
> Date: Sat, 14 Dec 2013 17:30:17 -0500
> 
> Emacs -Q
> 
> Then:
> 
> (linum-mode 1)
> (setq face-remapping-alist '((default . custom-invalid)))

(I'm guessing this wasn't exactly "emacs -Q", because custom-invalid
face is not known in 'emacs -Q", at least on my system.)

> Observe that the empty space in the left margin is white, rather than red.  See attached screenshot.
> 
> The left (and presumably right) margins seem to use the default face, but fail to take `face-remapping-alist' into account.

No, they do take the face remapping into account.  Otherwise, how
could you have the correct face where the line numbers _are_ written
in the margin, as clearly seen in your screenshots?

The problem was that the empty margin area was not filled with the
background of the default face, whether remapped or not, like we do
with the text area.  This was never supported in Emacs, the code to do
that was simply never written.

Now this works, starting from trunk revision 115535.

> It would not hurt to have a `margins' face

??? What is shown in the margins is display strings which have to be
hand-crafted anyway, so you can have any face you want there, just
propertize the string accordingly.  Why do we need another face?

Thanks.