Duplikat der Frage: Wie kann ich mit KOMA-Script nachträglich Optionen wie z.B. die Schriftgröße ändern?


Klassenoptionen wie openright oder openany gelten ja für das gesamte Dokument. Nun will man aber manchmal beispielsweise, dass im Vorderteil eines Dokuments eine deutsche Zusammenfassung und ein englischer Abstract auf der linken und rechten Seite einer Doppelseite stehen, während im restlichen Dokument Kapitel immer auf rechten Seiten beginnen sollen. Das würde also openany im Vorderteil und openright im Hauptteil entsprechen.

Da man die Option aber nur bei \documentclass angeben kann, hat man nur die Wahl, ob mit

\documentclass{scrbook}

\usepackage[main=ngerman,english]{babel}
\usepackage{blindtext}

\begin{document}
\title{Beispiel für Zusammenfassung und Abstract auf einer Doppelseite}
\author{Ijon Tichy}
\date{2020-04-29}
\maketitle

\begin{otherlanguage}{english}
  \addchap{\abstractname}
  \blindtext
\end{otherlanguage}

\addchap{\abstractname}
\blindtext

\blinddocument
\end{document}

sowohl der englische Abstract als auch die deutsche Zusammenfassung auf einer rechten Seite beginnen oder mit

\documentclass[openany]{scrbook}

\usepackage[main=ngerman,english]{babel}
\usepackage{blindtext}

\begin{document}
\title{Beispiel für Zusammenfassung und Abstract auf einer Doppelseite}
\author{Ijon Tichy}
\date{2020-04-29}
\maketitle

\begin{otherlanguage}{english}
  \addchap{\abstractname}
  \blindtext
\end{otherlanguage}

\addchap{\abstractname}
\blindtext

\blinddocument
\end{document}

generell all Kapitel auf linken wie auf rechten Seiten beginnen können.

Kann man diese Einstellung oder die Einstellung von Optionen allgemein auch noch innerhalb des Dokuments ändern?

gefragt 29 Apr, 10:26

Ijon%20Tichy's gravatar image

Ijon Tichy
9.4k31127
Akzeptiert-Rate: 54%

bearbeitet 29 Apr, 11:15

Die Frage wurde aus folgenden Grund "Duplikat einer anderen Frage" geschlossen Ijon Tichy 29 Apr, 11:14


Die KOMA-Script-Klassen und auch einige KOMA-Script-Pakete bieten sowohl klassische Optionen als auch sogenannte Key-Value-Optionen (bei KOMA-Script findet sich auch die Schreibweise key=value-Optionen). Klassische Optionen kennen keine Wertzuweisung. Für die Umschaltung zwischen zwei Zuständen werden hier zwei unterschiedliche Optionen verwenden. Das sind also Optionen wie die beiden in der Frage genannten Optionen openright und openany. Key-Value-Optionen bieten hingegen die Zuweisung eines Werte (value) an ein Schlüsselwort oder kurz einen Schlüssel (key).

Bei den klassischen Optionen unterscheidet KOMA-Script zwischen Standardoptionen und veralteten KOMA-Script-Optionen. Die Standardoptionen sind Optionen, die es auch bei den Standardklassen gibt. Sie existieren aus Gründen der Kompatibilität mit den Standardklassen und vielen LaTeX-Einführungen, die nur diese Optionen erwähnen. Ich gehe daher davon aus, dass es diese Optionen auch in Zukunft in KOMA-Script geben wird. Es gibt bisher jedenfalls keine Ankündigung diese Optionen aus KOMA-Script zu entfernen. Veraltete KOMA-Script-Optionen existieren dagegen aus Gründen der Kompatibilität zu KOMA-Script bis Version 2.9u. Diese Optionen sind in der KOMA-Script-Anleitung nicht dokumentiert. Im KOMA-Script-Buch sind sie explizit als veraltet dokumentiert. Man solle sie nicht mehr verwenden. Wird eine solche Option doch verwendet, aktiviert KOMA-Script außerdem Option version=first und gibt eine entsprechende Warnung aus. Außerdem wird Option enabledeprecatedfontcommands aktiviert, was weitere Warnungen nach sich zieht. Durch die Einstellungen sind dann auch viele Verbesserungen in KOMA-Script seit Version 2.95 nicht verfügbar.

Die klassischen Optionen können für Klassen nur bei \documentclass bzw. \LoadClass oder \PassOptionsToClass und für Pakete bei \documentclass, \usepackage, \RequirePackage oder \PassOptionsToPackage angegeben werden. Eine spätere Änderung ist nicht vorgesehen. Natürlich kann man sich die interne Implementierung anschauen und dann mit üblen Hacks versuchen, diese auch innerhalb des Dokuments nachzuvollziehen. Das birgt aber Risiken und sollte vermieden werden.

