Subject: Re: bug#71927: 29.4; ibuffer-do-isearch and ibuffer-do-isearch-regexp not prompting for input

From: Eli Zaretskii <[email-masked]>
Date: Thu, 04 Jul 2024 21:07:36 +0300

> From: Stephen Berman <[email-masked]>
> Cc: Eli Zaretskii <[email-masked]>,  Eshel Yaron <[email-masked]>,
>   [email-masked],  [email-masked],  [email-masked],
>   [email-masked]
> Date: Thu, 04 Jul 2024 19:36:34 +0200
> 
> On Thu, 04 Jul 2024 19:04:42 +0300 Juri Linkov <[email-masked]> wrote:
> 
> >>>> FWIW, AFAICT everything is working correctly, it's just that the
> >>>> "Operation finished" message hides the prompt.  ibuffer-do-isearch
> >>>> should tell define-ibuffer-op not to display that message, somehow.
> >>>
> >>> I don't see how this could be considered "correct": the "Operation
> >>> finished" message is supposed to be shown only after the Isearch is
> >>> finished in all the marked buffer, not before.  It looks like we need
> >>> a function that will not return until all the buffers where searched,
> >>> because that's what define-ibuffer-op expects.  Don't you agree?
> >
> > It intentionally uses 'no-recursive-edit' set to t, so ibuffer-do-isearch
> > correctly exits immediately while leaving isearch-mode enabled.
> >
> >> The attached patch appears to DTRT, but I only tested it briefly.
> >> ...
> >>  (define-ibuffer-op ibuffer-do-isearch ()
> >>    "Perform a `isearch-forward' in marked buffers."
> >>    (:interactive ()
> >> -   :opstring "searched in"
> >> +   :no-opstring t
> >
> > Thanks for the patch.  I confirm this is the right thing to do.
> > Maybe instead of :no-opstring would be better to use some special value
> > like :opstring 'no?  But I'm not sure if this is better than :no-opstring.
> 
> Suppressing the message when :opstring has the value 'no is fine with
> me.  If Eli is willing to accept this approach, I can go ahead and
> commit it (to master, presumably, since this is a longstanding issue).

I already said this didn't sound the right solution here, and I
explained why.  I'd be interested in hearing counter-arguments, if
there are any.