9357f2f41de512106c995991a731318ac462d599
- Author
- Robby Russell <robby@planetargon.com>
- Committer
- Robby Russell <robby@planetargon.com>
- Date
Message
Diff
This diff is truncated to protect this page.
1diff --git a/lib/nvm.zsh b/lib/nvm.zsh
2new file mode 100644
3index 0000000000000000000000000000000000000000..5cadf706195fcb84b0f7e32f9f831d5cd2539a9a
4--- /dev/null
5+++ b/lib/nvm.zsh
6@@ -0,0 +1,9 @@
7+# get the node.js version
8+function nvm_prompt_info() {
9+ [ -f $HOME/.nvm/nvm.sh ] || return
10+ local nvm_prompt
11+ nvm_prompt=$(node -v 2>/dev/null)
12+ [[ "${nvm_prompt}x" == "x" ]] && return
13+ nvm_prompt=${nvm_prompt:1}
14+ echo "${ZSH_THEME_NVM_PROMPT_PREFIX}${nvm_prompt}${ZSH_THEME_NVM_PROMPT_SUFFIX}"
15+}
16diff --git a/themes/bureau.zsh-theme b/themes/bureau.zsh-theme
17new file mode 100644
18index 0000000000000000000000000000000000000000..1d88f54d086923e8cd78e47937efa07698e7354d
19--- /dev/null
20+++ b/themes/bureau.zsh-theme
21@@ -0,0 +1,113 @@
22+# oh-my-zsh Bureau Theme
23+
24+### NVM
25+
26+ZSH_THEME_NVM_PROMPT_PREFIX="%B⬡%b "
27+ZSH_THEME_NVM_PROMPT_SUFFIX=""
28+
29+### Git [±master ▾●]
30+
31+ZSH_THEME_GIT_PROMPT_PREFIX="[%{$fg_bold[green]%}±%{$reset_color%}%{$fg_bold[white]%}"
32+ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}]"
33+ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[green]%}✓%{$reset_color%}"
34+ZSH_THEME_GIT_PROMPT_AHEAD="%{$fg[cyan]%}▴%{$reset_color%}"
35+ZSH_THEME_GIT_PROMPT_BEHIND="%{$fg[magenta]%}▾%{$reset_color%}"
36+ZSH_THEME_GIT_PROMPT_STAGED="%{$fg_bold[green]%}●%{$reset_color%}"
37+ZSH_THEME_GIT_PROMPT_UNSTAGED="%{$fg_bold[yellow]%}●%{$reset_color%}"
38+ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg_bold[red]%}●%{$reset_color%}"
39+
40+bureau_git_branch () {
41+ ref=$(command git symbolic-ref HEAD 2> /dev/null) || \
42+ ref=$(command git rev-parse --short HEAD 2> /dev/null) || return
43+ echo "${ref#refs/heads/}"
44+}
45+
46+bureau_git_status () {
47+ _INDEX=$(command git status --porcelain -b 2> /dev/null)
48+ _STATUS=""
49+ if $(echo "$_INDEX" | grep '^[AMRD]. ' &> /dev/null); then
50+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_STAGED"
51+ fi
52+ if $(echo "$_INDEX" | grep '^.[MTD] ' &> /dev/null); then
53+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_UNSTAGED"
54+ fi
55+ if $(echo "$_INDEX" | grep -E '^\?\? ' &> /dev/null); then
56+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_UNTRACKED"
57+ fi
58+ if $(echo "$_INDEX" | grep '^UU ' &> /dev/null); then
59+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_UNMERGED"
60+ fi
61+ if $(command git rev-parse --verify refs/stash >/dev/null 2>&1); then
62+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_STASHED"
63+ fi
64+ if $(echo "$_INDEX" | grep '^## .*ahead' &> /dev/null); then
65+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_AHEAD"
66+ fi
67+ if $(echo "$_INDEX" | grep '^## .*behind' &> /dev/null); then
68+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_BEHIND"
69+ fi
70+ if $(echo "$_INDEX" | grep '^## .*diverged' &> /dev/null); then
71+ _STATUS="$_STATUS$ZSH_THEME_GIT_PROMPT_DIVERGED"
72+ fi
73+
74+ echo $_STATUS
75+}
76+
77+bureau_git_prompt () {
78+ local _branch=$(bureau_git_branch)
79+ local _status=$(bureau_git_status)
80+ local _result=""
81+ if [[ "${_branch}x" != "x" ]]; then
82+ _result="$ZSH_THEME_GIT_PROMPT_PREFIX$_branch"
83+ if [[ "${_status}x" != "x" ]]; then
84+ _result="$_result $_status"
85+ fi
86+ _result="$_result$ZSH_THEME_GIT_PROMPT_SUFFIX"
87+ fi
88+ echo $_result
89+}
90+
91+
92+_PATH="%{$fg_bold[white]%}%~%{$reset_color%}"
93+
94+if [[ "%#" == "#" ]]; then
95+ _USERNAME="%{$fg_bold[red]%}%n"
96+ _LIBERTY="%{$fg[red]%}#"
97+else
98+ _USERNAME="%{$fg_bold[white]%}%n"
99+ _LIBERTY="%{$fg[green]%}$"
100+fi
101+_USERNAME="$_USERNAME%{$reset_color%}@%m"
102+_LIBERTY="$_LIBERTY%{$reset_color%}"
103+
104+
105+get_space () {
106+ local STR=$1$2
107+ local zero='%([BSUbfksu]|([FB]|){*})'
108+ local LENGTH=${#${(S%%)STR//$~zero/}}
109+ local SPACES=""
110+ (( LENGTH = ${COLUMNS} - $LENGTH - 1))
111+
112+ for i in {0..$LENGTH}
113+ do
114+ SPACES="$SPACES "
115+ done
116+
117+ echo $SPACES
118+}
119+
120+_1LEFT="$_USERNAME $_PATH"