— and how many times do you have to type them when you edit an article? A lot.
1. pdflatex mypaper.tex
2. bibtex mypaper
3. pdflatex mypaper.tex
4. pdflatex mypaper.tex
Fortunately, there is a simple cure. A SCons build system. Install it and create a new
SConstruct file where the LaTeX document lives, with a contents like this:
PDF(target = 'mypaper.pdf', source = 'mypaper.tex')Then just run
$ sconsAnd SCons will automatically run bibtex if you use it, it will run PDFLaTeX as many times as it needs (SCons is smart enough to read the log file of the LaTeX), SCons will remember MD5 sum of the source file and will avoid re-compiling the PDF if the source file did not change. Very convenient!
I also prefer to re-build the PDF whenever I change any of the figures. Given that my figures are in
imgs/ subfolder and all are either
*.png files, I can create a list of “source” files using SCons'
Glob function. This is what
SContstruct then looks like:
src_list = [ 'mypaper.tex', Glob('imgs/*.pdf'), Glob('imgs/*.png') ] PDF(target = 'mypaper.pdf', source = src_list)Of cource, one can still use
maketo compile LaTeX documents. This is a good Makefile for a start.
This post in Russian: Автоматическая компиляция документов LaTeX