LaTeX から pdf 作る用の

スクリプト
jsclass 使うかどうかで判断、コメントアウトでも入るけど。
文字コードでの判断は面倒なのでやめた。(比較的新しい nkf なら nkf --guessが使えるらしいのでそれで case 書くとか)。
ptetex だと文字コード判定してくれるみたいUTF-8対応(6) - ptetex Wiki
makeindex 関係はめったに使わんので動くかあやしい。
#!/bin/sh と書きつつ、[ (test) 使っているのはまぁ。

#!/bin/sh
if [ -n "`grep -E "js(article|book)" "$1"`" ]; then
    LATEX='platex'
    BIBTEX='jbibtex'
    INDEX='mendex'
    EXT='dvi'
else
    LATEX='pdflatex'
    BIBTEX='bibtex'
    INDEX='makeindex'
    EXT='pdf'
fi
JOBNAME=`basename "$1" .tex`
if [ ! "$JOBNAME".$EXT -nt "$JOBNAME".tex ]; then
    $LATEX "$JOBNAME"
fi
if [ -n "`grep "No file "$JOBNAME".bbl" "$JOBNAME".log`" ]; then
    $BIBTEX "$JOBNAME"
    $LATEX "$JOBNAME"
fi
if [ "$JOBNAME".bbl -ot "$JOBNAME".tex ]; then
    $BIBTEX "$JOBNAME"
    $LATEX "$JOBNAME"
fi
if [ "$JOBNAME".idx -nt "$JOBNAME".ind ]; then
    $INDEX "$JOBNAME"
    $LATEX "$JOBNAME"
fi
while [ -n "`grep "LaTeX Warning: Label(s) may have changed" "$JOBNAME".log`" ]; do
    $LATEX "$JOBNAME"
done
if [ "$JOBNAME".$EXT -nt "$JOBNAME".pdf ]; then
    dvipdfmx "$JOBNAME"
fi

コメントアウトでも dvipdfmx 使うのはまずいかなぁ。
文字コードの判定をやっぱりかますべきか。
platex, jbibtex, mendex の文字コードのオプションは省略されたときどう動くのかも気になる。