This page used to be about a C program. But on second thought, the whole thing is a poor implementation of an idea that can be hacked in 10 lines of shell. So, here is a saner alternative.
#!/bin/sh TEX= # list your main tex file here DEP=`find . -name '*.tex' -not -name $TEX` PDF=${TEX%.tex}.pdf compile() { pdflatex $TEX < /dev/null # bibtex ${TEX%.tex}.aux # pdflatex $TEX < /dev/null # pdflatex $TEX < /dev/null } [ -e $PDF ] || compile # xpdf -remote view $PDF & mupdf $PDF & while true do inotifywait -qr -o /dev/null -e modify $TEX $DEP compile # xpdf -remote view -reload [ -e $PDF ] && killall -HUP mupdf done
Modify it to your liking. I usually compile only
once in compile()
and tolerate flaky
references to have a faster iteration cycle. If I
want the references fixed, I just save the file a
second time.