mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2025-12-10 18:29:50 +00:00
fix(vagrant-prompt): make vagrant_prompt_info generic for any state (#12782)
This commit is contained in:
@@ -1,16 +1,18 @@
|
||||
function vagrant_prompt_info() {
|
||||
local vm_states vm_state
|
||||
if [[ -d .vagrant && -f Vagrantfile ]]; then
|
||||
vm_states=(${(f)"$(vagrant status 2> /dev/null | sed -nE 's/^.*(saved|poweroff|running|not created) \([[:alnum:]_]+\)$/\1/p')"})
|
||||
printf '%s' $ZSH_THEME_VAGRANT_PROMPT_PREFIX
|
||||
for vm_state in $vm_states; do
|
||||
case "$vm_state" in
|
||||
saved) printf '%s' $ZSH_THEME_VAGRANT_PROMPT_SUSPENDED ;;
|
||||
running) printf '%s' $ZSH_THEME_VAGRANT_PROMPT_RUNNING ;;
|
||||
poweroff) printf '%s' $ZSH_THEME_VAGRANT_PROMPT_POWEROFF ;;
|
||||
"not created") printf '%s' $ZSH_THEME_VAGRANT_PROMPT_NOT_CREATED ;;
|
||||
esac
|
||||
done
|
||||
printf '%s' $ZSH_THEME_VAGRANT_PROMPT_SUFFIX
|
||||
if [[ ! -d .vagrant || ! -f Vagrantfile ]]; then
|
||||
return
|
||||
fi
|
||||
|
||||
local vm_states vm_state
|
||||
vm_states=(${(f)"$(vagrant status 2> /dev/null | sed -nE 's/^[^ ]* *([[:alnum:] ]*) \([[:alnum:]_]+\)$/\1/p')"})
|
||||
printf '%s' $ZSH_THEME_VAGRANT_PROMPT_PREFIX
|
||||
for vm_state in $vm_states; do
|
||||
case "$vm_state" in
|
||||
running) printf '%s' $ZSH_THEME_VAGRANT_PROMPT_RUNNING ;;
|
||||
"not running"|poweroff) printf '%s' $ZSH_THEME_VAGRANT_PROMPT_POWEROFF ;;
|
||||
paused|saved|suspended) printf '%s' $ZSH_THEME_VAGRANT_PROMPT_SUSPENDED ;;
|
||||
"not created") printf '%s' $ZSH_THEME_VAGRANT_PROMPT_NOT_CREATED ;;
|
||||
esac
|
||||
done
|
||||
printf '%s' $ZSH_THEME_VAGRANT_PROMPT_SUFFIX
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user