From: Thien-Thi Nguyen Date: Wed, 22 Aug 2007 19:47:53 +0000 (+0000) Subject: (dabbrev--progress-reporter): New variable. X-Git-Tag: emacs-pretest-23.0.90~11376 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=7daa3523acb6ffcbaf309d400e5887719e285f05;p=emacs.git (dabbrev--progress-reporter): New variable. (dabbrev--scanning-message): Delete func. (dabbrev--find-expansion): Use a progress reporter instead of dabbrev--scanning-message. --- diff --git a/lisp/dabbrev.el b/lisp/dabbrev.el index 929844c06a0..20f6fea23db 100644 --- a/lisp/dabbrev.el +++ b/lisp/dabbrev.el @@ -332,6 +332,9 @@ this list." ;; The regexp for recognizing a character in an abbreviation. (defvar dabbrev--abbrev-char-regexp nil) +;; The progress reporter for buffer-scanning progress. +(defvar dabbrev--progress-reporter nil) + ;;---------------------------------------------------------------- ;; Macros ;;---------------------------------------------------------------- @@ -711,10 +714,6 @@ If IGNORE-CASE is non-nil, accept matches which differ in case." (setq all-expansions (cons expansion all-expansions)))) all-expansions)) -(defun dabbrev--scanning-message () - (unless (window-minibuffer-p (selected-window)) - (message "Scanning `%s'" (buffer-name (current-buffer))))) - (defun dabbrev--ignore-buffer-p (buffer) "Return non-nil if BUFFER should be ignored by dabbrev." (let ((bn (buffer-name buffer))) @@ -740,8 +739,7 @@ of the start of the occurrence." ;; If we were scanning something other than the current buffer, ;; continue scanning there. (when dabbrev--last-buffer - (set-buffer dabbrev--last-buffer) - (dabbrev--scanning-message)) + (set-buffer dabbrev--last-buffer)) (or ;; ------------------------------------------ ;; Look backward in current buffer. @@ -773,15 +771,20 @@ of the start of the occurrence." ;; If we have just now begun to search other buffers, ;; determine which other buffers we should check. ;; Put that list in dabbrev--friend-buffer-list. - (or dabbrev--friend-buffer-list - (setq dabbrev--friend-buffer-list - (dabbrev--make-friend-buffer-list)))) + (unless dabbrev--friend-buffer-list + (setq dabbrev--friend-buffer-list + (dabbrev--make-friend-buffer-list)) + (setq dabbrev--progress-reporter + (make-progress-reporter + "Scanning for dabbrevs..." + (- (length dabbrev--friend-buffer-list)) 0 0 1 1.5)))) ;; Walk through the buffers till we find a match. (let (expansion) (while (and (not expansion) dabbrev--friend-buffer-list) (setq dabbrev--last-buffer (pop dabbrev--friend-buffer-list)) (set-buffer dabbrev--last-buffer) - (dabbrev--scanning-message) + (progress-reporter-update dabbrev--progress-reporter + (- (length dabbrev--friend-buffer-list))) (setq dabbrev--last-expansion-location (point-min)) (setq expansion (dabbrev--try-find abbrev nil 1 ignore-case))) expansion)))))