GNU bug report logs - #22520
25.0.50; unhighlight-regexp shows the scary guts of char-folding to the user

Previous Next

Package: emacs;

Reported by: Dima Kogan <dima <at> secretsauce.net>

Date: Mon, 1 Feb 2016 09:53:02 UTC

Severity: normal

Tags: fixed

Found in version 25.0.50

Fixed in version 28.0.50

Done: Juri Linkov <juri <at> linkov.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 22520 in the body.
You can then email your comments to 22520 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#22520; Package emacs. (Mon, 01 Feb 2016 09:53:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Dima Kogan <dima <at> secretsauce.net>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 01 Feb 2016 09:53:02 GMT) Full text and rfc822 format available.

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

From: Dima Kogan <dima <at> secretsauce.net>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.0.50;
 unhighlight-regexp shows the scary guts of char-folding to the user
Date: Mon, 01 Feb 2016 01:52:35 -0800
Hi. I'm running a very recent (1-week-old) build of emacs from

  https://github.com/emacs-mirror/emacs/commit/da976cf

I've been periodically seeing the issue described below, but just now
figured out how to trigger it. It's sorta not a bug, I guess, but it
REALLY looks alarming to an unsuspecting user


1. Create a file t.el containing a single line
(message "\nDatabase directory: ")

2. emacs -Q t.el

3. C-s m (to isearch for "m")

4. M-s h r enter (to highlight "m" with the default face)

5. M-s h u

Step 5 should offer to unhighlight "m", but it offers garbage-looking
text instead. Upon closer inspection, it looks like the crazy garbage is
actually the regexp that char-folding produces when you look for "m". I
don't think this is what the user should see. As one consequence of
this, trying to unhighlight simply "m" doesn't work, even though that's
what the user asked to highlight in the first place.

Another possible side effect of this is that highlighting

  Database directory:

doesn't work: hi-lock goes through the motions but nothing ends up being
highlighted. Turning off char-folding fixes that.

Thanks!




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#22520; Package emacs. (Mon, 01 Feb 2016 17:17:01 GMT) Full text and rfc822 format available.

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

From: Kaushal Modi <kaushal.modi <at> gmail.com>
To: 22520 <at> debbugs.gnu.org
Subject: 25.0.50; unhighlight-regexp shows the scary guts of char-folding to
 the user
Date: Mon, 01 Feb 2016 17:16:40 +0000
[Message part 1 (text/plain, inline)]
I confirm this bug.

To recreate this, it is important to note that you do not exit isearch in
step 3.

> 3. C-s m (to isearch for "m")

From within isearch, do the below Step 4.

> 4. M-s h r enter (to highlight "m" with the default face)

And this is what I get: http://i.imgur.com/ZaLpzID.png

Here is my emacs build info:

Emacs version: GNU Emacs 25.0.90.1 (x86_64-unknown-linux-gnu, GTK+ Version
2.24.23)
 of 2016-01-31, built using commit 43cb9f8ff378100ec31cb576faf347a87a05ba5d.

./configure options:
  --prefix=/home/kmodi/usr_local/apps/6/emacs/emacs-25
'CPPFLAGS=-fgnu89-inline -I/home/kmodi/usr_local/6/include
-I/usr/include/freetype2 -I/usr/include' 'CFLAGS=-ggdb3 -O0'
'CXXFLAGS=-ggdb3 -O0' 'LDFLAGS=-L/home/kmodi/usr_local/6/lib
-L/home/kmodi/usr_local/6/lib64 -ggdb3'

Features:
  XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK2 X11
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#22520; Package emacs. (Tue, 02 Feb 2016 01:14:02 GMT) Full text and rfc822 format available.

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

From: Juri Linkov <juri <at> linkov.net>
To: Dima Kogan <dima <at> secretsauce.net>
Cc: 22520 <at> debbugs.gnu.org
Subject: Re: bug#22520: 25.0.50;
 unhighlight-regexp shows the scary guts of char-folding to the user
Date: Tue, 02 Feb 2016 02:50:02 +0200
> 1. Create a file t.el containing a single line
> (message "\nDatabase directory: ")
>
> 2. emacs -Q t.el
>
> 3. C-s m (to isearch for "m")
>
> 4. M-s h r enter (to highlight "m" with the default face)
>
> 5. M-s h u
>
> Step 5 should offer to unhighlight "m", but it offers garbage-looking
> text instead. Upon closer inspection, it looks like the crazy garbage is
> actually the regexp that char-folding produces when you look for "m". I
> don't think this is what the user should see. As one consequence of
> this, trying to unhighlight simply "m" doesn't work, even though that's
> what the user asked to highlight in the first place.

