mirror of
https://github.com/starship/starship.git
synced 2026-06-21 02:02:14 +07:00
fix(zsh): check if vars are set before reading them (#6742)
This commit is contained in:
@@ -63,9 +63,12 @@ starship_zle-keymap-select() {
|
||||
}
|
||||
|
||||
## Check for existing keymap-select widget.
|
||||
# zle-keymap-select is a special widget so it'll be "user:fnName" or nothing. Let's get fnName only.
|
||||
__starship_preserved_zle_keymap_select=${widgets[zle-keymap-select]#user:}
|
||||
if [[ -z $__starship_preserved_zle_keymap_select ]]; then
|
||||
if [[ -v widgets[zle-keymap-select] ]]; then
|
||||
# zle-keymap-select is a special widget so it'll be "user:fnName" or nothing. Let's get fnName only.
|
||||
__starship_preserved_zle_keymap_select=${widgets[zle-keymap-select]#user:}
|
||||
fi
|
||||
|
||||
if [[ -z ${__starship_preserved_zle_keymap_select:-} ]]; then
|
||||
zle -N zle-keymap-select starship_zle-keymap-select;
|
||||
else
|
||||
# Define a wrapper fn to call the original widget fn and then Starship's.
|
||||
@@ -87,6 +90,6 @@ VIRTUAL_ENV_DISABLE_PROMPT=1
|
||||
|
||||
setopt promptsubst
|
||||
|
||||
PROMPT='$('::STARSHIP::' prompt --terminal-width="$COLUMNS" --keymap="${KEYMAP:-}" --status="$STARSHIP_CMD_STATUS" --pipestatus="${STARSHIP_PIPE_STATUS[*]}" --cmd-duration="${STARSHIP_DURATION:-}" --jobs="$STARSHIP_JOBS_COUNT")'
|
||||
RPROMPT='$('::STARSHIP::' prompt --right --terminal-width="$COLUMNS" --keymap="${KEYMAP:-}" --status="$STARSHIP_CMD_STATUS" --pipestatus="${STARSHIP_PIPE_STATUS[*]}" --cmd-duration="${STARSHIP_DURATION:-}" --jobs="$STARSHIP_JOBS_COUNT")'
|
||||
PROMPT='$('::STARSHIP::' prompt --terminal-width="$COLUMNS" --keymap="${KEYMAP:-}" --status="${STARSHIP_CMD_STATUS:-}" --pipestatus="${STARSHIP_PIPE_STATUS[*]:-}" --cmd-duration="${STARSHIP_DURATION:-}" --jobs="$STARSHIP_JOBS_COUNT")'
|
||||
RPROMPT='$('::STARSHIP::' prompt --right --terminal-width="$COLUMNS" --keymap="${KEYMAP:-}" --status="${STARSHIP_CMD_STATUS:-}" --pipestatus="${STARSHIP_PIPE_STATUS[*]:-}" --cmd-duration="${STARSHIP_DURATION:-}" --jobs="$STARSHIP_JOBS_COUNT")'
|
||||
PROMPT2="$(::STARSHIP:: prompt --continuation)"
|
||||
|
||||
Reference in New Issue
Block a user