Skip to content

Instantly share code, notes, and snippets.

@luvpreetsingh
Created November 26, 2019 06:06
Show Gist options
  • Save luvpreetsingh/b0901c56990f6f8f7a747685726577a1 to your computer and use it in GitHub Desktop.
Save luvpreetsingh/b0901c56990f6f8f7a747685726577a1 to your computer and use it in GitHub Desktop.
Custom theme for zsh
function collapse_pwd {
echo $(pwd | sed -e "s,^$HOME,~,")
}
function prompt_char {
git branch >/dev/null 2>/dev/null && echo '$' && return
hg root >/dev/null 2>/dev/null && echo '☿' && return
echo '○'
}
function virtualenv_info {
[ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') '
}
function hg_prompt_info {
hg prompt --angle-brackets "\
< on %{$fg[magenta]%}<branch>%{$reset_color%}>\
< at %{$fg[yellow]%}<tags|%{$reset_color%}, %{$fg[yellow]%}>%{$reset_color%}>\
%{$fg[green]%}<status|modified|unknown><update>%{$reset_color%}<
patches: <patches|join( → )|pre_applied(%{$fg[yellow]%})|post_applied(%{$reset_color%})|pre_unapplied(%{$fg_bold[black]%})|post_unapplied(%{$reset_color%})>>" 2>/dev/null
}
PROMPT='$(virtualenv_info) IN %{$fg_bold[green]%}$(collapse_pwd)%{$reset_color%}$(hg_prompt_info) $(git_prompt_info) $(prompt_char) '
RPROMPT='$(pmset -g batt | grep -Eo "\d+%" | cut -d% -f1)'
ZSH_THEME_GIT_PROMPT_PREFIX=" on branch %{$fg[green]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!"
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?"
ZSH_THEME_GIT_PROMPT_CLEAN=""
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment