don't reset prompt when precmd is called from zle

pull/527/head
romkatv 5 years ago
parent 4b4f514c15
commit a2689e757d

@ -6041,7 +6041,9 @@ _p9k_precmd_impl() {
preexec_functions=(${(@)preexec_functions:#_p9k_preexec2} _p9k_preexec2) preexec_functions=(${(@)preexec_functions:#_p9k_preexec2} _p9k_preexec2)
fi fi
__p9k_reset_state=1
_p9k_worker_receive _p9k_worker_receive
__p9k_reset_state=0
} }
_p9k_trapint() { _p9k_trapint() {
@ -6067,14 +6069,19 @@ _p9k_precmd() {
} }
function _p9k_reset_prompt() { 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 setopt prompt_subst
(( __p9k_ksh_arrays )) && setopt ksh_arrays (( __p9k_ksh_arrays )) && setopt ksh_arrays
(( __p9k_sh_glob )) && setopt sh_glob (( __p9k_sh_glob )) && setopt sh_glob
(( _p9k__can_hide_cursor )) && echoti civis (( _p9k__can_hide_cursor )) && echoti civis
{
zle .reset-prompt zle .reset-prompt
zle -R zle -R
} always {
(( _p9k__can_hide_cursor )) && echoti cnorm (( _p9k__can_hide_cursor )) && echoti cnorm
_p9k__cursor_hidden=0
}
fi fi
} }
@ -6699,7 +6706,6 @@ function _p9k_on_widget_zle-line-finish() {
echo -nE - $hide$'\n'$termcap[up] echo -nE - $hide$'\n'$termcap[up]
fi fi
_p9k_reset_prompt _p9k_reset_prompt
__p9k_reset_state=0
fi fi
_p9k__line_finished='%{%}' _p9k__line_finished='%{%}'
@ -7898,7 +7904,6 @@ function p10k() {
done done
if (( __p9k_reset_state == -1 )); then if (( __p9k_reset_state == -1 )); then
_p9k_reset_prompt _p9k_reset_prompt
__p9k_reset_state=0
fi fi
;; ;;
configure) configure)

Loading…
Cancel
Save