X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=zsh%2Frc;h=b28757eec6fffce0634f977e02decfd7d8ffe674;hb=b4b3911d9f162de2a8632de90dfe3449cf58a4f2;hp=aa24736f255ff9601af685db50807ff0cecd9c99;hpb=0aec88759df96ba7db29be7e7dc299f05f797e68;p=config%2Fdotfiles.git diff --git a/zsh/rc b/zsh/rc index aa24736..b28757e 100644 --- a/zsh/rc +++ b/zsh/rc @@ -66,6 +66,31 @@ PROMPT="%{${fg[green]}%}%B%m%b%{${fg[default]}%}:\ %(1j.%{${fg[yellow]}%}%j%{${fg[default]}%}.)%(2L.+.)%# \ %(?..(%{${fg[red]}%}%B%?%b%{${fg[default]}%}%) )" +# Allow substitutions and expansions in the prompt, necessary for vcs_info. +setopt promptsubst +# Load vcs_info to display information about version control repositories. +autoload -Uz vcs_info +# Only look for git and mercurial repositories; the only I use. +zstyle ':vcs_info:*' enable git hg +# Set style of vcs_info display. The current branch (green) and vcs (blue) is +# displayed. If there is an special action going on (merge, rebase) it's also +# displayed (red). +zstyle ':vcs_info:*' formats \ +"(%{${fg[green]}%}%b%{${fg[default]}%}:\ +%{${fg[blue]}%}%s%{${fg[default]}%})" +zstyle ':vcs_info:*' actionformats \ +"(%{${fg[green]}%}%b%{${fg[default]}%}/\ +%{${fg[red]}%}%a%{${fg[default]}%}:\ +%{${fg[blue]}%}%s%{${fg[default]}%})" +# Call vcs_info as precmd before every prompt. +prompt_precmd() { + vcs_info +} +add-zsh-hook precmd prompt_precmd + +# Display the vcs information in the right prompt. +RPROMPT='${vcs_info_msg_0_}' + # COMPLETION SETTINGS