#!/bin/bash

# recompile book and files for practice zip

# parent of script directory
ROOT=${0%/[!/]*/[!/]*}

# make absolute
cd $ROOT
ROOT=`pwd`

#echo $ROOT
#read

function compile () {
  cpl=$2
  cpl=${cpl:-pdflatex}
  $cpl $1
  $cpl $1
  if test "$crop"; then epspdf -b $1.pdf $1.pdf; fi
}

function compbib () {
  bib=$2
  bib=${bib:-bibtex}
  pdflatex $1
  $bib $1
  pdflatex $1
  pdflatex $1
  if test "$crop"; then epspdf -b $1.pdf $1.pdf; fi
}

# samples for inclusion

cd $ROOT/samples
export crop=y
for f in demo nl; do compile art_$f; done
for f in md newpx; do compile font_$f; done
for f in cambria w32; do compile font_$f lualatex; done
compile font_tgmath xelatex
for f in foot jj_math jj_math2 math_deflt math_fleqn \
  par_indent par_parskip thanks; do
  compile $f
done

unset crop
for f in demo dflt sidebar; do compile beamer_$f; done
compile nobeamer

for f in *.aux *.log *luasave *.nav *.out *.snm *.toc; do rm $f; done

cd $ROOT/bibsamples
export crop=y
for f in bibdemo*.tex bibst*.tex *urlbib.tex; do compbib ${f%.tex}; done
for f in blt*.tex; do compbib ${f%.tex} biber; done

for f in *.aux *.bbl *.bcf *.blg *.log *luasave *xml; do rm $f; done

# practice files

unset crop
cd $ROOT/practice
for f in *.tex; do
  if test $f = some_data_import_ods.tex; then
    compile ${f%.tex} lualatex
  else
    compile ${f%.tex}
  fi
done

rm *.aux *.lo* *.nav *.out *.snm *.toc figures/diamonds-*.pdf

cd $ROOT/practice/bibtex
for f in bibtex_natbib_sample bibtex_sample testbib; do compbib $f; done
compbib bibtex_biblatex_sample biber
rm *.aux *.bbl *.bcf *.blg *.log *xml

# slides and samples for slides not on CTAN
#cd $ROOT/slides
#export crop=y
#for f in figtabfloat textmarkup; do compile $f; done
#unset crop
#for f in beamer_*.tex; do compile $f; done
#
#for f in *.aux *.log *luasave *.nav *.out *.snm *.toc; do rm $f; done
