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

From: Kévin Le Gouguec <[email-masked]>
Date: Mon, 14 Nov 2022 12:02:06 +0100

Juri Linkov <[email-masked]> writes:

>> * when a hunk is folded, the background for the final newline of the
>>   hunk content (#100f10) does not "bleed" into the hunk header's
>>   extension,
>>
>> * instead, this hunk header's extension keeps the color it has when the
>>   hunk is unfolded, i.e. the same color as the rest of the header
>>   (#323232).
>>
>> Let me know if that clarifies things, or if I've misunderstood what you
>> are asking for.
>
> Thanks for the clarification.  One thing I still don't understand is
> does magit use outline-mode?

It does not; it relies on magit-section (see references a couple of
messages prior), which does more or less the exact same job outline.el
does: let the user navigate and un/fold a hierarchy of headings.

Some recent features of outline.el have indeed been in magit-section for
a long time: visibility cycling with TAB/S-TAB, bitmap fringe indicators
(with fallback to outline-style ellipses e.g. on TTYs).

My point with this comparison is to show that an outline-like UI with
:extended backgrounds is obviously possible; in my previous messages, I
tried to highlight the relevant code in magit-section that handles
delimiting section headings vs content and setting the overlays.

I did that mainly FTR, so that Someone™ with motivation and time can see
if outline.el could grow a user option to support a similar way to
display outlines, thus solving the problem of :extended backgrounds.