feat: prompt_subst
This commit is contained in:
parent
7c98658d24
commit
57243c81fa
@ -32,7 +32,7 @@ function +vi-git-untracked(){
|
||||
}
|
||||
|
||||
function preexec() {
|
||||
_timer_start="$SECONDS"
|
||||
PROMPT_timer="$SECONDS"
|
||||
}
|
||||
|
||||
function _get_time() {
|
||||
@ -51,23 +51,21 @@ function _get_time() {
|
||||
}
|
||||
|
||||
function precmd() {
|
||||
IFS='|' local timer ctx err="${pipestatus[*]}"
|
||||
IFS='|' local ctx timer err="${pipestatus[*]}"
|
||||
|
||||
[ "$_timer_start" -gt 0 ] && timer="$((SECONDS - _timer_start))"
|
||||
_timer_start=-1
|
||||
[ -n "$PROMPT_timer" ] && timer="$((SECONDS - PROMPT_timer))"
|
||||
unset -m 'PROMPT_*'
|
||||
|
||||
ctx="$(kubectx -c)"
|
||||
|
||||
vcs_info
|
||||
|
||||
PROMPT=''
|
||||
[ -n "$ctx" ] && PROMPT+="%{%F{134}%}$ctx/$(kubens -c)%{%f%b%} "
|
||||
PROMPT+='%{%B%F{32}%}%~%{%f%b%} '
|
||||
PROMPT+="$vcs_info_msg_0_"
|
||||
[ "$timer" -ge 2 ] && PROMPT+="%{%F{101}%}$(_get_time "$timer")%{%f%b%} "
|
||||
[[ "$err" =~ [1-9] ]] && PROMPT+="%{%F{160}%}${err[*]}%{%f%b%} "
|
||||
|
||||
RPROMPT=''
|
||||
RPROMPT+=' %{%F{71}%}%(1j.%j.)%{%f%b%}'
|
||||
[ -n "$VIRTUAL_ENV" ] && RPROMPT+=" %{%F{37}%}${VIRTUAL_ENV:h:t}%{%f%b%}"
|
||||
[ -n "$ctx" ] && PROMPT_K8S="%{%F{134}%}$ctx/$(kubens -c)%{%f%b%} "
|
||||
[ "$timer" -ge 2 ] && PROMPT_TIMER="%{%F{101}%}$(_get_time "$timer")%{%f%b%} "
|
||||
[[ "$err" =~ [1-9] ]] && PROMPT_ERR="%{%F{160}%}$err%{%f%b%} "
|
||||
[ -n "$VIRTUAL_ENV" ] && PROMPT_VENV=" %{%F{37}%}${VIRTUAL_ENV:h:t}%{%f%b%}"
|
||||
}
|
||||
|
||||
setopt PROMPT_SUBST
|
||||
PROMPT='$PROMPT_K8S%{%B%F{32}%}%~%{%f%b%} $vcs_info_msg_0_$PROMPT_TIMER$PROMPT_ERR'
|
||||
RPROMPT='%{%F{71}%}%(1j.%j.)%{%f%b%}$PROMPT_VENV'
|
||||
|
Loading…
Reference in New Issue
Block a user