aboutsummaryrefslogtreecommitdiff
path: root/internal/p10k.zsh
diff options
context:
space:
mode:
authorromkatv <roman.perepelitsa@gmail.com>2020-02-24 12:32:51 +0300
committerromkatv <roman.perepelitsa@gmail.com>2020-02-24 12:32:51 +0300
commit298169f04255e650749f7ed64fd8739ccf423e0a (patch)
tree8170a1ee8d125b5ed1aee8d52003aa6b4ee6216b /internal/p10k.zsh
parent7c0cd05e9a2e6dd46eb2559199b9afbb606431ff (diff)
parenta2689e757d5bc2fb792379fe2998b370e4f6a169 (diff)
Merge branch 'master' into zsh-api
Diffstat (limited to 'internal/p10k.zsh')
-rw-r--r--internal/p10k.zsh17
1 files changed, 11 insertions, 6 deletions
diff --git a/internal/p10k.zsh b/internal/p10k.zsh
index 531bf526..51f376fc 100644
--- a/internal/p10k.zsh
+++ b/internal/p10k.zsh
@@ -6042,6 +6042,7 @@ _p9k_precmd_impl() {
_p9k_fetch_cwd
_p9k__refresh_reason=precmd
+ __p9k_reset_state=1
if (( _p9k_vcs_index && $+GITSTATUS_DAEMON_PID_POWERLEVEL9K )); then
unset _p9k__vcs
@@ -6084,6 +6085,7 @@ _p9k_precmd_impl() {
fi
_p9k_worker_receive
+ __p9k_reset_state=0
}
_p9k_trapint() {
@@ -6109,14 +6111,19 @@ _p9k_precmd() {
}
function _p9k_reset_prompt() {
- if zle && [[ -z $_p9k__line_finished ]]; then
+ if (( __p9k_reset_state != 1 )) && zle && [[ -z $_p9k__line_finished ]]; then
+ __p9k_reset_state=0
setopt prompt_subst
(( __p9k_ksh_arrays )) && setopt ksh_arrays
(( __p9k_sh_glob )) && setopt sh_glob
(( _p9k__can_hide_cursor )) && echoti civis
- zle .reset-prompt
- zle -R
- (( _p9k__can_hide_cursor )) && echoti cnorm
+ {
+ zle .reset-prompt
+ zle -R
+ } always {
+ (( _p9k__can_hide_cursor )) && echoti cnorm
+ _p9k__cursor_hidden=0
+ }
fi
}
@@ -6743,7 +6750,6 @@ function _p9k_on_widget_zle-line-finish() {
echo -nE - $hide$'\n'$termcap[up]
fi
_p9k_reset_prompt
- __p9k_reset_state=0
fi
_p9k__line_finished='%{%}'
@@ -7968,7 +7974,6 @@ function p10k() {
done
if (( __p9k_reset_state == -1 )); then
_p9k_reset_prompt
- __p9k_reset_state=0
fi
;;
configure)