branch: elpa/geiser-racket
commit c8dedf37494857b4bf572e786978aa748780c019
Author: Jose Antonio Ortega Ruiz <j...@gnu.org>
Commit: Jose Antonio Ortega Ruiz <j...@gnu.org>

    Racket: better autodoc for syntax forms
---
 geiser/autodoc.rkt | 11 +++++++++--
 geiser/enter.rkt   |  3 ++-
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/geiser/autodoc.rkt b/geiser/autodoc.rkt
index 0bb850d..ac66da9 100644
--- a/geiser/autodoc.rkt
+++ b/geiser/autodoc.rkt
@@ -98,10 +98,10 @@
       (`(define-syntax-rule (,name . ,formals) . ,_)
        (add-signature! name formals store))
       (`(define-syntax ,name (syntax-rules ,specials . ,clauses))
-       (for-each (lambda (c) (add-signature! name (cdar c) store))
+       (for-each (lambda (c) (add-syntax-signature! name (cdar c) store))
                  (reverse clauses)))
       (`(define-syntax ,name (lambda ,_ (syntax-case ,_ . ,clauses)))
-       (for-each (lambda (c) (add-signature! name (cdar c) store))
+       (for-each (lambda (c) (add-syntax-signature! name (cdar c) store))
                  (reverse clauses)))
       (_ void))))
 
@@ -112,6 +112,13 @@
                (cons (parse-formals formals)
                      (hash-ref store name '())))))
 
+(define (add-syntax-signature! name formals store)
+  (when (symbol? name)
+    (hash-set! store
+               name
+               (cons (make-signature formals '() '() #f)
+                     (hash-ref store name '())))))
+
 (define (parse-formals formals)
   (let loop ((formals formals) (req '()) (opt '()) (keys '()))
     (cond ((null? formals)
diff --git a/geiser/enter.rkt b/geiser/enter.rkt
index eff37f6..58be936 100644
--- a/geiser/enter.rkt
+++ b/geiser/enter.rkt
@@ -64,7 +64,8 @@
                              (get-timestamp path)
                              (if code
                                  (apply append
-                                        (map cdr (module-compiled-imports 
code)))
+                                        (map cdr
+                                             (module-compiled-imports code)))
                                  null))])
           (hash-set! loaded path mod))
         ;; Evaluate the module:

Reply via email to