diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-06 20:20:57 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-06 20:20:57 +0200 |
commit | 1ed3aca4b58fe3cf51d5a91e2bf4371f38d17122 (patch) | |
tree | c3f64408c64c207f6e92ae65907c0199f75419ff /elisp/geiser-autodoc.el | |
parent | 9630e161959a39d35534cb19089a3c6581bdadd8 (diff) | |
download | geiser-chez-1ed3aca4b58fe3cf51d5a91e2bf4371f38d17122.tar.gz geiser-chez-1ed3aca4b58fe3cf51d5a91e2bf4371f38d17122.tar.bz2 |
Elisp: fixes for key args display.
Diffstat (limited to 'elisp/geiser-autodoc.el')
-rw-r--r-- | elisp/geiser-autodoc.el | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/elisp/geiser-autodoc.el b/elisp/geiser-autodoc.el index 4913088..4b797fc 100644 --- a/elisp/geiser-autodoc.el +++ b/elisp/geiser-autodoc.el @@ -81,7 +81,11 @@ when `geiser-autodoc-display-module-p' is on." (defun geiser-autodoc--sanitize-args (args) (cond ((null args) nil) ((listp args) - (cons (car args) (geiser-autodoc--sanitize-args (cdr args)))) + (let* ((arg (car args)) + (arg (if (and (consp arg) (eq (caar arg) ':keyword)) + (format "(#:%s %s)" (cdar arg) (cdr arg)) + arg))) + (cons arg (geiser-autodoc--sanitize-args (cdr args))))) (t '(...)))) (defun geiser-autodoc--insert-arg-group (args current &optional pos) @@ -115,12 +119,12 @@ when `geiser-autodoc-display-module-p' is on." (and (not (zerop pos)) pos)))) (when opts (insert " [") - (setq cpos (geiser-autodoc--insert-arg-group opts cpos pos)) - (when keys - (insert " [") - (geiser-autodoc--insert-arg-group keys prev nil) - (insert "]")) - (insert "]")))) + (setq cpos (geiser-autodoc--insert-arg-group opts cpos pos))) + (when keys + (insert " [") + (geiser-autodoc--insert-arg-group keys prev nil) + (insert "]")) + (when opts (insert "]")))) (defsubst geiser-autodoc--proc-name (proc module) (let ((str (if module |