talks/justfile
Oliver Davies 9f10128230 Allow for compiling other files
Instead of assuming we're always compiling from `slides.rst`, make the
filename dynamic so it can build whatever files are needed.

For example, to generate the demo slides for Test Driven Drupal, I can
run:

```shell
just generate-pdf ./src/test-driven-drupal demo.rst
```

If no filename is specified, default to `slides.rst` and all the slides
will be compiled.
2024-05-09 15:19:01 +01:00

38 lines
779 B
Makefile

pdf_filename := 'slides.pdf'
thumbnail_filename := 'thumbnail.jpg'
default:
@just --list
clean:
rm -fr dist/*
touch dist/.keep
find . \
-type f \( -name "{{ pdf_filename }}" -o -name *.build_temp -o -name {{ thumbnail_filename }} \) \
-delete
generate talk_path filename="slides.rst": (generate-pdf talk_path filename)
generate-pdf talk_path filename="slides.rst":
#!/usr/bin/env bash
set -o errexit
set -o nounset
talk_slug=$(basename {{ talk_path }})
pushd "{{ talk_path }}"
rst2pdf {{ filename }} \
--break-level 1 \
-e preprocess \
--fit-background-mode scale \
--font-path ../fonts \
--output "../../dist/${talk_slug}.pdf" \
--stylesheets opdavies-light,igor \
--stylesheet-path ../styles
popd
tree dist