git の ブランチ名を zsh の右プロンプトに表示する
投稿者 okkez
以下のようにすれば、とりあえず表示はできる。 けど、ブランチを切り替えたときに一回コマンドを実行するまではプロンプトの表示が古いままになってしまう。
DEFAULT_RPROMPT=$RPROMPT
# ...
typeset -ga chpwd_functions
typeset -ga preexec_functions
function _set_rprompt_git() {
local git_branch
git_branch="${$(git symbolic-ref HEAD 2> /dev/null)#refs/heads/}"
if [ $? != '0' ]; then
RPROMPT=$DEFAULT_RPROMPT
else
RPROMPT="${DEFAULT_RPROMPT}:%{${fg[blue]}%}${git_branch}%{${reset_color}%}"
fi
}
chpwd_functions+=_set_rprompt_git
preexec_functions+=_set_rprompt_git
=== 参考


