update Makefile and directory structure
This commit is contained in:
parent
7ce30f1b1e
commit
2488421f0a
40 changed files with 1260 additions and 115 deletions
48
Makefile
Normal file
48
Makefile
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
SHELL = /bin/sh
|
||||
INSTALLDIR := ./public_html/eh/eh/eh/eh-eh/
|
||||
|
||||
# The name of the stylesheet. This needs to be copied to any directory containing html files that use it.
|
||||
style := style.css
|
||||
images := images
|
||||
|
||||
# Main html template that pandoc uses to generate .html from .md files
|
||||
template := pandoc/template.html
|
||||
|
||||
# Template for extracting metadata of .md files in json format
|
||||
list_template := pandoc/meta-json-template.txt
|
||||
|
||||
# List of articles with their metadata to be used in the creation of the article list in index.html
|
||||
article_list := articles.json
|
||||
|
||||
# article targets
|
||||
articles := $(patsubst %.md,%.html,$(wildcard articles/*.md))
|
||||
|
||||
all: index.html about.html
|
||||
|
||||
install:
|
||||
cp -r index.html about.html $(articles) $(style) $(images) $(INSTALLDIR); \
|
||||
|
||||
clean:
|
||||
echo '{"articles": []}' > $(article_list); \
|
||||
rm index.html about.html $(articles);
|
||||
|
||||
$(articles): %.html: %.md
|
||||
# Build articles using pandoc
|
||||
pandoc $< --template $(template) --css $(style) --highlight-style zenburn --mathml --toc --output $@; \
|
||||
|
||||
# Extract metadata from .md file
|
||||
# pandoc $< --template $(list_template) > article.json.tmp.0; \
|
||||
|
||||
# Append filename field to article object. This is used to link to the article from index.html.
|
||||
# pandoc $< --template $(list_template) | jq '. += {"filename": "$(notdir $@)"}' > article.json.tmp; \
|
||||
|
||||
# Append article object to the article list
|
||||
jq '.articles += [$(shell pandoc $< --template $(list_template) | jq '. += {"filename": "$(notdir $@)"}' )]' $(article_list) > articles.json.tmp; \
|
||||
mv ./articles.json.tmp $(article_list); \
|
||||
|
||||
index.html: index.md $(articles)
|
||||
# Build index.html with metadata injected from articles_list
|
||||
pandoc $< --template $(template) --css $(style) --metadata-file $(article_list) --highlight-style zenburn --mathml --toc --output $@; \
|
||||
|
||||
about.html: about.md
|
||||
pandoc $< --template $(template) --css $(style) --highlight-style zenburn --mathml --toc --output $@
|
||||
Loading…
Add table
Add a link
Reference in a new issue