summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThien-Thi Nguyen <ttn@gnuvola.org>2001-11-29 00:19:13 +0000
committerThien-Thi Nguyen <ttn@gnuvola.org>2001-11-29 00:19:13 +0000
commite0902d958d83131e1054a8dbf1fba2dbdd211d9a (patch)
tree1b0c39ff45347b682249885b7a2c1c200dc059f5
parenta56e05676fd300550de28d3e32bba49e292bfb59 (diff)
downloadguile-e0902d958d83131e1054a8dbf1fba2dbdd211d9a.tar.gz
(ferret): New proc.
(grok): Use `ferret'.
-rwxr-xr-xscripts/use2dot13
1 files changed, 10 insertions, 3 deletions
diff --git a/scripts/use2dot b/scripts/use2dot
index 6f2901107..19091f2b6 100755
--- a/scripts/use2dot
+++ b/scripts/use2dot
@@ -97,7 +97,7 @@ exec ${GUILE-guile} -l $0 -c "(apply $main (cdr (command-line)))" "$@"
(format #t " \"~A\" -> \"~A\"~A;\n" module use etc-spec))))
(define (header)
- (format #t "digraph use2dot {")
+ (format #t "digraph use2dot {\n")
(for-each (lambda (s) (format #t " ~A;\n" s))
(map vv `((label . ,(q "Guile Module Dependencies"))
;(rankdir . LR)
@@ -106,6 +106,12 @@ exec ${GUILE-guile} -l $0 -c "(apply $main (cdr (command-line)))" "$@"
;(nodesep . ,(q "0.05"))
))))
+(define (ferret use) ; handle "((foo bar) :select ...)"
+ (let ((maybe (car use)))
+ (if (list? maybe)
+ maybe
+ use)))
+
(define (grok filename)
(let* ((p (open-file filename "r"))
(next (lambda () (read p)))
@@ -121,7 +127,7 @@ exec ${GUILE-guile} -l $0 -c "(apply $main (cdr (command-line)))" "$@"
(or (null? ls)
(case (car ls)
((:use-module)
- (spew module (cadr ls))
+ (spew module (ferret (cadr ls)))
(loop (cddr ls)))
((:autoload)
(spew module (cadr ls)
@@ -133,7 +139,8 @@ exec ${GUILE-guile} -l $0 -c "(apply $main (cdr (command-line)))" "$@"
(else (loop (cdr ls))))))))
((use-modules)
(for-each (lambda (use)
- (spew (or curmod default-module) use))
+ (spew (or curmod default-module)
+ (ferret use)))
(cdr form)))
((load primitive-load)
(spew (or curmod default-module)