Mercurial > hg > xemacs-beta
comparison lisp/hyper-apropos.el @ 4695:fee33ab25966
Add arglist info for autoloaded functions and macros.
lisp/ChangeLog addition:
2009-09-20 Aidan Kehoe <kehoea@parhasard.net>
Add arglist information to docstrings for autoloaded functions and
macros.
* hyper-apropos.el (hyper-apropos-get-doc):
Treat autoload docstrings like subr docstrings; correct the regexp
used.
* help.el (describe-function-show-arglist):
This no longer treats autoloads specially.
(function-arglist): Treat autoload docstrings like subr docstrings.
(function-documentation): Treat documentation strings that are
zero-length after the arglist has been removed as indicating a
lack of documentation.
* cl-macs.el (case):
(ecase):
(typecase):
(etypecase):
(block):
(return):
(return-from):
(progv):
(lexical-let):
(lexical-let*):
(remf):
(callf):
(callf2):
(define-modify-macro):
(deftype):
(define-compiler-macro):
Rely on the autoload code to always show an arglist for these
functions, don't supply an ad-hoc one in the docstring.
These changes are for the most obvious functions; there are some
missed that would require changing argument names in the docstring
or in the function bodies.
* autoload.el (make-autoload):
Add arg list information to the doc string, using the same
approach as for subrs.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 20 Sep 2009 23:50:05 +0100 |
parents | fd1acd2f457a |
children | bd1e25975cdc |
comparison
equal
deleted
inserted
replaced
4694:2ac296807b88 | 4695:fee33ab25966 |
---|---|
805 (cond ((eq symtype 'lambda) | 805 (cond ((eq symtype 'lambda) |
806 (princ (or (nth 1 newsym) "()"))) | 806 (princ (or (nth 1 newsym) "()"))) |
807 ((eq symtype 'bytecode) | 807 ((eq symtype 'bytecode) |
808 (princ (or (compiled-function-arglist newsym) | 808 (princ (or (compiled-function-arglist newsym) |
809 "()"))) | 809 "()"))) |
810 ((and (eq symtype 'subr) | 810 ((and (or (eq symtype 'subr) (eq symtype 'autoload)) |
811 (string-match | 811 (string-match |
812 "[\n\t ]*\narguments: ?\\((.*)\\)\n?\\'" | 812 "[\n\t ]*\narguments: ?(\\([^)]*\\))\n?\\'" |
813 doc)) | 813 doc)) |
814 (insert (substring doc | 814 (insert (substring doc |
815 (match-beginning 1) | 815 (match-beginning 1) |
816 (match-end 1))) | 816 (match-end 1))) |
817 (setq doc (substring doc 0 (match-beginning 0)))) | 817 (setq doc (substring doc 0 (match-beginning 0)))) |