|
Packit |
991819 |
/*-
|
|
Packit |
991819 |
* Copyright (c) 2013, 2014, 2015, 2017
|
|
Packit |
991819 |
* mirabilos <m@mirbsd.org>
|
|
Packit |
991819 |
*
|
|
Packit |
991819 |
* Provided that these terms and disclaimer and all copyright notices
|
|
Packit |
991819 |
* are retained or reproduced in an accompanying document, permission
|
|
Packit |
991819 |
* is granted to deal in this work without restriction, including un-
|
|
Packit |
991819 |
* limited rights to use, publicly perform, distribute, sell, modify,
|
|
Packit |
991819 |
* merge, give away, or sublicence.
|
|
Packit |
991819 |
*
|
|
Packit |
991819 |
* This work is provided "AS IS" and WITHOUT WARRANTY of any kind, to
|
|
Packit |
991819 |
* the utmost extent permitted by applicable law, neither express nor
|
|
Packit |
991819 |
* implied; without malicious intent or gross negligence. In no event
|
|
Packit |
991819 |
* may a licensor, author or contributor be held liable for indirect,
|
|
Packit |
991819 |
* direct, other damage, loss, or other issues arising in any way out
|
|
Packit |
991819 |
* of dealing in the work, even if advised of the possibility of such
|
|
Packit |
991819 |
* damage or existence of a defect, except proven that it results out
|
|
Packit |
991819 |
* of said person's immediate fault when using the work as intended.
|
|
Packit |
991819 |
*/
|
|
Packit |
991819 |
|
|
Packit |
991819 |
@SHFLAGS_DEFNS
|
|
Packit |
991819 |
__RCSID("$MirOS: src/bin/mksh/sh_flags.opt,v 1.5 2017/02/18 02:33:15 tg Exp $");
|
|
Packit |
991819 |
@SHFLAGS_ENUMS
|
|
Packit |
991819 |
#define FN(sname,cname,flags,ochar) cname,
|
|
Packit |
991819 |
#define F0(sname,cname,flags,ochar) cname = 0,
|
|
Packit |
991819 |
@SHFLAGS_ITEMS
|
|
Packit |
991819 |
#define FN(sname,cname,flags,ochar) ((const char *)(&shoptione_ ## cname)) + 2,
|
|
Packit |
991819 |
@@
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* special cases */
|
|
Packit |
991819 |
|
|
Packit |
991819 |
|
|
Packit |
991819 |
|
|
Packit |
991819 |
|
|
Packit |
991819 |
|
|
Packit |
991819 |
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/*
|
|
Packit |
991819 |
* options are sorted by their longnames
|
|
Packit |
991819 |
*/
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -a all new parameters are created with the export attribute */
|
|
Packit |
991819 |
>a|
|
|
Packit |
991819 |
F0("allexport", FEXPORT, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. bgnice */
|
|
Packit |
991819 |
>| HAVE_NICE
|
|
Packit |
991819 |
FN("bgnice", FBGNICE, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. enable {} globbing (non-standard) */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("braceexpand", FBRACEEXPAND, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. Emacs command line editing mode */
|
|
Packit |
991819 |
>|!MKSH_NO_CMDLINE_EDITING
|
|
Packit |
991819 |
FN("emacs", FEMACS, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -e quit on error */
|
|
Packit |
991819 |
>e|
|
|
Packit |
991819 |
FN("errexit", FERREXIT, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. Emacs command line editing mode, gmacs variant */
|
|
Packit |
991819 |
>|!MKSH_NO_CMDLINE_EDITING
|
|
Packit |
991819 |
FN("gmacs", FGMACS, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. reading EOF does not exit */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("ignoreeof", FIGNOREEOF, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. inherit -x flag */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("inherit-xtrace", FXTRACEREC, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -i interactive shell */
|
|
Packit |
991819 |
>i|!SHFLAGS_NOT_CMD
|
|
Packit |
991819 |
FN("interactive", FTALKING, OF_CMDLINE
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -k name=value are recognised anywhere */
|
|
Packit |
991819 |
>k|
|
|
Packit |
991819 |
FN("keyword", FKEYWORD, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -l login shell */
|
|
Packit |
991819 |
>l|!SHFLAGS_NOT_CMD
|
|
Packit |
991819 |
FN("login", FLOGIN, OF_CMDLINE
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -X mark dirs with / in file name completion */
|
|
Packit |
991819 |
>X|
|
|
Packit |
991819 |
FN("markdirs", FMARKDIRS, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -m job control monitoring */
|
|
Packit |
991819 |
>m|!MKSH_UNEMPLOYED
|
|
Packit |
991819 |
FN("monitor", FMONITOR, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -C don't overwrite existing files */
|
|
Packit |
991819 |
>C|
|
|
Packit |
991819 |
FN("noclobber", FNOCLOBBER, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -n don't execute any commands */
|
|
Packit |
991819 |
>n|
|
|
Packit |
991819 |
FN("noexec", FNOEXEC, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -f don't do file globbing */
|
|
Packit |
991819 |
>f|
|
|
Packit |
991819 |
FN("noglob", FNOGLOB, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. don't kill running jobs when login shell exits */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("nohup", FNOHUP, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. don't save functions in history (no effect) */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("nolog", FNOLOG, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -b asynchronous job completion notification */
|
|
Packit |
991819 |
>b|!MKSH_UNEMPLOYED
|
|
Packit |
991819 |
FN("notify", FNOTIFY, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -u using an unset variable is an error */
|
|
Packit |
991819 |
>u|
|
|
Packit |
991819 |
FN("nounset", FNOUNSET, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. don't do logical cds/pwds (non-standard) */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("physical", FPHYSICAL, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. errorlevel of a pipeline is the rightmost nonzero value */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("pipefail", FPIPEFAIL, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. adhere more closely to POSIX even when undesirable */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("posix", FPOSIX, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -p privileged shell (suid) */
|
|
Packit |
991819 |
>p|
|
|
Packit |
991819 |
FN("privileged", FPRIVILEGED, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -r restricted shell */
|
|
Packit |
991819 |
>r|!SHFLAGS_NOT_CMD
|
|
Packit |
991819 |
FN("restricted", FRESTRICTED, OF_CMDLINE
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. kludge mode for better compat with traditional sh (OS-specific) */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("sh", FSH, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -s (invocation) parse stdin (pseudo non-standard) */
|
|
Packit |
991819 |
>s|!SHFLAGS_NOT_CMD
|
|
Packit |
991819 |
FN("stdin", FSTDIN, OF_CMDLINE
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -h create tracked aliases for all commands */
|
|
Packit |
991819 |
>h|
|
|
Packit |
991819 |
FN("trackall", FTRACKALL, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -U enable UTF-8 processing (non-standard) */
|
|
Packit |
991819 |
>U|
|
|
Packit |
991819 |
FN("utf8-mode", FUNICODE, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -v echo input */
|
|
Packit |
991819 |
>v|
|
|
Packit |
991819 |
FN("verbose", FVERBOSE, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. Vi command line editing mode */
|
|
Packit |
991819 |
>|!MKSH_NO_CMDLINE_EDITING
|
|
Packit |
991819 |
FN("vi", FVI, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. enable ESC as file name completion character (non-standard) */
|
|
Packit |
991819 |
>|!MKSH_NO_CMDLINE_EDITING
|
|
Packit |
991819 |
FN("vi-esccomplete", FVIESCCOMPLETE, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. enable Tab as file name completion character (non-standard) */
|
|
Packit |
991819 |
>|!MKSH_NO_CMDLINE_EDITING
|
|
Packit |
991819 |
FN("vi-tabcomplete", FVITABCOMPLETE, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. always read in raw mode (no effect) */
|
|
Packit |
991819 |
>|!MKSH_NO_CMDLINE_EDITING
|
|
Packit |
991819 |
FN("viraw", FVIRAW, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -x execution trace (display commands as they are run) */
|
|
Packit |
991819 |
>x|
|
|
Packit |
991819 |
FN("xtrace", FXTRACE, OF_ANY
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* -c (invocation) execute specified command */
|
|
Packit |
991819 |
>c|!SHFLAGS_NOT_CMD
|
|
Packit |
991819 |
FN("", FCOMMAND, OF_CMDLINE
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/*
|
|
Packit |
991819 |
* anonymous flags: used internally by shell only (not visible to user
|
|
Packit |
991819 |
*/
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. direct builtin call (divined from argv[0] multi-call binary) */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("", FAS_BUILTIN, OF_INTERNAL
|
|
Packit |
991819 |
|
|
Packit |
991819 |
/* ./. (internal) initial shell was interactive */
|
|
Packit |
991819 |
>|
|
|
Packit |
991819 |
FN("", FTALKING_I, OF_INTERNAL
|
|
Packit |
991819 |
|
|
Packit |
991819 |
|SHFLAGS_OPTCS
|