[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/el-search d1706eb 190/332: Display match count for *El
From: |
Stefan Monnier |
Subject: |
[elpa] externals/el-search d1706eb 190/332: Display match count for *El Occur* buffers |
Date: |
Tue, 1 Dec 2020 15:48:42 -0500 (EST) |
branch: externals/el-search
commit d1706eb23e21c0a607fd3c29963a69b65bb2ab3d
Author: Michael Heerdegen <michael_heerdegen@web.de>
Commit: Michael Heerdegen <michael_heerdegen@web.de>
Display match count for *El Occur* buffers
Make `el-search-occur-next-match' and `el-search-occur-previous-match'
display an x/y-style match count.
---
el-search.el | 29 ++++++++++++++++++++++++++---
1 file changed, 26 insertions(+), 3 deletions(-)
diff --git a/el-search.el b/el-search.el
index e9f8b9c..ef75a66 100644
--- a/el-search.el
+++ b/el-search.el
@@ -7,7 +7,7 @@
;; Created: 29 Jul 2015
;; Keywords: lisp
;; Compatibility: GNU Emacs 25
-;; Version: 1.4.0.5
+;; Version: 1.4.0.6
;; Package-Requires: ((emacs "25") (stream "2.2.4"))
@@ -2396,9 +2396,31 @@ Prompt for a new pattern and revert the occur buffer."
(cl-some (lambda (ov) (overlay-get ov 'el-search-match))
(overlays-at pos)))))
(if (memq pos (list (point-min) (point-max)))
- (el-search--message-no-log "No match %s this position" (if backwards
"before" "after"))
+ (progn
+ (el-search--message-no-log "No match %s this position" (if backwards
"before" "after"))
+ (sit-for 1.5))
(goto-char pos)
- (save-excursion (hs-show-block)))))
+ (save-excursion (hs-show-block))))
+ (el-search-occur--show-match-count))
+
+(defvar el-search-occur--total-matches nil)
+
+(defun el-search-occur--show-match-count ()
+ (while-no-input
+ (let ((nbr-match 0)
+ (pos (point))
+ (match-here-p (lambda () (get-char-property (point)
'el-search-match))))
+ (when (funcall match-here-p)
+ (save-excursion
+ (save-restriction
+ (widen)
+ (goto-char (point-min))
+ (while (< (point) pos)
+ (goto-char (next-single-char-property-change (point)
'el-search-match))
+ (when (funcall match-here-p)
+ (cl-incf nbr-match)))
+ (el-search--message-no-log
+ "Match %d/%d" nbr-match el-search-occur--total-matches)))))))
(defun el-search-occur-next-match ()
"Move point to the next match."
@@ -2617,6 +2639,7 @@ Prompt for a new pattern and revert the occur buffer."
(save-excursion
(goto-char insert-summary-position)
+ (setq el-search-occur--total-matches overall-matches)
(insert
(if (zerop overall-matches)
";;; * No matches"
- [elpa] externals/el-search e7e900c 145/332: Use `read' to circumvent bug#24542, (continued)
- [elpa] externals/el-search e7e900c 145/332: Use `read' to circumvent bug#24542, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 8e6466a 131/332: Set syntax table for temp buffers in el-search-atom-list, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search cdfe8c1 136/332: Call `user-error' instead of `error' where appropriate, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 5fbbcd1 168/332: Restore current search head in case of error or quit, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 6e4b9cc 170/332: Show line numbers in *El Occur* buffers, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search a20a333 171/332: Use a separate function to document defined pattern types, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 79ab903 179/332: Always use the current search for query-replace, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 6a7ca23 181/332: Don't limit `el-search-emacs-elisp-sources' to "lisp/" subdir, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 8dc608e 187/332: Improve folding behavior in *El Occur* buffers, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search a2e367e 189/332: Fix starting a search with `el-search-this-sexp', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search d1706eb 190/332: Display match count for *El Occur* buffers,
Stefan Monnier <=
- [elpa] externals/el-search 97626ac 192/332: Use local binding of `post-command-hook' to reset wrap flag, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 16a5f70 193/332: * el-search/el-search.el: Shorten the query-replace prompt, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 224f384 196/332: ; * el-search/el-search.el: Mention Emacs Bug#29857 in the header, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 1175d21 200/332: Allow `string' and `symbol' el-search patterns to set match data, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search b88b65a 204/332: Declare any search started with `el-search-this-sexp' single-buffer, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 6b01504 210/332: Add command `el-search-ibuffer-marked-buffers', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search d869368 211/332: Implement `cl-print-object' for el-search-objects, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 6251577 213/332: * el-search/el-search.el: Add `el-search-edit-search-description', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 48103e3 221/332: * el-search/el-search.el: Fix handling of void replacements, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 7c099aa 225/332: Small improvements to el-search--search-and-replace-pattern, Stefan Monnier, 2020/12/01