#!/bin/sh geom="-geometry 1020x740+0+0" PS="gv --watch --safer --resize $geom" #PDF="acroread7 -geometry 870x646+0+0" PDF="xpdf $geom" chk_ps() { latex \ --file-line-error-style --interaction batchmode \ ${1}.tex \ && dvps ${1}.dvi && $PS ${1}.ps } chk_pdf() { pdflatex ${1}.tex \ && { $PDF ${1}.pdf || $PS ${1}.pdf ; } } unset check case $0 in *-ps ) check='chk_ps' ;; *-pdf ) check='chk_pdf' ;; esac get_base() { local base case "$1" in *.tex | *.dvi | *.ps | *.pdf | *.aux | *.log ) base=$( echo "$1" | sed -E -e 's!\....$!!' ) ;; * ) base="$1" ;; esac printf "%s" "$base" } for f in $@ do $check $(get_base "$f") done