Diese Version wurde inzwischen durch Version 3.28 ersetzt. Es wird empfohlen, bei Problemen auf die neuste Version zu updaten. Wenden Sie sich ggf. an Ihren Distributor oder Administrator.
chapterentrydots bzw. sectionentrydots wird nie verwendet.
\renewcaptionname erzeugt einen Fehler, falls ein Begriff in der Dokumentpräambel noch nicht definiert ist, wohl aber während \begin{document} definiert wird, wie das für einige Begriffe von babel oder KOMA-Script-Klassen der Fall ist.
\ModifyLayerPageStyleOptions durch Zuweisung eines leeren Wertes ist nicht möglich. Stattdessen muss beispielsweise \relax als Wert übergeben werden.
\markleft ist im Gegensatz zu \markboth und \markright aus LaTeX ab 2019-10-01 nicht robust.
\begin{letter} eine Anweisung wie \raggedright, \raggedleft oder \centering (oder auch die entsprechenden Anweisungen aus ragged2e) verwendet, die \\ auf eine Bedeutung umdefiniert, die mit \protected@edef zerbricht und zu Fehlern führt und befindet sich im bei \begin{letter}{…} angegebenen Empfänger, wie üblich ein \\, dann gibt es Fehlermeldungen.
\AtBeginLetter verzögern. Allerdings funktioniert das nicht für andere zerbrechliche Anweisungen in der Anschrift. Andere zerbrechliche Anweisungen in der Anschrift sollten aber ohnehin mit \protect geschützt werden.
\AfterAtEndOfPackage wirkt sich auch aus, wenn ein Paket bereits geladen ist. Wird dann versucht, das Paket ein weiters Mal zu laden, so wird der Code ausgeführt, obwohl das Paket gar nicht mehr geladen wird und natürlich auch kein \AtEndOfPackage-Code ausgeführt wird.
\AfterPackage! quasi ein (nicht implementiertes) \AfterAtEndOfPackage+.\AfterPackage+, \AfterClass+ , \AfterPackage! und \AfterClass! funktionieren unter gewissen Umständen nicht wie dokumentiert. Ursache ist u. a. ein Problem in LaTeX.
Hinweis: Die Angabe einer bestimmten Versionsnummer in der nachfolgenden Liste bedeutet nicht, dass genau diese Version auch bereits über den jeweils angegebenen Link verfügbar ist. Die Auflistung eines Features ist auch keine Garantie, dass dieses in der dokumentierten Weise wirklich in der nächsten Version enthalten sein wird.
svn up aktualisiert und selbst erzeugt, sollte daher unbedingt erst make distclean aufrufen, um alle temporären Dateien zu löschen.\KOMAClassName weiterhin die alten Namen. Es gibt aber zusätzlich dann auch ein \KOMALongClassName, das eigentlich überflüssig ist, weil man es einfach aus scr\ClassName bilden könnte.
headings=optionto…) den neuen Schalter nonumber, um die Nummerierung abzuschalten. Für Kapitel und Abschnitte entspricht das letztlich \addchap und \addsec (ohne Stern!).
\bprot@dottedtocline ist veraltet und gibt eine entsprechende Warnung aus. Es ist durchaus geplant, sie zukünftig aus den Klassen zu entfernen.
\setcounter{secnumdepth}{-\maxdimen} abgeschaltet werden kann (was beispielsweise scrartcl unter gewissen Umständen für Kolumnentitel nutzt), sind bei \DeclareSectionCommand nur noch level-Werte größer als -\maxdimen erlaubt.
\IfUseNumber{TRUE-Code}{FALSE-Code}, kann innerhalb der Überschriften und nur dort dazu verwendet werden, festzustellen, ob die aktuell in Verarbeitung befindliche Überschrift mit einer Nummer versehen wird oder nicht. Das schließt die Stellung von secnumdepth ebenso wie die Verwendung einer Sternform einer Gliederungsüberschrift oder \addpart, \addchap oder \addsec und bei scrbook auch \frontmatter, \mainmatter und \backmatter ein. Bei einigen Do-Hooks (siehe unten) kann diese Anweisung ggf. nützlich sein. Sie ist aber nicht bei allen Do-Hooks zulässig. Bisher ist sichergestellt, dass sie bei headings/begingroup/… und headings/endgroup/… gültig ist.
\ExecuteDoHook wurden bisher implementiert:
\partlineswithprefixformat, \chapterlineswithprefixformat, \chapterlinesformat, \sectionlinesformat bzw. \sectioncatchphraseformat ausgeführt werden.\partlineswithprefixformat, \chapterlineswithprefixformat, \chapterlinesformat, \sectionlinesformat bzw. \sectioncatchphraseformat ausgeführt werden.\At@startsection. Die Anweisung ist jedoch nicht nur für den section-Stil, sondern auch für chapter und part verfügbar. Die veraltete Anweisung \At@startsection funktioniert weiterhin (nur für Überschriften im Stil section) wird aber auf den neuen Do-Hook abgebildet.\Before@sect. Die Anweisung ist jedoch nicht nur für den section-Stil, sondern auch für chapter und part verfügbar. Die veraltete Anweisung \Before@sect funktioniert weiterhin (nur für Überschriften im Stil section) wird aber auf den neuen Do-Hook abgebildet.\Before@ssect. Die Anweisung ist jedoch nicht nur für den section-Stil, sondern auch für chapter und part verfügbar. Die veraltete Anweisung \Before@ssect funktioniert weiterhin (nur für Überschriften im Stil section) wird aber auf den neuen Do-Hook abgebildet.\DeclareSectionCommand etc. angegeben wird.
\FamilyOptions und \FamilyOption führen nun ebenfalls @else@-Optionen (vgl. \FamilyExecuteOptions) sowohl der Familienmitglieder als auch der Familie selbst aus. Besitzt ein Mitglied eine @else@-Option, so wird diese immer dann gesetzt, wenn das Mitglied eine angegebene Option nicht hat. Sie wird jedoch nicht ausgeführt, wenn das Mitglied die angegebene Option zwar kennt, nicht jedoch den übergebenen Wert. Dagegen wird eine @else@-Option der Familie nur ausgeführt, wenn keines der Mitglieder die Option mit Ergebnis \FamilyKeyStateProcessed verarbeiten konnte.
\DefineFamilyKey mit explizit leerem erstem, optionalem Argument liefert nun keine Fehlermeldung wegen unbekanntem Mitglied mehr, sondern definiert eine Familienoption.
@else@-Optionen durch \FamilyOptions in KOMA-Script 3.27.3170 implementiert.\defcaptionname, \newcaptionname, \renewcaptionname, \providecaptionname in der Dokumentpräambel aufgerufen, so definieren sie ab KOMA-Script 3.27.3168 die entsprechende Anweisung unmittelbar, wenn die aktuelle Sprache einer der Sprachen aus dem ersten Argument entspricht. Um Fehlermeldungen bei Konstrukten wie \newcommand*{\Fooname}{Foo} \newcaptionname{english}{\Fooname}{Foo}
\newcaptionname den Begriff in der Dokumentpräambel aber nur unmittelbar, wenn er nicht bereits (sprachunabhängig) definiert ist. Dies stellt keinen substantiellen Nachteil dar, da die korrekte Umschaltung dann ggf. bei \begin{document} erfolgt und dort dann ggf. auch die entsprechende Fehlermeldung ausgegeben wird, wenn \Fooname bereits sprachabhängig definiert ist.
\def o. ä. explizit definiert werden müssen.\IfArgIsEmpty ist nun \long.
\ExecuteDoHook{Spezifikator}: Diese Anweisung ist Paketautoren vorbehalten und dient dazu einen Do-Hook in der Implementierung eines Befehls zu verankern. Der Spezifikator darf nicht leer sein. Zunächst wird der erste String des Spezifikators abgetrennt. Dann wird String zum Hookname hinzugefügt und der Hook mit dem Rest des Spezifikators als angehängtes Argument ausgeführt. War der Rest nicht leer, wird er anschließend zum neuen Spezifikator und rekursiv die Ausführung von Code fortgesetzt, bis er leer ist.
\ExecuteDoHook{heading/preinit/subsection} führt zunächst den Code von Hook heading mit dem Argument preinit/subsection aus. Dann den Code von heading/preinit mit Argument subsection und schließlich den Code von heading/preinit/subsection mit einem leeren Argument.\AddtoDoHook{Hook}{Befehl}: Fügt den Befehl dem Hook hinzu. Zu beachten ist, dass bei Ausführung von Befehl immer ein Argument angefügt wird.
\AddtoDoHook{heading/preinit}{\typeout} wird der Befehl \typeout dem Hook heading/preinit hinzugefügt. So wird beispielsweise \ExecuteDoHook{heading/preinit/chapter} die Anweisung \typeout{chapter} ausführen, \ExecuteDoHook{heading/preinit/section} wird \typeout{section} ausführen etc. Wird dagegen mit \AddtoDoHook{heading/preinit/section}{\typeout} derselbe Befehl dem Hook heading/preinit/section hinzugefügt, so wird lediglich \ExecuteDoHook{heading/preinit/section} die Anweisung \typeout{} ausführen, während \ExecuteDoHook{heading/preinit/chapter} den Befehl nicht ausführen wird.\AddtoOneTimeDoHook{Hook}{Befehl} arbeitet wie \AddtoDoHook{Hook}{Befehl}, allerdings wird der Code für den Hook nach Ausführung gelöscht. Code für One-Time-Hooks wird grundsätzlich nach dem Code für dauerhafte Hooks ausgeführt.\ForDoHook{Spezifikator}{Code}: Durchläuft, wie für \ExecuteDoHook angegeben, die Teilspezifikatoren und führt für jede Unterteilung einmal Code aus. Dem Code werden dabei zwei Parameter angehängt: das Kopfelement und der Rest des Spezifikators.
\ExecuteDoHook. Normalerweise sollten Paketautoren (und erst recht Anwender) diese Anweisung nicht benötigen.\SplitDoHook{Spezifikator}{Kopfbefehl}{Restbefehl}: Der Spezifikator wird, wie bei \ExecuteDoHook erklärt, in den ersten String und den Rest-Spezifikator aufgeteilt. Der Kopfbefehl wird als der erste String und der Restbefehl als der Rest definiert.
\SplitDoHook{heading/preinit/section}{\Kopf}{\Rest} führt zu \def\Kopf{heading}\def\Rest{preinit/section}.standardsections aktiviert werden. In diesem Fall werden die Gliederungsbefehle \part bis \subparagraph und die Ausgaben der zugehörigen Zähler genau wie bei den Standardklassen hart definiert. Bei Klassen, die über \mainmatter verfügen, werden außerdem \if@mainmatter, \frontmatter, \mainmatter und \backmatter entsprechend hart definiert.
\DeclareTOCStyleEntry für die Definition der Inhaltsverzeichniseinträge.
\bprot@dottedtocline endlich als veraltet zu kennzeichnen, was in TODO ebenfalls lange angekündigt ist.\catcode-Werte der in \dospecials abgelegten Zeichen werden vor dem Einlesen der Hilfsdatei mit den Notizspalten wieder auf die Werte eingestellt, die sie bei \begin{document} hatten. Ausnahme ist der \catcode von @, der auf 11 (letter) gestellt wird. Dadurch funktionieren Notizspalten nun beispielsweise auch, wenn während einer verbatim-Umgebung ein Seitenumbruch erfolgt. und neue Notizen aus der Hilfsdatei gelesen werden müssen.
newcommands oder NewCommands kann bereits dazu führen, dass die Ausrichtung nicht vollkommen korrekt ist. Obwohl das in meinen Augen eindeutig kein Bug von scrlayer-scrpage ist, sondern ein Misfeature der entsprechenden anderen Pakete, verwendet scrlayer-scrpage ab KOMA-Script 3.27.3140 die genannten Anweisungen nicht mehr direkt, sondern nutzt stattdessen \LaTeXcentering, \LaTeXraggedright und \LaTeXraggedleft. Sind diese Anweisungen beim Laden von scrlayer-scrpage bereits (beispielsweise von ragged2e) definiert, so bleiben sie unverändert. Anderenfalls werden sie mit der aktuellen Definition von \centering, \raggedright und \raggedleft versehen. Damit gibt es in scrlayer-scrpage nun auch einen Workaround für das auf TeX.Stackexchange gemeldete Problem bei mehrzeiligen Kopf-/Fußzeilen während eine longtabu verarbeitet wird.\opening noch benötigt (u. a. um die richtige vertikale Position für den Briefanfang automatisch zu finden). Ein Teil der Arbeit wird eventuell auch noch in die Definition der letter-Umgebung verlagert. Daher ist diese Änderung ab KOMA-Script 3.27.3231 wieder deaktiviert und wird wohl noch nicht in der nächsten Version Einzug halten.symbolicnames kennt die neuen Werte marvosym, fontawesome und awesome. Der Wert marvosym entspricht den bisherigen Werten true, on und yes. Die beiden Werte fontawesome und awesome verwenden dagegen das Pakte fontawesome für die Symbole.
\foreachkomavar{Variable,…}{Code} führt Code{Variable} für jede Variable aus.
\foreachkomavarifempty{Variable,…}{True-Code}{False-Code} führt True-Code{Variable} für jede Variable aus, die leer ist, und False-Code{Variable} für jede Variable, die nicht leer ist.
\foreachemptykomavar{Variable,…}{Code} führt Code{Variable} für jede Variable aus, die leer ist.
\foreachnonemptykomavar{Variable,…}{Code} führt Code{Variable} für jede Variable aus, die nicht leer ist.
\raggedbottom gesetzt. Eine Änderung ist nur noch mit \flushbottom innerhalb von \begin{letter}…\end{letter} bzw. über \AtBeginLetter{\flushbottom} möglich.\DeclareTOCStyleEntry ein Additionsoperator += unterstützt. Derzeit ist jedoch nicht geplant diese Möglichkeit auf die indirekte Verwendung der Optionen beispielsweise per \DeclareNewTOC auszuweiten.
\DeclareTOCStyleEntry einen neuen Kopieroperator :=. Damit erwarten die Optionen als Wert nicht mehr die normalerweise erwarteten Werte, sondern den Namen einer anderen Verzeichnisebene, dessen Wert dann kopiert wird. Mit indent:=figure kann man also beispielsweise als Wert für den Einzug denselben Wert wie bei figure-Einträgen einstellen. Ist der entsprechende Wert für die angebene Verzeichnisebene nicht bekannt, so wird ein Fehler ausgegeben. Dieser Kopieroperator funktioniert für die Optionen der Verzeichniseinträge mit Präfix tocentry auch bei \DeclareNewTOC.
toctext, der alle aufeinanderfolgenden Einträge dieses Stils innerhalb eines Absatzes ausgibt. Die Optionen ähneln denen von tocline, allerdings werden nicht alle Optionen unterstützt und es gibt ein paar zusätzliche.
\par auszuführen.tocline bietet die neue Option rightindent über die \@tocrmarg abhängig von der Eintragsebene ersetzt werden kann.
tocline bietet die neue Option pagenumberwidth über die \@pnumwidth abhängig von der Eintragsebene ersetzt werden kann.
noindent. Dies ermöglicht kooperierenden Verzeichniseintragsstilen wie tocline das Ignorieren der Einstellung für den Einzug, so dass ein komplett linksbündiges Verzeichnis entsteht (vlg. listof=flat, wobei listof=flat weit mehr tut!).