fprintf(fp, "\
usage:\n\
%s [OPTIONS] [--] SCRIPT [ARGUMENTS ...]\n\
- %s [OPTIONS] [-e EXPR] [-d EXPR] [-l FILE] [--] [ARGUMENTS ...]\n\
+ %s [OPTIONS] [-e EXPR] [-d EXPR] [-p EXPR] [-l FILE]\n\
+ [--] [ARGUMENTS ...]\n\
OPTIONS:\n\
[-CDEnqv] [+DEn] [-L SYS,SYS,...] [-c CONF] [-o [SECT:]VAR=VAL]\n",
progname, progname);
Evaluation mode:\n\
-d, --dump-expression=EXPR Print (`prin1') EXPR (repeatable).\n\
-e, --evaluate-expression=EXPR Evaluate EXPR for effect (repeatable).\n\
- -l, --load-file=FILE Load FILE (repeatable).\n",
+ -l, --load-file=FILE Load FILE (repeatable).\n\
+ -p, --print-expression=EXPR Print (`princ') EXPR (repeatable).\n",
fp);
}
optarg = 0; optind = 0; optprog = (/*unconst*/ char *)progname;
for (;;) {
- i = mdwopt(argc, argv, "+hVD+E+L:c:d:e:l:n+o:qv", opts, 0, 0,
+ i = mdwopt(argc, argv, "+hVD+E+L:c:d:e:l:n+o:p:qv", opts, 0, 0,
OPTF_NEGATION | OPTF_NOPROGNAME);
if (i < 0) break;
switch (i) {
case 'l': CMDL; push_eval_op('<', optarg); break;
FLAGOPT('n', AF_DRYRUN, { CMDL; });
case 'o': CMDL; if (set_config_var(optarg)) flags |= AF_BOGUS; break;
+ case 'p': CMDL; push_eval_op('=', optarg); break;
case 'q': CMDL; if (verbose) verbose--; break;
case 'v': CMDL; verbose++; break;
default: flags |= AF_BOGUS; break;