Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env bash
- trap "kill 0" SIGINT
- HOST=$(cut -d':' -f1 <<<$1)
- TEX_PATH=$(cut -d':' -f2 <<<$1)
- DIR=`dirname $TEX_PATH`
- FILE=`basename $TEX_PATH`
- PDF="${FILE/tex/pdf}"
- # Script that compiles the LaTeX file on change
- SCRIPT=$(<<'EOF'
- cd "$DIR"
- CHECKSUM=$(cksum "$FILE");
- while true;
- do if [ \"$(cksum $FILE )\" != \"CHECKSUM\" ]; then
- pdflatex -interaction -nonstopmode -file-line-error "$FILE" > /dev/null;
- CHECKSUM=$(cksum "$FILE");
- else sleep 0.1;
- fi;
- done;
- EOF
- )
- # Execute the script on the target machine
- ( ssh $HOST $SCRIPT ) &
- # Copy back the compiled pdf
- ( while true; do rsync -cz "$HOST:$DIR/$PDF" . 2> /dev/null; sleep 0.5; done ) &
- ssh $HOST
- kill 0
Add Comment
Please, Sign In to add comment