Subject: Re: bug#37774: 27.0.50; new :extend attribute broke visuals of all themes and other packages

From: Eli Zaretskii <[email-masked]>
Date: Fri, 18 Oct 2019 09:53:36 +0300

> From: Juri Linkov <[email-masked]>
> Cc: Eli Zaretskii <[email-masked]>,  [email-masked],  [email-masked]
> Date: Fri, 18 Oct 2019 01:22:16 +0300
> 
> > I miss you here.  Emacs now by default also extends the region to the
> > right window edge.
> 
> Emacs doesn't extend the region to the right window edge when the region
> face was already customized, and has no "extend t" in the init file.

I proposed a fix for that.

> > With Firefox these diffs are boxed in a subarea of the Firefox window.
> > They do not start or extend at the window edges and text in these
> > boxes is static, can neither overflow into a newline nor be broken.
> 
> This is why I proposed to limit these boxes to some fixed column
> like fill-column.

This is not currently workable, because we cannot extend faces on
pixel granularity, and extending them on column granularity will
produce ugly jagged display with variable-pitch fonts, or even if
font-lock uses bold or italic variants for some faces used by the
major mode whose files are diff'ed.

> > But I think that our (e)diff blocks are affected by the change and all
> > their face settings probably have to change, as well as tables and
> > listings.
> 
> Yes, (e)diff face settings have to change, but actually I discovered
> that diff-refined faces don't need to extend to the window edge,
> because they don't form a block, they are word-based.

I agree.  I think the number of faces that might need to include
:extend is very small.

But we still have the broader issue of unbundled packages out there.
It was mentioned a few times, but there's no detailed information
regarding that, and so it's unclear whether just changing a few more
core faces will allow us to solve this issue and move on.