1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-11-23 06:37:11 +08:00
ohmyzsh/git.zsh
Christopher Sexton 85a4e30289 Added risto theme and made git.zsh themable
* git.zsh is now themable:
   * git_prompt_info() now will look in the following variables for
     formatting strings:
     * ZSH_THEME_GIT_PROMPT_PREFIX - Prefix for the prompt (before the
       branch name)
     * ZSH_THEME_GIT_PROMPT_SUFFIX - The very end of the prompt
     * ZSH_THEME_GIT_PROMPT_DIRTY - Displayed when the branch is dirty
     * ZSH_THEME_GIT_PROMPT_CLEAN - Displayed when the branch is clean
 * Updated geoffgarside, robbyrussell, and maran to work with new git
   theme
 * Added the Risto theme, which is very similar to a number of bash
   prompts, and allows me to use zsh in with out my co-workers knowing I
   have the advantage. Think of it as a ninja theme.
2009-09-14 12:42:53 -04:00

27 lines
682 B
Bash

#
ZSH_THEME_GIT_PROMPT_PREFIX="git:("
ZSH_THEME_GIT_PROMPT_SUFFIX=")"
ZSH_THEME_GIT_PROMPT_DIRTY="*"
ZSH_THEME_GIT_PROMPT_CLEAN=""
# get the name of the branch we are on
function git_prompt_info() {
if [[ -d .git ]]; then
ref=$(git symbolic-ref HEAD 2> /dev/null) || return
branch=${ref#refs/heads/}
CURRENT_BRANCH="$ZSH_THEME_GIT_PROMPT_PREFIX${branch}$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX"
else
CURRENT_BRANCH=''
fi
echo $CURRENT_BRANCH
}
parse_git_dirty () {
if [[ $(git status | tail -n1) != "nothing to commit (working directory clean)" ]]; then
echo "$ZSH_THEME_GIT_PROMPT_DIRTY"
else
echo "$ZSH_THEME_GIT_PROMPT_CLEAN"
fi
}