add 'raco dependencies-graph'

That is, refactor DrRacket's module browser so that
it can be run outside of DrRacket.
This commit is contained in:
Robby Findler 2014-04-12 13:26:53 -05:00
parent 1f5d08dc29
commit e8529ac30a
6 changed files with 947 additions and 826 deletions

View File

@ -89,3 +89,8 @@
'white-on-black-base? #t
'colors tol-white-on-black-colors)))
(define raco-commands
(list (list "dependencies-graph"
'drracket/private/standalone-module-browser
"opens a GUI window showing transitive module dependencies (aka `Module Browser')"
#f)))

View File

@ -179,9 +179,6 @@
3/4
number-between-zero-and-one?))
(drr:set-default 'drracket:module-browser:name-length 1
(λ (x) (memq x '(0 1 2 3))))
(let ([frame-width 600]
[frame-height 650]
[window-trimming-upper-bound-width 20]
@ -271,15 +268,6 @@
null
list?)
(drr:set-default 'drracket:module-overview:label-font-size 12 number?)
(drr:set-default 'drracket:module-overview:window-height 500 number?)
(drr:set-default 'drracket:module-overview:window-width 500 number?)
(drr:set-default 'drracket:module-browser:hide-paths '(lib)
(λ (x)
(and (list? x)
(andmap symbol? x))))
(drracket:font:setup-preferences)
(color-prefs:add-color-scheme-preferences-panel
#:extras

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,10 @@
#lang racket/base
(require racket/cmdline racket/runtime-path)
(define file (command-line #:args (file) file))
(define-runtime-path module-browser.rkt "module-browser.rkt")
(define standalone-module-overview/file
(dynamic-require module-browser.rkt 'standalone-module-overview/file))
(standalone-module-overview/file file)

View File

@ -5342,4 +5342,3 @@
(check-true (string?
(compute-label-string
(string->path (make-string i #\x)))))))))

View File

@ -1394,7 +1394,7 @@ please adhere to these guidelines:
(module-browser-filename-format "Full Filename: ~a (~a lines)")
(module-browser-root-filename "Root Filename: ~a")
(module-browser-font-size-gauge-label "Font Size")
(module-browser-progress-label "Module overview progress")
(module-browser-progress-label "Module Browser Progress")
(module-browser-adding-file "Adding file: ~a...")
(module-browser-laying-out-graph-label "Laying out graph")
(module-browser-open-file-format "Open ~a")