ohmyzsh/themes/jz.zsh-theme
2011-07-10 01:02:48 -07:00

88 lines
2.8 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ------------------------------------------------------------------------------
# FILE: jz.zsh-theme
# DESCRIPTION: oh-my-zsh theme file.
# AUTHOR: Justin Zhu (haoranjzhu@gmail.com)
# VERSION: 1.0.0
# SCREENSHOT:
# ------------------------------------------------------------------------------
# Shows background jobs:
# #jobs Display
# 0 Nothing
# 1-7 [bg:#jobs] in yellow
# > 8 [bg:#jobs] in red
#
# Shows suspended jobs:
# #jobs Display
# 0 Nothing
# 1-2 [sp:#jobs] in yellow
# > 2 [bg:#jobs] in red
jobs_precmd_hook() {
local count=$#jobstates[(R)running*]
if [[ count -gt 8 ]]; then
BG_COUNT="%{$fg[red]%}[bg:${count}]%{$reset_color%}"
elif [[ count -gt 0 ]]; then
BG_COUNT="%{$fg[yellow]%}[bg:${count}]%{$reset_color%}"
else
BG_COUNT=""
fi
count=$#jobstates[(R)suspended*]
if [[ count -gt 2 ]]; then
SP_COUNT="%{$fg[red]%}[sp:${count}]%{$reset_color%}"
elif [[ count -gt 0 ]]; then
SP_COUNT="%{$fg[yellow]%}[sp:${count}]%{$reset_color%}"
else
SP_COUNT=""
fi
}
autoload -Uz add-zsh-hook
add-zsh-hook precmd jobs_precmd_hook
git_prompt_info_status() {
local git_info=$(git_prompt_info)
[[ -n $git_info ]] && echo "%{$fg[green]%}[${git_info}$(git_prompt_status)%{$fg[green]%}]%{$reset_color%}"
}
if [[ "$TERM" != "dumb" ]] && [[ "$DISABLE_LS_COLORS" != "true" ]]; then
PROMPT='%{$fg[blue]%}[%{$fg[red]%}%n%{$FG[242]%}@%{$fg[magenta]%}%m%{$reset_color%}:%{$fg[blue]%}%~]%{$reset_color%}$(git_prompt_info_status)$BG_COUNT$SP_COUNT
%(?.%{$fg_bold[green]%}.%{$fg_bold[red]%})%{$reset_color%} '
ZSH_THEME_GIT_PROMPT_PREFIX=""
ZSH_THEME_GIT_PROMPT_SUFFIX=""
ZSH_THEME_GIT_PROMPT_DIRTY=""
ZSH_THEME_GIT_PROMPT_CLEAN=""
# display exitcode on the right when >0
return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
RPROMPT='${return_code}%{$reset_color%}'
ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚"
ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹"
ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖"
ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜"
ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═"
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭"
else
PROMPT='[%n@%m:%~$(git_prompt_info)]
'
ZSH_THEME_GIT_PROMPT_PREFIX=" on"
ZSH_THEME_GIT_PROMPT_SUFFIX=""
ZSH_THEME_GIT_PROMPT_DIRTY=""
ZSH_THEME_GIT_PROMPT_CLEAN=""
# display exitcode on the right when >0
return_code="%(?..%? ↵)"
RPROMPT='${return_code}$(git_prompt_status)'
ZSH_THEME_GIT_PROMPT_ADDED=" ✚"
ZSH_THEME_GIT_PROMPT_MODIFIED=" ✹"
ZSH_THEME_GIT_PROMPT_DELETED=" ✖"
ZSH_THEME_GIT_PROMPT_RENAMED=" ➜"
ZSH_THEME_GIT_PROMPT_UNMERGED=" ═"
ZSH_THEME_GIT_PROMPT_UNTRACKED=" ✭"
fi