mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2025-12-26 02:12:33 +01:00
Refactors custom git functions
This commit is contained in:
parent
90b5bdb5ac
commit
e350ab74fc
1 changed files with 22 additions and 21 deletions
|
|
@ -3,25 +3,6 @@
|
||||||
# (Needs Git plugin)
|
# (Needs Git plugin)
|
||||||
# ------------------------------------------------------------------------
|
# ------------------------------------------------------------------------
|
||||||
|
|
||||||
# Get current commit short SHA (formatted and coloured)
|
|
||||||
function git_prompt_sha() {
|
|
||||||
sha=$(git rev-parse --short HEAD 2> /dev/null) || return
|
|
||||||
echo "%{$fg[white]%}[%{$fg[yellow]%}"$sha"%{$fg[white]%}]"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Checks if there are commits ahead from remote
|
|
||||||
function git_parse_ahead() {
|
|
||||||
if $(echo "$(git log origin/master..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then
|
|
||||||
echo " %{$fg[red]%}(!)"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Prompts
|
|
||||||
PROMPT='
|
|
||||||
%{$fg_bold[green]%}%n@%m%{$fg[white]%}:%{$fg[yellow]%}%~%u$(parse_git_dirty)$(git_parse_ahead)%{$reset_color%}
|
|
||||||
%{$fg[blue]%}>%{$reset_color%} '
|
|
||||||
RPROMPT='%{$fg_bold[green]%}$(current_branch) $(git_prompt_sha) $(git_prompt_status)%{$reset_color%}'
|
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_PREFIX=""
|
ZSH_THEME_GIT_PROMPT_PREFIX=""
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX=""
|
ZSH_THEME_GIT_PROMPT_SUFFIX=""
|
||||||
ZSH_THEME_GIT_PROMPT_UNMERGED=" %{$fg[red]%}unmerged "
|
ZSH_THEME_GIT_PROMPT_UNMERGED=" %{$fg[red]%}unmerged "
|
||||||
|
|
@ -29,6 +10,26 @@ ZSH_THEME_GIT_PROMPT_DELETED=" %{$fg[red]%}deleted "
|
||||||
ZSH_THEME_GIT_PROMPT_RENAMED=" %{$fg[yellow]%}renamed "
|
ZSH_THEME_GIT_PROMPT_RENAMED=" %{$fg[yellow]%}renamed "
|
||||||
ZSH_THEME_GIT_PROMPT_MODIFIED=" %{$fg[yellow]%}modified "
|
ZSH_THEME_GIT_PROMPT_MODIFIED=" %{$fg[yellow]%}modified "
|
||||||
ZSH_THEME_GIT_PROMPT_ADDED=" %{$fg[green]%}added "
|
ZSH_THEME_GIT_PROMPT_ADDED=" %{$fg[green]%}added "
|
||||||
ZSH_THEME_GIT_PROMPT_UNTRACKED=""
|
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[white]%}untracked "
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}(*)"
|
ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}(*)"
|
||||||
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
ZSH_THEME_GIT_PROMPT_AHEAD=" %{$fg[red]%}(!)"
|
||||||
|
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
||||||
|
|
||||||
|
# Get current commit short SHA (formatted and coloured)
|
||||||
|
function git_prompt_sha() {
|
||||||
|
sha=$(git rev-parse --short HEAD 2> /dev/null) || return
|
||||||
|
echo "$sha"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Checks if there are commits ahead from remote
|
||||||
|
function git_prompt_ahead() {
|
||||||
|
if $(echo "$(git log origin/master..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then
|
||||||
|
echo "$ZSH_THEME_GIT_PROMPT_AHEAD"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Prompts
|
||||||
|
PROMPT='
|
||||||
|
%{$fg_bold[green]%}%n@%m%{$fg[white]%}:%{$fg[yellow]%}%~%u$(parse_git_dirty)$(git_prompt_ahead)%{$reset_color%}
|
||||||
|
%{$fg[blue]%}>%{$reset_color%} '
|
||||||
|
RPROMPT='%{$fg_bold[green]%}$(current_branch) %{$fg[white]%}[%{$fg[yellow]%}$(git_prompt_sha)%{$fg[white]%}] $(git_prompt_status)%{$reset_color%}'
|
||||||
Loading…
Add table
Add a link
Reference in a new issue