pandoc --listings doc.md -o doc.tex pdflatex -interaction=nonstopmode main.tex #calculate pages to extract first and last for cover pages=$(pdfinfo main.pdf | awk '/^Pages:/ {print $2}') # split cover from guts to add correct signature pdfjam main.pdf 1,$(($pages))-$pages -o cover.pdf pdfjam main.pdf 2-$((pages-1)) -o guts.pdf # insert blank pages after front cover and before back cover pdfjam cover.pdf '1,{},{},2' --outfile cover.pdf # calculate pages for guts signature length pages=$(pdfinfo guts.pdf | awk '/^Pages:/ {print $2}') let rem=pages%4 let extra=(4-rem)%4 let sig=pages+extra # booklet print pdfbook2 -n --short-edge cover.pdf pdfbook2 -n --signature=$sig --short-edge guts.pdf # put them back together! pdfunite cover-book.pdf guts-book.pdf print-zine.pdf mv main.pdf read-zine.pdf # directory cleanup mv -t .build *.aux *.log *.out doc.tex cover.pdf guts.pdf cover-book.pdf guts-book.pdf