I am writing a language teaching-learning curriculum with Typst. The expected output is multi-volume / multi-format (vastly different layout: book-like layouts and slides)
- a curriculum (driven from external data source)
- a dictionary (driven from external data source)
- a teacher’s guide
- teacher’s slides for lessons
- a student’s workbook
These are tightly coupled to one another (e.g., the teacher’s guide may reference (curriculum) “Skill 3.2” and “page 65 of student’s workbook” and these numbering are dynamic). This will take up three years of my life, so I want to investigate some manageable way of handling the typesetting, so I can “just write”.
I can see this being done in one of two ways:
- single document, post-process splitting. I’ll keep page numbers for each work in separate indices, and cut up the PDF manually.
- (+): all references are internal references
- (-): no way to change document type (i.e.,
touyingslides have to be managed separately). Typst had been extremely fast for me even on large complex documents, so I think the friction from compiling all documents every time is negligible.
- external index. Each output is its own Typst file, and at each typeset run there is also an external index being written to and referenced from.
- (+): flexibility for each document
- (-): I think this introduces lots of room for error, dependencies becomes cyclic etc.
I’m leaning towards a single document, and handle irregular materials manually at some later stage. Thoughts / suggestions / comments on considerations entirely amiss?