GNU bug report logs -
#71430
Persistent Highlighting Issue with query-replace using "act-and-show" Option
Previous Next
Full log
View this message in rfc822 format
[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.