1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-12 16:23:57 +00:00

(apropos-show-scores): Make it customizable. Document new meaning.

(apropos): Compute scores from symbols.
(apropos-print): Don't sort by scores if apropos-show-scores is nil.
This commit is contained in:
Richard M. Stallman 2003-07-12 21:57:50 +00:00
parent 20853e2fea
commit 30aab7419b

View File

@ -102,6 +102,10 @@ for the regexp; the part that matches gets displayed in this font."
:group 'apropos
:type 'face)
(defcustom apropos-show-scores nil
"*Non-nil means show score for each match, and sort matches by scores."
:group 'apropos
:type 'boolean)
(defvar apropos-mode-map
(let ((map (make-sparse-keymap)))
@ -119,9 +123,6 @@ for the regexp; the part that matches gets displayed in this font."
(defvar apropos-mode-hook nil
"*Hook run when mode is turned on.")
(defvar apropos-show-scores nil
"*Show apropos scores if non-nil.")
(defvar apropos-regexp nil
"Regexp used in current apropos run.")
@ -468,7 +469,7 @@ time-consuming. Returns list of symbols and documentation found."
(while p
(setcar p (list
(setq symbol (car p))
0
(apropos-score-symbol symbol)
(when (fboundp symbol)
(if (setq doc (condition-case nil
(documentation symbol t)
@ -766,10 +767,15 @@ separate items with that string."
(if (null apropos-accumulator)
(message "No apropos matches for `%s'" apropos-orig-regexp)
(setq apropos-accumulator
(sort apropos-accumulator (lambda (a b)
(or (> (cadr a) (cadr b))
(and (= (cadr a) (cadr b))
(string-lessp (car a) (car b)))))))
(sort apropos-accumulator
(lambda (a b)
;; Don't sort by score if user can't see the score.
;; It would be confusing. -- rms.
(if apropos-show-scores
(or (> (cadr a) (cadr b))
(and (= (cadr a) (cadr b))
(string-lessp (car a) (car b))))
(string-lessp (car a) (car b))))))
(with-output-to-temp-buffer "*Apropos*"
(let ((p apropos-accumulator)
(old-buffer (current-buffer))