# HG changeset patch # User Richard M. Stallman # Date 880347348 0 # Node ID 445110a432681194a41b8899e33a72a583bef7d5 # Parent 98744f3de8edb4e0777864dc2cb12a7b90828b55 (apropos-variable): New command. (apropos-command): New arg JUST-VARS. diff -r 98744f3de8ed -r 445110a43268 lisp/apropos.el --- a/lisp/apropos.el Mon Nov 24 03:43:19 1997 +0000 +++ b/lisp/apropos.el Mon Nov 24 04:55:48 1997 +0000 @@ -138,20 +138,25 @@ (setq major-mode 'apropos-mode mode-name "Apropos")) +;;;###autoload +(defun apropos-variable (regexp) + (interactive (list (read-string "Apropos variable (regexp): "))) + (apropos-command regexp nil t)) ;; For auld lang syne: ;;;###autoload (fset 'command-apropos 'apropos-command) ;;;###autoload -(defun apropos-command (apropos-regexp &optional do-all) +(defun apropos-command (apropos-regexp &optional do-all just-vars) "Show commands (interactively callable functions) that match REGEXP. With optional prefix ARG, or if `apropos-do-all' is non-nil, also show -variables." - (interactive (list (read-string (concat "Apropos command " - (if (or current-prefix-arg - apropos-do-all) - "or variable ") - "(regexp): ")) +variables. If JUST-VARS is non-nil, show only variables." + (interactive (list (read-string (concat + "Apropos command " + (if (or current-prefix-arg + apropos-do-all) + "or variable ") + "(regexp): ")) current-prefix-arg)) (let ((message (let ((standard-output (get-buffer-create "*Apropos*"))) @@ -162,7 +167,8 @@ (if do-all (lambda (symbol) (or (commandp symbol) (user-variable-p symbol))) - 'commandp))) + (if just-vars 'user-variable-p + 'commandp)))) (if (apropos-print t (lambda (p) @@ -170,10 +176,11 @@ (while p (setcar p (list (setq symbol (car p)) - (if (commandp symbol) - (if (setq doc (documentation symbol t)) - (substring doc 0 (string-match "\n" doc)) - "(not documented)")) + (if (or do-all (not just-vars)) + (if (commandp symbol) + (if (setq doc (documentation symbol t)) + (substring doc 0 (string-match "\n" doc)) + "(not documented)"))) (and do-all (user-variable-p symbol) (if (setq doc (documentation-property