/ / Wie kann ich feststellen, ob ich über `: vcs_info:`? In einem hg oder git Verzeichnis bin? - Zsh

Wie kann ich feststellen, ob ich über `: vcs_info:`? In einem hg oder git Verzeichnis bin? - Zsh

:vcs_info: scheint zu wissen, ob Sie in einem git oder hg Verzeichnis sind, wenn Sie es aktivieren:

zstyle ":vcs_info:*" enable git hg

Sie können Ihre Eingabeaufforderung auf diese Weise ändern.

Wie kann ich diese Daten anzapfen, damit ich eine schreiben kann? if Bedingung? z.B.

if [[ $some_magic_zstyle_vcs_info_variable ]]; then
echo "I"m in a git dir!"
fi

Antworten:

1 für die Antwort № 1

Mafredi bot an bessere Lösung:

zstyle ":vcs_info:*" enable git hg
zstyle ":vcs_info:*" max-exports 3
zstyle ":vcs_info:(git|hg):*" formats " %b" "x%R" "%s"
zstyle ":vcs_info:(git|hg):*" actionformats " %b|%a" "x%R" "%s"

...

if [[ "$vcs_info_msg_2_" == "git" ]]; then
# git
fi

if [[ "$vcs_info_msg_2_" == "hg" ]]; then
# hg
fi

d.h. die %s wird den VCS-Namen eingeben $vcs_info_msg_2_.