GNU bug report logs - #55110
29.0.50; Regression in query-replace prompt

Previous Next

Package: emacs;

Reported by: Juri Linkov <juri <at> linkov.net>

Date: Mon, 25 Apr 2022 15:46:01 UTC

Severity: normal

Fixed in version 29.0.50

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

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Juri Linkov <juri <at> linkov.net>
To: Augusto Stoffel <arstoffel <at> gmail.com>
Cc: 55110 <at> debbugs.gnu.org
Subject: bug#55110: 29.0.50; Regression in query-replace prompt
Date: Wed, 27 Apr 2022 10:44:56 +0300
>> Maybe this is caused by minibuffer-lazy-highlight-setup
>> that sets filter to replace--region-filter in the minibuffer
>> instead of the original buffer?
>
> Most likely, yes.  `replace--region-filter' is modified globally, so a
> similar problem should happen if you temporarily leave the minibuffer
> and do Isearch in any other buffer.
>
> If that's the case, I think we would have two options:
>
> 1) Add a quick fix for the minibuffer Isearch only.
>
> 2) A more complicated change that solves the issue generally by saving
> the region filter in the fashion of isearch-lazy-highlight-regexp et
> alii.
>
> WDYT?

Recently we fixed a similar problem in `perform-replace'
by creating a dynamically bound value in `let':

  (let ((opos (point-marker))
        ;; Restore original isearch filter to allow
        ;; using isearch in a recursive edit even
        ;; when perform-replace was started from
        ;; `xref--query-replace-1' that let-binds
        ;; `isearch-filter-predicate' (bug#53758).
        (isearch-filter-predicate #'isearch-filter-visible))

So maybe a buffer-local value of `isearch-filter-predicate'
in the minibuffer would help.

Also I recommend to make all hooks in `minibuffer-lazy-highlight-setup'
local by adding the argument LOCAL to add-hook/remove-hook.




This bug report was last modified 2 years and 348 days ago.

Previous Next


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