Wieder einmal hat mich eine Frage erreicht, die ich euch nicht vorenthalten will. Dieses Mal sucht der Fragesteller nach einer einfachen Möglichkeit, alle Überschriften von KOMA-Script mit einer Präfixzeile zu versehen. Dabei soll in der Präfixzeile nur die Nummer stehen, während darunter dann der Text steht. Zwischen den beiden Zeilen soll kein Abstand sein.
Wie so oft wurde auch gleich vermutet, dass das mit KOMA-Script nicht ginge oder sehr kompliziert sei. Wollen mal sehen …
Eigentlich nicht vorgesehen
Für die Kapitelebene ist das bekanntlich ganz einfach zu lösen:
Die erste Zeile schaltet die Präfixzeile ein, die zweite Zeile entfernt das »Kapitel« vor der Kapitelnummer der Präfixzeile, die dritte Zeile entfernt den Abstand. Keine Hexerei.
Schwierig wird es nun für die anderen Glliederungsebenen. Dort ist nämlich nicht vorgesehen, dass die Überschriften mehrzeilig sind. Man könnte nun natürlich einfach den Stil ändern, also
verwenden (wobei die Lister der notwendigen Optionen nicht vollständig ist, aber das merkt ihr selbst, wenn ihr es ausprobiert). Allerdings beginnt dann jede Überschrift eine neue Seite, was sicher nicht erwünscht ist.
Also bleibt leider nur ein Hack. Dazu muss man wissen, dass derzeit alle Überschriften im Stil
section
von KOMA-Script mit\@hangfrom
hängend gesetzt werden. Man müsste also lediglich\@hangfrom
(möglichst nur innerhalb der Überschrift) so umdefinieren, dass es nicht mehr hängend, sondern eine eine Extrazeile setzt. Die Frage ist, wo man das einbaut. Die einfachste Möglichkeit ist,\raggedsection
zu patchen, da diese Anweisung imsection
-Stil einerseits lokal und andererseits natürlich vor\@hangfrom
ausgeführt wird:Sauberer wäre natürlich, wenn man einen eigenen Überschriften-Stil definieren würde. Allerdings ist diese Möglichkeit bisher nicht dokumentiert.
Es sei darauf hingewiesen, dass die Lösung interne Informationen verwendet, die sich ändern können – von denen sogar konkrete Pläne bestehen, sie zu ändern. Ob der Hack anschließend noch funktioniert, hängt dann in erster Linie davon ab, was der Anwender noch alles ändert.
Ab KOMA-Script 3.19
Ab KOMA-Script 3.19 sollte folgendes funktionieren:
Dabei wird bei mehrzeiligen Überschriften im Falle eines definierten Einzugs, nicht nur die Nummer, sondern die gesamte Überschrift eingezogen. Will man, dass in diesem Fall nur die Nummer eingezogen wird, so gelingt das bereits mit:
Den Unterschied zeigt:
Unter windows/miktex habe ich
Unter windows/miktex habe ich bisher erst Version 3.18, aber mit
\newcommand*...
¹ anstelle von\renewcommand* ...
¹ scheint es auch zu funktionieren.[Admin-Edit:]- <code></code> Tags eingefügt (siehe Formatierungshinweise)
Heiner Richter
Eher nicht
Man kann mit KOMA-Script 3.18 die Anweisung zwar definieren, sie wird dann aber nicht verwendet und damit hat man dann auch nicht die Präfixzeile.
KOMA-Script 3.19 existiert übrigens derzeit in freier Wildbahn insgesamt noch nicht. Das ist also (dieses Mal) kein Rückstand von MiKTeX. Derzeit stockt die Entwicklung von KOMA-Script 3.19 auch etwas, wegen des SourceForge-Ausfalls.
Ach so, dann war meine
Ach so, dann war meine Freude, dadurch den Fehlerhinweis verhindert zu haben, vorschnell.
Heiner Richter
Nachtrag
Da SourceForge jetzt wieder so weit läuft, dass auch die Subversion-Repositories wieder funktionieren, gibt es die neue Möglichkeit inzwischen im Quellcode-Repository. Das ist natürlich nicht für die Allgemeinheit, sondern ausschließlich für Beta-Tester gedacht, die in der Lage sind, sich KOMA-Script selbst aus den Quellen zu bauen.
Für die Allgemeinheit via Vorabversion wird es das wie immer erst geben, wenn die Dokumentation dazu fertig ist und einige grundlegende Tests durchgeführt wurden.