monolithic kernel

LaTeX用のMakefile

May 10, 2013

    最近レポートをLaTeXで書くようになったので、Makefileを作ってみました。

    TEX = master.tex
    DVI = $(TEX:.tex=.dvi)
    PDF = $(TEX:.tex=.pdf)
    AUX = $(TEX:.tex=.aux)
    PRN = $(wildcard *.prn)
    EPS = $(PRN:.prn=.eps)
     
    .PHONY: all clean watch
     
    all: $(PDF)
     
    watch:
    	pxdvi -watchfile 5 $(DVI)
     
    clean:
    	rm $(PDF) $(DVI) $(AUX) $(EPS)
     
    $(PDF): $(DVI)
    	dvipdfmx $<
     
    $(DVI): $(TEX) $(EPS)
    	platex $<
    	platex $<
     
    %.eps: %.prn
    	epstool --copy -b $< $@

    make でPDFを吐きます。make watch を使えば、dviファイルの更新を監視してプレビューを自動で更新します。

    図はPowerPointあたりで作ることを想定していて、prnファイルを置いておけばepstoolでトリミングし、結果をepsファイルとするようにしています。

    このMakefileはエディタに依存するものではありませんが、Vimでunite-build使うと便利ですよ。