mirror of
https://github.com/balkian/gists.git
synced 2024-11-21 17:22:29 +00:00
72 lines
2.1 KiB
Makefile
72 lines
2.1 KiB
Makefile
# 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 |