X-Git-Url: https://arthur.barton.de/gitweb/?a=blobdiff_plain;f=plugins%2Fgit%2Fgit.zshrc;h=4d796ef48a5590d67a8111fbbc8df5452dbff3b1;hb=0665b2127b064dd656bd729439067097f86ab091;hp=416f8bd1c5ad516f49344b4dfee106616dd4132d;hpb=26aefd2465acfc0b4f3a962eeb64f4448fbc35f0;p=ax-zsh.git diff --git a/plugins/git/git.zshrc b/plugins/git/git.zshrc index 416f8bd..4d796ef 100644 --- a/plugins/git/git.zshrc +++ b/plugins/git/git.zshrc @@ -36,14 +36,25 @@ git_prompt_behind() { && echo "$ZSH_THEME_VCS_PROMPT_BEHIND" } +git_prompt_info() { + local ref=$(git symbolic-ref HEAD 2>/dev/null) || return 1 + [[ -n "$ref" ]] || return 1 + echo "${ZSH_THEME_VCS_PROMPT_PREFIX}${ref#refs/heads/}${ZSH_THEME_VCS_PROMPT_SUFFIX}" +} +git_prompt_status() { + local ref=$(git symbolic-ref HEAD 2>/dev/null) || return 1 + [[ -n "$ref" ]] || return 1 + echo "$(git_parse_dirty)$(git_prompt_ahead)$(git_prompt_behind)" +} + git_prompt() { - ref=$(git symbolic-ref HEAD 2>/dev/null) || return 1 - echo "${ref#refs/heads/}$(git_parse_dirty)$(git_prompt_ahead)$(git_prompt_behind)" + local prompt=$(git_prompt_info) + [[ -n "$prompt" ]] || return 1 + echo "$prompt$(git_prompt_status)" return 0 } # OhMyZsh compatibility functions -alias git_prompt_info=git_prompt alias parse_git_dirty=git_parse_dirty ax_vcs_prompt_functions=($ax_vcs_prompt_functions git_prompt)