X-Git-Url: https://git.grml.org/?a=blobdiff_plain;f=etc%2Fzsh%2Fzshrc;h=7e2e53ad5c099c512b41b91ea569bd72e1691a89;hb=db038bb74540fecc9aaef863aac762dba7df3ea7;hp=48d07664cbfb14eb2681689dbbdc7a20979b2d80;hpb=4dc88ce5e68f7b0d311dfd0e5bbcb9035554d552;p=grml-etc-core.git diff --git a/etc/zsh/zshrc b/etc/zsh/zshrc index 48d0766..7e2e53a 100644 --- a/etc/zsh/zshrc +++ b/etc/zsh/zshrc @@ -1540,6 +1540,8 @@ if zrcautoload promptinit && promptinit 2>/dev/null ; then add-zsh-hook precmd battery fi if [[ "$TERM" == dumb ]] ; then + zstyle ":prompt:grml(|-large|-chroot):*:items:grml-chroot" pre '' + zstyle ":prompt:grml(|-large|-chroot):*:items:grml-chroot" post ' ' for i in rc user path jobs history date time shell-level; do zstyle ":prompt:grml(|-large|-chroot):*:items:$i" pre '' zstyle ":prompt:grml(|-large|-chroot):*:items:$i" post '' @@ -1550,12 +1552,31 @@ if zrcautoload promptinit && promptinit 2>/dev/null ; then zstyle ':prompt:grml(|-large|-chroot):*:items:user' pre '%F{red}' fi - prompt grml + # Finally enable one of the prompts. + if [[ -n $GRML_CHROOT ]]; then + prompt grml-chroot + elif [[ $GRMLPROMPT -gt 0 ]]; then + prompt grml-large + else + prompt grml + fi else print 'Notice: no promptinit available :(' -fi -setopt prompt_subst + # Support a fallback, in case promptsys isn't available. + setopt prompt_subst + + precmd() { (( ${+functions[vcs_info]} )) && vcs_info; } + + p0="${RED}${EXITCODE}${WHITE}${debian_chroot:+($debian_chroot)}" + p1="${BLUE}%n${NO_COLOR}@%m %40<...<%B%~%b%<< "'${vcs_info_msg_0_}'"%# " + if (( EUID == 0 )); then + PROMPT="${BLUE}${p0}${RED}${p1}" + else + PROMPT="${RED}${p0}${BLUE}${p1}" + fi + unset p0 p1 +fi # make sure to use right prompt only when not running a command is41 && setopt transient_rprompt