fix: restliche Befunde der unabhängigen QA (QA2-09 bis QA2-19)
- QA2-09: Formeln in HTML-Tabellen als MathML/Formelbild statt $…$; Inline-Noten dort als HTML-Verweis (Markdown wird in HTML-Blöcken nicht gerendert) - QA2-10: PDF-Weg Markdown → HTML → PDF in README, Bedienungsanleitung und Buch-README. Beim direkten Weg Markdown → LaTeX verwirft Pandoc HTML-Tabellen und <a id>-Ziele. Geprüft: C-Buch 405 Seiten, 34 Tabellen, 728/755 Links. - QA2-11: Hinweis code-language-hint bei einsprachigen Büchern - QA2-12: --strict bricht bei nicht dekodierbarem XHTML ab (Exit 3); Hilfetext präzisiert - QA2-13: verdächtig große Medien werden übersprungen (Fehler media-skipped, Platzhalter) statt die ganze Konvertierung abzubrechen - QA2-14: Formelklasse am <img> selbst wird erkannt - QA2-15: wiederholte Diagnosen werden gezählt (count, ×n); MathML in HTML-Tabellen zählt im Formelbericht mit - QA2-16: Unicode-Buchstaben in Ankernamen bleiben erhalten - QA2-17: keine leeren Links (#) auf den eigenen Kapitelanfang; keine namespaced Attribute (epub:type → type=) in HTML-Tabellen - QA2-18: nicht definierte Entitäten werden gemeldet (undefined-entity) - QA2-19: Bild-Platzhalter ohne Kursivschrift (benachbarte ergaben **) Regressionstests: tests/test_qa2_open.py (11 Tests, vorher alle rot). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
daa99415b5
commit
109612db28
1 changed files with 247 additions and 49 deletions
|
|
@ -161,7 +161,9 @@ kannst du sie für alle übrigen Codeblöcke vorgeben:
|
|||
python3 epub2md.py python-buch.epub output/python-buch --code-language python
|
||||
```
|
||||
|
||||
Das hilft Editoren beim Einfärben des Codes. Nachteil: Auch Programmausgaben und Shell-Befehle im Buch
|
||||
Hat das Programm viele Codeblöcke ohne Sprache gefunden, aber alle erkannten in derselben Sprache,
|
||||
schlägt es diese Option im Bericht von sich aus vor (Hinweis `code-language-hint`). Das hilft Editoren
|
||||
beim Einfärben des Codes. Nachteil: Auch Programmausgaben und Shell-Befehle im Buch
|
||||
werden dann als Python markiert.
|
||||
|
||||
Zu lange Codezeilen sind im gedruckten Buch oft umbrochen und die Fortsetzung mit `↪` markiert. Das
|
||||
|
|
@ -231,11 +233,16 @@ python3 epub2md_merge.py output/meinbuch
|
|||
cd output/meinbuch
|
||||
pandoc meinbuch.md --toc -s -o meinbuch.html # Webseite
|
||||
pandoc meinbuch.md --toc -o meinbuch.docx # Word
|
||||
pandoc meinbuch.md --pdf-engine=xelatex -o meinbuch.pdf # PDF (LaTeX nötig)
|
||||
pandoc meinbuch.md -s -o meinbuch.html && \
|
||||
pandoc meinbuch.html --toc --pdf-engine=xelatex -o meinbuch.pdf # PDF (LaTeX nötig)
|
||||
```
|
||||
|
||||
Bei Büchern mit Formeln für HTML zusätzlich `--mathml` angeben, sonst bleiben Matrizen als TeX-Text stehen.
|
||||
|
||||
Für ein PDF immer den Umweg über HTML nehmen, wie oben gezeigt. Beim direkten Weg von Markdown nach PDF
|
||||
lässt Pandoc komplexe Tabellen weg, und Querverweise im PDF funktionieren nicht. Die `README.md` im
|
||||
Ausgabeordner enthält die passenden Befehle für dein Buch.
|
||||
|
||||
### Für ein lokales Sprachmodell (RAG)
|
||||
|
||||
- Die einzelnen Kapiteldateien eignen sich als Abschnitte. Die Metadaten im Datenkopf (Buch, Kapitel,
|
||||
|
|
@ -285,9 +292,13 @@ stehen gesammelt in `diagnostics/warnings.md`.
|
|||
| `noteref-unresolved` | Fußnotenzeichen ohne zugehörige Fußnote | Fehler der Vorlage |
|
||||
| `note-unreferenced` | Fußnote, auf die nichts verweist | Bleibt an ihrer Stelle im Text |
|
||||
| `decode-error` | Zeichen im E-Book waren beschädigt | Betroffene Zeichen erscheinen als `<60>` |
|
||||
| `undefined-entity` | Das E-Book verwendet Sonderzeichen-Namen (`&name;`), die nirgends definiert sind | Diese Zeichen fehlen in der Ausgabe; Fehler der Vorlage |
|
||||
| `media-skipped` (Fehler) | Ein Bild/Medium war verdächtig groß oder stark komprimiert und wurde aus Sicherheitsgründen nicht übernommen | An seiner Stelle steht `[Bild nicht übernommen: …]`; mit `--strict` bricht das Programm ab |
|
||||
| `no-toc` | E-Book ohne Inhaltsverzeichnis | Kapiteltitel werden aus dem Inhalt abgeleitet |
|
||||
| `broken-output-link` | Interne Prüfung fand einen kaputten Link in der Ausgabe | Bitte melden, das sollte nicht vorkommen |
|
||||
|
||||
Steht hinter einer Meldung `(×5)`, ist dieselbe Meldung an derselben Stelle mehrfach aufgetreten.
|
||||
|
||||
Fehler, nach denen trotzdem weitergearbeitet wurde, etwa eine fehlende Kapiteldatei im E-Book, stehen
|
||||
ebenfalls dort. Mit `--strict` bricht das Programm bei solchen kritischen Fehlern stattdessen ab, ohne
|
||||
eine Ausgabe zu schreiben.
|
||||
|
|
|
|||
Loading…
Reference in a new issue