From b3d6a4f3afe753a8ab9f2db0dc83c6d574d5b071 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Wed, 25 Jul 2012 12:52:46 -0600 Subject: [PATCH] Note `require' of a `main' submodule for `-t', `-l', and `-p' In the output of `racket -h' and in the command-line docs. Merge to v5.3 (cherry picked from commit 7d894bfb639a4c37e5b60898c0c495cb176833da) --- collects/scribblings/reference/startup.scrbl | 23 ++++++++++++-------- src/racket/cmdline.inc | 7 +++--- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/collects/scribblings/reference/startup.scrbl b/collects/scribblings/reference/startup.scrbl index 236e961b8b..7132eba387 100644 --- a/collects/scribblings/reference/startup.scrbl +++ b/collects/scribblings/reference/startup.scrbl @@ -139,22 +139,27 @@ flags: evaluated from standard input.} @item{@FlagFirst{t} @nonterm{file} or @DFlagFirst{require} - @nonterm{file} : @racket[require]s @nonterm{file}.} + @nonterm{file} : @racket[require]s @nonterm{file}, and then + @racket[require]s @racket[(submod (file @#,nontermstr{file}) + main)] if available.} @item{@FlagFirst{l} @nonterm{path} or @DFlagFirst{lib} @nonterm{path} : @racket[require]s @racket[(lib - @#,nontermstr{path})].} + @#,nontermstr{path})], and then @racket[require]s + @racket[(submod (lib @#,nontermstr{path}) main)] if available.} @item{@FlagFirst{p} @nonterm{package} : - @racket[require]s @racket[(planet @#,nontermstr{package})]. - - @margin-note{Despite its name, @DFlag{script} is not usually - used for Unix scripts. See @guidesecref["scripts"] for more - information on scripts.}} + @racket[require]s @racket[(planet @#,nontermstr{package})], + and then + @racket[require]s @racket[(submod (planet @#,nontermstr{package}) + main)] if available.} @item{@FlagFirst{r} @nonterm{file} or @DFlagFirst{script} - @nonterm{file} : @racket[load]s @nonterm{file} as a - script. This flag is like @Flag{t} @nonterm{file} plus + @nonterm{file} : @racket[load]s @nonterm{file} + @margin-note*{Despite its name, @DFlag{script} is not usually + used for Unix scripts. See @guidesecref["scripts"] for more + information on scripts.} + as a script. This flag is like @Flag{t} @nonterm{file} plus @Flag{N} @nonterm{file} to set the program name and @Flag{-} to cause all further command-line elements to be treated as non-flag arguments.} diff --git a/src/racket/cmdline.inc b/src/racket/cmdline.inc index 1d935e061b..8c9adf0f74 100644 --- a/src/racket/cmdline.inc +++ b/src/racket/cmdline.inc @@ -1430,13 +1430,14 @@ static int run_from_cmd_line(int argc, char *_argv[], " File and expression options:\n" " -e , --eval : Evaluate , prints results\n" " -f , --load : Like -e '(load \"\")' without printing\n" - " -t , --require : Like -e '(require (file \"\"))'\n" - " -l , --lib : Like -e '(require (lib \"\"))'\n" - " -p : Like -e '(require (planet \"\")'\n" + " -t , --require : Like -e '(require (file \"\"))' [*]\n" + " -l , --lib : Like -e '(require (lib \"\"))' [*]\n" + " -p : Like -e '(require (planet \"\")' [*]\n" " -r , --script : Same as -f -N --\n" " -u , --require-script : Same as -t -N --\n" " -k

: Load executable-embedded code from offset to

\n" " -m, --main : Call `main' with command-line arguments, print results\n" + " [*] Also `require's a `main' submodule, if any\n" " Interaction options:\n" " -i, --repl : Run interactive read-eval-print loop; implies -v\n" " -n, --no-lib : Skip `(require (lib \"\"))' for -i/-e/-f/-r\n"