1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-09 17:24:04 -08:00

(isearch-lazy-highlight-update): Take into account

the case of zero-length match at the search bound.
This commit is contained in:
Juri Linkov 2004-09-08 20:43:17 +00:00
parent 2a075e376b
commit 5ee5cd1017

View file

@ -2402,7 +2402,17 @@ Attempt to do the search exactly the way the pending isearch would."
(let ((mb (match-beginning 0))
(me (match-end 0)))
(if (= mb me) ;zero-length match
(forward-char 1)
(if isearch-forward
(if (= mb (if isearch-lazy-highlight-wrapped
isearch-lazy-highlight-start
(window-end)))
(setq found nil)
(forward-char 1))
(if (= mb (if isearch-lazy-highlight-wrapped
isearch-lazy-highlight-end
(window-start)))
(setq found nil)
(forward-char -1)))
;; non-zero-length match
(let ((ov (make-overlay mb me)))
@ -2412,19 +2422,20 @@ Attempt to do the search exactly the way the pending isearch would."
(push ov isearch-lazy-highlight-overlays)))
(if isearch-forward
(setq isearch-lazy-highlight-end (point))
(setq isearch-lazy-highlight-start (point))))
(setq isearch-lazy-highlight-start (point)))))
;; not found
(if isearch-lazy-highlight-wrapped
(setq looping nil
nomore t)
(setq isearch-lazy-highlight-wrapped t)
(if isearch-forward
(progn
(setq isearch-lazy-highlight-end (window-start))
(goto-char (window-start)))
(setq isearch-lazy-highlight-start (window-end))
(goto-char (window-end)))))))
;; not found or zero-length match at the search bound
(if (not found)
(if isearch-lazy-highlight-wrapped
(setq looping nil
nomore t)
(setq isearch-lazy-highlight-wrapped t)
(if isearch-forward
(progn
(setq isearch-lazy-highlight-end (window-start))
(goto-char (window-start)))
(setq isearch-lazy-highlight-start (window-end))
(goto-char (window-end)))))))
(unless nomore
(setq isearch-lazy-highlight-timer
(run-at-time isearch-lazy-highlight-interval nil