feat: Druck-Umbruchzeichen (↪/➥) in Codeblöcken auflösen (QA R6)

Fortsetzungszeilen werden wieder mit genau einem Leerzeichen zur
ursprünglichen Codezeile zusammengefügt. Im Python-Beispielbuch sind das
195 Stellen; danach lassen sich 247 statt 203 von 255 Python-Blöcken
parsen. Abschaltbar mit --keep-wrap-markers; der Bericht enthält
wrap_lines_joined pro Block und einen Hinweis pro Kapitel.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Dieter Schlüter 2026-10-05 20:45:16 +02:00
commit 6db834addd

View file

@ -164,6 +164,10 @@ 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
werden dann als Python markiert.
Zu lange Codezeilen sind im gedruckten Buch oft umbrochen und die Fortsetzung mit `↪` markiert. Das
Programm fügt solche Zeilen automatisch wieder zusammen, damit der Code lauffähig ist. Wer die
Druckfassung unverändert haben möchte, gibt `--keep-wrap-markers` an.
### Mathematikbuch
```bash
@ -313,9 +317,9 @@ Nein, es wird nur gelesen. Mit `--copy-original` wird zusätzlich eine Kopie in
Manche E-Book-Seiten (Titelseite, Impressum) haben weder Überschrift noch Titel. Dann wird der
interne Dateiname verwendet.
**Warum steht in einem Codebeispiel ein `↪` oder ist es falsch eingerückt?**
So steht es im E-Book selbst (Umbruchzeichen bzw. Satzfehler des Verlags). Der Code wird bewusst
zeichengetreu übernommen.
**Warum ist ein Codebeispiel falsch eingerückt?**
So steht es im E-Book selbst (Satzfehler des Verlags). Der Code wird bewusst zeichengetreu
übernommen. Nur die Druck-Umbruchzeichen `↪` werden aufgelöst (abschaltbar mit `--keep-wrap-markers`).
**Können Dateinamen Umlaute enthalten?**
Standardmäßig werden Umlaute umschrieben (`ä` → `ae`). Mit `--slug-language none` bleiben sie erhalten,
@ -345,6 +349,7 @@ python3 epub2md_merge.py --help
| `--force` | frühere Ausgabe ersetzen |
| `--chapter-level N` | ab welcher Überschriftenebene eine neue Datei beginnt (Standard 1) |
| `--code-language SPRACHE` | Sprache für Codeblöcke ohne erkannte Sprache |
| `--keep-wrap-markers` | Druck-Umbruchzeichen `↪` im Code stehen lassen |
| `--math auto/tex/mathml/image` | Formeldarstellung |
| `--footnotes end-of-chapter/end-of-book/inline/keep-links` | Fußnoten-Platzierung |
| `--format gfm/commonmark` | Markdown-Variante; `commonmark` für sehr strikte Programme |