Ось декілька можливостей, які не дуже витончені, які мають перевагу роботи з Emacs на складі.
Якщо натиснути M-s o
( isearch-occur
) під час поступового пошуку, буфер Occur з'являється з поточним виразом пошуку. У верхній частині *Occur*
буфера - кількість відповідних рядків.
Команда how-many
відображає кількість випадків повторного виразу (включаючи повторні випадки). На жаль, він не інтегрований з поступовим пошуком. Ось інтеграція пошуку із підтвердженням концепції: натисніть M-s #
під час пошуку, щоб показати кількість збігів.
(defun isearch-how-many (regexp)
"Run `how-many' using the last search string as the regexp.
Interactively, REGEXP is constructed as with `isearch-occur'."
(interactive
(list (cond
((functionp isearch-word)
(funcall isearch-word isearch-string))
(isearch-word (word-search-regexp isearch-string))
(isearch-regexp isearch-string)
(t (regexp-quote isearch-string)))))
(how-many regexp nil nil (interactive-p)))
(define-key isearch-mode-map [?\M-s ?#] 'isearch-how-many)