vcs_infoを使おう
- 27. 別解その1
setopt prompt_subst
autoload -Uz add-zsh-hook
autoload -Uz vcs_info
zstyle ':vcs_info:*' formats '(%s)-[%b]'
zstyle ':vcs_info:*' actionformats '(%s)-[%b|%a]'
function _update_vcs_info_msg() {
LANG=en_US.UTF-8 vcs_info
# 集めた情報は$vcs_info_msg_0_変数に入る
}
add-zsh-hook precmd _update_vcs_info_msg
RPROMPT='$vcs_info_msg_0_'
- 33. 色を付ける
autoload -Uz vcs_info
autoload -Uz add-zsh-hook
zstyle ':vcs_info:*' formats '%F{green}(%s)-[%b]%f'
zstyle ':vcs_info:*' actionformats '%F{red}(%s)-[%b|%a]%f'
function _update_vcs_info_msg() {
LANG=en_US.UTF-8 vcs_info
RPROMPT="${vcs_info_msg_0_}"
}
add-zsh-hook precmd _update_vcs_info_msg
- 41. もう少し凝った設定
%c が stagedstr、%u が
unstagedstr
zstyle ':vcs_info:git:*' stagedstr "+"
zstyle ':vcs_info:git:*' unstagedstr "-"
zstyle ':vcs_info:git:*' formats '(%s)-[%b] %c%u'