diff options
Diffstat (limited to 'Functions/Misc')
-rw-r--r-- | Functions/Misc/allopt | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/Functions/Misc/allopt b/Functions/Misc/allopt index 604e76198..0c521f391 100644 --- a/Functions/Misc/allopt +++ b/Functions/Misc/allopt @@ -8,17 +8,13 @@ # Written by Sweth Chandramouli with hacks by Bart Schaefer. listalloptions () { - emulate -R zsh - builtin setopt localoptions kshoptionprint - local OPT_NAME OPT_PAIR OPT_VALUE - for OPT_PAIR in "${(f)$(builtin setopt)}" ; do - OPT_VALUE=${OPT_PAIR##* } - OPT_NAME=${OPT_PAIR%% *} + local OPT_NAME OPT_VALUE + builtin set -o | while read OPT_NAME OPT_VALUE ; do if [[ ${OPT_NAME#no} != ${OPT_NAME} ]] ; then - OPT_VALUE=${(L)${${OPT_VALUE:s/on/OFF}:s/off/on}} && - OPT_NAME=${OPT_NAME#no}; - fi; - echo ${(r:21:)OPT_NAME} ${OPT_VALUE} + OPT_VALUE=${(L)${${OPT_VALUE:s/on/OFF}:s/off/on}} + OPT_NAME=${OPT_NAME#no} + fi + echo "${(r:21:)OPT_NAME} ${OPT_VALUE}" done } |