Optional support for zlib-based in-memory deflate/inflate for core files
[sbcl.git] / doc / manual / start-stop.texinfo
index cd07851..f97aef4 100644 (file)
@@ -66,8 +66,7 @@ Integration}.
 @node Shebang Scripts
 @comment  node-name,  next,  previous,  up
 @subsection Shebang Scripts
-@vindex sb-ext:*posix-argv*
-@vindex *posix-argv*
+@vindex @sbext{@earmuffs{posix-argv}}
 
 Standard Unix tools that are interpreters follow a common command line
 protocol that is necessary to work with ``shebang scripts''. SBCL supports
@@ -133,6 +132,13 @@ process, and is also provided as an extension to the user.
 @include fun-sb-ext-save-lisp-and-die.texinfo
 @include var-sb-ext-star-save-hooks-star.texinfo
 
+In cases where the standard initialization files have already been loaded
+into the saved core, and alternative ones should be used (or none at all),
+SBCL allows customizing the initfile pathname computation.
+
+@include var-sb-ext-star-sysinit-pathname-function-star.texinfo
+@include var-sb-ext-star-userinit-pathname-function-star.texinfo
+
 To facilitate distribution of SBCL applications using external
 resources, the filesystem location of the SBCL core file being used is
 available from Lisp.
@@ -215,10 +221,14 @@ cleanly in Unix pipelines. See also the @code{--noprint} and
 @code{--disable-debugger} options.
 
 @item --disable-ldb
+@cindex ldb
+@cindex ldb, disabling
+@cindex disabling ldb
 Disable the low-level debugger. Only effective if SBCL is compiled
 with LDB.
 
 @item --lose-on-corruption
+@cindex ldb
 There are some dangerous low level errors (for instance, control stack
 exhausted, memory fault) that (or whose handlers) can corrupt the
 image. By default SBCL prints a warning, then tries to continue and
@@ -226,11 +236,14 @@ handle the error in Lisp, but this will not always work and SBCL may
 malfunction or even hang. With this option, upon encountering such an
 error SBCL will invoke ldb (if present and enabled) or else exit.
 
+
 @item --script @var{filename}
 As a runtime option this is equivalent to @code{--noinform}
 @code{--disable-ldb} @code{--lose-on-corruption}
 @code{--end-runtime-options} @code{--script} @var{filename}. See the
-description of @code{--script} as a toplevel option below.
+description of @code{--script} as a toplevel option below. If there
+are no other commandline arguments following @code{--script}, the
+filename argument can be omitted.
 
 @item --help
 Print some basic information about SBCL, then exit.
@@ -304,6 +317,16 @@ Causes the system to load the specified file instead of entering the
 read-eval-print-loop, and exit afterwards. If the file begins with a
 shebang line, it is ignored.
 
+If there are no other command line arguments following, the filename
+can be omitted: this causes the script to be loaded from standard
+input instead. Shebang lines in standard input script are currently
+@emph{not} ignored.
+
+In either case, if there is an unhandled error (eg. end of file, or a
+broken pipe) on either standard input, standard output, or standard
+error, the script silently exits with code 0. This allows eg. safely
+piping output from SBCL to @code{head -n1} or similar.
+
 @end table
 
 @node Initialization Files