rkj-repos.zsh-theme 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. # user, host, full path, and time/date on two lines for easier vgrepping
  2. if ! grep -q "prompt" ~/.hgrc; then
  3. echo "This theme requires 'hg prompt' (https://bitbucket.org/sjl/hg-prompt/overview)"
  4. return 1
  5. fi
  6. function hg_prompt_info {
  7. hg prompt --angle-brackets "\
  8. <hg:%{$fg[magenta]%}<branch>%{$reset_color%}><:%{$fg[magenta]%}<bookmark>%{$reset_color%}>\
  9. </%{$fg[yellow]%}<tags|%{$reset_color%}, %{$fg[yellow]%}>%{$reset_color%}>\
  10. %{$fg[red]%}<status|modified|unknown><update>%{$reset_color%}<
  11. patches: <patches|join( → )|pre_applied(%{$fg[yellow]%})|post_applied(%{$reset_color%})|pre_unapplied(%{$fg_bold[black]%})|post_unapplied(%{$reset_color%})>>" 2>/dev/null
  12. }
  13. ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[cyan]%}+"
  14. ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%}✱"
  15. ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%}✗"
  16. ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%}➦"
  17. ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%}✂"
  18. ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[blue]%}✈"
  19. ZSH_THEME_GIT_PROMPT_SHA_BEFORE=" %{$fg[blue]%}"
  20. ZSH_THEME_GIT_PROMPT_SHA_AFTER="%{$reset_color%}"
  21. function mygit() {
  22. if [[ "$(git config --get oh-my-zsh.hide-status)" != "1" ]]; then
  23. ref=$(command git symbolic-ref HEAD 2> /dev/null) || \
  24. ref=$(command git rev-parse --short HEAD 2> /dev/null) || return
  25. echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$(git_prompt_short_sha)$(git_prompt_status)%{$fg_bold[blue]%}$ZSH_THEME_GIT_PROMPT_SUFFIX "
  26. fi
  27. }
  28. function retcode() {}
  29. # alternate prompt with git & hg
  30. PROMPT=$'%{$fg_bold[blue]%}┌─[%{$fg_bold[green]%}%n%b%{$fg[black]%}@%{$fg[cyan]%}%m%{$fg_bold[blue]%}]%{$reset_color%} - %{$fg_bold[blue]%}[%{$fg_bold[white]%}%~%{$fg_bold[blue]%}]%{$reset_color%} - %{$fg_bold[blue]%}[%b%{$fg[yellow]%}'%D{"%Y-%m-%d %I:%M:%S"}%b$'%{$fg_bold[blue]%}]
  31. %{$fg_bold[blue]%}└─[%{$fg_bold[magenta]%}%?$(retcode)%{$fg_bold[blue]%}] <$(mygit)$(hg_prompt_info)>%{$reset_color%} '
  32. PS2=$' \e[0;34m%}%B>%{\e[0m%}%b '