add theme that uses paths relative to git worktree

This commit is contained in:
Johann Klähn 2010-09-17 12:21:55 +02:00
commit 35c5a183c6

View file

@ -0,0 +1,27 @@
# based on clean.zsh-theme
if [ "$(whoami)" = "root" ]; then NCOLOR="red"; else NCOLOR="white"; fi
# display path relative to current git work tree or trailing component of PWD
function prompt_relative_dir {
worktree=$(git rev-parse --show-toplevel 2> /dev/null)
reldir="${PWD#"$worktree/"}"
if [[ -n "$worktree" && "$reldir" != "$PWD" ]]; then
echo "%{$fg[green]%}$reldir%{$reset_color%}"
else
echo "%{$fg[blue]%}%c%{$reset_color%}"
fi
}
PROMPT='%{$fg[$NCOLOR]%}%B%n%b%{$reset_color%}:%B$(prompt_relative_dir)%b $(git_prompt_info)%(?.%(!.#.$).%{$fg[red]%}%B%?%b%{$reset_color%}) '
RPROMPT='[%*]'
# git theming
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg_no_bold[yellow]%}%B"
ZSH_THEME_GIT_PROMPT_SUFFIX="%b%{$fg_bold[blue]%})%{$reset_color%} "
ZSH_THEME_GIT_PROMPT_CLEAN=""
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%}✗"
# LS colors, made with http://geoff.greer.fm/lscolors/
export LSCOLORS="Gxfxcxdxbxegedabagacad"
export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:'