fix(lib/git): fix detection of function use in prompt

RPS1 and RPROMPT are not equivalent, though they have the same effect.
Added both to detect if `git_prompt_*` is used.

Fixes #12325
This commit is contained in:
Marc Cornellà 2024-04-05 07:38:36 +02:00 committed by GitHub
parent 9d529c41cc
commit 0389310390
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -57,13 +57,13 @@ if zstyle -T ':omz:alpha:lib:git' async-prompt; then
# or any of the other prompt variables
function _defer_async_git_register() {
# Check if git_prompt_info is used in a prompt variable
case "${PS1}:${PS2}:${PS3}:${PS4}:${RPS1}:${RPS2}:${RPS3}:${RPS4}" in
case "${PS1}:${PS2}:${PS3}:${PS4}:${RPROMPT}:${RPS1}:${RPS2}:${RPS3}:${RPS4}" in
*(\$\(git_prompt_info\)|\`git_prompt_info\`)*)
_omz_register_handler _omz_git_prompt_info
;;
esac
case "${PS1}:${PS2}:${PS3}:${PS4}:${RPS1}:${RPS2}:${RPS3}:${RPS4}" in
case "${PS1}:${PS2}:${PS3}:${PS4}:${RPROMPT}:${RPS1}:${RPS2}:${RPS3}:${RPS4}" in
*(\$\(git_prompt_status\)|\`git_prompt_status\`)*)
_omz_register_handler _omz_git_prompt_status
;;