From 89f9365f1722eb88d3f64a7c6cd8e6a87dc2e220 Mon Sep 17 00:00:00 2001 From: Gea-Suan Lin Date: Sat, 15 Mar 2014 22:47:09 +0800 Subject: [PATCH] Use zsh vcs_info to support git branch info in prompt. --- .zshrc | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/.zshrc b/.zshrc index f720ac7..91ba910 100644 --- a/.zshrc +++ b/.zshrc @@ -32,6 +32,21 @@ fi autoload -Uz compinit compinit # +autoload -Uz vcs_info +zstyle ':vcs_info:*' enable git +zstyle ':vcs_info:git*' formats "%b" +precmd() { + vcs_info + if [[ -z "$WINDOW" ]]; then + PS1=$'%{\e[G\e[m\e[32m%}%n%{\e[m%}@%{\e[36m%}%m%{\e[m%} [%{\e[32m%}%~%{\e[m%}] [%{\e[36m%}%D{%R}%{\e[m%}] ' + else + PS1=$'%{\e[G\e[m\e[32m%}%n%{\e[m%}@%{\e[36m%}%m%{\e[m%} [%{\e[32m%}%~%{\e[m%}] [%{\e[36m%}%D{%R}%{\e[m%}/%{\e[36m%}W${WINDOW}%{\e[m%}]%{\e[0m%} ' + fi + if [[ ! -z "$vcs_info_msg_0_" ]]; then + PS1+=$'%{\e[1;30m%}(${vcs_info_msg_0_})%{\e[m%} ' + fi +} +# bindkey -e typeset -A key key[Delete]=${terminfo[kdch1]} @@ -77,12 +92,6 @@ setopt hist_ignore_all_dups setopt menu_complete setopt prompt_subst # -if [[ -z "$WINDOW" ]]; then - PS1=$'%{\e[G\e[m\e[32m%}%n%{\e[m%}@%{\e[36m%}%m%{\e[m%} [%{\e[32m%}%~%{\e[m%}] [%{\e[36m%}%D{%R}%{\e[m%}] ' -else - PS1=$'%{\e[G\e[m\e[32m%}%n%{\e[m%}@%{\e[36m%}%m%{\e[m%} [%{\e[32m%}%~%{\e[m%}] [%{\e[36m%}%D{%R}%{\e[m%}/%{\e[36m%}W${WINDOW}%{\e[m%}]%{\e[0m%} ' -fi -# zstyle ':completion:*' menu select # [[ -s "$HOME/.zshrc.local" ]] && . "$HOME/.zshrc.local"