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
commit8d7621e8be82a1dc38e01f8e293ef69d01d9960a (patch)
treef4d003edc15965ee5f35fe0d9fc8431bb1ad30a6
parentdd7639bcd28ba66f3ca2bdad451541379565a9f1 (diff)
downloadgeiser-8d7621e8be82a1dc38e01f8e293ef69d01d9960a.tar.gz
geiser-8d7621e8be82a1dc38e01f8e293ef69d01d9960a.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)))