Function: apropos-symbols-internal
apropos-symbols-internal is a byte-compiled function defined in
apropos.el.gz.
Signature
(apropos-symbols-internal SYMBOLS KEYS &optional TEXT)
Source Code
;; Defined in /usr/src/emacs/lisp/apropos.el.gz
(defun apropos-symbols-internal (symbols keys &optional text)
;; Filter out entries that are marked as apropos-inhibit.
(let ((all nil))
(dolist (symbol symbols)
(unless (get symbol 'apropos-inhibit)
(push symbol all)))
(setq symbols all))
(let ((apropos-accumulator
(mapcar
(lambda (symbol)
(let (doc properties)
(list
symbol
(apropos-score-symbol symbol)
(when (fboundp symbol)
(if (setq doc (condition-case nil
(documentation symbol t)
(void-function
"(alias for undefined function)")
(error
"(can't retrieve function documentation)")))
(substring doc 0 (string-search "\n" doc))
"(not documented)"))
(when (boundp symbol)
(apropos-documentation-property
symbol 'variable-documentation t))
(when (setq properties (symbol-plist symbol))
(setq doc (list (car properties)))
(while (setq properties (cdr (cdr properties)))
(setq doc (cons (car properties) doc)))
(mapconcat (lambda (p) (format "%s" p)) (nreverse doc) " "))
(when (get symbol 'widget-type)
(apropos-documentation-property
symbol 'widget-documentation t))
(when (facep symbol)
(let ((alias (get symbol 'face-alias)))
(if alias
(if (facep alias)
(format-message
"%slias for the face `%s'."
(if (get symbol 'obsolete-face) "Obsolete a" "A")
alias)
;; Never happens in practice because fails
;; (facep symbol) test.
"(alias for undefined face)")
(apropos-documentation-property
symbol 'face-documentation t))))
(when (get symbol 'custom-group)
(apropos-documentation-property
symbol 'group-documentation t)))))
symbols)))
(apropos-print keys nil text)))