diff options
| author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-06 21:14:54 +0200 | 
|---|---|---|
| committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-06 21:14:54 +0200 | 
| commit | 7718c540a2af96551bfa46a0fc8fb38931eb916e (patch) | |
| tree | b2ba33af210d0d7278e2a208939963f0a3790245 | |
| parent | 2a540e211f05121448df37ac2fb3944c3a78a556 (diff) | |
| download | geiser-7718c540a2af96551bfa46a0fc8fb38931eb916e.tar.gz geiser-7718c540a2af96551bfa46a0fc8fb38931eb916e.tar.bz2 | |
Elisp: better fix for previous bug.
| -rw-r--r-- | elisp/geiser-autodoc.el | 8 | ||||
| -rw-r--r-- | elisp/geiser-syntax.el | 12 | 
2 files changed, 5 insertions, 15 deletions
| diff --git a/elisp/geiser-autodoc.el b/elisp/geiser-autodoc.el index 4b797fc..06a10e7 100644 --- a/elisp/geiser-autodoc.el +++ b/elisp/geiser-autodoc.el @@ -81,11 +81,7 @@ when `geiser-autodoc-display-module-p' is on."  (defun geiser-autodoc--sanitize-args (args)    (cond ((null args) nil)          ((listp 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))))) +         (cons (car args) (geiser-autodoc--sanitize-args (cdr args))))          (t '(...))))  (defun geiser-autodoc--insert-arg-group (args current &optional pos) @@ -96,7 +92,7 @@ when `geiser-autodoc-display-module-p' is on."                       (numberp current)                       (setq current (1+ current))                       (= (1+ pos) current)) -                (and (symbolp current) +                (and (keywordp current)                       (listp a)                       (eq current (car a))))          (put-text-property p (point) diff --git a/elisp/geiser-syntax.el b/elisp/geiser-syntax.el index e7581d0..e0d9634 100644 --- a/elisp/geiser-syntax.el +++ b/elisp/geiser-syntax.el @@ -175,7 +175,7 @@        (vectorb (apply 'vector (geiser-syntax--read/list)))        ((quote backquote unquote splice) (list (cdr token)                                                (geiser-syntax--read))) -      (kwd `(:keyword . ,(cdr token))) +      (kwd (intern (format ":%s" (cdr token))))        (unprintable (format "#<%s>" (cdr token)))        ((char string atom) (cdr token))        (t (error "Reading scheme syntax: unexpected token: %s" token))))) @@ -189,9 +189,6 @@          (save-excursion (insert string))          (cons (ignore-errors (geiser-syntax--read)) (point)))))) -(defsubst geiser-syntax--read/keyword-value (s) -  (and (consp s) (eq (car s) :keyword) (cdr s))) -  (defsubst geiser-syntax--form-after-point (&optional boundary)    (let ((geiser-syntax--read/buffer-limit (and (numberp boundary) boundary)))      (save-excursion (values (geiser-syntax--read) (point))))) @@ -220,11 +217,8 @@              (when (and (listp form) (car form) (symbolp (car form)))                (let* ((len-1 (1- (geiser-syntax--pair-length form)))                       (prev (and (> len-1 1) (nth (1- len-1) form))) -                     (prev (and prev -                                (geiser-syntax--read/keyword-value prev)))) -                (push `(,(car form) -                        ,len-1 ,@(and prev (symbolp prev) (list prev))) -                      path))))))) +                     (prev (and (keywordp prev) (list prev)))) +                (push `(,(car form) ,len-1 ,@prev) path)))))))      (if path (nreverse path)        (let ((fst (symbol-at-point)))          (and fst `((,fst 0))))))) | 