Für die meisten der Key-Value-Optionen bietet KOMA-Script nicht nur die Angabe wie bei den klassischen Optionen, sondern zusätzlich die Änderung innerhalb des Dokuments über die Befehle \KOMAoptions und \KOMAoption. So werden beispielsweise die Standardoptionen openright und openany zu der Key-Value-Option open vereint und können auch noch innerhalb des Dokuments mit \KOMAoptions{open=right} bzw. \KOMAoption{open}{right} und \KOMAoptions{open=any} bzw. \KOMAoption{open}{any} gesetzt werden. Während KOMA-Script dabei darauf achtet, dass neben den KOMA-Script-Klassen ggf. auch die KOMA-Script-Pakete mit einer solchen Änderung zurecht kommen, garantiert KOMA-Script jedoch nicht, dass das für Drittpakete in jedem Fall auch gilt.

Während die Standardoptionen openright und openany nur Kapitelanfänge auf rechten oder auf allen Seiten bieten, bieten scrbook und scrreprt hier mit open=left auch noch die Erweiterung, dass Kapitelanfänge immer auf linken Seiten stehen sollen. Für das erwähnte Beispiel aus der Frage kommt daher neben der Lösung:

\documentclass{scrbook}

\usepackage[main=ngerman,english]{babel}
\usepackage{blindtext}

\begin{document}
\title{Beispiel für Zusammenfassung und Abstract auf einer Doppelseite}
\author{Ijon Tichy}
\date{2020-04-29}
\maketitle

\KOMAoptions{open=any}
\begin{otherlanguage}{english}
  \addchap{\abstractname}
  \blindtext
\end{otherlanguage}

\addchap{\abstractname}
\blindtext

\KOMAoptions{open=right}
\blinddocument
\end{document}

bei der man sich bezüglich der Doppelseite mehr oder weniger auf den Zufall verlässt, erst recht

\documentclass{scrbook}

\usepackage[main=ngerman,english]{babel}
\usepackage{blindtext}

\begin{document}
\title{Beispiel für Zusammenfassung und Abstract auf einer Doppelseite}
\author{Ijon Tichy}
\date{2020-04-29}
\maketitle

\KOMAoptions{open=left}
\begin{otherlanguage}{english}
  \addchap{\abstractname}
  \blindtext
\end{otherlanguage}

\KOMAoptions{open=right}
\addchap{\abstractname}
\blindtext

\blinddocument
\end{document}

in Frage. Hier ist wirklich sichergestellt, dass der englische Abstract auf der linken Seite und die deutsche Zusammenfassung auf der rechten Seite der Doppelseite stehen (solange der englische Abstract maximal eine Seite lang ist).

Übrigens schreibt KOMA-Script bei den Standardoptionen eine Information in die log-Datei, der man sogar die äquivalente Key-Value-Option entnehmen kann. Bei Verwendung von openany wie im zweiten Beispiel der Frage lautet diese Information beispielsweise:

Class scrbook Info: You've used standard option `openany'.
(scrbook)           This is correct!
(scrbook)           Internally I'm using `open=any'.
(scrbook)           If you'd like to set the option with \KOMAoptions,
(scrbook)           you'd have to use `open=any' there
(scrbook)           instead of `openany', too.

Da ist also explizit angegeben, dass man diese Option auch per \KOMAoptions{open=any} setzen kann. Entsprechendes gilt, wenn man openright explizit bei \documentclass angibt. Es kann sich also tatsächlich lohnen, auch einmal einen Blick in die log-Datei zu werfen.

Es sei nicht verschwiegen, dass die Umschaltung innerhalb des Dokuments nicht für alle Optionen so problemlos wie im Falle von open=right, open=any und open=left möglich ist. In einigen Fällen, wie der Umschaltung der Grundschriftgröße ist die spätere Änderung nur mit Einschränkungen möglich. Man sollte deshalb keinesfalls alle Optionen nach dem Laden der Klasse oder nach dem Laden von Drittpaketen ändern.

Auch im Falle von open wäre es übrigens grundfalsch, nur den internen Schalter \if@openright per \@openrightfalse oder \@openrighttrue zu ändern. Je nach vorheriger Einstellung würde dabei nämlich \cleardoublestandardpage und damit auch \cleardoublepage nicht in der korrekten Weise mit angepasst. Damit wäre insbesondere im Fall von open=right oder open=left nicht sichergestellt, dass u. a. für Kapitelanfänge korrekt eine rechte oder linke Seite gewählt wird.

Näheres zur Erweiterung der Optionenschnittstelle bei KOMA-Script ist beispielsweise Abschnitt »2.4. Frühe oder späte Optionenwahl« in der KOMA-Script-Anleitung oder im KOMA-Script-Buch zu finden.

Permanenter link

beantwortet 29 Apr, 10:53

Ijon%20Tichy's gravatar image

Ijon Tichy
9.4k31127
Akzeptiert-Rate: 54%

bearbeitet 29 Apr, 11:12

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×125
×15
×2

gestellte Frage: 29 Apr, 10:26

Frage wurde gesehen: 437 Mal

zuletzt geändert: 29 Apr, 11:15