Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
#!/bin/sh
# latex-watch -- Run latex whenever needed
#
# AUTHOR: Gary T. Leavens
[ -n "$echo" ] && set -x
WAITTIMEINSECS=5
USAGE="$0 file.tex"
# only one argument allowed
if test $# -ne 1
then
echo "$USAGE" >&2
exit 1
fi
FILE="$1"
case "$FILE" in
*.tex)
BASENAME="`basename $FILE .tex`"
SUFFIX=".tex"
;;
*.ltx)
BASENAME="`basename $FILE .ltx`"
SUFFIX=".ltx"
;;
-*)
echo "$USAGE" >&2
exit 1
esac
LAST=""
FIRSTTIME='true'
XDVIPROCESS=""
trap 'kill $XDVIPROCESS; rm -f ${BASENAME}.aux.bak' 0
while true
do
if test "$LAST" '!=' "`ls -l $FILE`"
then
latex "$FILE"
if cmp -s "${BASENAME}.aux.bak" "${BASENAME}.aux"
then
echo "skipping further rounds, as ${BASENAME}.aux has not changed"
else
bibtex "$BASENAME"
latex "$FILE"
latex "$FILE"
rm -f "${BASENAME}.aux.bak"
cp -p "${BASENAME}.aux" "${BASENAME}.aux.bak"
echo 'done'
fi
LAST="`ls -l $FILE`"
fi
if "$FIRSTTIME"
then
xdvi "${BASENAME}.dvi" &
XDVIPROCESS=$!
FIRSTTIME='false'
fi
sleep "$WAITTIMEINSECS"
done