Commit 7f26b180 authored by Roland McGrath's avatar Roland McGrath
Browse files

(describe-function): For Lisp functions, write a prototype call before

the docstring, instead of an argument description after it.
parent 9ac0d9e0
......@@ -281,7 +281,9 @@ C-w print information on absence of warranty for GNU Emacs."
(princ ": ")
(let* ((def (symbol-function function))
(beg (if (commandp def) "an interactive " "a ")))
(princ (cond ((stringp def) "a keyboard macro.")
(princ (cond ((or (stringp def)
(vectorp def))
"a keyboard macro.")
((subrp def)
(concat beg "built-in function."))
((byte-code-function-p def)
......@@ -303,24 +305,25 @@ C-w print information on absence of warranty for GNU Emacs."
))
(t "")))
(terpri)
(let ((arglist (cond ((byte-code-function-p def)
(car (append def nil)))
((eq (car-safe def) 'lambda)
(nth 1 def))
(t t))))
(if (listp arglist)
(progn
(princ (cons function
(mapcar (lambda (arg)
(if (memq arg '(&optional &rest))
arg
(intern (upcase (symbol-name arg)))))
arglist)))
(terpri))))
(if (documentation function)
(progn (terpri)
(princ (documentation function)))
(princ "not documented"))
(cond ((byte-code-function-p def)
(save-excursion
(set-buffer standard-output)
(or (eq (char-after (1- (point-max))) ?\n)
(terpri)))
(terpri)
(princ (car (append def nil))))
((eq (car-safe def) 'lambda)
(save-excursion
(set-buffer standard-output)
(or (eq (char-after (1- (point-max))) ?\n)
(terpri)))
(terpri)
(princ (nth 1 def)))))
)
(print-help-return-message)
;; Return the text we displayed.
(save-excursion (set-buffer standard-output) (buffer-string))))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment