* progmodes/etags.el (tags-apropos, list-tags): Require
apropos.
+ (etags-tags-completion-table): Show parsing progress.
2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
(defun etags-tags-completion-table ()
- (let ((table (make-vector 511 0)))
+ (let ((table (make-vector 511 0))
+ (point-max (/ (float (point-max)) 100.0))
+ (msg-fmt (format
+ "Making tags completion table for %s...%%d%%%%"
+ buffer-file-name)))
(save-excursion
(goto-char (point-min))
;; This monster regexp matches an etags tag line.
\\([-a-zA-Z0-9_+*$?:]+\\)[^-a-zA-Z0-9_+*$?:\177]*\\)\177\
\\(\\([^\n\001]+\\)\001\\)?\\([0-9]+\\)?,\\([0-9]+\\)?\n"
nil t)
- (intern (if (match-beginning 5)
- ;; There is an explicit tag name.
- (buffer-substring (match-beginning 5) (match-end 5))
- ;; No explicit tag name. Best guess.
- (buffer-substring (match-beginning 3) (match-end 3)))
+ (intern (prog1 (if (match-beginning 5)
+ ;; There is an explicit tag name.
+ (buffer-substring (match-beginning 5) (match-end 5))
+ ;; No explicit tag name. Best guess.
+ (buffer-substring (match-beginning 3) (match-end 3)))
+ (message msg-fmt (/ (point) point-max)))
table)))
table))