Doge log

Abby CTO 雑賀 力王のオフィシャルサイトです

hgが遅いと感じるzshrc

git使いのひとと同じようにhgでもRPROMPTにbranch名を出してみる
(repoの以下のみbranch名を出す)

.zshrc
_set_env_hg_current_branch(){
    HG_CURRENT_BRANCH=$( hg branch 2>/dev/null )
}

_update_rprompt(){
    if [ "`hg locate 2>/dev/null`" ]; then
        RPROMPT="%~%{$fg[cyan]%}[$HG_CURRENT_BRANCH]%{$reset_color%}"
    else
        RPROMPT="%~"
    fi
}

precmd()
{
    _set_env_hg_current_branch
    _update_rprompt
}

chpwd()
{
    _set_env_hg_current_branch
    _update_rprompt
}

実際にやるとテラ遅いですね。。。。
やっぱpythonでは限界があるな。。。
hgの場合は毎回実行じゃなくbranch、update (-C)あたりをフックして書き換えないと
ダメだな。
(フックポイントみたいなのってないのかなあ?)