.IP
\h'-\w'\fB\\$1\ \fP'u'\fB\\$1\ \fP\c
..
+.ds .. \&.\|.\|.
.
.\"--------------------------------------------------------------------------
.TH runlisp 1 "2 August 2020" "Mark Wooding"
.RB [ \-\- ]
.I script
.RI [ arguments
-\&...]
+\*(..]
.br
.B runlisp
.RI [ options ]
+.RB [ \-d
+.IR form ]
.RB [ \-e
-.IR form ]
+.IR form ]
.RB [ \-l
.IR file ]
.RB [ \-p
-.IR form ]
+.IR form ]
+.if !t \{\
+.br
+ \c
+.\}
.RB [ \-\- ]
.RI [ arguments
-\&...]
+\*(..]
.PP
where
.I options
.RB [ \-CDEnqv ]
.RB [ +DEn ]
.RB [ \-L
-.IB sys , sys , \fR...]
+.IB sys , sys , \fR\*(..]
.if !t \{\
.br
\c
or
.BR \-\-no-command-line-only .
This has no effect in eval mode.
-which is set at compile time.
.
.TP
-.BI "\-L" "\fR, " "\-\-accept-lisp=" sys , sys ,\fR...
+.BI "\-L" "\fR, " "\-\-accept-lisp=" sys , sys ,\fR\*(..
Use one of the named Lisp systems.
Each
.I sys
.BR runlisp.conf (5).
.
.TP
+.BI "\-d" "\fR, " "\-\-dump-expression=" expr
+Evaluate the expression(s)
+.I expr
+and print the resulting value(s)
+to standard output
+(with
+.B *print-escape*
+true, as if by
+.BR prin1 ).
+If a form produces multiple values,
+they are printed on a single line,
+separated by a single space character;
+if a form produces no values at all,
+then nothing is printed \(en not even a newline character.
+This option causes
+.B runlisp
+to execute in
+.I eval
+mode.
+See also
+.RB ` \-p ',
+which prints with
+.B *print-escape*
+false.
+.
+.TP
.BI "\-e" "\fR, " "\-\-evaluate-expression=" expr
Evaluate the expression(s)
.I expr
from the configuration file(s).
.
.TP
-.BI "\-p" "\fR, " "\-\-print-expressin=" expr
+.BI "\-p" "\fR, " "\-\-print-expression=" expr
Evaluate the expression(s)
.I expr
and print the resulting value(s)
to standard output
-(as if by
-.BR prin1 ).
+(with
+.B *print-escape*
+false, as if by
+.BR princ ).
If a form produces multiple values,
they are printed on a single line,
separated by a single space character;
to execute in
.I eval
mode.
+See also
+.RB ` \-d ',
+which prints with
+.B *print-escape*
+true.
.
.TP
.BR "\-q" ", " "\-\-quiet"
.
.PP
The
+.RB ` \-d ',
.RB ` \-e ',
.RB ` \-l ',
and
to load code from files.
The
.IR arguments ,
-ppif any,
+if any,
are still made available to the evaluated forms and loaded files.
.
.SS "Operation"
.RB ` \-\- '
if desired.
If the command line contains any of
+.RB ` \-d ',
.RB ` \-e ',
.RB ` \-l ',
or
In
.I script
mode,
+and if the
+.RB ` \-E '
+option was not given,
.B runlisp
reads the second line of the script file,
and checks to see if it contains the string
or
.IR escaping .
Text between single quotes
-.BR ' ... '
+.BR ' \*(.. '
is included literally, without any further interpretation;
text between double quotes
-.BR """" ... """"
+.BR """" \*(.. """"
is treated literally,
except that escaping can still be used
to escape (e.g.) double quotes and the escape character itself.
is now committed to
.I script
mode, so it's too late for
+.RB ` \-d ',
.RB ` \-e ',
.RB ` \-l ',
and