Skip to content

Instantly share code, notes, and snippets.

@JMBattista
Created May 26, 2015 19:04
Show Gist options
  • Save JMBattista/9e39842b48f3672b6d48 to your computer and use it in GitHub Desktop.
Save JMBattista/9e39842b48f3672b6d48 to your computer and use it in GitHub Desktop.
Modified Pygmalion theme
# Modified version of pygmalion, to hide my username and show a shorter path
prompt_setup_jbattista(){
ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[green]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%}⚡%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_CLEAN=""
user_prompt='%{$fg[magenta]%}%n%{$reset_color%}%{$fg[cyan]%}@%{$reset_color%}'
machine_prompt='%{$fg[yellow]%}%m%{$reset_color%}%{$fg[red]%}:'
base_prompt=''
if [[ $USERNAME -ne 'jbattista' ]]; then
base_prompt+=$user_prompt
fi
base_prompt+=$machine_prompt
base_prompt+='%{$reset_color%}%{$fg[cyan]%}%2~%{$reset_color%}%{$fg[red]%}|%{$reset_color%}'
post_prompt='%{$fg[cyan]%}$%{$reset_color%} '
base_prompt_nocolor=$(echo "$base_prompt" | perl -pe "s/%\{[^}]+\}//g")
post_prompt_nocolor=$(echo "$post_prompt" | perl -pe "s/%\{[^}]+\}//g")
precmd_functions+=(prompt_jbattista_precmd)
}
prompt_jbattista_precmd(){
local gitinfo=$(git_prompt_info)
local gitinfo_nocolor=$(echo "$gitinfo" | perl -pe "s/%\{[^}]+\}//g")
local exp_nocolor="$(print -P \"$base_prompt_nocolor$gitinfo_nocolor$post_prompt_nocolor\")"
local prompt_length=${#exp_nocolor}
local nl=""
if [[ $prompt_length -gt 40 ]]; then
nl=$'\n%{\r%}';
fi
PROMPT="$base_prompt$gitinfo$nl$post_prompt"
}
prompt_setup_jbattista
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment