Mercurial > hg > xemacs-beta
comparison lisp/help.el @ 282:c42ec1d1cded r21-0b39
Import from CVS: tag r21-0b39
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:33:18 +0200 |
parents | 7df0dd720c89 |
children | 558f606b08ae |
comparison
equal
deleted
inserted
replaced
281:090b52736db2 | 282:c42ec1d1cded |
---|---|
80 (define-key help-map "d" 'describe-function) | 80 (define-key help-map "d" 'describe-function) |
81 (define-key help-map "e" 'describe-last-error) | 81 (define-key help-map "e" 'describe-last-error) |
82 (define-key help-map "f" 'describe-function) | 82 (define-key help-map "f" 'describe-function) |
83 | 83 |
84 (define-key help-map "F" 'xemacs-local-faq) | 84 (define-key help-map "F" 'xemacs-local-faq) |
85 | |
86 ;;; Setup so Hyperbole can be autoloaded from a key. | |
87 ;;; Choose a key on which to place the Hyperbole menus. | |
88 ;;; For most people this key binding will work and will be equivalent | |
89 ;;; to {C-h h}. | |
90 ;;; | |
91 (when (featurep 'infodock) ; This isn't used in XEmacs | |
92 ;; #### This needs fixing for InfoDock 4.0. | |
93 (or (where-is-internal 'hyperbole) | |
94 (where-is-internal 'hui:menu) | |
95 (define-key help-map "h" 'hyperbole)) | |
96 (autoload 'hyperbole "hsite" "Hyperbole info manager menus." t)) | |
97 | 85 |
98 (define-key help-map "i" 'info) | 86 (define-key help-map "i" 'info) |
99 (define-key help-map '(control i) 'Info-query) | 87 (define-key help-map '(control i) 'Info-query) |
100 ;; FSFmacs has Info-goto-emacs-command-node on C-f, no binding | 88 ;; FSFmacs has Info-goto-emacs-command-node on C-f, no binding |
101 ;; for Info-elisp-ref | 89 ;; for Info-elisp-ref |
994 (cond ((compiled-function-p fndef) | 982 (cond ((compiled-function-p fndef) |
995 (compiled-function-arglist fndef)) | 983 (compiled-function-arglist fndef)) |
996 ((eq (car-safe fndef) 'lambda) | 984 ((eq (car-safe fndef) 'lambda) |
997 (nth 1 fndef)) | 985 (nth 1 fndef)) |
998 ((subrp fndef) | 986 ((subrp fndef) |
999 (let ((doc (documentation function))) | 987 (let* ((doc (documentation function)) |
1000 (if (string-match "[\n\t ]*\narguments: ?(\\(.*\\))\n?\\'" | 988 (args (and (string-match |
1001 doc) | 989 "[\n\t ]*\narguments: ?(\\(.*\\))\n?\\'" |
1002 (substring doc (match-beginning 1) (match-end 1))))) | 990 doc) |
991 (match-string 1 doc)))) | |
992 ;; If there are no arguments documented for the | |
993 ;; subr, rather don't print anything. | |
994 (cond ((null args) t) | |
995 ((equal args "") nil) | |
996 (args)))) | |
1003 (t t)))) | 997 (t t)))) |
1004 (cond ((listp arglist) | 998 (cond ((listp arglist) |
1005 (prin1-to-string | 999 (prin1-to-string |
1006 (cons function (mapcar (lambda (arg) | 1000 (cons function (mapcar (lambda (arg) |
1007 (if (memq arg '(&optional &rest)) | 1001 (if (memq arg '(&optional &rest)) |