RakefileでLaTeXファイルを監視自動コンパイル
id:hayamizがなんかOMake つかって LaTeX コンパイルしたら簡単すぎて身長が5cm伸びたとか書いてたのでOMake使おうかと思ったけど
LATEX = platex DVIPDFM = dvipdfmx LaTeXDocument(document, document) .DEFAULT: document.pdf document.dviここでは、 .tex ファイルが "document.tex" というもの1つだけであることを仮定しとります。なので、hoge.tex なら ↑の内容の "document" を "hoge" に書き換えればおk。
とかちょっと面倒過ぎてありえないのでやっぱりrakeでやることにした。前々から使ってるLaTeXファイルコンパイル用のRakefileに継続的に自動コンパイルするcontタスクを追加。
desc "Continuation Watching Build" task :cont do at_exit{ loop do system("rake", "--silent") sleep 5 end } end
手抜き最高!
使い方は
- http://coderepos.org/share/browser/lang/ruby/misc/rake_template/Rakefile-latex をダウンロードしてRakefileという名前でtexファイル置いてるディレクトリに置く
- 対象のファイルがhoge.texなら
rake hoge
として一度コンパイル rake cont&
として自動コンパイルをbgで走らせておく
あとはrakeがhoge.texから、hoge.texがinputしてるtexファイルやら画像ファイルやらbibファイルとか色々適当に監視して、更新されたらコンパイルしてくれます! やった!