summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/eldoc.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2007-08-19 03:05:35 +0000
committerGlenn Morris <rgm@gnu.org>2007-08-19 03:05:35 +0000
commitae0195c0432748ff17b35850c51884302050e187 (patch)
treeb2ba7fa5a47d76bb3b060b2e854a0b9ca19eaf26 /lisp/emacs-lisp/eldoc.el
parent1283140e1ec8eb6acf5de2d707784ae87f9f5bc0 (diff)
(eldoc-get-fnsym-args-string): Doc fix.
(eldoc-highlight-function-argument): Add a doc string. Tweak previous change: no need for INDEX to be optional, just need to handle nil.
Diffstat (limited to 'lisp/emacs-lisp/eldoc.el')
-rw-r--r--lisp/emacs-lisp/eldoc.el19
1 files changed, 11 insertions, 8 deletions
diff --git a/lisp/emacs-lisp/eldoc.el b/lisp/emacs-lisp/eldoc.el
index 19b5c32555..8b2538d299 100644
--- a/lisp/emacs-lisp/eldoc.el
+++ b/lisp/emacs-lisp/eldoc.el
@@ -264,11 +264,15 @@ Emacs Lisp mode) that support Eldoc.")
;; so we need to be careful that errors aren't ignored.
(error (message "eldoc error: %s" err))))
-;; FIXME improve doc-string.
-(defun eldoc-get-fnsym-args-string (sym &optional argument-index)
+(defun eldoc-get-fnsym-args-string (sym &optional index)
"Return a string containing the parameter list of the function SYM.
If SYM is a subr and no arglist is obtainable from the docstring
-or elsewhere, return a 1-line docstring."
+or elsewhere, return a 1-line docstring. Calls the functions
+`eldoc-function-argstring-format' and
+`eldoc-highlight-function-argument' to format the result. The
+former calls `eldoc-argument-case'; the latter gives the
+function name `font-lock-function-name-face', and optionally
+highlights argument number INDEX. "
(let (args doc)
(cond ((not (and sym (symbolp sym) (fboundp sym))))
((and (eq sym (aref eldoc-last-data 0))
@@ -292,12 +296,11 @@ or elsewhere, return a 1-line docstring."
;; Change case, highlight, truncate.
(if args
(eldoc-highlight-function-argument
- ;; FIXME apply word by word, ignore &optional, &rest.
- sym (eldoc-function-argstring-format args) argument-index))))
+ sym (eldoc-function-argstring-format args) index))))
-;; Highlight argument INDEX in ARGS list for SYM.
-;; In the absence of INDEX, just call eldoc-docstring-format-sym-doc.
-(defun eldoc-highlight-function-argument (sym args &optional index)
+(defun eldoc-highlight-function-argument (sym args index)
+ "Highlight argument INDEX in ARGS list for function SYM.
+In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'."
(let ((start nil)
(end 0)
(argument-face 'bold))