mirror of
https://github.com/prdlk/cv.git
synced 2026-08-02 17:31:41 +00:00
docs(root): Update documentation and migrate to self-contained LaTeX resume template
This commit is contained in:
@@ -1,55 +1,42 @@
|
||||
# Deedy-Resume (OpenFonts) build
|
||||
#
|
||||
# Requires: latexmk, xelatex, bibtex (TeX Live or MacTeX).
|
||||
# Run all targets from the repo root — the .cls references fonts/ by
|
||||
# relative path and only resolves correctly from here.
|
||||
# Resume build — each variant is a src/*.tex, built to dist/*.pdf (pdflatex).
|
||||
|
||||
TEX := deedy_resume-openfont.tex
|
||||
NAME := $(basename $(TEX))
|
||||
DIST := dist
|
||||
PDF := $(DIST)/$(NAME).pdf
|
||||
DIST := dist
|
||||
VARIANTS := $(notdir $(basename $(wildcard src/*.tex)))
|
||||
PDFS := $(addprefix $(DIST)/,$(addsuffix .pdf,$(VARIANTS)))
|
||||
|
||||
SOURCES := $(TEX) deedy-resume-openfont.cls publications.bib
|
||||
LATEXMK := latexmk -pdf -interaction=nonstopmode -halt-on-error -output-directory=$(DIST)
|
||||
VIEWER := $(shell command -v xdg-open 2>/dev/null || command -v open 2>/dev/null)
|
||||
|
||||
LATEXMK := latexmk
|
||||
LATEXMK_FLAGS := -xelatex -interaction=nonstopmode -halt-on-error -output-directory=$(DIST)
|
||||
|
||||
# Pick a PDF viewer: xdg-open on Linux, open on macOS.
|
||||
VIEWER := $(shell command -v xdg-open 2>/dev/null || command -v open 2>/dev/null)
|
||||
|
||||
.PHONY: all build watch preview clean distclean help
|
||||
.PHONY: all build watch clean distclean help $(VARIANTS)
|
||||
|
||||
all: build
|
||||
|
||||
## build: compile the resume into dist/
|
||||
build: $(PDF)
|
||||
## build: compile every variant in src/ into dist/
|
||||
build: $(PDFS)
|
||||
|
||||
$(PDF): $(SOURCES) | $(DIST)
|
||||
$(LATEXMK) $(LATEXMK_FLAGS) $(TEX)
|
||||
$(DIST)/%.pdf: src/%.tex
|
||||
$(LATEXMK) $<
|
||||
|
||||
$(DIST):
|
||||
mkdir -p $(DIST)
|
||||
# Build a single variant by name, e.g. `make react-native`
|
||||
$(VARIANTS): %: $(DIST)/%.pdf
|
||||
|
||||
## watch: rebuild + live-preview on every save (dev mode)
|
||||
watch: | $(DIST)
|
||||
$(LATEXMK) $(LATEXMK_FLAGS) -pvc $(TEX)
|
||||
## watch: rebuild + live-preview a variant, e.g. `make watch V=react-native`
|
||||
watch:
|
||||
$(LATEXMK) -pvc src/$(V).tex
|
||||
|
||||
## preview: build once and open the PDF
|
||||
preview: build
|
||||
ifeq ($(VIEWER),)
|
||||
@echo "No PDF viewer found (install xdg-open or open). PDF is at $(PDF)."
|
||||
else
|
||||
$(VIEWER) $(PDF)
|
||||
endif
|
||||
## preview: build a variant and open it, e.g. `make preview V=react-native`
|
||||
preview: $(DIST)/$(V).pdf
|
||||
$(if $(VIEWER),$(VIEWER) $(DIST)/$(V).pdf,@echo "No PDF viewer found. PDF is at $(DIST)/$(V).pdf.")
|
||||
|
||||
## clean: remove LaTeX aux files but keep the PDF
|
||||
## clean: remove LaTeX aux files, keep the PDFs
|
||||
clean:
|
||||
-$(LATEXMK) -c -output-directory=$(DIST) $(TEX)
|
||||
-$(foreach v,$(VARIANTS),latexmk -c -output-directory=$(DIST) src/$(v).tex;)
|
||||
|
||||
## distclean: remove dist/ entirely
|
||||
distclean:
|
||||
rm -rf $(DIST)
|
||||
|
||||
## help: list available targets
|
||||
## help: list available targets and variants
|
||||
help:
|
||||
@grep -E '^## ' $(MAKEFILE_LIST) | sed 's/## //'
|
||||
@echo "variants: $(VARIANTS)"
|
||||
|
||||
Reference in New Issue
Block a user