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函數不會被評估。我怎樣才能解決這個問題?

相關內容