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

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

bug#51016: 28.0.50; 'diff-font-lock-prettify' breaks display of outline


From: Kévin Le Gouguec
Subject: bug#51016: 28.0.50; 'diff-font-lock-prettify' breaks display of outline headers
Date: Fri, 17 Dec 2021 22:27:59 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

>> > And I disagree.  The ^L separators are there for a reason, and even in
>> > the image they do their job.
>> 
>> I'd agree if
>> 
>> (1) Emacs used some display tricks to make the ^L separators look more
>>     like actual separators (e.g. a full-width horizontal line, as is
>>     done in C-h o; the page-break-lines package on MELPA tries to make
>>     FORM FEEDs look a bit like that),
>> 
>> (2) outline-mode treated them as purely visual separators, and not as
>>     actual section headings reachable with navigation keys.
>> 
>> As things stand, (1) the separators look noisy to me, sort of like stray
>> control characters, (2) outline-forward-same-level will pause on them
>> instead of skipping over them and jumping to the next, "actual" heading
>> (i.e. a heading with actual subsections to show/hide).
>> 
>> It's clear that (1) is purely a visual preference; IMO (2) hints that
>> outline-regexp conflates characters that are used to define the heading
>> hierarchy (*) with characters that are used to delimit top-level
>> sections (^L).
>
> I have nothing against enhancing Outline mode to display ^L as we did
> in "C-h o", provided that will be an optional feature.

Right, that covers issue (1); do you have an opinion on issue (2)?
Namely, that ^L being part of outline-regexp causes navigation commands
(e.g. outline-forward-same-level) to treat them the same as top-level
headings?

>                                                         But please
> don't argue for _unconditional_ backward-incompatible changes in how
> Outline buffers look and behave, for purely subjective aesthetic
> reasons, and on top of that for hard-wiring such changes in defvar's.
> That is as un-Emacsy as it gets, and frankly I'm surprised something
> like that is even being put on the table.

FWIW, I don't think issue (2) pertains to aesthetics.  And the behaviour
change I can see (C-c C-f skipping over form feeds) looks like a net
positive.

(Also FWIW, I'm not surprised such radical-sounding changes are
surfacing today; given how often outline-mode has made the headlines
(heh) in NEWS, my impression is that there's been a recent renewal of
interest in this mode which had not seen much love for the past… however
long it's been since it has been introduced[1].

One interpretation is that outline-mode is feature-complete and its
defaults should not be questioned; another interpretation is that
innovation happened elsewhere, and with the benefits of hindsight, some
people are now trying to tune the venerable outline(-minor)-mode to make
it more ergonomic)


[1] Starting from…

$ grep -c '^\*\+ .*outlin' etc/NEWS* | sort -r -k2 -t:

… and checking the results, AFAICT Emacs 28 comes on top, then Emacs 29,
then 20 and 21, and then… basically nothing (except some false positives
in 26 and 24).





reply via email to

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