X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=etc%2Fzsh%2Fzshrc;h=1376e4edd08f8a7d3229ae77839cfef8e4df9567;hb=a1d579b427362ea438947190338debb26cfd7e78;hp=14cc6481ffaf8d40b421720a83c3649122d68656;hpb=d005e0b78bac79a566a3b16fb9e66b28bca48d61;p=grml-etc-core.git diff --git a/etc/zsh/zshrc b/etc/zsh/zshrc index 14cc648..1376e4e 100644 --- a/etc/zsh/zshrc +++ b/etc/zsh/zshrc @@ -450,36 +450,35 @@ fi check_com() { emulate -L zsh local -i comonly gatoo + comonly=0 + gatoo=0 if [[ $1 == '-c' ]] ; then - (( comonly = 1 )) - shift + comonly=1 + shift 1 elif [[ $1 == '-g' ]] ; then - (( gatoo = 1 )) - else - (( comonly = 0 )) - (( gatoo = 0 )) + gatoo=1 + shift 1 fi if (( ${#argv} != 1 )) ; then - printf 'usage: check_com [-c] \n' >&2 + printf 'usage: check_com [-c|-g] \n' >&2 return 1 fi if (( comonly > 0 )) ; then - [[ -n ${commands[$1]} ]] && return 0 + (( ${+commands[$1]} )) && return 0 return 1 fi - if [[ -n ${commands[$1]} ]] \ - || [[ -n ${functions[$1]} ]] \ - || [[ -n ${aliases[$1]} ]] \ - || [[ -n ${reswords[(r)$1]} ]] ; then - + if (( ${+commands[$1]} )) \ + || (( ${+functions[$1]} )) \ + || (( ${+aliases[$1]} )) \ + || (( ${+reswords[(r)$1]} )) ; then return 0 fi - if (( gatoo > 0 )) && [[ -n ${galiases[$1]} ]] ; then + if (( gatoo > 0 )) && (( ${+galiases[$1]} )) ; then return 0 fi @@ -1614,6 +1613,7 @@ if zstyle -T ':grml:chpwd:dirstack' enable; then } chpwd() { + (( ZSH_SUBSHELL )) && return (( $DIRSTACKSIZE <= 0 )) && return [[ -z $DIRSTACKFILE ]] && return grml_dirstack_filter $PWD && return @@ -2360,9 +2360,7 @@ function prompt_grml_precmd_worker () { grml_prompt_fallback() { setopt prompt_subst - precmd() { - (( ${+functions[vcs_info]} )) && vcs_info - } + local p0 p1 p0="${RED}%(?..%? )${WHITE}${debian_chroot:+($debian_chroot)}" p1="${BLUE}%n${NO_COLOR}@%m %40<...<%B%~%b%<< "'${vcs_info_msg_0_}'"%# " @@ -2371,7 +2369,6 @@ grml_prompt_fallback() { else PROMPT="${RED}${p0}${BLUE}${p1}" fi - unset p0 p1 } if zrcautoload promptinit && promptinit 2>/dev/null ; then @@ -2384,6 +2381,7 @@ if zrcautoload promptinit && promptinit 2>/dev/null ; then else print 'Notice: no promptinit available :(' grml_prompt_fallback + precmd() { (( ${+functions[vcs_info]} )) && vcs_info; } fi if is437; then @@ -2416,6 +2414,7 @@ if is437; then fi else grml_prompt_fallback + precmd() { (( ${+functions[vcs_info]} )) && vcs_info; } fi # Terminal-title wizardry