]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/isearch.el: Fix lazy-highlighting and lazy-counting of hidden matches
authorJuri Linkov <juri@linkov.net>
Tue, 28 Apr 2020 23:49:44 +0000 (02:49 +0300)
committerJuri Linkov <juri@linkov.net>
Tue, 28 Apr 2020 23:49:44 +0000 (02:49 +0300)
* lisp/isearch.el (isearch-lazy-highlight-search): Let-bind
search-invisible to t when search-invisible is 'open' or when both
isearch-lazy-count and search-invisible are non-nil.  (Bug#40808)

lisp/isearch.el

index ddf9190dc6d1c1540b80d2d46f182edc7295c1cc..1a414830ee85ae43b636b46d903ed0f71e5244fb 100644 (file)
@@ -319,7 +319,7 @@ this variable is set to the symbol `all-windows'."
   "Show match numbers in the search prompt.
 When both this option and `isearch-lazy-highlight' are non-nil,
 show the current match number and the total number of matches
-in the buffer (or its restriction)."
+in the buffer (or its restriction), including all hidden matches."
   :type 'boolean
   :group 'lazy-count
   :group 'isearch
@@ -3866,7 +3866,10 @@ Attempt to do the search exactly the way the pending Isearch would."
            (isearch-regexp-lax-whitespace
             isearch-lazy-highlight-regexp-lax-whitespace)
            (isearch-forward isearch-lazy-highlight-forward)
-           (search-invisible nil)      ; don't match invisible text
+           ;; Don't match invisible text unless it can be opened
+           ;; or when counting matches and user can visit hidden matches
+           (search-invisible (or (eq search-invisible 'open)
+                                 (and isearch-lazy-count search-invisible)))
            (retry t)
            (success nil))
        ;; Use a loop like in `isearch-search'.