diff options
Diffstat (limited to 'Functions/Prompts/promptinit')
-rw-r--r-- | Functions/Prompts/promptinit | 19 |
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 "$@" - |