Subject: bug#59141: 28.1.90; Face :extend when all the line but trailing \n is invisible

From: Eli Zaretskii <[email-masked]>
Date: Sat, 12 Nov 2022 20:31:47 +0200

> From: Juri Linkov <[email-masked]>
> Cc: Abdul-Lateef Haji-Ali <[email-masked]>,  [email-masked],
>   [email-masked],  [email-masked]
> Date: Sat, 12 Nov 2022 19:52:31 +0200
> 
> > The solution to this problem is simple: don't use the :extend
> > attribute for these faces.  That's all.  This attribute is not
> > intended for what you want to achieve here.  A whole bunch of problems
> > automatically gets resolved if you don't use :extend.
> 
> This problem exists even when the :extend attribute is not used as
> Kévin demonstrated in https://debbugs.gnu.org/52587#13

That's a different problem: the face is not extended to the window's
edge.

I really don't understand why you expect Emacs not to display a
character using the face that a Lisp program puts on that character.

> So I see the only solution to modify the display engine
> somewhere in `setup_for_ellipsis', so that after displaying
> `default_invis_vector' or `DISP_INVIS_VECTOR', it could
> remove all face text attributes from the next newline
> that follows the ellipsis.

Not going to happen, not on my watch.  This kind of artificial changes
make no sense at all, they will only cause bugs.