% ====================================================================== % scrextend.tex % Copyright (c) Markus Kohm, 2002-2018 % % This file is part of the LaTeX2e KOMA-Script bundle. % % This work may be distributed and/or modified under the conditions of % the LaTeX Project Public License, version 1.3c of the license. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2005/12/01 or later and of this work. % % This work has the LPPL maintenance status "author-maintained". % % The Current Maintainer and author of this work is Markus Kohm. % % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrextend.tex % Copyright (c) Markus Kohm, 2002-2018 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. % Die neuste Version dieser Lizenz ist % http://www.latex-project.org/lppl.txt % und Version 1.3c ist Teil aller Verteilungen von LaTeX % Version 2005/12/01 oder spaeter und dieses Werks. % % Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained" % (allein durch den Autor verwaltet). % % Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm. % % Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. % ====================================================================== % % Package scrextend for Document Writers % Maintained by Markus Kohm % % ---------------------------------------------------------------------- % % Paket scrextend für Dokument-Autoren % Verwaltet von Markus Kohm % % ====================================================================== \KOMAProvidesFile{scrextend.tex} [$Date: 2018-01-24 11:44:29 +0100 (Wed, 24 Jan 2018) $ KOMA-Script package scrextend] \chapter[tocentry={Grundlegende Fähigkeiten der \KOMAScript-Klassen\protect\linebreak mit Hilfe des Pakets \Package{scrextend} anderen Klassen erschließen}, head={Fähigkeiten von \KOMAScript-Klassen mit \Package{scrextend}}] {Grundlegende Fähigkeiten der \KOMAScript-Klassen mit Hilfe des Pakets \Package{scrextend} anderen Klassen erschließen} \labelbase{scrextend} \BeginIndexGroup \BeginIndex{Package}{scrextend}% Es gibt einige Möglichkeiten, die allen \KOMAScript-Klassen gemeinsam sind. Dies betrifft in der Regel nicht nur die Klassen \Class{scrbook}, \Class{scrreprt} und \Class{scrartcl}, die als Ersatz für die Standardklassen \Class{book}, \Class{report} und \Class{article} für Bücher, Berichte und Artikel gedacht sind, sondern in weiten Teilen auch die \KOMAScript-Klasse \Class{scrlttr2}, die als Nachfolger von \Class{scrlettr} für Briefe gedacht ist. Diese grundlegenden Möglichkeiten, die in den genannten Klassen zu finden sind, werden von \KOMAScript{} ab Version~3.00 auch vom Paket \Package{scrextend} bereitgestellt. Dieses Paket sollte nicht\textnote{Achtung!} mit \KOMAScript-Klassen verwendet werden. Es ist ausschließlich zur Verwendung mit anderen Klassen gedacht. Der Versuch, das Paket mit einer \KOMAScript-Klasse zu laden, wird von \Package{scrextend} erkannt und mit einer Warnung abgelehnt. Dass \hyperref[cha:scrlttr2]{\Package{scrletter}}\IndexPackage{scrletter} nicht nur mit \KOMAScript-Klassen, sondern auch mit den Standardklassen verwendet werden kann, liegt übrigens teilweise an \Package{scrextend}. Stellt \hyperref[cha:scrlttr2]{\Package{scrletter}} nämlich fest, dass es nicht mit einer \KOMAScript-Klasse verwendet wird, so lädt es automatisch \Package{scrextend}. Damit stehen dann alle unbedingt benötigten Möglichkeiten der \KOMAScript-Klassen zur Verfügung. Es gibt natürlich keine Garantie, dass \Package{scrextend} mit jeder beliebigen Klasse zusammenarbeitet. Es ist primär für die Erweiterung der Standardklassen und davon abgeleiteten Klassen gedacht. In jedem Fall sollten Benutzer zunächst prüfen, ob die verwendete Klasse nicht selbst entsprechende Möglichkeiten bereitstellt. Neben den in diesem Kapitel beschriebenen Möglichkeiten gibt es einige weitere, die jedoch hauptsächlich für Klassen- und Paketautoren gedacht sind. Diese sind in \autoref{cha:scrbase}, ab \autopageref{cha:scrbase} zu finden. Das dort dokumentierte Paket \hyperref[cha:scrbase]{\Package{scrbase}}% \important{\hyperref[cha:scrbase]{\Package{scrbase}}}\IndexPackage{scrbase} wird von allen \KOMAScript-Klassen und dem Paket \Package{scrextend} verwendet. Auch das Paket \hyperref[cha:scrlfile]{\Package{scrlfile}}% \important{\hyperref[cha:scrlfile]{\Package{scrlfile}}}\IndexPackage{scrlfile} aus \autoref{cha:scrlfile} ab \autopageref{cha:scrlfile} wird von allen \KOMAScript-Klassen und dem Paket \Package{scrextend} geladen. Daher stehen auch dessen Möglichkeiten bei Verwendung von \Package{scrextend} zur Verfügung. \iftrue % Umbruchkorrekturtext Im Unterschied dazu wird das ebenfalls für Klassen- und Paketautoren gedachte Paket \hyperref[cha:tocbasic]{\Package{tocbasic}} (siehe \autoref{cha:tocbasic} ab \autopageref{cha:tocbasic}) nur von den Klassen \Class{scrbook}, \Class{scrreprt} und \Class{scrartcl} geladen, so dass die dort definierten Möglichkeiten auch nur in diesen Klassen und nicht in \Package{scrextend} zu finden sind. Natürlich kann \hyperref[cha:tocbasic]{\Package{tocbasic}} aber auch zusammen mit \Package{scrextend} verwendet werden.% \fi \LoadCommonFile{options}% \section{Frühe oder späte Optionenwahl bei \KOMAScript} \LoadCommonFile{compatibility}% \section{Kompatibilität zu früheren Versionen von \KOMAScript} \section{Optionale, erweiterte Möglichkeiten} \seclabel{optionalFeatures} Das Paket \Package{scrextend} kennt optional verfügbare, erweiterte Möglichkeiten. Das sind Möglichkeiten, die in der Grundeinstellung nicht vorhanden sind, aber zusätzlich ausgewählt werden können. Diese sind beispielsweise deshalb optional, weil sie potentiell in Konflikt mit den Möglichkeiten der Standardklassen oder häufig benutzter Pakete stehen. \begin{Declaration} \OptionVName{extendedfeature}{Möglichkeit} \end{Declaration} Mit dieser Option kann eine optionale Möglichkeit von \Package{scrextend} ausgewählt werden. Diese Option steht nur während des Ladens von \Package{scrextend} zur Verfügung. Anwender geben diese Option daher als optionales Argument von \DescRef{\LabelBase.cmd.usepackage}\PParameter{scrextend} an. % \iffree{% Eine Übersicht über die verfügbaren optionalen Möglichkeiten bietet \autoref{tab:scrextend.optionalFeatures}. \begin{table} \caption[{Optional verfügbare, erweiterte Möglichkeiten von \Package{scrextend}}]{Übersicht über die optional verfügbaren, erweiterten Möglichkeiten von \Package{scrextend}} \label{tab:scrextend.optionalFeatures} \begin{desctabular} \entry{\PName{title}}{% die Titelseiten werden auf die Möglichkeiten der \KOMAScript-Klassen erweitert; dies betrifft neben den Anweisungen für die Titelseiten auch die Option \DescRef{\LabelBase.option.titlepage} (siehe \autoref{sec:scrextend.titlepage}, ab \autopageref{sec:scrextend.titlepage})% } \end{desctabular} \end{table}% }{% \par% Die derzeit einzige optionale Möglichkeit ist \PValue{title}\IndexOption[indexmain]{extendedfeature~=\textKValue{title}}% \important{\OptionValue{extendedfeature}{title}}. Damit werden die Titelseiten auf die Möglichkeiten der \KOMAScript-Klassen erweitert, wie sie in \autoref{sec:scrextend.titlepage} ab \autopageref{sec:scrextend.titlepage} beschrieben sind.% }% % \EndIndexGroup \LoadCommonFile{draftmode}% \section{Entwurfsmodus} \LoadCommonFile{fontsize} % \section{Wahl der Schriftgröße für das Dokument} \LoadCommonFile{textmarkup}% \section{Textauszeichnungen} \LoadCommonFile{titles}% \section{Dokumenttitel} \LoadCommonFile{oddorevenpage}% \section{Erkennung von rechten und linken Seiten} \section{Wahl eines vordefinierten Seitenstils} \seclabel{pagestyle} Eine der allgemeinen Eigenschaften eines Dokuments ist der Seitenstil\Index[indexmain]{Seiten>Stil}. Bei {\LaTeX} versteht man unter dem Seitenstil in erster Linie den Inhalt der Kopf- und Fußzeilen. Das Paket \Package{scrextend} definiert selbst keine Seitenstile, nutzt aber Seitenstile des \LaTeX-Kerns. \begin{Declaration} \Macro{titlepagestyle} \end{Declaration}% \BeginIndex{}{Titel>Seitenstil}% Auf einigen Seiten wird mit Hilfe von \DescRef{maincls.cmd.thispagestyle}\IndexCmd{thispagestyle} automatisch ein anderer Seitenstil gewählt. Bei \Package{scrextend} betrifft dies bisher nur die Titelseiten und auch dies nur, wenn mit \OptionValueRef{\LabelBase}{extendedfeature}{title} gearbeitet wird (siehe \autoref{sec:scrextend.optionalFeatures}, \DescPageRef{scrextend.option.extendedfeature}). Welcher Seitenstil in diesem Fall für einen Titelkopf\important{\OptionValueRef{\LabelBase}{titlepage}{false}}% \IndexOption{titlepage~=\textKValue{false}}\Index{Titel>Kopf} verwendet wird, ist im Makro \Macro{titlepagestyle} festgelegt. In der Voreinstellung ist das der Seitenstil \DescRef{maincls.pagestyle.plain}\IndexPagestyle{plain}. Dieser Seitenstil wird bereits im \LaTeX-Kern vordefiniert und sollte daher immer verfügbar sein.% \EndIndexGroup \LoadCommonFile{interleafpage}% \section{Vakatseiten} \LoadCommonFile{footnotes}% \section{Fußnoten} \LoadCommonFile{dictum}% \section{Schlauer Spruch} \LoadCommonFile{lists}% \section{Listen} \LoadCommonFile{marginpar}% \section{Randnotizen} % \EndIndexGroup \endinput %%% Local Variables: %%% mode: latex %%% coding: iso-latin-1 %%% TeX-master: "guide.tex" %%% End: