Subject: Re: bug#77917: 31.0.50; [PATCH] Stop using the "stop" sign for all warning levels

From: Kévin Le Gouguec <[email-masked]>
Date: Fri, 09 May 2025 09:35:49 +0200

Eli Zaretskii <[email-masked]> writes:

>> From: Kévin Le Gouguec <[email-masked]>
>> Cc: Eli Zaretskii <[email-masked]>,  [email-masked],
>>   [email-masked],  [email-masked],  [email-masked]
>> Date: Thu, 08 May 2025 20:53:17 +0200
>> 
>> In case that can help, I think this is more or less what this patch on
>> bug#61413 does: (with screenshot)
>> 
>> <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=61413#108>
>> 
>> Direct link to the patch:
>> <https://debbugs.gnu.org/cgi/bugreport.cgi?filename=0001-Use-plain-text-for-warning-supression-button.patch;bug=61413;msg=108;att=1>
>> 
>> Screenshot:
>> <https://debbugs.gnu.org/cgi/bugreport.cgi?att=2;msg=108;bug=61413;filename=Screenshot_20250223_163540.png>
>> 
>> Similar to Juri's latest patch; in short,
>> 
>> * stop using the "warnings-suppress" icon; keep it for
>>   backward-compatibility in case there are out-of-tree users,
>> * insert a new plain "warning" icon (with SVG representation that can
>>   use the 'warning face),
>> * add a text button for suppression.
>
> How about doing that, but without the icon?  The icon is problematic
> on TTY frames, and why do we need it, when the text already says
> "Warning: SOMETHING"?

No strong opinions myself¹.  I don't think we ever _need_ icons anyway,
but I do find they can² be more immediately recognizable than prose; so
worth keeping IMO barring insurmountable technical problems?

So to your point about TTY frames, considering this definition…

  (define-icon warning nil
    '((image "warning.svg" "warning.pbm" :face warning)
      (emoji "⚠️")
      (symbol "⚠" :face warning)
      (text "WARNING" :face warning))
    "Warning indicator."
    :version "31.1")

… and yesterday's observation that ⚠ is ill-suited in TTY frames, we
could drop the 'symbol representation altogether?  Since we have
precedents for icons using "ASCII art" for the 'text representation³,
maybe…

  (define-icon warning nil
    '((image "warning.svg" "warning.pbm" :face warning)
      (emoji "⚠️")
      (text "/!\" :face warning))
    "Warning indicator."
    :version "31.1")

… would work well enough?⁴

¹ Sent my message yesterday after seeing Juri's patches converging
toward bug#61413#108, and figuring it'd be interesting to compare the
finer details - I only just now realize Juri had already linked to it in
bug#77917#145; sorry for the noise!  Would have refrained from
commenting otherwise, since I feel like I have not been much help in
finding a satisfactory solution.

² Emphasis on "can", given the root cause for these reports ⛔

³ read-passwd--*-password-icon, outline-*-in-margins.

⁴ OT1H it addresses one nit I had with bug#61413#108, i.e. the text
presentation looking redundant with the string from warning-levels.

OTOH I don't know if we want to encourage ASCII art for 'text
representations, which could be better used as "accessible"
self-describing prose when visual imagery is not appropriate?

But then not sure how to square the "have-an-icon + accessible-text +
not-redundant-with-'warning-levels'-string" circle, at which point the
options I see are (a) indeed, drop the icon (b) re-think warning-levels
to accommodate icons, at which point see ¹ 🤐

(Maybe "icon 'text representations should be accessible prose" is a
false premise; e.g. that's what 'help-echo is for?)