12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- grey='\e[0;90m'
- ZSH_THEME_GIT_PROMPT_PREFIX="%{$grey%}("
- ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
- ZSH_THEME_GIT_PROMPT_DIRTY="%{$grey%}) %{$fg[yellow]%}✗%{$reset_color%}"
- ZSH_THEME_GIT_PROMPT_CLEAN="%{$grey%})"
- function josh_prompt {
- (( spare_width = ${COLUMNS} ))
- prompt=" "
- branch=$(git_current_branch)
- ruby_version=$(ruby_prompt_info)
- path_size=${#PWD}
- branch_size=${#branch}
- ruby_size=${#ruby_version}
- user_machine_size=${#${(%):-%n@%m-}}
-
- if [[ ${#branch} -eq 0 ]]
- then (( ruby_size = ruby_size + 1 ))
- else
- (( branch_size = branch_size + 4 ))
- if [[ -n $(git status -s 2> /dev/null) ]]; then
- (( branch_size = branch_size + 2 ))
- fi
- fi
-
- (( spare_width = ${spare_width} - (${user_machine_size} + ${path_size} + ${branch_size} + ${ruby_size}) ))
- while [ ${#prompt} -lt $spare_width ]; do
- prompt=" $prompt"
- done
-
- prompt="%{%F{green}%}$PWD$prompt%{%F{red}%}$(ruby_prompt_info)%{$reset_color%} $(git_current_branch)"
-
- echo $prompt
- }
- setopt prompt_subst
- PROMPT='
- %n@%m $(josh_prompt)
- %(?,%{%F{green}%},%{%F{red}%})⚡%{$reset_color%} '
|