GNU bug report logs - #39390
28.0.50; prettify-symbols-mode confuses display when start/end faces are different

Previous Next

Package: emacs;

Reported by: Raphael 'kena' Poss <knz <at> thaumogen.net>

Date: Sun, 2 Feb 2020 15:44:01 UTC

Severity: normal

Found in version 28.0.50

Full log


Message #86 received at 39390 <at> debbugs.gnu.org (full text, mbox):

From: Raphael 'kena' Poss <knz <at> thaumogen.net>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 39390 <at> debbugs.gnu.org, tsdh <at> gnu.org
Subject: Re: bug#39390: 28.0.50; prettify-symbols-mode confuses display when
 start/end faces are different
Date: Mon, 17 Feb 2020 14:28:09 -0500
On 17-02-2020 14:24, Eli Zaretskii wrote:

>> My humble opinion on this is that either the compose function should
>> report an exception / error, or pick some arbitrary behavior (e.g. just
>> use the 1st face for the entire substitution) and use that.
> 
> We cannot raise an exception inside redisplay, because that would
> produce an infinite sequence of error messages (each error message
> requires a redisplay cycle -- to display the message -- which then
> again raises the same exception).

Yes I understand that but I was thinking that `compose-region` would be
the place to check validity.

>> It seems strange to me to accept the current non-deterministic,
>> display-corrupting behavior as a reasonable alternative.
> 
> We are talking about 2 different things.  I was talking about
> composing characters across face changes, whereas you were talking
> about handling invalid composition rules, such as the one you tried to
> use.

Look there is nothing else that determines what is "valid" and "invalid"
than what the docs say and what emacs allow me to configure. At this
point neither the doc of `compose-region` nor its code prevent me from
using this configuration, so from the user's perspective (mine) the
configuration is valid -- and instead I find a bug in the redisplay code.

If you want to hold a position that the configuration is invalid, Emacs
(or some function) needs to be first taught to refuse it.

Meanwhile if the configuration can be deemed valid but with reduced
functionality (as in, the behavior is limited to only use one face, the
first one found in the composition), that could also be documented.

-- 
Raphael 'kena' Poss




This bug report was last modified 5 years and 124 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.