-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathwork-line.zsh-theme
49 lines (42 loc) · 1.28 KB
/
work-line.zsh-theme
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# Work Line Zsh Theme
# Prompt Style
WL_VCS_PROMPT_PREFIX_1="%{$fg[white]%}on%{$reset_color%} "
WL_VCS_PROMPT_PREFIX_2=":%{$fg[blue]%}"
WL_VCS_PROMPT_SUFFIX="%{$reset_color%} "
WL_VCS_PROMPT_DIRTY=" %{$fg[red]%}✗"
WL_VCS_PROMPT_CLEAN=" %{$fg[green]%}✔︎"
# Show Current Directory
local current_dir='${PWD/#$HOME/~}'
function box {
[ -f ~/.box-name ] && cat ~/.box-name || echo $HOST
}
local git_info='$(git_prompt_info)'
# Show Style on Prompt
ZSH_THEME_GIT_PROMPT_PREFIX="${WL_VCS_PROMPT_PREFIX_1}git${WL_VCS_PROMPT_PREFIX_2}"
ZSH_THEME_GIT_PROMPT_SUFFIX="$WL_VCS_PROMPT_SUFFIX"
ZSH_THEME_GIT_PROMPT_DIRTY="$WL_VCS_PROMPT_DIRTY"
ZSH_THEME_GIT_PROMPT_CLEAN="$WL_VCS_PROMPT_CLEAN"
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?"
ZSH_THEME_GIT_PROMPT_CLEAN=""
local hg_info='$(wl_hg_prompt_info)'
wl_hg_prompt_info() {
if [ -d '.hg' ]; then
echo -n "${WL_VCS_PROMPT_PREFIX_1}hg${WL_VCS_PROMPT_PREFIX_2}"
echo -n $(hg branch 2>/dev/null)
if [ -n "$(hg status 2>/dev/null)" ]; then
echo -n "$WL_VCS_PROMPT_DIRTY"
else
echo -n "$WL_VCS_PROMPT_CLEAN"
fi
echo -n "$WL_VCS_PROMPT_SUFFIX"
fi
}
# Main Prompt
PROMPT="
%{$fg[blue]%}%n \
%{$fg[white]%}in \
%{$terminfo[bold]$fg[yellow]%}[${current_dir}]%{$reset_color%}\
${hg_info} \
${git_info}
%{$fg[yellow]%}%* \
⚡️ %{$reset_color%}"