|
| 1 | +OUT_DIR=output |
| 2 | +IN_DIR=markdown |
| 3 | +STYLES_DIR=styles |
| 4 | +STYLE=chmduquesne |
| 5 | + |
| 6 | +all: html pdf docx |
| 7 | + |
| 8 | +kitchensink: html pdf docx rtf |
| 9 | + |
| 10 | +pdf: init |
| 11 | + for f in $(IN_DIR)/*.md; do \ |
| 12 | + FILE_NAME=`basename $$f | sed 's/.md//g'`; \ |
| 13 | + echo $$FILE_NAME.pdf; \ |
| 14 | + pandoc --standalone --template $(STYLES_DIR)/$(STYLE).tex \ |
| 15 | + --from markdown --to context \ |
| 16 | + --variable papersize=A4 \ |
| 17 | + --output $(OUT_DIR)/$$FILE_NAME.tex $$f > /dev/null; \ |
| 18 | + mtxrun --path=$(OUT_DIR) --result=$$FILE_NAME.pdf --script context $$FILE_NAME.tex > $(OUT_DIR)/context_$$FILE_NAME.log 2>&1; \ |
| 19 | + done |
| 20 | + |
| 21 | +html: init |
| 22 | + for f in $(IN_DIR)/*.md; do \ |
| 23 | + FILE_NAME=`basename $$f | sed 's/.md//g'`; \ |
| 24 | + echo $$FILE_NAME.html; \ |
| 25 | + pandoc --standalone --include-in-header $(STYLES_DIR)/$(STYLE).css \ |
| 26 | + --lua-filter=pdc-links-target-blank.lua \ |
| 27 | + --from markdown --to html \ |
| 28 | + --output $(OUT_DIR)/$$FILE_NAME.html $$f \ |
| 29 | + --metadata pagetitle=$$FILE_NAME;\ |
| 30 | + done |
| 31 | + |
| 32 | +docx: init |
| 33 | + for f in $(IN_DIR)/*.md; do \ |
| 34 | + FILE_NAME=`basename $$f | sed 's/.md//g'`; \ |
| 35 | + echo $$FILE_NAME.docx; \ |
| 36 | + pandoc --standalone $$SMART $$f --output $(OUT_DIR)/$$FILE_NAME.docx; \ |
| 37 | + done |
| 38 | + |
| 39 | +rtf: init |
| 40 | + for f in $(IN_DIR)/*.md; do \ |
| 41 | + FILE_NAME=`basename $$f | sed 's/.md//g'`; \ |
| 42 | + echo $$FILE_NAME.rtf; \ |
| 43 | + pandoc --standalone $$SMART $$f --output $(OUT_DIR)/$$FILE_NAME.rtf; \ |
| 44 | + done |
| 45 | + |
| 46 | +init: dir version |
| 47 | + |
| 48 | +dir: |
| 49 | + mkdir -p $(OUT_DIR) |
| 50 | + |
| 51 | +version: |
| 52 | + PANDOC_VERSION=`pandoc --version | head -1 | cut -d' ' -f2 | cut -d'.' -f1`; \ |
| 53 | + if [ "$$PANDOC_VERSION" -eq "2" ]; then \ |
| 54 | + SMART=-smart; \ |
| 55 | + else \ |
| 56 | + SMART=--smart; \ |
| 57 | + fi \ |
| 58 | + |
| 59 | +clean: |
| 60 | + rm -f $(OUT_DIR)/* |
0 commit comments