gnzh.zsh-theme 1.34 KB
Newer Older
1
# ZSH Theme - Preview: http://dl.dropbox.com/u/4109351/pics/gnzh-zsh-theme.png
Max Gonzih's avatar
Max Gonzih committed
2
3
4
5
# Based on bira theme

setopt prompt_subst

6
7
8
() {

local PR_USER PR_USER_OP PR_PROMPT PR_HOST
Max Gonzih's avatar
Max Gonzih committed
9
10

# Check the UID
11
if [[ $UID -ne 0 ]]; then # normal user
12
13
14
  PR_USER='%F{green}%n%f'
  PR_USER_OP='%F{green}%#%f'
  PR_PROMPT='%f➤ %f'
15
else # root
16
17
18
  PR_USER='%F{red}%n%f'
  PR_USER_OP='%F{red}%#%f'
  PR_PROMPT='%F{red}➤ %f'
Max Gonzih's avatar
Max Gonzih committed
19
20
21
fi

# Check if we are on SSH or not
22
if [[ -n "$SSH_CLIENT"  ||  -n "$SSH2_CLIENT" ]]; then
23
  PR_HOST='%F{red}%M%f' # SSH
Max Gonzih's avatar
Max Gonzih committed
24
else
25
  PR_HOST='%F{green}%M%f' # no SSH
Max Gonzih's avatar
Max Gonzih committed
26
27
28
fi


29
30
31
32
local return_code="%(?..%F{red}%? ↵%f)"

local user_host="${PR_USER}%F{cyan}@${PR_HOST}"
local current_dir="%B%F{blue}%~%f%b"
33
local rvm_ruby=''
34
35
36
37
38
39
if ${HOME}/.rvm/bin/rvm-prompt &> /dev/null; then # detect user-local rvm installation
  rvm_ruby='%F{red}‹$(${HOME}/.rvm/bin/rvm-prompt i v g s)›%f'
elif which rvm-prompt &> /dev/null; then # detect system-wide rvm installation
  rvm_ruby='%F{red}‹$(rvm-prompt i v g s)›%f'
elif which rbenv &> /dev/null; then # detect Simple Ruby Version Management
  rvm_ruby='%F{red}‹$(rbenv version | sed -e "s/ (set.*$//")›%f'
40
fi
41
local git_branch='$(git_prompt_info)'
Max Gonzih's avatar
Max Gonzih committed
42
43
44

PROMPT="╭─${user_host} ${current_dir} ${rvm_ruby} ${git_branch}
╰─$PR_PROMPT "
45
46
47
48
RPROMPT="${return_code}"

ZSH_THEME_GIT_PROMPT_PREFIX="%F{yellow}‹"
ZSH_THEME_GIT_PROMPT_SUFFIX="› %f"
Max Gonzih's avatar
Max Gonzih committed
49

50
}