- 2008-10-15 (Wed) 21:53
- Software
Previewだと,pdfでもxdviと同じように一度開いたファイルを自動更新してくれるので,pdfまで変換してしまうのもありかと思ってTeXのためのMakefileを書いた.
追記
依存関係を抽出するdep.plを書いたので,普通はDOCとBIBを設定すれば使えると思う.
DOC = paper # メインのTeXファイル名(拡張子不要) BIB = ref.bib # BibTeXファイル名(拡張子必須) SOURECE = $(shell perl dep.pl $(DOC).tex) LATEX = platex DVIPDFM = dvipdfmx BIBTEX = jbibtex RM = rm .SUFFIXES: .tex .dvi .pdf $(DOC).dvi: $(DOC).aux $(DOC).bbl $(SOURECE) $(LATEX) $(DOC) $(LATEX) $(DOC) .dvi.pdf: $(DOC).dvi $(DVIPDFM) $< $(DOC).aux: $(DOC).tex $(LATEX) $(DOC) $(DOC).bbl: $(DOC).tex $(BIB) $(BIBTEX) $(DOC) pdf: $(DOC).pdf clean: $(RM) -f $(DOC).dvi $(DOC).toc $(DOC).aux $(DOC).blg $(DOC).bbl $(DOC).log $(DOC).pdf *~
dep.pl : 依存関係を抽出するためのスクリプト
use strict;
use warnings;
parse_tex($ARGV[0]);
sub parse_tex {
my ($file) = @_;
my $fp;
open($fp, $file) or die "IOError: ". $file;
while () {
chomp;
if (/^[^%]*[\\¥]includegraphics\*?(?:\[[^\[\]]+\])?\{([^\{\}]+)\}/o) {
printf("%s ", $1);
} elsif (/^[^%]*\\input{([^\{\}]+)}/) {
my $texfile = sprintf("%s.tex ", $1);
parse_tex($texfile);
printf("%s ", $texfile);
}
}
close($fp);
}
exit(0);
これで大体の画像ファイルなんかの依存関係も把握できるんじゃないかな.
- Newer: Double Array
- Older: Google東京オフィスにお邪魔させてもらった。
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://ma38su.org/2008/10/15/704/trackback/
- Listed below are links to weblogs that reference
- TeXのためのMakefile from ma38su.org