Replace Eisvogel template with Cleanthesis
This commit is contained in:
109
Makefile
109
Makefile
@@ -1,20 +1,99 @@
|
||||
## ---- user config ----
|
||||
PANDOC_TMPL := eisvogel.latex
|
||||
PANDOC_OPTIONS := --listings --toc -V lang=es --filter pandoc-citeproc
|
||||
PANDOC_ORG := pandoc --toc
|
||||
PANDOC_MD := pandoc --template $(PANDOC_TMPL) $(PANDOC_OPTIONS)
|
||||
METADATA := Assets/metadata.yaml
|
||||
DOC := Docs
|
||||
## Source files
|
||||
## (Adjust to your needs. Order of markdown files in $(SRC) matters!)
|
||||
PANDOC = pandoc
|
||||
DOC = Docs
|
||||
META = Assets/metadata.yaml
|
||||
SRC = $(DOC)/Project.md
|
||||
BIBFILE = Assets/Citations.bib
|
||||
TARGET = $(DOC)/Project.pdf
|
||||
|
||||
## ---- build rules ----
|
||||
all: $(DOC)/Project.pdf
|
||||
|
||||
$(DOC)/Project.md: $(DOC)/Project.org
|
||||
$(PANDOC_ORG) -o $@ $<
|
||||
|
||||
$(DOC)/Project.pdf: $(DOC)/Project.md
|
||||
$(PANDOC_MD) -o $@ $< $(METADATA)
|
||||
###############################################################################
|
||||
## Internal setup (do not change)
|
||||
###############################################################################
|
||||
|
||||
|
||||
## Auxiliary files
|
||||
## (Do not change!)
|
||||
TITLEPAGE = titlepage.tex
|
||||
FRONTMATTER = frontmatter.tex
|
||||
BACKMATTER = backmatter.tex
|
||||
|
||||
TMP1 = Assets/$(TITLEPAGE:%.tex=__%.filled.tex)
|
||||
TMP2 = Assets/$(FRONTMATTER:%.tex=__%.filled.tex)
|
||||
TMP3 = Assets/$(BACKMATTER:%.tex=__%.filled.tex)
|
||||
TMP = $(TMP1) $(TMP2) $(TMP3)
|
||||
|
||||
|
||||
## Pandoc options
|
||||
AUX_OPTS =
|
||||
|
||||
OPTIONS = -f markdown
|
||||
OPTIONS += --pdf-engine=pdflatex
|
||||
OPTIONS += --filter=pandoc-citeproc
|
||||
OPTIONS += --metadata-file=$(META)
|
||||
OPTIONS += -M bibliography=$(BIBFILE)
|
||||
OPTIONS += --listings
|
||||
OPTIONS += --include-in-header=$(TMP1)
|
||||
OPTIONS += --include-before-body=$(TMP2)
|
||||
OPTIONS += --include-after-body=$(TMP3)
|
||||
|
||||
|
||||
## Template variables
|
||||
TEMPLATE_DL_DIR = .tmp_template_dl
|
||||
|
||||
CLEANTHESIS_TEMPLATE = Assets/cleanthesis.sty
|
||||
|
||||
TEMPLATE_FILES = $(CLEANTHESIS_TEMPLATE)
|
||||
|
||||
###############################################################################
|
||||
## Main targets (do not change)
|
||||
###############################################################################
|
||||
|
||||
$(SRC): $(DOC)/Project.org
|
||||
$(PANDOC) -o $@ $<
|
||||
|
||||
## Use Clean Thesis template (https://github.com/derric/cleanthesis)
|
||||
cleanthesis: TEMPLATE_FILE += $(CLEANTHESIS_TEMPLATE)
|
||||
cleanthesis: TEMPLATE_REPO += $(CLEANTHESIS_REPO)
|
||||
cleanthesis: TEMPLATE_VERSION += $(CLEANTHESIS_VERSION)
|
||||
cleanthesis: AUX_OPTS += -M cleanthesis=true -M cleanthesisbibfile=$(BIBFILE:%.bib=%)
|
||||
cleanthesis: OPTIONS += --include-in-header=Assets/include-header.tex $(AUX_OPTS)
|
||||
cleanthesis: $(CLEANTHESIS_TEMPLATE) $(TARGET)
|
||||
|
||||
|
||||
## Clean-up: Remove temporary (generated) files and download folder
|
||||
clean:
|
||||
rm $(DOC)/*.md
|
||||
rm $(DOC)/*.pdf
|
||||
rm -rf $(TMP) $(TEMPLATE_DL_DIR)
|
||||
|
||||
|
||||
## Clean-up: Remove also genereated thesis and template files
|
||||
distclean: clean
|
||||
rm -f $(TARGET)
|
||||
|
||||
|
||||
|
||||
###############################################################################
|
||||
## Auxiliary targets (do not change)
|
||||
###############################################################################
|
||||
|
||||
|
||||
## Download template files
|
||||
|
||||
## Build thesis
|
||||
${TARGET}: $(SRC) $(REFERENCES) $(META) $(BIBFILE) $(TMP)
|
||||
$(PANDOC) ${OPTIONS} -o $@ $(SRC) $(REFERENCES)
|
||||
|
||||
|
||||
## Build auxiliary files (title page, backmater, references)
|
||||
$(TMP): Assets/__%.filled.tex: Assets/%.tex $(META)
|
||||
$(PANDOC) $(AUX_OPTS) --template=$< --metadata-file=$(META) -o $@ $<
|
||||
|
||||
|
||||
###############################################################################
|
||||
## Declaration of phony targets
|
||||
###############################################################################
|
||||
|
||||
|
||||
.PHONY: cleanthesis clean distclean
|
||||
|
||||
Reference in New Issue
Block a user