diff options
author | Thien-Thi Nguyen <ttn@gnuvola.org> | 2001-11-29 00:19:13 +0000 |
---|---|---|
committer | Thien-Thi Nguyen <ttn@gnuvola.org> | 2001-11-29 00:19:13 +0000 |
commit | e0902d958d83131e1054a8dbf1fba2dbdd211d9a (patch) | |
tree | 1b0c39ff45347b682249885b7a2c1c200dc059f5 | |
parent | a56e05676fd300550de28d3e32bba49e292bfb59 (diff) | |
download | guile-e0902d958d83131e1054a8dbf1fba2dbdd211d9a.tar.gz |
(ferret): New proc.
(grok): Use `ferret'.
-rwxr-xr-x | scripts/use2dot | 13 |
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) |