LaTeXで数式や文献の参照番号を処理するにはplatexやjbibtexを何度か実行しないといけなくて面倒くさい.
「何回platexやjbibtex動かしたらいいの」っていうのを適当に判断して適当に実行してくれるperlスクリプトとしてLatexmkというものがあるらしい.すばらしい.
早速インストールしたのでメモ.
やること
latexmk-410.zipを落としてきたら解凍し,中身をパスの通った場所に置く.
次に,.latexmkrcという設定ファイルを$HOMEに作成する.もともと欧文用なのでこの設定ファイルでlatexやbibtexをplatexやjbibtexに置き換える必要がある.私の設定は以下の通り.
$latex = 'platex'; $pdflatex = "c:/Meadow/dvipspdf.bat %S"; $bibtex = 'jbibtex'; $makeindex = 'mendex'; $dvipdf = 'dvipdfmx'; $dvips = 'dvipsk'; $dvi_previewer = 'dviout'; $pdf_previewer = 'SumatraPDF.exe';
私はPDFビューワとしてSumatraPDFを使用しているので$pdf_previewerにSumatraPDF.exe*1を指定している.
$pdflatexに設定しているバッチファイルの中身はこんな感じ*2.
rem for YaTeX set src=%~n1 platex %src%.tex dvipsk -Pdl -D 600 -f -z -t a4 %src% | bkmk2uni > %src%.ps call ps2pdf -r600 -dNOPAUSE %src%.ps %src%.pdf
そして.emacsはこんな感じ.
;; latexmk (setq tex-command "latexmk -pv -pdf") (setq dvi2-command "SumatraPDF.exe")
これでMeadowを起動してYaTeX-modeにし,C-c tjと入力すればplatexとjbibtexを適当に実行してpdfまで作成し,プレビューしてくれる.
Latexmk実行時に与える引数で作成対象(dviかpsか,それともpdfなのか),プレビューの有無などを指定できる.詳しくはLatexmkにあるマニュアルを参照のこと*3.