Files
CS1534CA3/justfile

53 lines
1.4 KiB
Makefile

dir:
mkdir -p build
template: dir
#!/usr/bin/env python3
from jinja2 import Environment, FileSystemLoader
from glob import glob
env = Environment(loader=FileSystemLoader('.'))
for file in glob("*", root_dir="pages/"):
with open(f"build/{file}", "w") as out:
out.write(env.get_template(f"pages/{file}").render())
build: template
cp -r static/ build/
serve: build
simple-http-server --index --nocache build/
watch:
watchexec --restart -- just serve
log:
#!/usr/bin/env bash
set -exuo pipefail
{
cat <<EOP
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{color}
\usepackage[margin=0.25in]{geometry}
\usepackage{hyperref}
\newcommand{\ws}[1]{\textcolor[rgb]{0,0,0}{#1}}
\DeclareUnicodeCharacter{22EE}{│}
\usepackage{pmboxdraw}
\begin{document}
\ttfamily
\section*{}
EOP
git log -p --format=tformat:'(((RULE)))%h: %s%nBy %aN <%aE> at %ai%n%b%n' -n 5 \
| delta --light -w 110 --plus-style '"#339933" bold' --plus-emph-style '"#339933"' --minus-style 'red bold' --minus-emph-style 'red' --zero-style 'gray dim' --no-gitconfig --line-numbers --syntax-theme none \
| ansifilter --latex -f \
| sed -e '0,/(((RULE)))/s///' -e 's/(((RULE)))/\\hrule\n\\section*{}/g'
echo '\hrule'
echo '\end{document}'
} > build/commits.tex
latexrun -o build/commits.pdf build/commits.tex
rm build/commits.tex
codio: build log
tar c build/ | gzip > built.tar.gz