Seit Revision 1964 kann man die gesetzten Optionen eines KOMA-Script-Pakets oder einer KOMA-Script-Klasse über \KOMAoptionsOf
und \KOMAoptionOf
abfragen. Allerdings sind die beiden Anweisungen nicht voll expandierbar, u. a. weil sie Fehlermeldungen produzieren können. Es werden derzeit noch nicht alle Klassen und Pakete vollständig unterstützt. Daher ist diese Möglichkeit noch im Alpha-Stadium und wird nicht offiziell dokumentiert. Es muss sich erst noch zeigen, ob sich die bisherige Implementierung bewährt. Bis dahin gilt: Die hier beschriebene Möglichkeit kann jederzeit wieder aus KOMA-Script entfernt werden.
\KOMAoptionsOf[
Prefixanweisung]{
Paket/Klassenname mit Erweiterung}
\@firstofone
.\documentclass{scrartcl} \usepackage{scrlayer-scrpage} \usepackage{url} \begin{document} \KOMAoptionsOf[\url]{scrlayer-scrpage.sty} \end{document}
erzeugt ein Dokument mit einer furchtbar schlecht umbrochene Liste aller Optionen von scrlayer-scrpage
. Es fällt auf, dass scheinbar einige Optionen nicht aufgeführt werden. Das liegt daran, dass diese Optionen in Wirklichkeit Optionen von scrlayer
sind.
Wird eine Klasse oder ein Paket angegeben, das von \KOMAoptionsOf
nicht unterstützt wird, erhält man eine entsprechende Fehlermeldung.
\KOMAoptionOf[
Prefixanweisung]{
Paket/Klassenname mit Erweiterung}{
Option}
\@firstofone
.\documentclass{scrartcl} \usepackage{scrlayer-scrpage} \begin{document} \KOMAoptionOf[\KOMAoption{headwidth}]{scrlayer-scrpage.sty}{headwidth} \end{document}
setzt Option headwidth
auf den expandierten aktuellen Wert der Option (meist nicht wirklich sinnvoll, sondern eher eine Spielerei zur Demonstration der Möglichkeiten der Prefixanweisung).
Wird eine Klasse oder ein Paket angegeben, das von \KOMAoptionsOf
nicht unterstützt wird, erhält man eine entsprechende Fehlermeldung.
Wird hingegen eine Option angegeben, die bisher nicht gesetzt wurde (oder für die Klasse oder das Paket gar nicht existiert), so wird nur eine Warnung ausgegeben und die Präfixanweisung auch nicht ausgeführt.
Derzeit sollten die Pakete scrhack
, scrjura
, scrlayer
, scrlayer-scrpage
, scrtime
und typearea
dies vollständig unterstützten. Dabei werden auch die Optionen mit ausgegeben, die nicht explizit gesetzt wurden, sondern der Voreinstellung der Pakete entsprechen.
Von den übrigen Klassen und Paketen werden die beiden Anweisungen bisher nur sehr unvollständig unterstützt. Tatsächlich können bei den anderen Klassen und Paketen derzeit sogar falsche Werte zurückgeliefert werden, wenn nämlich einfache Schalter an den Optionen vorbei verändert werden! Solche Fälle sollte man am besten melden!