about summary refs log tree commit diff
path: root/Functions/Misc/allopt
diff options
context:
space:
mode:
Diffstat (limited to 'Functions/Misc/allopt')
-rw-r--r--Functions/Misc/allopt7
1 files changed, 2 insertions, 5 deletions
diff --git a/Functions/Misc/allopt b/Functions/Misc/allopt
index 0d59fa3e9..0c521f391 100644
--- a/Functions/Misc/allopt
+++ b/Functions/Misc/allopt
@@ -8,11 +8,8 @@
 # Written by Sweth Chandramouli with hacks by Bart Schaefer.
 
 listalloptions () {
-   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}