Mercurial > emacs
changeset 16273:14ff4afa06ec
(locate-library): Print no messages if called from Lisp.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 21 Sep 1996 23:07:06 +0000 |
parents | b64d00e44e7b |
children | e9819849c533 |
files | lisp/help.el |
diffstat | 1 files changed, 37 insertions(+), 31 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/help.el Sat Sep 21 23:00:40 1996 +0000 +++ b/lisp/help.el Sat Sep 21 23:07:06 1996 +0000 @@ -666,7 +666,7 @@ (message "%s is not on any key" definition))) nil) -(defun locate-library (library &optional nosuffix path) +(defun locate-library (library &optional nosuffix path interactive-call) "Show the precise file name of Emacs library LIBRARY. This command searches the directories in `load-path' like `M-x load-library' to find the file that `M-x load-library RET LIBRARY RET' would load. @@ -675,35 +675,41 @@ If the optional third arg PATH is specified, that list of directories is used instead of `load-path'." - (interactive "sLocate library: ") - (catch 'answer - (mapcar - '(lambda (dir) - (mapcar - '(lambda (suf) - (let ((try (expand-file-name (concat library suf) dir))) - (and (file-readable-p try) - (null (file-directory-p try)) - (progn - (message "Library is file %s" try) - (throw 'answer try))))) - (if nosuffix - '("") - (let ((basic '(".elc" ".el" "")) - (compressed '(".Z" ".gz" ""))) - ;; If autocompression mode is on, - ;; consider all combinations of library suffixes - ;; and compression suffixes. - (if (rassq 'jka-compr-handler file-name-handler-alist) - (apply 'nconc - (mapcar '(lambda (compelt) - (mapcar '(lambda (baselt) - (concat baselt compelt)) - basic)) - compressed)) - basic))))) - (or path load-path)) - (message "No library %s in search path" library) - nil)) + (interactive (list (read-string "Locate library: ") + nil nil + t)) + (let (result) + (catch 'answer + (mapcar + '(lambda (dir) + (mapcar + '(lambda (suf) + (let ((try (expand-file-name (concat library suf) dir))) + (and (file-readable-p try) + (null (file-directory-p try)) + (progn + (setq result try) + (throw 'answer try))))) + (if nosuffix + '("") + (let ((basic '(".elc" ".el" "")) + (compressed '(".Z" ".gz" ""))) + ;; If autocompression mode is on, + ;; consider all combinations of library suffixes + ;; and compression suffixes. + (if (rassq 'jka-compr-handler file-name-handler-alist) + (apply 'nconc + (mapcar '(lambda (compelt) + (mapcar '(lambda (baselt) + (concat baselt compelt)) + basic)) + compressed)) + basic))))) + (or path load-path))) + (and interactive-call + (if result + (message "Library is file %s" result) + (message "No library %s in search path" library))) + result)) ;;; help.el ends here