fixed commandline handling

svn: r2208
This commit is contained in:
Robby Findler 2006-02-13 16:05:48 +00:00
parent 04b89daa5a
commit 038a53a07a
3 changed files with 19 additions and 3 deletions

View File

@ -4,4 +4,4 @@
(define tool-names (list "Check Syntax"))
(define mred-launcher-names (list "DrScheme"))
(define mred-launcher-libraries (list "drscheme.ss"))
(define mred-launcher-flags (list (list "-ZmvqL" "drscheme.ss" "drscheme"))))
(define mred-launcher-flags (list (list "-ZmvqL-" "drscheme.ss" "drscheme"))))

View File

@ -2,12 +2,26 @@
(module drscheme-normal mzscheme
(require (lib "mred.ss" "mred")
(lib "class.ss")
(lib "cmdline.ss")
(lib "bday.ss" "framework" "private"))
;; this used to be done by mred, but
;; since drscheme uses the -Z flag now,
;; we have to do it explicitly.
(current-load text-editor-load-handler)
(define files-to-open
(command-line
(case (system-type)
[(windows) "DrScheme.exe"]
[(macosx) "drscheme" #;"DrScheme"]
[else "drscheme"])
(current-command-line-arguments)
(args filenames filenames)))
;; updates the command-line-arguments with only the files
;; to open. See also main.ss.
(current-command-line-arguments (apply vector files-to-open))
(define-values (texas-independence-day? halloween?)
(let* ([date (seconds->date (current-seconds))]

View File

@ -2,6 +2,7 @@
(module main mzscheme
(require (lib "string-constant.ss" "string-constants")
(lib "unitsig.ss")
(lib "cmdline.ss")
"drsig.ss"
(lib "mred.ss" "mred")
(lib "framework.ss" "framework")
@ -16,7 +17,6 @@
(lib "plt-installer.ss" "setup"))
(provide main@)
(define argv (current-command-line-arguments))
(define main@
(unit/sig ()
@ -368,7 +368,9 @@
(loop (cdr files))
(cons (car files) (loop (cdr files))))])))
(let* ([files-to-open (reverse (vector->list argv))]
;; NOTE: drscheme-normal.ss sets current-command-line-arguments to
;; the list of files to open, after parsing out flags like -h
(let* ([files-to-open (reverse (vector->list (current-command-line-arguments)))]
[normalized/filtered
(let loop ([files files-to-open])
(cond