Not for normies
| 1 | autoload -Uz vcs_info |
| 2 | |
| 3 | zstyle ':vcs_info:*' stagedstr '%F{green}●' |
| 4 | zstyle ':vcs_info:*' unstagedstr '%F{yellow}●' |
| 5 | zstyle ':vcs_info:*' check-for-changes true |
| 6 | zstyle ':vcs_info:svn:*' branchformat '%b' |
| 7 | zstyle ':vcs_info:svn:*' formats ' [%b%F{1}:%F{11}%i%c%u%B%F{green}]' |
| 8 | zstyle ':vcs_info:*' enable git svn |
| 9 | |
| 10 | theme_precmd () { |
| 11 | if [[ -z $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then |
| 12 | zstyle ':vcs_info:git:*' formats ' [%b%c%u%B%F{green}]' |
| 13 | else |
| 14 | zstyle ':vcs_info:git:*' formats ' [%b%c%u%B%F{red}●%F{green}]' |
| 15 | fi |
| 16 | |
| 17 | vcs_info |
| 18 | } |
| 19 | |
| 20 | setopt prompt_subst |
| 21 | PROMPT='%B%F{magenta}%c%B%F{green}${vcs_info_msg_0_}%B%F{magenta} %{$reset_color%}%% ' |
| 22 | |
| 23 | autoload -U add-zsh-hook |
| 24 | add-zsh-hook precmd theme_precmd |