summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2010-10-24 00:26:05 +0200
committerJose Antonio Ortega Ruiz <jao@gnu.org>2010-10-24 00:26:05 +0200
commit7121a03cb28386db9c0d034cfb175a8b8f8be9c1 (patch)
tree1871c43d3e5c7cdba98940a7e320dc09785891f5
parentcaf962e8deffd840c67ef591613125638ff03d97 (diff)
downloadgeiser-guile-7121a03cb28386db9c0d034cfb175a8b8f8be9c1.tar.gz
geiser-guile-7121a03cb28386db9c0d034cfb175a8b8f8be9c1.tar.bz2
Locals completion: a fix and an extension
- ((foo wasn't being completed - define-syntax makes its first argument a bound local
-rw-r--r--elisp/geiser-completion.el2
-rw-r--r--elisp/geiser-syntax.el3
2 files changed, 3 insertions, 2 deletions
diff --git a/elisp/geiser-completion.el b/elisp/geiser-completion.el
index 314e749..63a1e07 100644
--- a/elisp/geiser-completion.el
+++ b/elisp/geiser-completion.el
@@ -145,7 +145,7 @@ terminates a current completion."
"A list of forms introducing nested local bindings, a la let*.")
(defsubst geiser-completion--locals ()
- (mapcar 'symbol-name
+ (mapcar (lambda (s) (and (symbolp s) (symbol-name s)))
(geiser-syntax--locals-around-point
geiser-completion--binding-forms
geiser-completion--binding-forms*)))
diff --git a/elisp/geiser-syntax.el b/elisp/geiser-syntax.el
index 52f0d8f..f134ea4 100644
--- a/elisp/geiser-syntax.el
+++ b/elisp/geiser-syntax.el
@@ -261,7 +261,8 @@
(nreverse path)))
(defsubst geiser-syntax--binding-form-p (bfs sbfs f)
- (or (memq f '(define define* lambda let let* letrec parameterize))
+ (or (memq f '(define define* define-syntax define-syntax-rule
+ lambda let let* letrec parameterize))
(memq f bfs)
(memq f sbfs)))