Demnächst in diesem Theater

Einige Anwender sind sehr daran interessiert, wie es mit KOMA-Script weiter geht. Nun, die wichtigste Nachricht ist, dass es weiter geht. Derzeit sogar sehr intensiv. Gleichzeitig ist davon aber scheinbar nichts zu sehen.

Wie bekannt sein dürfte, ist PDF-Tagging derzeit eines der bei KOMA-Script intensiv diskutierten Themen. Dazu hat Ulrike Fischer auf der DANTE-Tagung kürzlich gezeigt, wie man bereits heute den KOMA-Script-Klassen an einigen Stellen Tagging beibringen kann. Bisher war das aber eher Stückwerk in Form von Notlösungen. Hinter den Kulissen hat sich aber sehr viel in dieser Richtung getan. Dazu haben Marei und ich sehr intensiv diskutiert und sind zu dem Schluss gekommen, dass wir derzeit nicht auf das noch sehr wackelige Template-Interface von latex-lab aufbauen können. Wir wollen nämlich kein KOMA-Script, das möglicherweise von einem Tag auf den anderen nur so mit Fehlern um sich wirft, sondern eines, das möglichst zuverlässig funktioniert. Das ist Angesichts der sehr intensiven Weiterentwicklung von LaTeX ohnehin nicht einfach.

Stattdessen haben wir uns dafür entschieden, den vorhandenen Code an die Erfordernisse für das PDF-Tagging anzupassen. Das bedeutet in erster Linie, dass entsprechende Sockets eingebaut und mit passender Funktion definiert werden. Diesen Teil der Arbeit übernimmt Marei. Als Perfektionistin baut sie dazu auch gleich ein vollautomatisches Testsytem auf, das die Korrektheit der Änderungen einschließlich möglichst hoher optischer Kompatibilität sicherstellt.

Im Zuge der Diskussionen zum PDF-Tagging zeigte sich auch – wieder einmal! –, dass die große Menge an Kompatibilitätscode in KOMA-Script die Arbeit deutlich erschwert. Eine weitere Aufgabe besteht deshalb darin, diesen Code los zu werden. Wir haben uns die Entscheidung nicht leicht gemacht, denken aber, dass jetzt genau der richtige Zeitpunkt dafür ist. Trotzdem werden wir den Schnitt ein klein wenig abfedern. Das heißt konkret, dass die nächste Version auf veraltete Optionen nur noch mit einer Warnung reagieren wird, in der darauf hingewiesen wird, wie man es richtig macht. Veraltete Befehle werden hingegen eine Fehlermeldung erzeugen. Die Fehlerliste im Wiki wird parallel entsprechend erweitert, so für alle, die entsprechende Warnungen in den letzten Jahren oder gar Jahrzehnten ignoriert haben, trotzdem noch Hilfe finden. Das macht zwar erst einmal sehr viel zusätzliche Arbeit, wird sich am Ende aber auszahlen. Es ist geplant, innerhalb der nächsten sechs bis zwölf Monate dann die nächste Stufe zu zünden und die veralteten Optionen und Befehle endgültig aus dem Code zu entfernen. Das betrifft dann auch Option version. Für diesen Teil der Arbeit bin in erster Linie ich verantwortlich.

Es gibt aber auch ein paar Überscheidungen. Wir wollen bei der Vereinfachung von Code nämlich nicht beim Entfernen veralteter Optionen und Befehle stehen bleiben. So hat sich beispielsweise gezeigt, dass der Code für Gliederungsbefehle eine unschöne Dopplung enthält. Aufgrund der Orientierung an der Schnittstelle für Klassenautoren, die bisher vom LaTeX-Kern angeboten wurde, werden beispielsweise Sternform (wie \chapter*{…}) und Normalform (wie \chapter[…]{…}) nahezu komplett unabhängig voneinander implementiert. In weiten Teilen sind die Implementierungen aber identisch. Wenn also in der einen Form etwas geändert werden muss, muss häufig die entsprechende Stelle in der anderen ebenfalls angepasst werden. Solche Codedopplungen wollen wir auflösen und künftig vermeiden. Auch andere Vereinfachungen sind durch die Abkehr von LaTeX-Kern-Anweisungen inzwischen möglich und sinnvoll. Hier gibt es keine klare Trennung zwischen Aufgaben für mich und Aufgaben für Marei. Beim genannen Beispiel war es einfacher, dass Marei das im Zuge ihrer Anpassungen mit übernimmt. Nebenbei ist so übrigens auch ein neues Feature entstanden. Man kann nun frei wählen, ob Überschriften einen neuen Kolumnentitel erzeugen oder nicht. Nummerierte Überschriften von der Aufnahme ins Inhaltsverzeichnis auszunehmen, war ja bereits bisher möglich.

Der Anwender fragt sich jetzt natürlich, wann es eine neue Version mit all diesen Änderungen geben wird. Die Antwort ist so einfach wie unbefriedigend: Wenn wir damit fertig sind. Tatsächlich sind wir aber schon recht weit. Ich würde sicher nicht davon gackern, wenn nicht die Hoffnung bestünde, dass Marei demnächst meine Änderungen mit ihren zusammenführt. Wer dann egal – ob mit oder ohne aktiviertem PDF-Tagging – intensiv testen will, kann sich schon einmal in die Startaufstellung begeben und sich beispielsweise mit dem dev-Branch von komascript-tagging-lab beschäftigen. Die anderen müssen einfach gespannt bleiben.

Bis demnächst
Markus

Impressum Datenschutz