Markdown naar PDF

Dit werktraject maakt van één Markdownbestand (tekst, VSA-blokken, includes, paginascheidingen) een A4-PDF. Gebruik dit voor demo’s en losse bladen buiten de oefenhoek-bibliotheek. Voor liturgische tekst in de bibliotheek: werktraject Tekstblad ({stam}.tekstblad.md → {stam}.tekstblad.pdf).

Waartoe

Je wilt een printbaar blad (bijvoorbeeld een demo of een liturgisch leesblad) dat markdown en ::: vsa-notatie combineert, zonder een basispartituur-.mscz.

Eindresultaat en criteria

Bron (voorbeeld)Product
content-source\praktijk\demo\assets\voorbeeld-blad.mdstatic\demo\voorbeeld-blad.pdf

Klaar (demo) als: de PDF niet ouder is dan voorbeeld-blad.md en eventuele includes (zoals voorbeeld.vsa); check_demo_pdf_fresh onder check is groen. Op de demopagina staat een PDF-voorbeeldviewer.

Kenmerken van de export: :::pagebreak::: start een nieuw A4-blad; :::print-only::: … :::end-print-only::: verschijnt in de PDF, niet op de website; ruwe HTML in het markdownblad mag mee (Chrome/Edge rendert de tussen-HTML).

Wanneer wel / wanneer niet

WelNiet
Demo- of los blad met VSA in markdownBibliotheek-basispartituur → Basispartituur
A4-PDF uit markdown nodigAlleen schermweergave op de site (dan volstaat Hugo)

Volgorde (bestanden)

  1. Schrijf of bewerk het markdownblad (bij de demo: content-source\praktijk\demo\assets\voorbeeld-blad.md, met build: render: never zodat Hugo het blad niet als pagina publiceert).
  2. Bouw de PDF:
scripts\demo-pdf.cmd

of generiek:

scripts\pdf.cmd content-source\praktijk\demo\assets\voorbeeld-blad.md -o static\demo\voorbeeld-blad.pdf --content-root content-source
  1. Hard refresh in de browser als een oude PDF gecached blijft.
  2. Commit bron én PDF samen als de demo-gate groen moet blijven.

Site-demo-uitleg: Markdown naar PDF (Tooling Demo) .

Automatisch (CI)

CI en lokale check / build / serve genereren geen willekeurige markdown-PDF’s. Wel faalt check_demo_pdf_fresh.py als static\demo\voorbeeld-blad.pdf ontbreekt of ouder is dan de bronnen. Herstel: scripts\demo-pdf.cmd, daarna opnieuw committen.

Handmatig

SituatieCommandoMan-page
Willekeurig bladscripts\pdf.cmd <bestand.md> -o …pdf
Demo-PDFscripts\demo-pdf.cmddemo-pdf

Vereist: Edge of Chrome (of CHROME_PATH / --chrome); zelfde validatiefouten als vsa validate bij kapotte VSA-blokken.

Zie ook