Improve isearch in auto-narrow-mode.
* lisp/isearch.el (isearch-search): Set isearch-lazy-highlight to nil before widening in auto-narrow-mode. * lisp/files.el (auto-narrow--isearch-lazy-highlight): New internal variable. (auto-narrow-pre-command-function, auto-narrow-post-command-function): Use it.
This commit is contained in:
parent
eb6d2fb58d
commit
051d2a1e36
2 changed files with 10 additions and 2 deletions
|
@ -2726,6 +2726,9 @@ beginning and end of the buffer."
|
|||
(defvar-local auto-narrow--isearch-widen-automatically nil
|
||||
"Internal variable used by `auto-narrow-mode'.")
|
||||
|
||||
(defvar-local auto-narrow--isearch-lazy-highlight nil
|
||||
"Internal variable used by `auto-narrow-mode'.")
|
||||
|
||||
(defvar-local auto-narrow--initialized nil
|
||||
"Internal variable used by `auto-narrow-mode'.")
|
||||
|
||||
|
@ -2733,7 +2736,8 @@ beginning and end of the buffer."
|
|||
"Conditionally widen display when `auto-narrow-mode' is in effect."
|
||||
(when auto-narrow-mode
|
||||
(setq-local widen-automatically t
|
||||
isearch-widen-automatically t)
|
||||
isearch-widen-automatically t
|
||||
isearch-lazy-highlight auto-narrow--isearch-lazy-highlight)
|
||||
(if (memq this-command '(narrow-to-region narrow-to-defun narrow-to-page))
|
||||
(setq auto-narrow--narrowing-state 'explicit
|
||||
widen-automatically auto-narrow--widen-automatically
|
||||
|
@ -2752,6 +2756,7 @@ beginning and end of the buffer."
|
|||
(run-hooks 'auto-narrow-hook)
|
||||
(setq auto-narrow--widen-automatically widen-automatically
|
||||
auto-narrow--isearch-widen-automatically isearch-widen-automatically
|
||||
auto-narrow--isearch-lazy-highlight isearch-lazy-highlight
|
||||
auto-narrow--narrowing-state 'auto
|
||||
auto-narrow--initialized t))
|
||||
(let (point cur-point-min buf-point-min buf-point-max size)
|
||||
|
|
|
@ -3658,7 +3658,10 @@ Optional third argument, if t, means if fail just return nil (no error).
|
|||
(isearch-search-string isearch-string nil t))
|
||||
(if (and (not isearch-success) (buffer-narrowed-p)
|
||||
isearch-widen-automatically widen-automatically)
|
||||
(widen)
|
||||
(progn
|
||||
(when auto-narrow-mode
|
||||
(setq-local isearch-lazy-highlight nil))
|
||||
(widen))
|
||||
;; Clear RETRY unless the search predicate says
|
||||
;; to skip this search hit.
|
||||
(if (or (not isearch-success)
|
||||
|
|
Loading…
Add table
Reference in a new issue