bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#71927: 29.4; ibuffer-do-isearch and ibuffer-do-isearch-regexp not pr


From: Eli Zaretskii
Subject: bug#71927: 29.4; ibuffer-do-isearch and ibuffer-do-isearch-regexp not prompting for input
Date: Thu, 04 Jul 2024 17:12:43 +0300

> From: Stephen Berman <stephen.berman@gmx.net>
> Cc: me@eshelyaron.com,  kickingvegas@gmail.com,  71927@debbugs.gnu.org,
>   basil@contovou.net,  jpw@gnu.org,  juri@linkov.net
> Date: Thu, 04 Jul 2024 15:32:05 +0200
> 
> On Thu, 04 Jul 2024 15:50:56 +0300 Eli Zaretskii <eliz@gnu.org> wrote:
> 
> >> From: Stephen Berman <stephen.berman@gmx.net>
> >> Cc: Eshel Yaron <me@eshelyaron.com>,  kickingvegas@gmail.com,
> >>   71927@debbugs.gnu.org,  basil@contovou.net,  jpw@gnu.org,
> >>   juri@linkov.net
> >> Date: Thu, 04 Jul 2024 12:06:40 +0200
> >>
> >> >> 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?
> >>
> >> The attached patch appears to DTRT, but I only tested it briefly.
> >
> > Thanks, but does it really make sense to change define-ibuffer-op to
> > fix the functions which (evidently) use it incorrectly?  I think the
> > fix needs to be in the same place where the bug is.
> 
> That's what I thought, too, but I don't see a way to do that, because
> define-ibuffer-op hard-codes displaying a message at the end of the
> body.  But in this case that message seems superfluous, in addition to
> hiding the isearch prompt, because when isearch goes through the marked
> buffers, it then displays its own message that the operation is
> complete.  So this looks like a case when define-ibuffer-op is currently
> too rigid.

Then maybe these two commands should be defined using defun, not
define-ibuffer-op?  There's nothing forcing us to define each ibuffer
command via define-ibuffer-op, is it?

> However, I acknowledge that I don't really grok the interaction with
> isearch, i.e., why the "Operation finished" message is shown
> although isearch hasn't even begun.

Juri will know for sure, but AFAIU all the commands that invoke
Isearch just enter a special mode (including the conditions/commands
to exit Isearch).  IOW, when isearch-forward returns, the search did
not yet begin; instead, Emacs is in a special mode where typing
characters adds them to search string and triggers another round of
search.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]