Ein Bericht, der sich selbst setzt

Eine Seite von Hand zu setzen heißt, vor dem ersten Wort zu wissen, wie hoch jeder Absatz sein wird. Übersetzen Sie einen davon, und jede Zahl darunter ist falsch; fügen Sie einer Tabelle eine Zeile hinzu, und die Fußnote landet auf der Seitenzahl. Diese Rechnung kommt Monate später, wenn der Bericht sich ändern muss und nichts im Code sagt, welche seiner Zahlen ihn zusammenhielten.

Wo sich die beiden Seiten teilen, wird ebenfalls nicht von Hand gewählt; deshalb kommen der französische und der englische Bericht unten aus ein und demselben Programm: Der französische läuft länger, der Umbruch fällt anderswohin, und nichts musste dafür angepasst werden. Die einzige Höhe, die in diesem Beispiel jemand festgelegt hat, ist die der Seitenzahl — und die gehört der Seite, nicht dem, was darauf gesagt wird.

Was dieses Beispiel zeigt

  • In Lesereihenfolge gestapelte Blöcke: Text, eine Tabelle, Linien und Abstände.
  • Eine zeilenweise geteilte Tabelle, ihre Kopfzeile auf der nächsten Seite wiederholt.
  • Ein zusammengehaltener Absatz statt einer allein gelassenen Zeile.

Der Quellcode, vollständig

Nichts ist weggelassen und nichts vereinfacht: Das ist das Programm genau so, wie es läuft, für den Entwickler, der diese Bibliothek nutzt. Die dritte ist die Beschreibung selbst: eine schlichte Liste dessen, was die Seite sagen muss, und das wird dem Dienst gesendet.

Den Rust-Quellcode lesen Den Python-Quellcode lesen Den JSON-Quellcode lesen

Das Dokument selbst

Das Dokument auf Englisch öffnen Das Dokument auf Französisch öffnen Das Dokument auf Deutsch öffnen Das Dokument auf Spanisch öffnen Das Dokument auf Italienisch öffnen Das Dokument auf Portugiesisch öffnen

Beispiele in der Nähe

Ein überlanges Wort umbrechen

Ein Wort, länger als die Spalte, die es enthält: Die Bibliothek lässt es ganz, schneidet es am Rand der Spalte ab oder schneidet es ab und schließt die Zeile mit einem Bindestrich.

Umbruchstellen nach einem Schrägstrich oder einem Bindestrich

Eine Blocksatzspalte, viermal gesetzt: Dateipfade und Komposita, die ohne Umbruchstellen über den Rand hinauslaufen, dann dort umbrechen, wo ein Umbruch nach Schrägstrich oder Bindestrich erlaubt ist, danach überall, wo ihre Interpunktion es zulässt, und schließlich mit geschützten Bindestrichen, die jedes Kompositum zusammenhalten.

Eine Schrift hinter der Schrift

Eine Zeile mit Statusangaben, zweimal gesetzt: nur in einer Hausschrift, in der die Zeichen ohne Glyphe als leere Kästchen herauskommen, dann mit einer zweiten Schrift dahinter, die sie zeichnet.

Jedes Beispiel, nach Thema