Last active
August 29, 2015 14:17
-
-
Save balkian/a5894ae26437006b8efb to your computer and use it in GitHub Desktop.
Some automation to submit to a journal (e.g. Elsevier). It detects the main latex file and eps files used.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Some automation to submit to a journal (e.g. Elsevier). | |
# It detects the main latex file and eps files used. | |
# Author: @balkian | |
# TODO: Only import the tex files used in the main file, and their images. | |
AUX_DIR=.aux | |
LATEX=$(basename $(shell grep -l '\\begin{document' *.tex)) | |
LETTER=letter | |
COVER=cover | |
HIGHLIGHTS=highlights | |
HTML_OUT=$(LETTER).html | |
.PHONY: all cover clean highlights latex letter zip | |
default: latex | |
all: $(LATEX).pdf $(LETTER).pdf $(COVER).pdf $(HIGHLIGHTS).pdf | zip | |
$(AUX_DIR): | |
@mkdir -p $(AUX_DIR) | |
$(LETTER).pdf: $(LETTER).md | $(AUX_DIR) | |
@pandoc -s -H style.html $(LETTER).md -o $(HTML_OUT) | |
@wkhtmltopdf $(HTML_OUT) $(LETTER).pdf | |
@echo Letter generated: $(LETTER) | |
$(LATEX).pdf: *.tex | $(AUX_DIR) | |
# An alternative to doing three passes is using latexmk | |
@pdflatex -interaction=batchmode -output-directory=$(AUX_DIR) $(LATEX) >/dev/null | |
# openout_any=a -> write to a folder (AUX_DIR) | |
# TEXMFOUTPUT -> find the aux files in that folder | |
@openout_any=a TEXMFOUTPUT="$(AUX_DIR)/" bibtex $(AUX_DIR)/$(LATEX) >/dev/null | |
@pdflatex -interaction=batchmode -output-directory=$(AUX_DIR) $(LATEX) >/dev/null | |
@pdflatex -interaction=batchmode -output-directory=$(AUX_DIR) $(LATEX) | |
@mv $(AUX_DIR)/$(LATEX).pdf . | |
@echo "Finished" | |
$(HIGHLIGHTS).pdf: $(HIGHLIGHTS).md | |
pandoc $(HIGHLIGHTS).md -o (HIGHLIGHTS).pdf | |
$(COVER).pdf: $(COVER).md | |
pandoc $(COVER).md -o $(COVER).pdf | |
$(LATEX).zip: $(LATEX).pdf $(LETTER).pdf $(HIGHLIGHTS).pdf $(COVER).pdf | |
@zip $(LATEX).zip *.tex $(LETTER).pdf $(COVER).pdf $(HIGHLIGHTS).pdf | |
@for r in `sed -n 's/.*bibliography{\(.*\)}.*/\1/p' *.tex`; do \ | |
zip $(LATEX).zip $$r.bib; \ | |
done | |
@for i in `sed -n 's/.*includegraphics\[.*\]{\(.*\)}.*/\1/p' *.tex`; do \ | |
zip $(LATEX).zip figures/$$i.eps; \ | |
done | |
zip Makefile | |
clean: | |
@-rm -rf $(AUX_DIR) | |
@-rm -f $(HTML_OUT) | |
clean_all: clean | |
@rm -f $(LATEX).zip | |
@rm -f $(LATEX).pdf | |
@rm -f $(REVIEW).pdf | |
@rm -f $(COVER).pdf | |
@rm -f $(HIGHLIGHTS).pdf | |
view: $(LATEX).pdf | |
xdg-open $(LATEX).pdf | |
cover: $(COVER).pdf | |
highlights: $(HIGHLIGHTS).pdf | |
latex: $(LATEX).pdf | |
letter: $(LETTER).pdf | |
zip: $(LATEX).zip |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment