#!/bin/sh
xxxm=$dflt
case "$xxxm" in
'') echo -n "$rp " >&4;;
*) case "$rp" in
'') echo -n "[$xxxm] ";;
*)
if test `echo "$rp [$xxxm] " | wc -c` -ge 80; then
echo "$rp" >&4
echo -n "[$xxxm] " >&4
else
echo -n "$rp [$xxxm] " >&4
fi
;;
esac;;
esac
ans='!'
case "$fastread" in
yes) case "$dflt" in
'') ;;
*) ans='';
case "$silent-$rp" in
true-) ;;
*) echo " " >&4;;
esac;;
esac;;
*) case "$silent" in
true) case "$rp" in
'') ans='';;
esac;;
esac;;
esac
while expr "X$ans" : "X!" >/dev/null; do
read answ
set x $xxxm
shift
aok=''; eval "ans=\"$answ\"" && aok=y
case "$answ" in
"!")
sh 1>&4
echo " "
case "$xxxm" in
'') echo -n "$rp " >&4;;
*) case "$rp" in
'') echo -n "[$xxxm] ";;
*)
if test `echo "$rp [$xxxm] " | wc -c` -ge 80; then
echo "$rp" >&4
echo -n "[$xxxm] " >&4
else
echo -n "$rp [$xxxm] " >&4
fi
;;
esac;;
esac
;;
!*)
set x `expr "X$ans" : "X!\(.*\)$"`
shift
sh 1>&4 -c "$*"
echo " "
case "$xxxm" in
'') echo -n "$rp " >&4;;
*) case "$rp" in
'') echo -n "[$xxxm] ";;
*)
if test `echo "$rp [$xxxm] " | wc -c` -ge 80; then
echo "$rp" >&4
echo -n "[$xxxm] " >&4
else
echo -n "$rp [$xxxm] " >&4
fi
;;
esac;;
esac
;;
"$ans")
case "$ans" in
\&*)
set x `expr "X$ans" : "X&\(.*\)$"`
shift
case "$1" in
-d)
fastread=yes
echo "(OK, I'll run with -d after this question.)" >&4
;;
-*)
echo "*** Sorry, $1 not supported yet." >&4
;;
esac
case "$xxxm" in
'') echo -n "$rp " >&4;;
*) case "$rp" in
'') echo -n "[$xxxm] ";;
*)
if test `echo "$rp [$xxxm] " | wc -c` -ge 80; then
echo "$rp" >&4
echo -n "[$xxxm] " >&4
else
echo -n "$rp [$xxxm] " >&4
fi
;;
esac;;
esac
ans=!
;;
esac;;
*)
case "$aok" in
y)
echo "*** Substitution done -- please confirm."
xxxm="$ans"
ans=`echo -n "$ans" | tr '\012' ' '`
xxxm="$ans"
ans=!
;;
*)
echo "*** Error -- try again."
ans=!
;;
esac
case "$xxxm" in
'') echo -n "$rp " >&4;;
*) case "$rp" in
'') echo -n "[$xxxm] ";;
*)
if test `echo "$rp [$xxxm] " | wc -c` -ge 80; then
echo "$rp" >&4
echo -n "[$xxxm] " >&4
else
echo -n "$rp [$xxxm] " >&4
fi
;;
esac;;
esac
;;
esac
case "$ans$xxxm$nostick" in
'')
ans=!
case "$xxxm" in
'') echo -n "$rp " >&4;;
*) case "$rp" in
'') echo -n "[$xxxm] ";;
*)
if test `echo "$rp [$xxxm] " | wc -c` -ge 80; then
echo "$rp" >&4
echo -n "[$xxxm] " >&4
else
echo -n "$rp [$xxxm] " >&4
fi
;;
esac;;
esac
;;
esac
done
case "$ans" in
'') ans="$xxxm";;
esac
syntax highlighted by Code2HTML, v. 0.9.1