S07: PDF-Build-Fehler endgueltig behoben. S06-Hotfix (array, calc, providecommand real) loeste das Problem nicht; nach Rebuild kam unveraendert "! LaTeX Error: No counter 'none' defined." Eigentliche Ursache: Pandoc 3.x emittiert fuer unnummerierte Tabellen direkt vor begin{longtable} die Zeile def LTcaptype none, ohne den Counter none zu definieren. Pandocs eigene Default-Vorlage definiert ihn (commit d835461 in Pandoc 3.8.2.1), Custom-Templates muessen das selbst tun (siehe Pandoc-Issue 11201). Fix: eine Zeile newcounter none direkt nach providecommand real im Tabellen-Block des Templates. Sandbox-Reproduktion exakter Fehlertext ohne Fix, sauberes PDF mit Fix. Auf Thomas' System: PDF wird erzeugt, Ausbildungs-Layout im PDF visuell bestaetigt. Iteration A fuer Teilgebiet 01 damit inhaltlich abgeschlossen. Build-UX-Fix: build.ps1 ergaenzt um Start-Sleep -Seconds 3 nach jedem fehlschlagenden Build-Schritt (Pflichtdatei-Check, PDF-Build, DOCX-Build), damit die rote Fehlerzeile lesbar bleibt bevor das PowerShell-Fenster zugeht. teilgebiete/01-lebenslauf.md um beide Fixes ergaenzt (zweistufige Hotfix-Geschichte, PDF-Bestaetigung, UX-Fix). agent-prompt.md Aktueller-Stand-Abschnitt fuer S08 fortgeschrieben mit verbleibender Iterationsreihenfolge B-C-D, Hinweise auf Pandoc-Versionsunterschied praeziser formuliert.

This commit is contained in:
tlg
2026-04-26 10:58:03 +02:00
parent c95afb8eed
commit b9c5c08a69
9 changed files with 352 additions and 341 deletions

View File

@@ -128,9 +128,17 @@ Die in S04 mit docx-js erstellte Version hatte strukturelle typographische Mäng
**Visuelle Bestätigung im PDF:** Layout im Tabellen-Format wie gewünscht (linke Spalte Datum normal, rechte Spalte Titel fett, Beschreibung normal). Visuelle Bestätigung im DOCX steht nach erstem Build der Revision aus.
**Hotfix Build-Fehler:** Beim ersten Build der Tabellen-Revision schlug LuaLaTeX mit `! LaTeX Error: No counter 'none' defined.` in der Spaltenangabe `p{(\columnwidth - 2\tabcolsep) * \real{0.8554}}` fehl. Ursache: Thomas' Pandoc-Version (3.x) emittiert für Tabellen-Spaltenbreiten einen calc-basierten Multiplikator, der das Pandoc-Hilfsmakro `\real` und das `calc`-Paket voraussetzt; ohne diese interpretiert LaTeX die Multiplikation als Counter-Referenz und stolpert über einen vermeintlichen Counter `none`. Sandbox-Pandoc 2.9 emittiert die simplere `ll`-Spaltenform und reproduziert den Fehler nicht — daher fiel er zuerst nur auf Thomas' System auf. Behoben durch Ergänzung von `\usepackage{array}`, `\usepackage{calc}` und `\providecommand{\real}[1]{#1}` im Tabellen-Block des Templates. Sandbox-Verifikation mit synthetischem Pandoc-3.x-Spalten-Format kompilierte zu PDF ohne Fehler.
**Hotfix Build-Fehler (S06, Teil 1):** Beim ersten Build der Tabellen-Revision schlug LuaLaTeX mit `! LaTeX Error: No counter 'none' defined.` in der Spaltenangabe `p{(\columnwidth - 2\tabcolsep) * \real{0.8554}}` fehl. Erste Vermutung: Thomas' Pandoc-Version (3.x) emittiert für Tabellen-Spaltenbreiten einen calc-basierten Multiplikator, der das Pandoc-Hilfsmakro `\real` und das `calc`-Paket voraussetzt. Ergänzung von `\usepackage{array}`, `\usepackage{calc}` und `\providecommand{\real}[1]{#1}` im Tabellen-Block des Templates. Sandbox-Verifikation mit synthetischem Pandoc-3.x-Spalten-Format kompilierte zu PDF ohne Fehler — die echte Ursache war damit aber noch nicht behoben.
**Visuelle Bestätigung im DOCX (nach Hotfix):** Tabelle sieht gut aus, nur die Default-Word-Tabellenrahmenlinien sind noch sichtbar; der Rahmen-Aus geht in Iteration B über die `reference.docx`.
**Hotfix Build-Fehler (S07, eigentliche Ursache):** Der Folgebuild auf Thomas' System lieferte unverändert `! LaTeX Error: No counter 'none' defined.` Recherche ([Pandoc-Issue #11201](https://github.com/jgm/pandoc/issues/11201)) zeigte den eigentlichen Auslöser: Pandoc 3.x emittiert für unnummerierte Tabellen direkt vor dem `\begin{longtable}` die Zeile `\def\LTcaptype{none}` — ohne den Counter `none` zu definieren. Pandocs eigene Default-Vorlage definiert ihn (commit d835461 in 3.8.2.1 nachgezogen), aber Custom-Templates müssen das selbst tun. Sobald longtable intern `\refstepcounter{\LTcaptype}` aufruft, bricht LaTeX ab. Behoben durch eine Zeile `\newcounter{none}` direkt nach dem `\providecommand{\real}` im Tabellen-Block. Sandbox-Reproduktion lieferte exakt den gleichen Fehlertext und wurde durch den Fix behoben. Anschließender Build auf Thomas' System: PDF erfolgreich erzeugt, Ausbildungs-Layout im PDF visuell bestätigt.
**Lehre für die Sandbox-Verifikation:** Pandocs `\def\LTcaptype{none}`-Bug tritt nur auf, wenn longtable den Counter intern referenziert. Sandbox-Pandoc 2.9 emittiert weder die calc-basierten Spaltenbreiten noch `\def\LTcaptype{none}` — die Sandbox kann diesen Bug also nicht reproduzieren, indem sie einfach pandoc auf cv.md laufen lässt. Synthetische Mini-Tex-Beispiele bleiben für Pandoc-3.x-spezifische Bugs die einzige verlässliche Verifikationsquelle.
**Visuelle Bestätigung im DOCX:** Tabelle sieht gut aus, nur die Default-Word-Tabellenrahmenlinien sind noch sichtbar; der Rahmen-Aus geht in Iteration B über die `reference.docx`.
**Visuelle Bestätigung im PDF (S07):** Ausbildungs-Layout entspricht der Vorgabe — linke Spalte Datum normal, rechte Spalte Titel fett mit Beschreibung. Iteration A damit inhaltlich abgeschlossen.
**Build-UX-Fix (S07):** `build/build.ps1` ergänzt um `Start-Sleep -Seconds 3` nach jedem fehlschlagenden Build-Schritt (Pflichtdatei-Check, PDF, DOCX). Bei Doppelklick auf `checkpoint.cmd`-artigen Aufruf schließt sich das PowerShell-Fenster sonst sofort und Fehlermeldungen sind nicht lesbar. Bei mehreren Fehlern in einem Lauf akkumulieren sich die Pausen — gewollt.
## Nächste Schritte