Пользовательские функции в командной строке zsh

Пользовательские функции в командной строке zsh

Я пытаюсь использовать функцию, которая возвращает количество коммитов в заданной ветке в приглашении zsh. Вот что у меня сейчас:

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_} > '

что приводит к

master $(commits master) >

вместо, например,

master 80 >

поэтому commitsфункция не вычисляется. Как это исправить?

Связанный контент