emacs-devel
[Top][All Lists]
Advanced

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

Re: Simple isearch concerns


From: Zhiwei Chen
Subject: Re: Simple isearch concerns
Date: Fri, 9 Apr 2021 06:42:52 +0000

> On Apr 9, 2021, at 3:08 AM, Juri Linkov <juri@linkov.net> wrote:
> 
>> Indeed, updated patch attached.
>> 
>> diff --git a/lisp/isearch.el b/lisp/isearch.el
>> index a828c569aa..2e76e08f54 100644
>> --- a/lisp/isearch.el
>> +++ b/lisp/isearch.el
>> @@ -3040,6 +3040,10 @@ See more for options in `search-exit-option'."
>>            (goto-char isearch-pre-move-point))
>>          (isearch-search-and-update)))
>>      (setq isearch-pre-move-point nil))
>> +  ;; Terminate the search if point has moved to another buffer.
>> +  (unless (eq isearch--current-buffer (current-buffer))
>> +    (when (buffer-live-p isearch--current-buffer)
>> +      (with-current-buffer isearch--current-buffer (isearch-exit))))
> 
> Thanks, now pushed.  Let's hope it doesn't break some other modes.


(defun display-buffer-select (buffer alist)
  (let ((window (display-buffer-below-selected buffer alist)))
    (when (window-live-p window)
      (select-window window))))

(setq display-buffer-alist '(("\\*Occur\\*" (display-buffer-select))))

It failed to work when buffer is auto selected via `display-buffer-alist’. When 
the point moves to the *Occur* buffer, typing “n”, “p” still sends “n”, “p” to 
isearch.

reply via email to

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