Funções definidas pelo usuário no prompt zsh

Funções definidas pelo usuário no prompt zsh

Estou tentando usar uma função que retorna o número de commits em uma determinada ramificação no prompt do zsh. Isto é o que tenho agora:

setopt PROMPT_SUBST
autoload -Uz vcs_info
precmd() { vcs_info }
zstyle ':vcs_info:git:*' formats '%b $(commits %b)'
commits() { git rev-list --count "$1" 2>/dev/null }
PROMPT='${vcs_info_msg_0_} > '

o que resulta em

master $(commits master) >

em vez de, por exemplo

master 80 >

então a commitsfunção não é avaliada. Como posso consertar isso?

informação relacionada