Unlike bug#21180, it's much harder to conceal the innards of hi-lock.
Its regexps will keep pouring in from all places.

> Another possible side effect of this is that highlighting
>
>   Database directory:
>
> doesn't work: hi-lock goes through the motions but nothing ends up being
> highlighted. Turning off char-folding fixes that.

Actually “Database directory:” is not highlighted due to case-folding.
After toggling case-folding with ‘M-s c’ and preserving the capital D,
it's highlighted correctly.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#22520; Package emacs. (Tue, 02 Feb 2016 01:14:02 GMT) Full text and rfc822 format available.

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

From: Juri Linkov <juri <at> linkov.net>
To: Kaushal Modi <kaushal.modi <at> gmail.com>
Cc: 22520 <at> debbugs.gnu.org
Subject: Re: bug#22520: 25.0.50;
 unhighlight-regexp shows the scary guts of char-folding to the user
Date: Tue, 02 Feb 2016 02:58:00 +0200
> I confirm this bug.
>
> To recreate this, it is important to note that you do not exit isearch in
> step 3.

The effect is same as supplying this regexp directly:
M-s h r \(?:m[̣́̇]\|[mᵐḿṁṃⅿⓜm𝐦𝑚𝒎𝓂𝓶𝔪𝕞𝖒𝗆𝗺𝘮𝙢𝚖]\) RET RET

>> 3. C-s m (to isearch for "m")
>
> From within isearch, do the below Step 4.
>
>> 4. M-s h r enter (to highlight "m" with the default face)
>
> And this is what I get: http://i.imgur.com/ZaLpzID.png

To avoid displaying this frightening regexp, you can type ‘C-u M-s h u’.

PS: Sorry for not removing "C-x w" bindings so far - I had no courage to annoy
the users of the existing bindings when they discover them not working anymore.
At least, we could try to come up with a better justification for removal,
such as using "C-x w" for another feature.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#22520; Package emacs. (Thu, 21 May 2020 23:34:01 GMT) Full text and rfc822 format available.

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

From: Juri Linkov <juri <at> linkov.net>
To: Dima Kogan <dima <at> secretsauce.net>
Cc: 22520 <at> debbugs.gnu.org
Subject: Re: bug#22520: 25.0.50; unhighlight-regexp shows the scary guts of
 char-folding to the user
Date: Fri, 22 May 2020 02:21:15 +0300
tags 22520 fixed
close 22520 28.0.50
thanks

Fortunately, both points are now implemented in bug#40337.

>> 1. Create a file t.el containing a single line
>> (message "\nDatabase directory: ")
>>
>> 2. emacs -Q t.el
>>
>> 3. C-s m (to isearch for "m")
>>
>> 4. M-s h r enter (to highlight "m" with the default face)
>>
>> 5. M-s h u
>>
>> Step 5 should offer to unhighlight "m", but it offers garbage-looking
>> text instead. Upon closer inspection, it looks like the crazy garbage is
>> actually the regexp that char-folding produces when you look for "m". I
>> don't think this is what the user should see. As one consequence of
>> this, trying to unhighlight simply "m" doesn't work, even though that's
>> what the user asked to highlight in the first place.
>
> Unlike bug#21180, it's much harder to conceal the innards of hi-lock.
> Its regexps will keep pouring in from all places.
>
>> Another possible side effect of this is that highlighting
>>
>>   Database directory:
>>
>> doesn't work: hi-lock goes through the motions but nothing ends up being
>> highlighted. Turning off char-folding fixes that.
>
> Actually “Database directory:” is not highlighted due to case-folding.
> After toggling case-folding with ‘M-s c’ and preserving the capital D,
> it's highlighted correctly.




Added tag(s) fixed. Request was from Juri Linkov <juri <at> linkov.net> to control <at> debbugs.gnu.org. (Thu, 21 May 2020 23:34:02 GMT) Full text and rfc822 format available.

bug marked as fixed in version 28.0.50, send any further explanations to 22520 <at> debbugs.gnu.org and Dima Kogan <dima <at> secretsauce.net> Request was from Juri Linkov <juri <at> linkov.net> to control <at> debbugs.gnu.org. (Thu, 21 May 2020 23:34:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 19 Jun 2020 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 309 days ago.

Previous Next


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