about summary refs log tree commit diff
path: root/Functions/Prompts/promptinit
diff options
context:
space:
mode:
Diffstat (limited to 'Functions/Prompts/promptinit')
-rw-r--r--Functions/Prompts/promptinit19
1 files changed, 5 insertions, 14 deletions
diff --git a/Functions/Prompts/promptinit b/Functions/Prompts/promptinit
index 285b9e4d9..c249412cf 100644
--- a/Functions/Prompts/promptinit
+++ b/Functions/Prompts/promptinit
@@ -106,21 +106,12 @@ Options:
 }
 
 prompt () {
-  local -A prompt_opts
-  local opt
-
+  local prompt_opts
+  
   set_prompt "$@"
-
-  # Set prompt options
-  for opt in ${(k)prompt_opts}; do
-    if [[ $prompt_opts[$opt] != (|un)set ]]; then
-      echo "${0##*/}: value of prompt option must be 'set' or 'unset'" >&2
-      return 1
-    else
-      $prompt_opts[$opt]opt prompt$opt
-    fi
-  done
+ 
+  (( $#prompt_opts )) &&
+      setopt noprompt{bang,cr,percent,subst} prompt${^prompt_opts[@]}
 }
 
 promptinit "$@"
-