#!/bin/ksh
FILES=""
MLEVEL="0"
LMODE="async"
function usage {
print "usage: dotty [-V] [-lm (sync|async)] [-el (0|1)] <filename>"
}
function processoptions {
while [[ $# > 0 ]] do
case $1 in
-V)
print "dotty version 96c (09-24-96)"
shift
;;
-f)
shift
loadfile=$1
shift
;;
-lm)
shift
LMODE=$1
if [[ $LMODE != 'sync' && $LMODE != 'async' ]] then
usage
exit 1
fi
shift
;;
-el)
shift
MLEVEL=$1
if [[ $MLEVEL != '0' && $MLEVEL != '1' ]] then
usage
exit 1
fi
shift
;;
-)
FILES=$(print $FILES "'"$1"'")
shift
;;
-*)
usage
exit 1
;;
*)
FILES=$(print $FILES "'"$1"'")
shift
;;
esac
done
}
if [[ $DOTTYOPTIONS != '' ]] then
processoptions $DOTTYOPTIONS
fi
processoptions "$@"
if [[ $DOTTYPATH != '' ]] then
export LEFTYPATH="$DOTTYPATH:$LEFTYPATH"
fi
CMDS=""
CMDS="dotty.protogt.layoutmode = '$LMODE';"
CMDS=$(print $CMDS dotty.mlevel = $MLEVEL";")
if [[ $loadfile != '' ]] then
CMDS=$(print $CMDS load \("'"$loadfile"'"\)";")
fi
if [[ $FILES = '' ]] then
FILES=null
fi
FUNC="dotty.createviewandgraph"
for i in $FILES; do
CMDS=$(print $CMDS $FUNC \($i, "'"file"'", null, null\)";")
done
leftypath=$(whence -p lefty)
if [[ $leftypath == '' ]] then
print -u2 "dotty: cannot locate the lefty program"
print -u2 " make sure that your path includes"
print -u2 " the directory containing dotty and lefty"
exit 1
fi
$leftypath -e "
load ('dotty.lefty');
checkpath = function () {
if (tablesize (dotty) > 0)
remove ('checkpath');
else {
echo ('dotty: cannot locate the dotty scripts');
echo (' make sure that the environment variable LEFTYPATH');
echo (' is set to the directory containing dotty.lefty');
exit ();
}
};
checkpath ();
dotty.init ();
monitorfile = dotty.monitorfile;
$CMDS
txtview ('off');
"