GNU bug report logs - #71430
Persistent Highlighting Issue with query-replace using "act-and-show" Option

Previous Next

Package: emacs;

Reported by: Gabriele Nicolardi <gabriele <at> medialab.sissa.it>

Date: Sat, 8 Jun 2024 07:31:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Gabriele Nicolardi <gabriele <at> medialab.sissa.it>
To: 71430 <at> debbugs.gnu.org
Subject: bug#71430: Persistent Highlighting Issue with query-replace using "act-and-show" Option
Date: Sat, 8 Jun 2024 09:29:41 +0200
[Message part 1 (text/plain, inline)]
Hi,
I’ve encountered a potential bug in Emacs when using the |query-replace| 
(via |perform-replace|) functions. When performing text replacements 
across a buffer and choosing to replace but not immediately move the 
point (using the |,| |act-and-show| option), the function does replace 
the text as expected but fails to update the highlighting to the region 
containing the replacement.

*Steps to Reproduce:*

1.

   Open a buffer with the following content:

   |String to be replaced. Another string. String to be replaced.
   Another string. End |

2.

   Run the following command:

   |(query-replace "String to be replaced." "Replacement." nil
   (point-min) (point-max)) |

3.

   When prompted to replace a match, use the |,| (|act-and-show|)
   option to replace the text but pause moving to the next match.

*Expected Behavior:*
After a replacement is made and before moving to the next match, the 
highlighted region of the replaced text should be “updated” to fit the 
replaced text.

*Actual Behavior:*
The highlighting remains on the matched region. This issue can be 
visually confirmed in the following animation:
View Animation on Imgur <https://imgur.com/a/BxVwVff>

*Visual Evidence:*

 * Highlight *before* using |act-and-show| (match):

 * Highlight *after* using |act-and-show| while paused (replacement):

As demonstrated, the highlighted region post-replacement does not 
correspond to any current match, which is misleading and might affect 
further editing decisions.

Best regards,

Gabriele Nicolardi

​
[Message part 2 (text/html, inline)]
[MWE_130.png (image/png, inline)]
[MWE_131.png (image/png, inline)]
[match.png (image/png, attachment)]
[replacement.png (image/png, attachment)]

This bug report was last modified 1 year and 45 days ago.

Previous Next


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