Subject: bug#66041: closed (Re: bug#66041: 30.0.50; Should 'flymake-note-echo' inherit from 'compilation-info'?)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 21 Sep 2023 21:38:02 +0000

Your bug report

#66041: 30.0.50; Should 'flymake-note-echo' inherit from 'compilation-info'?

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
66041: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=66041
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#66041: 30.0.50; Should 'flymake-note-echo' inherit from 'compilation-info'?
From: João Távora <[email-masked]>
To: Jim Porter <[email-masked]>, [email-masked]
Cc: Eli Zaretskii <[email-masked]>
Date: Thu, 21 Sep 2023 22:40:20 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

On Mon, Sep 18, 2023 at 7:49 PM João Távora <[email-masked]> wrote:

> That's possible to implement.
>
> But the single/multiple overlay decision is just an implementation detail
> Currently Flymake uses one "end of line" overlay only, but here the logic
> o control that uniqueness failed, so an extra unintended overlay was
> created, and that created problems with cursor placement.
>
> But your suggestion is noted, though.

Over the last 2 days, I've been working on this bug and pushed your patch.

I also significantly reworked and robustified the end-of-line overlay logic,
fixing the two bugs I had identified.

Then I also implemented your "and N more" suffix suggestion.  Just set
flymake-show-diagnostic-at-end-of-line to 'short'.

I'm closing this bug, but let me know if you are satisfied with the changes
or notice more points of possible improvement.

João

Subject: 30.0.50; Should 'flymake-note-echo' inherit from 'compilation-info'?
From: Jim Porter <[email-masked]>
To: [email-masked]
Date: Sat, 16 Sep 2023 21:42:14 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

X-Debbugs-Cc: [email-masked]

The faces 'flymake-error-echo' and 'flymake-warning-echo' inherit from 
'compilation-error' and 'compilation-warning', respectively. However, 
'flymake-note-echo' (and 'flymake-note-echo-at-eol') inherit from 
'flymake-note'.

This results in some odd visuals in "emacs -Q" (and any theme that uses 
similar styling): Flymake errors and warnings in the mode-line (or the 
minibuffer/end-of-line) are red or orange text. However, Flymake notes 
are the default text color with a green wavey underline. Especially when 
they're side-by-side in the mode-line, the current visuals are 
surprising (not to mention hard to see in the default theme).

Personally, I think it'd be better for the "echo" faces for Flymake 
notes to just inherit from 'compilation-info'. They have almost 
identical uses as far as I can tell, and then things would look more 
consistent/readable. (In fact, we could even rename flymake-note to 
flymake-info, but maybe that ship has sailed.)