From 7121a03cb28386db9c0d034cfb175a8b8f8be9c1 Mon Sep 17 00:00:00 2001
From: Jose Antonio Ortega Ruiz <jao@gnu.org>
Date: Sun, 24 Oct 2010 00:26:05 +0200
Subject: Locals completion: a fix and an extension

- ((foo wasn't being completed
- define-syntax makes its first argument a bound local
---
 elisp/geiser-completion.el | 2 +-
 elisp/geiser-syntax.el     | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

(limited to 'elisp')

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)))
 
-- 
cgit v1.2.3