From 9533756d25818a0515eb236cea3c6c965a9293d6 Mon Sep 17 00:00:00 2001 From: tg Date: Tue, 25 Sep 2007 15:48:45 +0000 Subject: [PATCH] use precmd() to do the errorlevel-display dance, so that yofuh can disable it more easily, and it got an actual use case --- dot.mkshrc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/dot.mkshrc b/dot.mkshrc index 47a9789..57c5997 100644 --- a/dot.mkshrc +++ b/dot.mkshrc @@ -1,4 +1,4 @@ -# $MirOS: src/bin/mksh/dot.mkshrc,v 1.20 2007/09/24 20:30:04 tg Exp $ +# $MirOS: src/bin/mksh/dot.mkshrc,v 1.21 2007/09/25 15:48:45 tg Stab $ #- # Copyright (c) 2007 # Thorsten Glaser @@ -28,10 +28,12 @@ [[ $HOSTNAME = @(localhost|*([ ])) ]] && HOSTNAME=$(ulimit -c 0;hostname 2>&-) : ${HOSTNAME:=nil}; PS1='#'; [[ "$(ulimit -c 0; id -u 2>&-)" -eq 0 ]] || PS1='$' function precmd { - : + typeset -i10 e=$? + + (( e )) && print -n -- "$e|" } -PS1='$(e=$?; precmd; ((e)) && print $e\|)${USER:=$(ulimit -c 0; id -un 2>&- || \ - print nobody)}@${HOSTNAME%%.*}:$(typeset pfx=~ wd=${PWD:-?} +PS1='$(precmd)${USER:=$(ulimit -c 0;id -un 2>&- || print \?)}@${HOSTNAME%%.*}:$( + typeset pfx=~ wd=${PWD:-?} typeset -i n=${COLUMNS:-80}/3; let n="n < 7 ? 7 : n" [[ ${wd#$pfx} = $wd || $pfx = ?(/) ]] || wd=\~${wd#$pfx} pfx=; while (( (${#pfx} + ${#wd}) > n )); do