diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrguide')
33 files changed, 0 insertions, 32983 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/adressen.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/adressen.tex deleted file mode 100644 index 47a81991133..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/adressen.tex +++ /dev/null @@ -1,254 +0,0 @@ -\ProvidesFile{adressen.tex}[2003/04/16 KOMA-Script Anleitung] -% ============================================================================ -% adressen.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% adressen.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: scraddr Paket -% Autoren: Jens-Uwe Morawski <morawski@gmx.net> -% Inhalt: Zugriff auf Adressen mit Hilfe von scraddr -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% - -\chapter{Adressdateien mit \Package{scraddr} erschließen}\label{cha:scraddr} -\BeginIndex{Package}{scraddr} - -\section{Überblick}\label{sec:scraddr.overview} -Das Paket \Package{scraddr} ist eine kleine Beigabe zur -\KOMAScript-Briefklasse. -Ziel ist, die Benutzung von Adressdateien zu vereinfachen -und ihre Anwendung flexibler zu gestalten. -Im Grunde stellt das Paket nur einen Lademechanismus für Adressdateien -bereit, die aus \Macro{adrentry}- und neueren \Macro{addrentry}-Einträgen -bestehen, wie sie im vorhergehenden Kapitel beschrieben sind. - -\begin{Declaration} -\Macro{InputAddressFile}\Parameter{Dateiname} -\end{Declaration}% -\BeginIndex{Cmd}{InputAddressFile}% -% -Der Befehl \Macro{InputAddressFile} ist der zentrale Ladebefehl -von \Package{scraddr}. -Er erwartet als obligatorisches Argument den -Namen der einzulesenden Adressdatei.\Index{Adressdatei} -Wird diese Datei nicht gefunden, wird ein Fehler ausgegeben. - -Für jeden Eintrag dieser Adressdatei wird eine Reihe von Makros generiert, -die es ermöglichen, auf die Daten der Adressdatei zuzugreifen. -Zur Erinnerung nochmals der Aufbau eines Eintrags. -\begin{Declaration}% - - \Macro{adrentry}\Parameter{Name}\Parameter{Vorname}\Parameter{Adresse}% - - \Parameter{Telefon}\Parameter{F1}\Parameter{F2}% - - \Parameter{Kommentar}\Parameter{Kürzel}\\ - % - %oder\\ - % - \Macro{addrentry}\Parameter{Name}\Parameter{Vorname}\Parameter{Adresse}% - - \Parameter{Telefon}\Parameter{F1}\Parameter{F2}% - - \Parameter{F3}\Parameter{F4}\Parameter{Kürzel}% -\end{Declaration}% - -Die Zugriffsbefehle sind mit englischen, den Argumenten entsprechenden, -Bezeichnungen versehen. -\begin{Declaration} -\Macro{Name}\Parameter{Kürzel}\\ -\Macro{FirstName}\Parameter{Kürzel}\\ -\Macro{LastName}\Parameter{Kürzel}\\ -\Macro{Address}\Parameter{Kürzel}\\ -\Macro{Telephone}\Parameter{Kürzel}\\ -\Macro{FreeI}\Parameter{Kürzel}\\ -\Macro{FreeII}\Parameter{Kürzel}\\ -\Macro{Comment}\Parameter{Kürzel}\\ -\Macro{FreeIII}\Parameter{Kürzel}\\ -\Macro{FreeIV}\Parameter{Kürzel} -\end{Declaration}% -\BeginIndex{Cmd}{Name}\BeginIndex{Cmd}{FirstName}\BeginIndex{Cmd}{LastName}% -\BeginIndex{Cmd}{Address}\BeginIndex{Cmd}{Telephone}\BeginIndex{Cmd}{FreeI}% -\BeginIndex{Cmd}{FreeII}\BeginIndex{Cmd}{FreeIII}\BeginIndex{Cmd}{FreeIV} -\BeginIndex{Cmd}{Comment}% -% -Der Zugriff erfolgt anhand des Kürzels im letzten Argument eines -Eintrags, das heißt Argument Nummer 8 -für \Macro{adrentry}-Einträge beziehungsweise Argument Nummer 9 -für \Macro{addrentry}-Einträge. Das bedeutet auch, dass dieses Argument -nicht leer sein darf. -Um eine sichere Funktionsweise zu garantieren, empfiehlt es sich, -das Kürzel nur als Folge Buchstaben aufzubauen, -wobei jedoch keine Umlaute benutzt werden dürfen. - -Weiterhin ist zu beachten, dass bei mehrmaligem Auf"|treten -eines Kürzels in den Einträgen die Angaben beim -letzten Auf"|treten die gültigen sind. - -\EndIndex{Cmd}{InputAddressFile}% -\EndIndex{Cmd}{Name}\EndIndex{Cmd}{FirstName}\EndIndex{Cmd}{LastName}% -\EndIndex{Cmd}{Address}\EndIndex{Cmd}{Telephone}\EndIndex{Cmd}{FreeI}% -\EndIndex{Cmd}{FreeII}\EndIndex{Cmd}{FreeIII}\EndIndex{Cmd}{FreeIV}% -\EndIndex{Cmd}{Comment}% - -\section{Benutzung}\label{sec:scraddr.usage} - -Um das Paket benutzen zu können, ist eine gültige -Adressdatei zu erstellen. -Diese, hier \emph{lotr.adr} genannt, könnte beispielsweise -folgendermaßen aussehen: -\begin{verbatim} - \addrentry{Beutlin}{Frodo}% - {Der Bühl\\ Beutelsend/Hobbingen im Auenland}{}% - {Bilbo Beutlin}{Rauchen von Pfeifenkraut}% - {der Ringträger}{Bilbo's Erbe}{FRODO} - \adrentry{Gamdschie}{Samweis}% - {Beutelhaldenweg 3\\Hobbingen im Auenland}{}% - {Rosie Kattun}{Knullen}% - {des Ringträgers treuester Gefährte}{SAM} - \adrentry{Bombadil}{Tom}% - {Im Alten Wald}{}% - {Goldbeere}{trällern von Nonsensliedern}% - {Meister von Wald, Wasser und Berg}{TOM} -\end{verbatim} - -Das vierte Argument, die Telefonnummer, wurde hier leer gelassen. -Erstens macht es in dem Zusammenhang keinen Sinn, und zweitens sollte -dies ja auch möglich sein. - -Mit dem oben beschriebenen Ladebefehl lesen wir die Adressdatei -in unser Briefdokument ein: -\begin{verbatim} - \InputAddressFile{lotr} -\end{verbatim} - -Mit Hilfe der vorgestellten Makros können wir dann einen Brief -an den alten \textsc{Tom Bombadil} schreiben, in dem wir ihn -fragen, ob er sich noch an zwei Gefährten aus alter Zeit -erinnern kann. -\begin{verbatim} - \begin{letter}{\Name{TOM}\\\Address{TOM}} - \opening{Lieber \FirstName{TOM} \LastName{TOM},} - - oder \FreeIII{TOM}, wie Dich Deine geliebte - \FreeI{TOM} nennt. - Kannst Du Dich noch an einen Herrn \LastName{FRODO}, - genauer gesagt \Name{FRODO}, denn es gab ja auch noch - den Herrn \FreeI{FRODO}, erinnern. - Er war \Comment{FRODO} im dritten Zeitalter und - \FreeIV{FRODO}. - Begleitet wurde er von \Name{SAM}, \Comment{SAM}. - - Beider Vorlieben waren sehr weltlich. - Der \FirstName{FRODO} genoss das \FreeII{FRODO}, sein - Gefährte schätzte eine gute Mahlzeit mit \FreeII{SAM}. - - Weißt du noch? Mithrandir hat Dir bestimmt viel - von ihnen erzählt. - \closing{\glqq O Frühling und Sommerzeit - und danach wieder Frühling!\\ - O Wind auf dem Wasserfall - und Lachen des Laubes!\grqq} - \end{letter} -\end{verbatim} - -Die Zusammensetzung aus -\Macro{FirstName}\Parameter{Kürzel} \Macro{LastName}\Parameter{Kürzel} -kann direkt mittels \Macro{Name}\Parameter{Kürzel} erhalten werden. - -Das fünf"|te und sechste Argument von \Macro{adrentry} und -\Macro{addrentry} steht zur freien Verfügung. -Mit den Makros \Macro{FreeI} und \Macro{FreeII} kann auf -diese Inhalte zugegriffen werden. Im vorliegenden Fall wurde -das fünf"|te Argument für die Person benutzt, die der Person des -Eintrags am nächsten steht. Das sechste Argument -enthält im Beispiel die besondere Vorliebe der jeweiligen Person. -Das siebente Argument ist ebenfalls ein freier Eintrag. Der Zugriff -erfolgt per \Macro{Comment} oder \Macro{FreeIII}. -Der Zugriff auf das vierte freie Argument mittels \Macro{FreeIV} -ist nur für \Macro{addrentry}-Einträge gültig. -Bei \Macro{adrentry}-Einträgen liefert das eine Warnung. -\EndIndex{Package}{scraddr} - -\section{Paketoptionen für Warnungen} - -Wie oben bereits beschrieben, führt die Benutzung des -Zugriffbefehls \Macro{FreeIV} zu einem Fehler, wenn der -Befehl auf Datensätze aus \Macro{adrentry}-Einträgen -angewendet wird. - -Die hier im Folgenden aufgeführten Paketoptionen legen -fest, wie in solchen Situationen reagiert werden soll. -Dabei ist es möglich, im Bereich von \emph{Ignorieren} bis -\emph{Abbruch} verschiedene Möglichkeiten zu wählen. -Eine dieser Paketoptionen kann beim Laden des Pakets im -optionalen Argument des \Macro{usepackage}-Befehls -übergeben werden. Die standardmäßige Einstellung für -das Paket \Package{scraddr} ist die Option -\Option{adrFreeIVshow}. - -\begin{Declaration} -\Option{adrFreeIVempty}\\ -\Option{adrFreeIVshow}\\ -\Option{adrFreeIVwarn}\\ -\Option{adrFreeIVstop} -\end{Declaration} -% -\BeginIndex{Option}{adrFreeIVempty}\BeginIndex{Option}{adrFreeIVshow} -\BeginIndex{Option}{adrFreeIVwarn}\BeginIndex{Option}{adrFreeIVstop} -% -\begin{labeling}[\,--]{\Option{adrFreeIVempty}} -\item[\Option{adrFreeIVempty}] - Der Befehl \Macro{FreeIV} wird einfach ignoriert. -\item[\Option{adrFreeIVshow}] - Die Warnung \glqq(entry FreeIV undefined at \PName{Kürzel})\grqq{} - wird in den Text geschrieben. -\item[\Option{adrFreeIVwarn}] - In der Log-Datei erscheint eine Warnung. -\item[\Option{adrFreeIVstop}] - Der \LaTeX{}-Lauf wird mit einer Fehlermeldung unterbrochen. -\end{labeling} -\EndIndex{Option}{adrFreeIVempty}\EndIndex{Option}{adrFreeIVshow} -\EndIndex{Option}{adrFreeIVwarn}\EndIndex{Option}{adrFreeIVstop} - -\section{Autoren} -\label{sec:scraddr.autoren} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die Vorlage -dafür geliefert. -% In folgener Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item \textbf{Jens-Uwe Morawski} -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/adrkonv.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/adrkonv.tex deleted file mode 100644 index 5568c314271..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/adrkonv.tex +++ /dev/null @@ -1,104 +0,0 @@ -\ProvidesFile{adrkonv.tex}[2002/08/23 KOMA-Script Anleitung] -% ============================================================================ -% adrkonv.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% adrkonv.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: Adresskonverter -% Autoren: Jens-Uwe Morawski (JUM) <morawski@gmx.net> -% Thomas Neumann (thn) <th-neumann@gmx.net> -% Inhalt: Adresskonvertierung mit addrconv -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% - -\chapter{Adressdateien aus Adressdatenbanken}% -\label{cha:addrconv}% -\index{Adressdatei}% -\index{Adressdatenbank}% -\IndexPackage{addrconv} - -In früheren Versionen von \KOMAScript{} war das Paket -\Package{addrconv} ein fester Bestandteil des -\KOMAScript{}-Systems. -Die hauptsächliche Verflechtung mit \KOMAScript{} -bestand darin, dass mit Hilfe dieses Paketes aus -Adressdatenbanken im \BibTeX-Format Adressdateien -für die \KOMAScript-Briefklasse oder für das -\Package{scraddr}-Paket erstellt werden konnten. - -\begin{small} -\begin{verbatim} - @address{HMUS, - name = {Hans Mustermann}, - title = {Mag. art.}, - city = {Heimstatt}, - zip = 01234, - country = {Germany}, - street = {Mauerstra{\ss}e 1}, - phone = {01234 / 5 67 89}, - note = {Alles nur Erfindung}, - key = {HMUS}, - } -\end{verbatim} -\end{small} - -Aus Einträgen, wie dem obenstehenden, können mit Hilfe -von \BibTeX{} und verschiedenen \BibTeX-Stilen die -Adressdateien erstellt werden. -Weiterhin gibt es spezielle \LaTeX-Dateien, die es ermöglichen, -aus den Adressdateien Telefon- und Adressverzeichnisse -zu erstellen. - -Das Paket \Package{addrconv} war aber eigentlich ein -eigenständiger Teil, der auch noch über die Belange -von \KOMAScript{} hinaus Möglichkeiten bietet. -Deshalb wird \Package{addrconv}, wie bereits in der -letzten Ausgabe von \KOMAScript{} angekündigt, ab dieser -Version und in zuküftigen Versionen nicht mehr enthalten -sein. -Das Paket \Package{adrconv}, nur ein \emph{d}, ersetzt -\Package{addrconv} vollständig. -Es muss, falls nicht bereits in Ihrer \TeX-Distribution enthalten, -von \cite{package:adrconv} separat bezogen und installiert werden. - -\section{Autoren} -\label{sec:addrconv.authors} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die Vorlage -dafür geliefert. -% In folgener Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item \textbf{Jens-Uwe Morawski} -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/brief.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/brief.tex deleted file mode 100644 index fb2923e7315..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/brief.tex +++ /dev/null @@ -1,4016 +0,0 @@ -\ProvidesFile{brief.tex}[2004/09/17 KOMA-Script Anleitung (Neue Briefklasse)] -% ============================================================================ -% brief.tex -% Copyright (c) 2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% brief.tex -% Copyright (c) 2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: Die neue Briefklasse -% Autoren: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Korrektur: Torsten Krueger -% Inhalt: Kapitel mit der Anleitung zur neuen Briefklasse -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% - -\chapter{Die neue Briefklasse \Class{scrlttr2}} -\label{cha:scrlttr2} - -\BeginIndex{Class}{scrlttr2}\BeginIndex{}{Briefe}% -\begin{Explain} -Seit der Ausgabe vom Juni 2002 beinhaltet \KOMAScript{} eine komplett -neue Briefklasse\ChangedAt{v2.8q}{\Class{scrlttr2}}. Obwohl einige -Teile davon mit den Klassen aus \autoref{cha:maincls} -übereinstimmen, sind Briefe doch etwas ganz anderes als Artikel, -Berichte, Bücher oder Ähnliches. Schon allein deshalb gibt es für die -Briefklasse ein eigenes Kapitel. Aber auch aus einem anderen Grund ist -ein eigenes Kapitel für \Class{scrlttr2} gerechtfertigt. Die Klasse -wurde von Grund auf neu entwickelt. Sie hat daher auch ein komplett -anderes Bedienkonzept als alle anderen mir bekannten Klassen. Die neue -Art der Bedienung ist möglicherweise etwas ungewohnt, bietet jedoch -nicht nur dem geübten Anwender einige Vorteile. - - -\section{Rückblick auf die alte Briefklasse} -\label{sec:scrlttr2.scrlettr} - -Die alte Briefklasse \Class{scrlettr}\IndexClass{scrlettr} -ist obsolet. Sie sollte für neue Briefe besser nicht mehr verwendet -werden. Sie wird nicht mehr weiterentwickelt und es findet daher auch -nur noch sehr eingeschränkter Support dafür statt. Wer dennoch -unbedingt die Anleitung zur alten Briefklasse benötigt, kann diese in -\File{scrlettr.dtx} finden. Am besten führt man dazu einige -\LaTeX-Läufe mit jener Datei durch, also beispielsweise: -\begin{verbatim} - latex scrlettr.dtx - latex scrlettr.dtx - latex scrlettr.dtx -\end{verbatim} -Man erhält so die Datei \File{scrlettr.dvi} mit der Anleitung. - -Um den Umstieg von der alten auf die neue Klasse zu erleichtern, -existiert außerdem eine Kompatibilitätsoption. Grundsätzlich ist in -der neuen Klasse die gesamte alte Funktionalität enthalten. Ohne die -Kompatibilitätsoption ist jedoch die Benutzerschnittstelle eine andere -und auch die Voreinstellungen stimmen nicht überein. Näheres zu -besagter Option ist \autoref{sec:scrlttr2.options} und -\autoref{sec:scrlttr2.fromscrlettr} zu entnehmen. -\end{Explain} - - -\section{Die Optionen} -\label{sec:scrlttr2.options} - -Die Briefklasse \Class{scrlttr2} bedient sich für die Optionen des -\Package{keyval}\IndexPackage{keyval}-Paketes. Dieses ist Bestandteil -des \Package{graphics}-Paketes (siehe \cite{package:graphics}). Da -jenes Paket zur \emph{required}-Sektion von \LaTeX{} gehört, sollte es -Bestandteil jeder \LaTeX-Verteilung sein. Sollte Ihre -\TeX-Distribution zwar \LaTeX{}, nicht jedoch das \Package{graphics}- -und \Package{keyval}-Paket enthalten, beschweren Sie sich bitte beim -zuständigen \TeX-Distributor. Wenn Sie \Class{scrlttr2} verwenden -wollen, wird Ihnen in einem solchen Fall nichts anderes übrig bleiben, -als das \Package{graphics}-Paket zu installieren. - -\begin{Explain} - Das Besondere am \Package{keyval}-Paket ist, dass Optionen Werte - erhalten können. Dadurch werden nicht nur wesentlich weniger - Optionen benötigt, sondern gegebenfalls auch weniger optionale - Argumente. Sie werden dies bei der Beschreibung der - \Environment{letter}-Umgebung in \autoref{sec:scrlttr2.addressee} - feststellen. Das \Package{keyval}-Paket wird von der Klasse - automatisch geladen. Sollten Sie Optionen an das Paket übergeben - müssen, so verwenden Sie hierfür bitte die Anweisung - \Macro{PassOptionsToPackage} vor \Macro{documentclass}. -\end{Explain} - - -\subsection{Spätere Optionenwahl} -\label{sec:scrlttr2.options.late} -\BeginIndex{}{Optionen}% - -In diesem Abschnitt wird auf eine Besonderheit der neuen Briefklasse -vorgegriffen. Der Sinn dieser Besonderheit wird eigentlich erst klar, -wenn der Aufbau einer Briefdatei mit mehreren Briefen und eine weitere -Besonderheit von \Class{scrlttr2} verstanden ist. Um jedoch die Anzahl -der Vorwärtsverweise überschaubar zu halten, erschien es sinnvoll, -diese bereits hier zu beschreiben. - -\begin{Declaration} - \Macro{KOMAoptions}\Parameter{Optionenliste} -\end{Declaration} -\BeginIndex{Cmd}{KOMAoptions}% -Eine Besonderheit der \Class{scrlttr2}-Klasse besteht darin, dass -viele Optionen auch noch nach dem Laden der Klasse geändert werden -können. Dazu dient diese Anweisung, der die gewünschten Optionen und -deren Werte als Argument übergeben werden. Mehrere Optionen können -dabei genau wie beim optionalen Argument von \Macro{documentclass} mit -Komma voneinander getrennt aufgelistet werden. Sollte eine Option nur -beim Laden der Klasse, also als optionales Argument von -\Macro{documentclass} erlaubt sein, so wird in der Beschreibung der -jeweiligen Option explizit darauf hingewiesen. - -\begin{Explain} -Falls man in der \PName{Optionenliste} eine Option auf einen -unzulässigen Wert setzt, so stoppt \LaTeX{} mit einer -Fehlermeldung. Durch Eingabe von "`\texttt{h}"' erhält man dann eine -Hilfe, in der auch die möglichen Werte für die entsprechende Option -angegeben sind. -\end{Explain} -% -\EndIndex{Cmd}{KOMAoptions}% -\EndIndex{}{Optionen}% - - -\subsection{Optionen für den Satzspiegel} -\label{sec:scrlttr2.typeareaOptions} -\BeginIndex{}{Satzspiegel} - -Die \Class{scrlttr2}-Klasse stützt sich im Gegensatz zur alten -\Class{scrlettr}-Klasse und in Übereinstimmung mit den übrigen -\KOMAScript-Klassen zur Festlegung des Satzspiegels auf das -\Package{typearea}-Paket\IndexPackage{typearea} (siehe -\autoref{cha:typearea}). Das Paket wird von der Klasse automatisch -geladen. Die Steuerung des Paketes übernimmt die Klasse. Die dazu -benötigten Optionen werden in diesem Abschnitt erwähnt. - -\begin{Declaration} - \Option{paper}=\PName{Format} -\end{Declaration} -\BeginIndex{Option}{paper}% -\BeginIndex{}{Papierformat}% -Mit dieser Option wird das Papierformat angegeben. Es werden theoretisch -alle Papierformate unterstützt, die das \Package{typearea}-Paket -kennt. Dabei ist jedoch das Postfix \PValue{paper} bei der Angabe des -Wertes \PName{Format} wegzulassen. Für das Letterformat verwenden Sie -also beispielsweise den Wert \PValue{letter}. Die Formate der ISO A-, -B-, C- und D-Reihe sind mit Kleinbuchstaben zu übergeben, -beispielsweise \PValue{a4} für ISO A4. Siehe hierzu auch -\autoref{sec:typearea.paperTypes}. - -\begin{Explain} - Obwohl jedes von \Package{typearea} einstellbare Format verwendbar - ist, kann es bei der Ausgabe der ersten Briefseite mit manchen - Formaten zu unerwünschten Ergebnissen kommen. Das liegt aber nicht - am Konzept der Klasse, sondern daran, dass derzeit nur - Parametersätze für ISO A4 existieren. Leider gibt es keine - allgemeingültigen Regeln, um die Position von Anschriftfeldern und - Ähnlichem für beliebige Papierformate zu berechnen. Es ist jedoch - möglich, auch für andere Papierformate Parametersätze zu erstellen. - Näheres dazu ist \autoref{sec:lcoFile} zu entnehmen. -\end{Explain} -% -\EndIndex{Option}{paper}% -\EndIndex{}{Papierformat}% - - -\begin{Declaration} - \Option{BCOR}=\PName{Länge}\\ - \Option{DIV}=\PName{Wert}\\ - \Option{headlines}=\PName{Anzahl} -\end{Declaration} -\BeginIndex{Option}{BCOR}% -\BeginIndex{Option}{DIV}% -\BeginIndex{Option}{headlines}% -Die Optionen für den Divisor, die Bindekorrektur\Index{Bindekorrektur} -und die Anzahl der Kopfzeilen wird direkt in die entsprechenden -Optionen für das \Package{typearea} Paket übersetzt und an dieses -Paket weitergeleitet. Werden die Optionen nicht als Klassenoptionen -sondern mit \Macro{KOMAoptions} gesetzt, so wird die Anweisung -\Macro{typearea} aus dem \Package{typearea}-Paket verwendet. Siehe -dazu auch \autoref{sec:typearea.options}. -% -\EndIndex{Option}{BCOR}% -\EndIndex{Option}{DIV}% -\EndIndex{Option}{headlines}% - - -\begin{Declaration} - \Option{enlargefirstpage} -\end{Declaration} -\BeginIndex{Option}{enlargefirstpage}% -Wie später erklärt wird, fällt die erste Seite eines Briefes immer aus -dem normalen Satzspiegel. \Class{scrlttr2} stellt Mechanismen bereit, -um die Höhe und vertikale Ausrichtung von Kopf und Fuß der ersten -Seite unabhängig von den Folgeseiten bestimmen zu können. Würde -dadurch der Fuß der ersten Seite in den Textbereich\Index{Textbereich} -ragen, so wird der Textbereich der ersten Seite automatisch mit Hilfe -von \Macro{enlargethispage}\IndexCmd{enlargethispage} verkleinert. -Soll der Textbereich umgekehrt auch vergrößert werden, falls der Fuß -der ersten Seite dies erlaubt, so kann das mit dieser Option erreicht -werden. Es passt dann bestenfalls etwas mehr Text auf die erste Seite. -Siehe hierzu auch die Erklärung zur Pseudolänge -\PLength{firstfootvpos} in \autoref{sec:scrlttr2.firstFoot}. Die -Option versteht die Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{enlargefirstpage}% - -\begin{table} - \centering - \begin{tabular}{ll} - Wert & Bedeutung \\\hline\\[-1.75ex] - \PValue{true} & aktiviert die Option \\ - \PValue{on} & aktiviert die Option \\ - \PValue{false}& deaktiviert die Option \\ - \PValue{off} & deaktiviert die Option \\ - \end{tabular} - \caption{Standardwerte für einfache Schalter in der Klasse - \Class{scrlttr2}} - \label{tab:scrlttr2.simpleSwitchValues} -\end{table} - -% -\EndIndex{}{Satzspiegel}% - - -\subsection{Optionen für das Layout} -\label{sec:scrlttr2.layout} - -In diesem Unterabschnitt werden alle Optionen zusammengefasst, die -sich im weiter gefassten Sinne auf das Layout und nicht auf den -Satzspiegel auswirken. Genaugenommen sind natürlich alle -Satzspiegeloptionen (siehe \autoref{sec:scrlttr2.typeareaOptions}) -Layoutoptionen. Teilweise gilt dies auch umgekehrt. - - -\begin{Declaration} - \Option{twoside} -\end{Declaration}% -\BeginIndex{Option}{oneside}% -Doppelseitige\Index{doppelseitig} Briefe ergeben in den Augen des -Autors wenig Sinn. Deshalb schaltet die Option \Option{twoside} auch -nur teilweise auf ein doppelseitiges Layout. So wird zwar die -Möglichkeit geschaffen, auf linken und rechten Seiten mit einem -unterschiedlichen Rand\Index{Rand} zu arbeiten, diese Möglichkeit wird -jedoch nicht genutzt. Die Option hat also mehr die Bedeutung: -\emph{Aktiviere die Möglichkeiten eines zweiseitigen Dokuments aber - behalte bis auf weiteres und so weit wie - möglich das einseitige Layout bei.} % -Die Option versteht die Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben -sind. Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{twoside}% - -Übrigens werden zweispaltige Briefe nicht unterstützt, da absolut kein -Sinn darin gesehen wird. - - -\begin{Declaration} - \Option{cleardoublepage}=\PName{Stil} -\end{Declaration} -\BeginIndex{Option}{cleardoublepage}% -Will man, dass mit der \Macro{cleardoublepage}-Anweisung eingefügte -Leerseiten im Kopf- und Fuß nur eine Seitenzahl oder gar nichts -aufweisen, so kann das mit Hilfe dieser Option eingestellt werden. Es -stehen drei verschiedene Stile zur Verfügung: -\begin{description} -\item[\PValue{empty}] schaltet für die Leerseite auf den - Seitenstil\Index{Seitenstil} \PValue{empty}\IndexPagestyle{empty}. -\item[\PValue{plain}] schaltet für die Leerseite auf den Seitenstil - \PValue{plain}\IndexPagestyle{plain}. -\item[\PValue{standard}] behält für die Leerseite den aktuellen - Seitenstil bei. -\end{description} -Die Seitenstile werden in \autoref{sec:scrlttr2.pageStyle} näher -erläutert. Voreingestellt ist \PValue{standard}. -% -\EndIndex{Option}{cleardoublepage}% - - -\begin{Declaration} - \Option{headsepline}\\ - \Option{footsepline} -\end{Declaration} -\BeginIndex{Option}{headsepline}% -\BeginIndex{Option}{footsepline}% -Mit Hilfe dieser beiden Optionen kann eine -Trennlinie\Index{Trennlinie}\Index{Linie} unter dem -Kopf\Index{Seitenkopf} oder über dem Fuß\Index{Seitenfuß} von -Folgeseiten eingeschaltet werden. Folgeseiten im Sprachgebrauch dieser -Anleitung sind alle Briefseiten, abgesehen von der ersten. Die -Optionen \Option{headsepline} und \Option{footsepline} verstehen die -Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist \PValue{false}. Wird eine Option wie in der -Deklaration ohne Wert verwendet, so entspricht dies dem Wert -\PValue{true}, die Trennlinie wird also aktiviert. Bei Verwendung als -Option in \Macro{documentclass} wird zusätzlich die Option -\Option{headinclude} beziehungsweise \Option{footinclude} an das Paket -\Package{typearea} übergeben (siehe \autoref{sec:typearea.options}). -% -\EndIndex{Option}{headsepline}% -\EndIndex{Option}{footsepline}% - - -\begin{Declaration} - \Option{mpinclude}\\ - \Option{mpexclude} -\end{Declaration} -\BeginIndex{Option}{mpinclude}% -\BeginIndex{Option}{mpexclude}% -Diese beiden Optionen des \Package{typearea}-Paketes sollten nicht -zusammen mit der \Class{scrlttr2}-Klasse verwendet werden, da -insbesondere die erste Briefseite diese Option nicht -berücksichtigt. Um Beschwerden vorzugreifen, wird daher bei Verwendung -dieser Option eine Warnung ausgegeben. Wenn Sie experimentierfreudig -sind, können Sie aber gerne ausprobieren, wie sich insbesondere -\Option{mpinclude} zusammen mit anderen Optionen auf die Klasse -auswirkt. -% -\EndIndex{Option}{mpinclude}% -\EndIndex{Option}{mpexclude}% - - -\begin{Declaration} - \Option{pagenumber}=\PName{Position} -\end{Declaration} -\BeginIndex{Option}{pagenumber}% -Mit Hilfe dieser Option kann bestimmt werden, ob und wo eine -Seitenzahl auf Folgeseiten gesetzt werden soll. -Folgeseiten\Index{Folgeseite} sind alle Briefseiten ohne -Briefkopf\Index{Briefkopf}. Die Option wirkt sich auf die -Seitenstile\Index{Seitenstil} \PValue{headings} und \PValue{plain} -aus. Sie beeinflusst außerdem die Voreinstellung der Seitenstile des -\Package{scrpage2}-Paketes, soweit sie vor dem Laden dieses Paketes -gesetzt wird (siehe \autoref{cha:scrpage}). Es gibt Werte, die sich -nur auf die horizontale Position auswirken, Werte, die nur die -vertikale Position beeinflussen, und Werte, die zugleich die vertikale -und die horizontale Position festlegen. Mögliche Werte sind: -\begin{labeling}[~--]{\PValue{footcentered}} - \item[\PValue{bot}] Seitenzahl im Fuß ohne Änderung der - horizontalen Position - \item[\PValue{botcenter}] Seitenzahl zentriert im Fuß - \item[\PValue{botcentered}] wie \PValue{botcenter} - \item[\PValue{botleft}] Seitenzahl links im Fuß - \item[\PValue{botmiddle}] wie \PValue{botcenter} - \item[\PValue{botright}] Seitenzahl rechts im Fuß - \item[\PValue{center}] Seitenzahl zentriert ohne Änderung der - vertikalen Position - \item[\PValue{centered}] wie \PValue{center} - \item[\PValue{false}] keine Seitenzahl - \item[\PValue{foot}] wie \PValue{bot} - \item[\PValue{footcenter}] wie \PValue{botcenter} - \item[\PValue{footcentered}] wie \PValue{botcenter} - \item[\PValue{footleft}] wie \PValue{botleft} - \item[\PValue{footmiddle}] wie \PValue{botcenter} - \item[\PValue{footright}] wie \PValue{botright} - \item[\PValue{head}] Seitenzahl im Kopf ohne Änderung der - horizontalen Position - \item[\PValue{headcenter}] Seitenzahl zentriert im Kopf - \item[\PValue{headcentered}] wie \PValue{headcenter} - \item[\PValue{headleft}] Seitenzahl links im Kopf - \item[\PValue{headmiddle}] wie \PValue{headcenter} - \item[\PValue{headright}] Seitenzahl rechts im Kopf - \item[\PValue{left}] Seitenzahl links ohne Änderung der - vertikalen Position - \item[\PValue{middle}] wie \PValue{center} - \item[\PValue{no}] wie \PValue{false} - \item[\PValue{off}] wie \PValue{false} - \item[\PValue{right}] Seitenzahl rechts ohne Änderung der - vertikalen Position - \item[\PValue{top}] wie \PValue{head} - \item[\PValue{topcenter}] wie \PValue{headcenter} - \item[\PValue{topcentered}] wie \PValue{headcenter} - \item[\PValue{topleft}] wie \PValue{headleft} - \item[\PValue{topmiddle}] wie \PValue{headcenter} - \item[\PValue{topright}] wie \PValue{headright} -\end{labeling} -Voreingestellt ist \PValue{botcenter}. -% -\EndIndex{Option}{pagenumber}% - - -\begin{Declaration} - \Option{parskip}=\PName{Wert} -\end{Declaration}% -\BeginIndex{Option}{parskip}% -\begin{Explain}% - Gerade bei Briefen erlebt man häufig, dass diese nicht mit - Einrückung der ersten Zeile eines - Absatzes\Index{Absatz}\Index{Absatzeinzug}, sondern mit - Abstand\Index{Absatzabstand} zwischen den Absätzen gesetzt werden. - Hier spielt die Tradition eine große Rolle. Offenbar fiel es früher - der durchschnittlichen Sekretärin leichter, auf der Schreibmaschine - zweimal den Hebel zur Zeilenschaltung zu betätigen als eine - Einrückung mittels gut gesetztem Tabulator oder Leertaste zu setzen. - Da korrekter Blocksatz\Index{Blocksatz} mit einer Schreibmaschine - kaum möglich war, wurden und werden Briefe auch heute noch häufig im - Flattersatz gesetzt. - - Typografen wie Jan Tschichold vertreten jedoch die Auf"|fassung, dass - für Briefe, die mit den Mitteln des modernen Schriftsatzes erstellt - werden, diese Mittel auch ebenso gut genutzt werden sollten wie für - andere Dokumente. Unter diesen Umständen sollten also auch Briefe - mit Absatzeinrückung und im Blocksatz erstellt werden. Der Autor von - \Class{scrlttr2} schließt sich dieser Auf"|fassung weitgehend an, will - den Anwender aber nicht über Gebühr einschränken. -\end{Explain} -Da es immer wieder ernst gemeinte Anfragen dazu gibt, bietet -\Class{scrlttr2} nicht nur die Möglichkeit, Absätze durch Einrückung -der ersten Zeile, sondern alternativ durch einen Abstand zwischen den -Absätzen zu kennzeichnen. Dabei kann zwischen einer halben und einer -ganzen Zeile Abstand gewählt werden. Bei Absatzabstand empfiehlt es -sich, dafür zu sorgen, dass die letzte Zeile eines Absatzes nicht -komplett gefüllt wird. Dadurch wird die Erkennung des Absatzes weiter -erleichtert. All diese Möglichkeiten werden über die Werte der Option -\Option{parskip} gesteuert: -\begin{labeling}[~--]{\PValue{half*}} -\item[\PValue{false}] Absatzeinzug statt Absatzabstand; die letzte - Zeile eines Absatzes darf beliebig gefüllt sein -\item[\PValue{full}] eine Zeile Abstand zwischen Absätzen; in der - letzten Zeile eines Absatzes muss mindestens 1\Unit{em} Platz frei - bleiben -\item[\PValue{full*}] eine Zeile Abstand zwischen Absätzen; in der - letzten Zeile eines Absatzes muss mindestens ein Viertel frei - bleiben -\item[\PValue{full+}] eine Zeile Abstand zwischen Absätzen; in der - letzten Zeile eines Absatzes muss mindestens ein Drittel frei - bleiben -\item[\PValue{full-}] eine Zeile Abstand zwischen Absätzen; die letzte - Zeile eines Absatzes darf beliebig gefüllt sein -\item[\PValue{half}] eine halbe Zeile Abstand zwischen Absätzen; in - der letzten Zeile eines Absatzes muss mindestens 1\Unit{em} Platz - frei bleiben -\item[\PValue{half*}] eine halbe Zeile Abstand zwischen Absätzen; in - der letzten Zeile eines Absatzes muss mindestens ein Viertel frei - bleiben -\item[\PValue{half+}] eine halbe Zeile Abstand zwischen Absätzen; in - der letzten Zeile eines Absatzes muss mindestens ein Drittel frei - bleiben -\item[\PValue{half-}] eine halbe Zeile Abstand zwischen Absätzen; die - letzte Zeile eines Absatzes darf beliebig gefüllt sein -\item[\PValue{off}] wie \PValue{false} -\item[\PValue{on}] wie \PValue{full} -\item[\PValue{true}] wie \PValue{full} -\end{labeling} -Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{parskip}% - - - -\subsection{Optionen für die Schriftwahl} -\label{sec:scrlttr2.fontOptions} - -Optionen für die Schriftwahl sind Optionen, die sich auf die Größe der -Grundschrift oder der Schrift einzelner Teile auswirken. Theoretisch -wären auch Optionen, die sich auf die Schriftart auswirken, Optionen -für die Schriftwahl. Derzeit gibt es in \Class{scrlttr2} aber nur eine -Option, die sich auf die Schriftgröße auswirkt. - - -\begin{Declaration} - \Option{fontsize}=\PName{Größe} -\end{Declaration} -\BeginIndex{Option}{fontsize}% -Während bei den Hauptklassen die -Schriftgröße\Index{Schriftgroesse=Schriftgröße} des Dokuments mit -\Option{10pt}, \Option{11pt} usw. gewählt wird, gibt man bei -\Class{scrlttr2} die gewünschte \PName{Größe} als Wert dieser Option -an. Die Funktionalität ist aber ansonsten gleich. Diese Option kann -nur bei \Macro{documentclass} nicht, jedoch bei \Macro{KOMAoptions} -angegeben werden. Voreingestellt ist \PValue{12pt}. -% -\EndIndex{Option}{fontsize}% - - -\subsection{Optionen für Briefkopf und Anschrift} -\label{sec:scrlttr2.headoptions} -\BeginIndex{}{Briefkopf}\BeginIndex{}{Anschrift}% - -Die \Class{scrlttr2}-Klasse bietet eine ganze Reihe von Erweiterungen -für die Gestaltung des Briefkopfes. Dadurch wird das Paket -\Package{briefkopf}, das immer ohne Support war, obsolet. Darüber -hinaus existieren gegenüber der Standardbriefklasse Erweiterungen zur -Gestaltung der Anschrift. Diese Fähigkeiten waren jedoch weitgehend -schon in der obsoleten \Class{scrlettr} Klasse zu finden. - -\begin{Declaration} - \Option{fromalign} -\end{Declaration} -\BeginIndex{Option}{fromalign}% -Diese Option bestimmt, wo der Absender\Index{Absender} im Briefkopf -der ersten Seite platziert werden soll. Gleichzeitig dient diese -Option als zentraler Schalter, um die Erweiterungen der -Briefkopfgestaltung überhaupt zu aktivieren oder zu deaktivieren. Sind -die Erweiterungen deaktiviert, so bleiben diverse andere Optionen ohne -Wirkung. Dies ist bei den jeweiligen Optionen angegeben. Mögliche -Werte für \Option{fromalign} sind: -\begin{labeling}[~--]{\PValue{centered}} -\item[\PValue{center}] Absender wird zentriert; ein Logo wird - gegebenenfalls am Anfang der erweiterten Absenderangabe platziert; - die Erweiterungen der Briefkopfgestaltung werden aktiviert. -\item[\PValue{centered}] wie \PValue{center} -\item[\PValue{false}] die Standardgestalt für den Absender wird - verwendet; die Erweiterungen der Briefkopfgestaltung werden - deaktiviert. -\item[\PValue{left}] Absender steht linksbündig; ein Logo wird - gegebenenfalls rechtsbündig platziert; die Erweiterungen der - Briefkopfgestaltung werden aktiviert. -\item[\PValue{middle}] wie \PValue{center} -\item[\PValue{no}] wie \PValue{false} -\item[\PValue{off}] wie \PValue{false} -\item[\PValue{right}] Absender steht rechtsbündig; ein Logo wird - gegebenenfalls linksbündig platziert; die Erweiterungen der - Briefkopfgestaltung werden aktiviert. -\end{labeling} -Voreingestellt ist der Wert \PValue{left}. -% -\EndIndex{Option}{fromalign}% - - -\begin{Declaration} - \Option{fromrule} -\end{Declaration} -\BeginIndex{Option}{fromrule}% -Diese Option gehört zu den Erweiterungen der Briefkopfgestaltung -(siehe Option \Option{fromalign} am Anfang dieses Abschnitts). Mit -ihrer Hilfe kann eine Linie\Index{Linie}\Index{Absender} innerhalb des -Absenders platziert werden. Die Option versteht folgende Werte: -\begin{labeling}[~--]{\PValue{afteraddress}} -\item[\PValue{afteraddress}] Linie unterhalb des kompletten Absenders -\item[\PValue{aftername}] Linie direkt unter dem Namen des Absenders -\item[\PValue{below}] wie \PValue{afteraddress} -\item[\PValue{false}] keine Linie -\item[\PValue{no}] wie \PValue{false} -\item[\PValue{off}] wie \PValue{false} -\item[\PValue{on}] wie \PValue{afteraddress} -\item[\PValue{true}] wie \PValue{afteraddress} -\item[\PValue{yes}] wie \PValue{afteraddress} -\end{labeling} -Voreingestellt ist der Wert \PValue{false}. Es können nicht -gleichzeitig mehrere Linien aktiviert werden. -% -\EndIndex{Option}{fromrule}% - - -\begin{Declaration} - \Option{fromphone} -\end{Declaration} -\BeginIndex{Option}{fromphone}% -Diese Option gehört zu den Erweiterungen der Briefkopfgestaltung -(siehe Option \Option{fromalign} am Anfang dieses Abschnitts). Mit -ihrer Hilfe kann bestimmt werden, ob die Telefonnummer\Index{Telefon} -im Absender\Index{Absender} gesetzt werden soll. Die Option versteht -die Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{fromphone}% - - -\begin{Declaration} - \Option{fromfax} -\end{Declaration} -\BeginIndex{Option}{fromfax}% -Diese Option gehört zu den Erweiterungen der Briefkopfgestaltung -(siehe Option \Option{fromalign} am Anfang dieses Abschnitts). Mit -ihrer Hilfe kann bestimmt werden, ob die Telefaxnummer\Index{Fax} im -Absender\Index{Absender} gesetzt werden soll. Die Option versteht die -Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{fromfax}% - - -\begin{Declaration} - \Option{fromemail} -\end{Declaration} -\BeginIndex{Option}{fromemail}% -Diese Option gehört zu den Erweiterungen der Briefkopfgestaltung -(siehe Option \Option{fromalign} am Anfang dieses Abschnitts). Mit -ihrer Hilfe kann bestimmt werden, ob die E-Mail-Adresse\Index{E-Mail} -im Absender\Index{Absender} gesetzt werden soll. Die Option versteht -die Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{fromemail}% - - -\begin{Declaration} - \Option{fromurl} -\end{Declaration} -\BeginIndex{Option}{fromurl}% -Diese Option gehört zu den Erweiterungen der Briefkopfgestaltung -(siehe Option \Option{fromalign} am Anfang dieses Abschnitts). Mit -ihrer Hilfe kann bestimmt werden, ob die -URL\Index{URL}\Index{WWW}\Index{Homepage} im Absender\Index{Absender} -gesetzt werden soll. Die Option versteht die Standardwerte für -einfache Schalter, die in \autoref{tab:scrlttr2.simpleSwitchValues} -angegeben sind. Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{fromurl}% - - -\begin{Declaration} - \Option{fromlogo} -\end{Declaration} -\BeginIndex{Option}{fromlogo}% -Diese Option gehört zu den Erweiterungen der Briefkopfgestaltung -(siehe Option \Option{fromalign} am Anfang dieses Abschnitts). Mit -ihrer Hilfe kann bestimmt werden, ob das Logo\Index{Logo} im Briefkopf -gesetzt werden soll. Die Option versteht die Standardwerte für -einfache Schalter, die in \autoref{tab:scrlttr2.simpleSwitchValues} -angegeben sind. Bezüglich der Platzierung des Logos siehe ebenfalls -die Erklärung zu Option \Option{fromalign} am Anfang dieses -Abschnitts. Voreingestellt ist \PValue{false}. -% -\EndIndex{Option}{fromlogo}% - - -\begin{Declaration} - \Option{addrfield} -\end{Declaration} -\BeginIndex{Option}{addrfield}% -Mit dieser Option kann gewählt werden, ob ein Anschriftfeld gesetzt -werden soll oder nicht. Voreingestellt ist die Verwendung eines -Anschriftfeldes. Die Option versteht die Standardwerte für einfache -Schalter, die in \autoref{tab:scrlttr2.simpleSwitchValues} -angegeben sind. Voreingestellt ist \PValue{true}. -% -\EndIndex{Option}{addrfield}% - - -\begin{Declaration} - \Option{backaddress} -\end{Declaration} -\BeginIndex{Option}{backaddress}% -Mit dieser Option kann gewählt werden, ob eine -Rücksendeadresse\Index{Rücksendeadresse} für Fensterbriefumschläge im -Anschriftfeld gesetzt werden soll oder nicht. Voreingestellt ist die -Verwendung einer Rücksendeadresse. Wird kein Anschriftfeld gesetzt -(siehe Option \Option{addrfield}), so wird auch keine Rücksendeadresse -gesetzt. Die Option versteht die Standardwerte für einfache Schalter, -die in \autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist \PValue{true}. -% -\EndIndex{Option}{backaddress}% - - -\begin{Declaration} - \Option{subject} -\end{Declaration} -\BeginIndex{Option}{subject}% -Mit dieser Option kann zum einen gewählt werden, ob der -Betreff\Index{Betreff} mit einem Titel versehen werden soll oder -nicht. Der Titel stimmt mit der Bezeichnung der Variablen -\PName{subject} überein (siehe \autoref{tab:scrlttr2.subjectTerm}). -Zum anderen kann über diese Option gewählt werden, ob der Betreff vor -oder nach der Anrede gesetzt werden soll. Mögliche Werte für diese -Option sind: -\begin{labeling}[~--]{\PValue{beforeopening}} -\item[\PValue{afteropening}] Betreff nach der Anrede setzen -\item[\PValue{beforeopening}] Betreff vor der Anrede setzen -\item[\PValue{titled}] Betreff mit Titel versehen -\item[\PValue{untitled}] Betreff nicht mit Titel versehen -\end{labeling} -Voreingestellt sind \PValue{beforeopening} und \PValue{untitled}. -% -\EndIndex{Option}{subject}% - - -\begin{Declaration} - \Option{locfield} -\end{Declaration} -\BeginIndex{Option}{locfield}% -Neben dem Anschriftfeld setzt \Class{scrlttr2} noch ein Feld mit -erweiterter Absenderangabe. Dieses Feld kann beispielsweise für -Bankverbindungen und Ähnliches verwendet werden. Je nach Einstellung -der Option \Option{fromalign} wird es außerdem für das Logo des -Absenders mit verwendet. Die Breite dieses Feldes kann beispielsweise -in einer \File{lco}-Datei (siehe \autoref{sec:lcoFile}) gesetzt -werden. Wird dort die Breite 0 gesetzt, so kann über die Option -\Option{locfield} zwischen zwei unterschiedlichen Voreinstellungen für -die Breite dieses Feldes gewählt werden. Siehe hierzu auch die -Erklärungen zur Pseudolänge \Variable{locwidth} in -\autoref{sec:scrlttr2.locationField}. Mögliche Werte für die Option -sind: -\begin{labeling}[~--]{\PValue{narrow}} -\item[\PValue{narrow}] schmales Feld für Absenderergänzungen -\item[\PValue{wide}] breites Feld für Absenderergänzungen -\end{labeling} -Voreingestellt ist \PValue{narrow}. -% -\EndIndex{Option}{locfield}% - - -\begin{Declaration} - \Option{foldmarks} -\end{Declaration} -\BeginIndex{Option}{foldmarks}% -Mit dieser Option können -Faltmarken\Index{Faltmarken}\Index{Falzmarken} für Seitenhalbierung -und Seitendrittelung aktiviert oder deaktiviert werden. Die genaue -Position der Faltmarken für die Seitendrittelung ist von den -Einstellungen des Anwenders beziehungsweise der \File{lco}-Dateien -(siehe \autoref{sec:lcoFile}) abhängig. Es muss sich dabei nicht -zwingend um eine echte Drittelung handeln. Die Option versteht die -Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist mit \PValue{true} das Setzen der Faltmarken. -% -\EndIndex{Option}{foldmarks}% - - -\begin{Declaration} - \Option{numericaldate} -\end{Declaration} -\BeginIndex{Option}{numericaldate}% -Mit dieser Option kann zwischen der sprachabhängigen -Standarddarstellung des Datums\Index{Datum}\Index{Geschäftszeile} und -einem kurzen, rein nummerischen Datum umgeschaltet werden. Die -Standarddarstellung wird nicht von \KOMAScript{} bereitgestellt. Sie -kann wahlweise von einem Paket wie -\Package{german}\IndexPackage{german}, -\Package{babel}\IndexPackage{babel} oder auch -\Package{isodate}\IndexPackage{isodate} stammen. Das kurze -nummerische Datum wird hingegen von \Class{scrlttr2} selbst erzeugt. -Die Option versteht die Standardwerte für einfache Schalter, die in -\autoref{tab:scrlttr2.simpleSwitchValues} angegeben sind. -Voreingestellt ist mit \PValue{false} die Verwendung der -Standarddarstellung. Dies ist übrigens eine Änderung gegenüber der -obsoleten Klasse \Class{scrlettr}, bei der es die nun nicht mehr -unterstützte Option \Option{orgdate} mit gegenteiliger Bedeutung gab. -% -\EndIndex{Option}{numericaldate}% - - -\begin{Declaration} - \Option{refline} -\end{Declaration} -\BeginIndex{Option}{refline}% -Bei \Class{scrlttr2} können Kopf, Fuß, Anschrift und des Feld mit der -Absenderergänzung links und rechts aus dem normalen Satzspiegel -herausragen. Über diese Option kann nun gewählt werden, ob dies auch -für die Geschäftszeile\Index{Geschäftszeile} gelten soll. Die -Geschäftszeile enthält normalerweise zumindest das Datum, kann aber -auch weitere Angaben aufnehmen. Mögliche Werte für diese Option sind: -\begin{labeling}[~--]{\PValue{narrow}} -\item[\PValue{narrow}] Geschäftszeile hält den Satzspiegel ein -\item[\PValue{wide}] Geschäftszeile richtet sich nach Anschrift und - Absenderergänzung -\end{labeling} -Voreingestellt ist \PValue{narrow}. -% -\EndIndex{Option}{refline}% - -% -\EndIndex{}{Briefkopf}\EndIndex{}{Anschrift} - - -\subsection{Optionen für die Formatierung} -\label{sec:scrlttr2.formatingOptions} - -Optionen für die Formatierung sind solche, welche die Form oder -Formatierung einer Ausgabe beeinflussen und nicht in einen anderen -Abschnitt eingeordnet werden können. Es sind also sozusagen die -\emph{sonstigen Optionen}. - - -\begin{Declaration} - \Option{draft} -\end{Declaration} -\BeginIndex{Option}{draft}% -Diese Option schaltet zwischen einem fertigen -Dokument\Index{Endfassung} und einem Dokument im -Entwurfsstadium\Index{Entwurf} um. Insbesondere werden beim -Einschalten der Option \Option{draft} kleine schwarze Kästchen -aktiviert, die im Falle von überlangen Zeilen am Zeilenende ausgegeben -werden. Diese Kästchen erleichtern dem ungeübten Auge, Absätze -ausfindig zu machen, die manueller Nachbearbeitung bedürfen. -Demgegenüber erscheinen bei abgeschalteter \Option{draft}-Option keine -solche Kästchen. Die Option versteht die Standardwerte für einfache -Schalter, die in \autoref{tab:scrlttr2.simpleSwitchValues} -angegeben sind. Voreingestellt ist wie üblich \PValue{false}. Ich -empfehle jedoch dringend, beim Entwurf eines Briefes wie beim Entwurf -jedes Dokuments den Draft-Modus zu wählen, die Option \Option{draft} -also zu setzen. -% -\EndIndex{Option}{draft}% - - -\subsection{Die \emph{Letter-Class-Option}-Dateien} -\label{sec:lcoFile} - -\BeginIndex{}{lco=\File{lco}}\BeginIndex{}{Letter-Class-Option}% -Normalerweise wird man Einstellungen wie den Abstand des Adressfeldes -von der oberen Papierkante nicht in jedem Brief neu wählen. -Stattdessen wird man einen ganzen Satz von Parametern für bestimmte -Gelegenheiten immer wieder verwenden. Ganz Ähnliches gilt für die -verwendeten Briefköpfe und den Fußbereich der ersten Seite. Es ist -deshalb sicher sinnvoll, diese Einstellungen in einer eigenen Datei zu -speichern. Die Briefklasse \Class{scrlttr2} bietet hierfür die -\File{lco}-Dateien an. Die Endung \File{lco} ist eine Abkürzung für -\emph{\emph{l}etter \emph{c}lass \emph{o}ption}, also -Briefklassenoption. - -In \File{lco}-Dateien können alle Anweisungen verwendet werden, die -auch an der Stelle im Dokument verwendet werden könnten, an der die -\File{lco}-Datei geladen wird. Außerdem könnten interne Anweisungen -verwendet werden, die für Paketautoren freigegeben sind. Bei -\Class{scrlttr2} sind dies inbesondere die Anweisungen -\Macro{@newplength}\IndexCmd{@newplength}, -\Macro{@setplength}\IndexCmd{@setplength} und -\Macro{@addtoplength}\IndexCmd{@addtoplength} (siehe -\autoref{sec:scrlttr2.pseudoLength}). - -\KOMAScript{} liegen bereits einige \File{lco}-Dateien bei. Die -Dateien \File{DIN.lco}, \File{DINmtext.lco}, \File{SNleft.lco} und -\File{SN.lco} dienen dazu \Class{scrlttr2} an verschiedene -Normen\Index{Norm} anzupassen. Sie können sehr gut als Vorlage für -eigene Parametersätze verwendet werden. Die Datei \File{KOMAold.lco} -dient hingegen dazu, die Kompatibilität zu \Class{scrlettr}, der alten -Briefklasse, zu verbessern. Da hierbei auch auf Anweisungen -zurückgegriffen wird, die nicht für Paketautoren freigegeben sind, -sollte man sie nicht als Vorlage für eigene \File{lco}-Dateien -verwenden. Eine Liste aller vordefinierten \File{lco}-Dateien ist in -\autoref{tab:lcoFiles} zu finden. - -\begin{Explain} - Wenn Sie einen Parametersatz für eine Briefnorm, die bisher nicht - von \KOMAScript{} unterstützt wird, erstellt haben, so sind Sie - ausdrücklich gebeten, diesen Parametersatz an die Supportaddresse - von \KOMAScript{} zu schicken. Bitte geben Sie dabei auch die - Erlaubnis zur Weiterverbreitung unter den Lizenzbedingungen von - \KOMAScript{} (siehe dazu die Datei \File{LEGALDE.TXT}). Wenn Sie - zwar über die notwendigen Maße aus einer bisher nicht unterstützen - Briefnorm verfügen, sich jedoch nicht in der Lage sehen, selbst eine - passende \File{lco}-Datei zu erstellen, so können Sie sich ebenfalls - mit mir in Verbindung setzen. Aktuelle Adressen zu diesem Zweck - finden Sie in der jeweils neuesten Ausgabe der - \KOMAScript\textsf{-News} oder in - \autoref{sec:introduction.authors}. Beispiele für teilweise sehr komplexe - \File{lco}-Dateien finden sich unter Anderem unter \cite{homepage} und in - \cite{DANTE:TK0203:MJK}. -\end{Explain} - -\begin{Declaration} - \Macro{LoadLetterOption}\Parameter{Name} -\end{Declaration} -\BeginIndex{Cmd}{LoadLetterOption}% -Normalerweise werden \File{lco}-Dateien direkt über -\Macro{documentclass} geladen. Dazu gibt man den Namen der -\File{lco}-Datei ohne die Endung als Option\Index{Optionen} an. Das Laden der -\File{lco}-Datei erfolgt dann direkt nach der Klasse. - -Es ist jedoch auch möglich, eine \File{lco}-Datei zu einem späteren -Zeitpunkt und sogar innerhalb einer anderen \File{lco}-Datei zu laden. -Dazu dient die Anweisung \Macro{LoadLetterOption}. Der \PName{Name} -der \File{lco}-Datei wird dieser ebenfalls ohne Endung als Parameter -übergeben. -\begin{Example} - Sie erstellen ein Dokument, in dem mehrere Briefe enthalten - sind. Die Mehrzahl der Briefe soll nach DIN erstellt werden. Also - beginnen Sie: - \begin{small} -\begin{verbatim} - \documentclass{scrlttr2} -\end{verbatim} - \end{small} - Allerdings soll bei einem Brief stattdessen die Variante - \File{DINmtext} verwendet werden. Bei dieser steht das Adressfeld - weiter oben, damit mehr Text auf die erste Seite passt. Dafür ist - die Faltung so angepasst, dass das Adressfeld bei - DIN~C6/5-Umschlägen trotzdem in das Adressfenster passt. Sie - erreichen das so: - \begin{small} -\begin{verbatim} - \begin{letter}{Markus Kohm\\ - Fichtenstraße 63\\68535 Edingen-Neckarhausen} - \LoadLetterOption{DINmtext} - \opening{Hallo,} -\end{verbatim} - \end{small} - Da der Aufbau der ersten Seite erst mit \Macro{opening} wirklich - beginnt, genügt es, wenn die \File{lco}-Datei vor \Macro{opening} - geladen wird. Dies muss also inbesondere nicht vor - \Macro{begin}\PParameter{letter} erfolgen. Die Änderungen durch das - Laden der \File{lco}-Datei sind dann auch lokal zu dem - entsprechenden Brief. -\end{Example} - -\begin{Explain} -Wird eine \File{lco}-Datei über \Macro{documentclass} geladen, so -darf sie übrigens trotzdem den Namen einer Option haben. Voraussetzung -ist jedoch, dass es sich nicht um eine Option handelt, die einen Wert -erwartet. Es wäre jedoch möglich, einer \File{lco}-Datei etwa den -Namen \File{fromalign=left.lco} zu geben. Diese würde dann immer geladen, -wenn als Option bei \Macro{documentclass} die Option -\Option{fromalign} auf den Wert \PValue{left} gesetzt -würde. Zugegeben, dies ist eher von akademischem Interesse. Natürlich -können Sie diesen Automatismus nur nutzen, wenn das von Ihnen -verwendete Betriebs- und Dateisystem derartige Dateinamen erlaubt. Ist -das nicht der Fall, müssen Sie einen anderen Datei\-namen wählen und -gegebenenfalls die entsprechende Option zusätzlich angeben. -\end{Explain} - -\begin{Example} - Sie wollen nicht immer wieder ihre Absenderangaben neu - eingeben. Deshalb erstellen Sie eine \File{lco}-Datei, die alle - Angaben enthält, beispielsweise: - \begin{small} -\begin{verbatim} - \ProvidesFile{mkohm.lco}[2002/02/25 letter class option] - \setkomavar{fromname}{Markus Kohm} - \setkomavar{fromaddress}{Fichtenstra\ss e 63\\ - 68535 Edingen-Neckarhausen} -\end{verbatim} - \end{small} - Die dabei verwendete Anweisung \Macro{setkomavar} und das Prinzip der - Variablen wird in Abschnitt~\ref{sec:scrlttr2.variables} genauer erläutert - werden. Für das Beispiel hier ist die genaue Funktion der Anweisung - unerheblich. Von Bedeutung ist lediglich, was man mit \File{lco}-Dateien - machen kann, weniger, wie dies konkret zu erreichen ist. Beachten Sie - jedoch, dass hier für "`ß"' die \TeX-Schreibweise \Macro{ss} verwendet - wurde. Dies hat seinen Grund darin, dass unmittelbar nach - \Macro{documentclass} weder ein Paket für die Eingabecodierung, - beispielsweise für Unix mit - \Macro{usepackage}\PValue{[latin1]}\PParameter{inputenc} oder für Windows - mit \Macro{usepackage}\PValue{[ansinew]}\PParameter{inputenc}, noch ein - Paket zur Sprachumschaltung, beispielsweise für die neue deutsche - Rechtschreibung mit \Macro{usepackage}\PParameter{ngerman}, geladen ist. - - Wenn Sie allerdings immer mit derselben Eingabecodierung arbeiten, - können Sie auch diese in Ihre Datei mit aufnehmen. Das Ganze sähe - dann beispielsweise so aus: - \begin{small} -\begin{verbatim} - \ProvidesFile{mkohm.lco}[2002/02/25 letter class option] - \RequirePackage[latin1]{inputenc} - \setkomavar{fromname}{Markus Kohm} - \setkomavar{fromaddress}{Fichtenstraße 63\\ - 68535 Edingen-Neckarhausen} -\end{verbatim} - \end{small} - Dieses Vorgehen hat aber den entscheidenden Nachteil, dass die - \File{lco}-Datei \File{mkohm} dann nicht mehr innerhalb des Dokuments - geladen werden kann. Wenn Sie also auch Briefe verschiedener Absender in - einer Datei haben wollen, sollten Sie davon absehen, in den entsprechenden - \File{lco}-Dateien Pakete zu laden. - - Nehmen wir weiter an, dass ich Briefe grundsätzlich mit der Vorgabe - \File{KOMAold} schreibe. Dann erweitere ich die Datei - \File{mkohm.lco} noch um die Zeile: - \begin{small} -\begin{verbatim} - \LoadLetterOption{KOMAold} -\end{verbatim} - \end{small} - - Wie dem auch sei, stellen Sie zukünftig meine Absenderdaten mit - \begin{small} -\begin{verbatim} - \documentclass[mkohm]{scrlttr2} -\end{verbatim} - \end{small} - ein. -\end{Example} - -In \autoref{tab:lcoFiles} finden Sie übrigens eine Liste aller -vordefinierten \File{lco}-Dateien. Falls Sie einen Drucker verwenden, -der einen sehr großen unbedruckbaren Rand links oder rechts besitzt, -werden Sie mit der Option \Option{SN}\IndexOption{SN} möglicherweise -Probleme bekommen. Da die Schweizer Norm SN~101\,130 vorsieht, dass -das Adressfeld 8\,mm vom rechten Papierrand gesetzt wird, werden bei -Schweizer Briefen auch die Kopfzeile und die Absenderergänzung mit -einem entsprechend geringen Abstand zum Papierrand gesetzt. Dies -betrifft ebenfalls die Geschäftszeile bei der Einstellung -\Option{refline}\PValue{=wide} (siehe -\autoref{sec:scrlttr2.headoptions}). Sollten Sie damit ein -Problem haben, erstellen Sie sich eine eigene \File{lco}-Datei, die -zunächst \Option{SN} lädt und in der \PLength{toaddrhpos} (siehe -\autoref{sec:scrlttr2.addressee}) dann auf einen kleineren Wert -gesetzt wird. Verringern Sie dann außerdem \PLength{toaddrwidth} -entsprechend. -% -\EndIndex{Cmd}{LoadLetterOption}% - -\begin{table} - \centering - \begin{tabular}{lp{.7\textwidth}} - \File{lco}-Name & Bedeutung und Besonderheiten \\\hline\\[-2ex] - \Option{DIN}\IndexOption[indexmain]{DIN}% - & Parametersatz für Briefe im Format A4 nach - DIN~676; geeignet für Fensterbriefumschläge in den - Formaten C4, C5, C6 und C6/5 (C6 lang)\\ - \Option{DINmtext}\IndexOption[indexmain]{DINmtext}% - & Parametersatz für Briefe im Format A4 nach DIN~676, - wobei die Alternative für mehr Text auf der ersten - Briefseite verwendet wird; nur geeignet für - Fensterbriefumschläge in den Formaten C6 und C6/5 - (C6 lang)\\ - \Option{KOMAold}\IndexOption[indexmain]{KOMAold}% - & Parametersatz für Briefe im Format A4 mit - Annäherung an das Aussehen von Briefen der - obsoleten Briefklasse \Class{scrlettr}; geeignet - für Fensterbriefumschläge in den Formaten C4, C5, - C6 und C6/5 (C6 lang); es werden einige - zusätzliche Anweisungen zur Verbesserung der - Kompatibilität mit der obsoleten - Briefklasse \Class{scrlettr}\IndexClass{scrlettr} - definiert; \Class{scrlttr2} verhält sich mit - dieser \File{lco}-Datei möglicherweise nicht genau - wie bei Verwendung der übrigen - \File{lco}-Dateien\\ - \Option{SN}\IndexOption[indexmain]{SN}% - & Parametersatz für Schweizer Briefe nach - SN~010\,130 mit Anschrift rechts; geeignet für - Schweizer Fensterbriefumschläge in den Formaten - C4, C5, C6 und C6/5 (C6 lang)\\ - \Option{SNleft}\IndexOption[indexmain]{SNleft}% - & Parametersatz für Schweizer Briefe mit Anschrift - links; geeignet für Schweizer - Fensterbriefumschläge mit dem Fenster links in den - Formaten C4, C5, C6 und C6/5 (C6 lang)\\ - \end{tabular} - \caption{Vordefinierte \File{lco}-Dateien} - \label{tab:lcoFiles} -\end{table} - -\begin{Explain} -\begin{Declaration} - \Macro{LetterOptionNeedsPapersize}% - \Parameter{Optionsname}\Parameter{Papiergröße} -\end{Declaration} -\BeginIndex{Cmd}{LetterOptionNeedsPapersize}% -Wie bereits in \autoref{sec:scrlttr2.typeareaOptions} erwähnt wurde, -existieren derzeit nur Parametersätze und \File{lco}-Dateien für -A4-Papier. Damit man bei Verwendung einer anderen -\PName{Papiergröße}\Index{Papierformat} zumindest gewarnt wird, ist in -jeder mit \KOMAScript{} ausgelieferten \File{lco}-Datei eine Anweisung -\Macro{LetterOptionNeedsPapersize} zu finden. Als erstes Argument wird -dabei der Name der \File{lco}-Datei ohne die Endung "`\File{.lco}"' -übergeben. Als zweites Argument wird die Papiergröße übergeben, für -die diese \File{lco}-Datei gedacht ist. - -Werden nacheinander mehrere \File{lco}-Dateien geladen, so kann jede -dieser \File{lco}-Dateien eine Anweisung -\Macro{LetterOptionNeedsPapersize} enthalten. Innerhalb von -\Macro{opening} wird jedoch nur auf die jeweils letzte angegebene -\PName{Papiergröße} geprüft. Wie das nachfolgende Beispiel zeigt, ist -es daher für den versierten Anwender leicht möglich, -\File{lco}-Dateien mit Parametersätzen für andere Papierformate zu -schreiben. Wer allerdings nicht vor hat, selbst solche -\File{lco}-Dateien zu schreiben, der kann die Erklärung zu dieser -Anweisung gleich wieder vergessen und auch das Beispiel überspringen. - -\begin{Example} - Nehmen wir einmal an, dass Sie A5-Papier in normaler Ausrichtung, - also hochkant oder portrait, für Ihre Briefe verwenden. Nehmen wir - weiter an, dass Sie diese in normale Fensterbriefumschläge im Format - C6 stecken. Damit wäre prinzipiell die Position des Adressfeldes die - gleiche wie bei einem normalen Brief in A4 nach DIN. Der Unterschied - besteht im Wesentlichen darin, dass das A5-Papier nur einmal - gefaltet werden muss. Sie wollen deshalb verhindern, dass die obere - und die untere Faltmarke gesetzt wird. Dies erreichen Sie am - einfachsten, indem sie die Marken außerhalb des Papiers platzieren. - \begin{small} -\begin{verbatim} - \ProvidesFile{paper=a5.lco}[2002/05/02 letter class option] - \LetterOptionNeedsPapersize{paper=a5}{a5} - \@setplength{tfoldmarkvpos}{\paperheight} - \@setplength{bfoldmarkvpos}{\paperheight} -\end{verbatim} - \end{small} - Außerdem muss natürlich die Position des Seitenfußes - \PLength{firstfootvpos} angepasst werden. Ich überlasse es dem Leser, - dafür einen geeigneten Wert zu ermitteln. Mit einer solchen - \File{lco}-Datei ist es lediglich wichtig, dass andere - \File{lco}-Dateioptionen wie \File{SN} vor dem Setzen der - Papiergröße, also vor dem Laden von "`\File{paper=a5.lco}"', - angegeben werden. Das erscheint Ihnen kompliziert? Nur bis Sie es - zum ersten Mal gemacht haben. Außerdem: Wie oft schreiben Sie Briefe - in einem anderen Format als A4? -\end{Example} -% -\EndIndex{Cmd}{LetterOptionNeedsPapersize} -\end{Explain} - -Die \File{lco}-Datei \File{DIN} wird übrigens immer als erste -\File{lco}-Datei geladen. Dies wird getan, damit alle Pseudo-Längen -mehr oder weniger sinnvoll vordefiniert sind. - -Beachten Sie bitte noch, dass es nicht möglich ist, innerhalb einer -\File{lco}-Datei mittels \Macro{PassOptionsToPackage} Optionen an -Pakete zu übergeben, die von der Klasse bereits geladen -sind. Normalerweise betrifft dies nur die Pakete \Package{typearea}, -\Package{scrlfile} und \Package{keyval}. -% -\EndIndex{}{lco=\File{lco}}\EndIndex{}{Letter-Class-Option}% - - -\section{Generelle Dokumenteigenschaften} -\label{sec:scrlttr2.general} - -Einige Dokumenteigenschaften sind keinem speziellen Abschnitt des -Dokuments wie dem Briefkopf oder dem Brief"|text zugeordnet. Ein Teil -dieser Eigenschaften wurde bereits im -\autoref{sec:scrlttr2.options} erläutert oder erwähnt. - - -\subsection{Änderung der verwendeten Schriftart} -\label{sec:scrlttr2.font} - -\BeginIndex{}{Schriftart}\BeginIndex{}{Schriftgroesse=Schriftgröße}% -\begin{Explain} -Bezüglich der Anweisungen zum Setzen, Erweitern und Abfragen der -Schrift eines bestimmten Elements verweise ich hier auf die -Anweisungen aus \autoref{sec:maincls.font}. Diese Anweisungen -funktionieren in \Class{scrlttr2} ganz genauso. Die Elemente, die auf -diese Weise beeinflusst werden können, entnehmen Sie bitte -\autoref{tab:scrlttr2.elementsWithoutText}. -% -\begin{table} - \centering% - \begin{tabular}{lp{.6\linewidth}} - Element & Beschreibung \\\hline\\[-2ex] - \PValue{backaddress}\IndexFontElement[indexmain]{backaddress} - & \raggedright Rücksendeadresse für einen Fensterbriefumschlag - \tabularnewline[.75ex] - \PValue{descriptionlabel}\IndexFontElement[indexmain]{descriptionlabel} - & \raggedright Labels, also das optionale Argument von - \Macro{item}, in einer \Environment{description}-Umgebung - \tabularnewline[.75ex] - \PValue{fromaddress}\IndexFontElement[indexmain]{fromaddress} - & \raggedright Absenderadresse im Briefkopf - \tabularnewline[.75ex] - \PValue{fromname}\IndexFontElement[indexmain]{fromname} - & \raggedright Name des Absenders im Briefkopf abweichend von - \PValue{fromaddress} - \tabularnewline[.75ex] - \PValue{pagefoot}\IndexFontElement[indexmain]{pagefoot} - & \raggedright Eigentlich der Fuß einer Seite, jedoch auch der - Kopf der Seite - \tabularnewline[.75ex] - \PValue{pagehead}\IndexFontElement[indexmain]{pagehead} - & \raggedright Eigentlich der Kopf einer Seite, jedoch auch der - Fuß der Seite - \tabularnewline[.75ex] - \PValue{pagenumber}\IndexFontElement[indexmain]{pagenumber} - & \raggedright Seitenangabe im Kopf oder Fuß, die mit - \Macro{pagemark} gesetzt wird - \tabularnewline[.75ex] - \PValue{subject}\IndexFontElement[indexmain]{subject} - & \raggedright Betreff in der Brieferöffnung - \tabularnewline[.75ex] - \PValue{title}\IndexFontElement[indexmain]{title} - & \raggedright Titel in der Brieferöffnung - \tabularnewline[.75ex] - \end{tabular} - \caption{Elemente, deren Schrift bei der Klasse - \Class{scrlttr2} mit \Macro{setkomafont} und \Macro{addtokomafont} - verändert werden kann} - \label{tab:scrlttr2.elementsWithoutText} -\end{table} -\end{Explain} -% -\EndIndex{}{Schriftart}\EndIndex{}{Schriftgroesse=Schriftgröße}% - - -\subsection{Seitenstil} -\label{sec:scrlttr2.pageStyle} -Eine der allgemeinen Eigenschaften eines Dokuments ist der Seitenstil. -Siehe hierzu auch \autoref{sec:maincls.pageStyle} und -\autoref{cha:scrpage}. - -\begin{Declaration} - \Macro{pagestyle}\PParameter{empty}\\ - \Macro{pagestyle}\PParameter{plain}\\ - \Macro{pagestyle}\PParameter{headings}\\ - \Macro{pagestyle}\PParameter{myheadings}\\ - \Macro{thispagestyle}\Parameter{lokaler Seitenstil} -\end{Declaration} -\BeginIndex{Cmd}{pagestyle}% -\BeginIndex{Cmd}{thispagestyle}% -\BeginIndex{Pagestyle}{empty}% -\BeginIndex{Pagestyle}{plain}% -\BeginIndex{Pagestyle}{headings}% -\BeginIndex{Pagestyle}{myheadigs}% -\BeginIndex{}{Seitenstil}% -Bei Briefen mit \Class{scrlttr2} wird zwischen vier verschiedenen -Seitenstilen unterschieden. -\begin{description} -\item[empty] ist der Seitenstil, bei dem Kopf- und Fußzeile von - Folgeseiten vollständig leer bleiben. Dieser Seitenstil wird auch - automatisch für die erste Briefseite verwendet, da auf dieser Seite - Kopf und Fuß über \Macro{opening} mit anderen Mitteln gesetzt - werden. -\item[plain] ist der Seitenstil, bei dem auf Folgeseiten keinerlei - Kolumnentitel verwendet, sondern nur eine Seitenangabe ausgegeben - wird. Wo diese gesetzt wird, hängt von der Option - \Option{pagenumber} ab (siehe \autoref{sec:scrlttr2.layout}). -\item[headings] ist der Seitenstil für automatische Kolumnentitel auf - Folgeseiten. Dabei werden als automatisch gesetzte Marken der - Absendername aus der Variablen \PValue{fromname} und der Betreff aus - der Variablen \PValue{subject} verwendet (siehe - \autoref{sec:scrlttr2.firstHead} und - \autoref{sec;scrlttr2.titleSubject}). Wo genau diese Marken - und die Seitenangabe ausgegeben werden, hängt von der Option - \Option{pagenumber} ab (siehe \autoref{sec:scrlttr2.layout}). - Der Autor kann die Marken aber auch noch nach \Macro{opening} - manuell beeinflussen. -\item[myheadings] ist der Seitenstil für manuelle Kolumnentitel auf - Folgeseiten. Dies entspricht weitgehend \PValue{headings}, - allerdings müssen hier die Marken vom Anwender gesetzt werden. Er - verwendet dazu die Anweisungen \Macro{markboth}\IndexCmd{markboth} - und \Macro{markright}\IndexCmd{markright}. -\end{description} -Folgeseiten im Sprachgebrauch dieser Anleitung sind alle Briefseiten -abgesehen von der ersten. - -Die Form der Seitenstile wird außerdem durch die Optionen -\Option{headsepline}\IndexOption{headsepline} und -\Option{footsepline}\IndexOption{footsepline} beeinflusst (siehe -\autoref{sec:scrlttr2.layout}). Der Seitenstil ab der aktuellen -Seite wird mit \Macro{pagestyle} umgeschaltet. Demgegenüber verändert -\Macro{thispagestyle} nur den Seitenstil der aktuellen Seite. Die -Briefklasse verwendet \Macro{thispagestyle}\PParameter{empty} selbst -innerhalb von \Macro{opening}\IndexCmd{opening} für die erste -Briefseite. -% -\EndIndex{Cmd}{pagestyle}% -\EndIndex{Cmd}{thispagestyle}% -\EndIndex{Pagestyle}{empty}% -\EndIndex{Pagestyle}{plain}% -\EndIndex{Pagestyle}{headings}% -\EndIndex{Pagestyle}{myheadigs}% -\EndIndex{}{Seitenstil}% - -\BeginIndex[indexother]{}{Schriftart}% -Um die Schriftart von Kopf und Fuß der Seite oder der Seitenangabe zu -ändern, verwenden Sie die Benutzerschnittstelle, die in -\autoref{sec:maincls.font} beschrieben ist. Für den Kopf und den -Fuß ist dabei das gleiche Element zuständig, das Sie wahlweise mit -\PValue{pagehead} oder \PValue{pagefoot} benennen können. Das Element -für die Seitenzahl innerhalb des Kopfes oder Fußes heißt -\PValue{pagenumber}. Die Voreinstellungen sind in -\autoref{tab:maincls.defaultFontsHeadFoot} zu finden. Beachten Sie -dazu auch das Beispiel aus \autoref{sec:maincls.pageStyle}. -% -\EndIndex[indexother]{}{Schriftart}% - -\begin{Declaration} - \Macro{clearpage}\\ - \Macro{cleardoublepage}\\ - \Macro{cleardoublestandardpage}\\ - \Macro{cleardoubleplainpage}\\ - \Macro{cleardoubleemptypage} -\end{Declaration}% -\BeginIndex{Cmd}{clearpage}% -\BeginIndex{Cmd}{cleardoublepage}% -\BeginIndex{Cmd}{cleardoublestandardpage}% -\BeginIndex{Cmd}{cleardoubleplainpage}% -\BeginIndex{Cmd}{cleardoubleemptypage}% -Siehe hierzu \autoref{sec:maincls.pageStyle}\Index{Seitenstil}, wobei -die Arbeitsweise von \Macro{cleardoublepage} bei \Class{scrlttr2} von -der Option \Option{cleardoublepage} abhängt, die in -\autoref{sec:scrlttr2.layout} näher beschrieben ist. -% -\EndIndex{Cmd}{clearpage}% -\EndIndex{Cmd}{cleardoublepage}% -\EndIndex{Cmd}{cleardoublestandardpage}% -\EndIndex{Cmd}{cleardoubleplainpage}% -\EndIndex{Cmd}{cleardoubleemptypage}% - - - -\subsection{Variablen} -\label{sec:scrlttr2.variables} - -\BeginIndex{}{Variablen}% -Neben Optionen, Anweisungen (oder Befehlen), Umgebungen, Zählern und -Längen wurden in \KOMAScript{} bereits zusätzlich Elemente eingeführt. -Eine typische Eigenschaft eines Elements ist eine Schriftart und die -Möglichkeit, diese zu ändern (siehe \autoref{sec:maincls.font}). An -dieser Stelle werden nun zusätzlich Variablen eingeführt. Variablen -haben einen Namen, über den sie angesprochen werden und einen Inhalt. -Der Inhalt einer Variablen kann zeitlich bzw. räumlich getrennt von -ihrer Verwendung gesetzt werden, so wie der Inhalt einer Anweisung -getrennt von ihrer Ausführung definiert werden kann. Ein -Hauptunterschied einer Variablen zu einer Anweisung besteht darin, -dass eine Anweisung normalerweise eine Aktion auslöst, während der -Inhalt einer Variablen normalerweise aus einem Text besteht, der dann -von einer Anweisung ausgegeben wird. Außerdem kann eine Variable -zusätzlich eine Bezeichnung besitzen, die ebenfalls gesetzt und -ausgegeben werden kann. - -Dieser Abschnitt beschränkt sich bewusst auf die Einführung des -Begriffs der Variablen. Die zur Verdeutlichung verwendeten Beispiele -sind ohne tiefere Bedeutung. Konkretere Anwendungsbeispiele gibt es -bei der Erläuterung der in der Briefklasse bereits definierten und von -ihr verwendeten Variablen in den nachfolgenden -Abschnitten. \autoref{tab:scrlttr2.variables} gibt eine -Übersicht über alle in \Class{scrlttr2} definierten Variablen. - -\begin{table} - \centering - \begin{tabular}{lp{.6\linewidth}} - Variable & Bedeutung \\\hline\\[-2ex] - \Variable{backaddress} - & Rücksendeadresse für Fensterbriefumschläge\\ - \Variable{backaddressseparator} - & Trennzeichen innerhalb der Rücksendeadresse\\ - \Variable{ccseparator} - & Trennzeichen zwischen Verteilertitel und Verteiler\\ - \Variable{customer} - & Geschäftszeilenfeld "`Kundennummer"'\\ - \Variable{date} - & Datum\\ - \Variable{emailseparator} - & Trennzeichen zwischen E-Mail-Bezeichner und E-Mail-Adresse\\ - \Variable{enclseparator} - & Trennzeichen zwischen Anlagetitel und Anlagen\\ - \Variable{faxseparator} - & Trennzeichen zwischen Faxbezeichner und Faxnummer\\ - \Variable{fromaddress} - & Absenderadresse ohne Absendername\\ - \Variable{frombank} - & Bankverbindung des Absenders\\ - \Variable{fromemail} - & E-Mail-Adresse des Absenders\\ - \Variable{fromfax} - & Faxnummer des Absenders\\ - \Variable{fromlogo} - & Anweisungen zum Setzen des Absenderlogos\\ - \Variable{fromname} - & vollständiger Absendername\\ - \Variable{fromphone} - & Telefonnummer des Absenders\\ - \Variable{fromurl} - & eine URL des Absenders\\ - \Variable{invoice} - & Geschäftszeilenfeld "`Rechnungsnummer"'\\ - \Variable{location} - & erweiterte Absenderangabe\\ - \Variable{myref} - & Geschäftszeilenfeld "`Mein Zeichen"'\\ - \Variable{place} - & Ort\\ - \Variable{placeseparator} - & Trennzeichen zwischen Ort und Datum\\ - \Variable{phoneseparator} - & Trennzeichen zwischen Telefonbezeichner und Telefonnummer\\ - \Variable{signature} - & Signatur unter Unterschrift und Grußformel\\ - \Variable{specialmail} - & Versandart\\ - \Variable{subject} - & Betreff\\ - \Variable{subjectseparator} - & Trennzeichen zwischen Betreff"|titel und Betreff\\ - \Variable{title} - & Brief"|titel\\ - \Variable{toname} - & vollständiger Empfängername\\ - \Variable{toaddress} - & Empfängeradresse ohne Empfängername\\ - \Variable{yourmail} - & Geschäftszeilenfeld "`Ihr Schreiben"'\\ - \Variable{yourref} - & Geschäftszeilenfeld "`Ihr Zeichen"'\\ - \end{tabular} - \caption{Von der Klasse \Class{scrlttr2} unterstützte Variablen} - \label{tab:scrlttr2.variables} -\end{table} - - -\begin{Declaration} - \Macro{newkomavar}\OParameter{Bezeichnung}\Parameter{Name}\\ - \Macro{newkomavar*}\OParameter{Bezeichnung}\Parameter{Name}\\ - \Macro{addtoreffields}\Parameter{Name} -\end{Declaration} -\BeginIndex{Cmd}{newkomavar}\BeginIndex{Cmd}{newkomavar*}% -\BeginIndex{Cmd}{addtoreffields}% -Mit \Macro{newkomavar} wird eine neue Variable definiert. Diese -Variable wird über \PName{Name} angesprochen. Optional kann eine -\PName{Bezeichnung} für die Variable \PName{Name} angegeben werden. -Mit der Anweisung \Macro{addtoreffields} kann die Variable -\PName{Name} der Geschäftszeile (siehe -\autoref{sec:scrlttr2.refLine}) hinzugefügt werden. Dabei wird -die \PName{Bezeichnung} und der Inhalt der Variablen an das Ende der -Geschäftszeile angehängt, falls ihr Inhalt nicht leer ist. Die -Sternvariante \Macro{newkomavar*} entspricht der Variante ohne Stern -mit anschließendem Aufruf der Anweisung \Macro{addtoreffields}. Bei -der Sternvariante wird die Variable also automatisch zur -Geschäftszeile hinzugefügt. -\begin{Example} - Angenommen, Sie benötigen in der Geschäftszeile ein zusätzliches Feld - für eine Durchwahl. Sie können das Feld dann wahlweise mit - \begin{small} -\begin{verbatim} - \newkomavar[Durchwahl]{myphone} - \addtoreffields{myphone} -\end{verbatim} - \end{small} - oder kürzer mit - \begin{small} -\begin{verbatim} - \newkomavar*[Durchwahl]{myphone} -\end{verbatim} - \end{small} - definieren. -\end{Example} -Im Fall, dass eine Variable für die Geschäftszeile definiert wird, -sollten Sie immer eine Bezeichnung dafür angeben. -% -\EndIndex{Cmd}{newkomavar}\EndIndex{Cmd}{newkomavar*}% -\EndIndex{Cmd}{addtoreffields}% - - -\begin{Declaration} - \Macro{setkomavar}% - \Parameter{Name}\OParameter{Bezeichnung}\Parameter{Inhalt}\\ - \Macro{setkomavar*}\Parameter{Name}\Parameter{Bezeichnung} -\end{Declaration} -\BeginIndex{Cmd}{setkomavar}\BeginIndex{Cmd}{setkomavar*}% -Mit der Anweisung \Macro{setkomavar} wird der \PName{Inhalt} der -Variablen \PName{Name} gesetzt. Dabei kann per optionalem Argument -gleichzeitig auch die \PName{Bezeichnung} der Variablen geändert -werden. Demgegenüber kann mit der Sternvariante \Macro{setkomavar*} -auch nur die \PName{Bezeichnung} der Variablen \PName{Name} gesetzt -werden. -\begin{Example} - Angenommen, Sie haben wie oben eine Variable für die Durchwahl - definiert und wollen nun die Durchwahl setzen. Dies geschieht - einfach mit: - \begin{small} -\begin{verbatim} - \setkomavar{myphone}{-\,11} -\end{verbatim} - \end{small} - Sie wollen außerdem, dass statt "`Durchwahl"' der Begriff - "`Apparat"' ausgegeben wird. Also setzen Sie zusätzlich die - Bezeichnung mit: - \begin{small} -\begin{verbatim} - \setkomavar*{myphone}{Apparat} -\end{verbatim} - \end{small} - oder fassen beide Angaben zu einer Anweisung zusammen: - \begin{small} -\begin{verbatim} - \setkomavar{myphone}[Apparat]{-\,11} -\end{verbatim} - \end{small} - Damit schlagen Sie sozusagen zwei Fliegen mit einer Klappe. -\end{Example} -Übrigens kann mit einem leeren obligatorischen Argument \PName{Inhalt} -der Inhalt der Variable gelöscht werden. Selbstverständlich kann in -gleicher Weise mit einem leeren Argument \PName{Bezeichnung} die -Bezeichnung der Variablen gelöscht werden. -\begin{Example} - Angenommen, Sie haben wie oben eine Variable für die Durchwahl - definiert, wollen nun aber nicht, dass eine Bezeichnung ausgegeben - wird. Dann können Sie diese entweder für sich mit: - \begin{small} -\begin{verbatim} - \setkomavar*{myphone}{} -\end{verbatim} - \end{small} - löschen. Sie können aber auch wieder zwei Fliegen mit einer Klappe - schlagen und verwenden: - \begin{small} -\begin{verbatim} - \setkomavar{myphone}[]{-\,11} -\end{verbatim} - \end{small} - Dadurch wird gleichzeitig der Inhalt der Variablen gesetzt und ihre - Bezeichnung gel"oscht. -\end{Example} -% -\EndIndex{Cmd}{setkomavar}\EndIndex{Cmd}{setkomavar*}% - - -\begin{Declaration} - \Macro{usekomavar}\OParameter{Anweisung}\Parameter{Name}\\ - \Macro{usekomavar*}\OParameter{Anweisung}\Parameter{Name} -\end{Declaration} -\BeginIndex{Cmd}{usekomavar}\BeginIndex{Cmd}{usekomavar*}% -In\ChangedAt{v2.9i}{\Class{scrlttr2}} manchen Fällen wird es notwendig -sein, selbst auf den Inhalt oder die Bezeichnung einer Variablen -zuzugreifen, dies also nicht allein der Klasse zu überlassen. Dies -gilt insbesondere dann, wenn Sie eigene Variablen definiert haben, die -jedoch nicht zur Geschäftszeile hinzugefügt werden. Mit der Anweisung -\Macro{usekomavar} können Sie auf den Inhalt der Variablen -\PName{Name} zugreifen, während Sie mit der Sternvariante -\Macro{usekomavar*} ihre Bezeichnung erhalten. - -\begin{Explain} - Die Anweisungen \Macro{usekomavar} und \Macro{usekomavar*} sind - übrigens wie alle Anweisungen, von denen es eine Sternvariante gibt - oder die ein optionales Argument besitzen, nicht voll expandierbar. - Bei Verwendung innerhalb von \Macro{markboth}\IndexCmd{markboth}, - \Macro{markright}\IndexCmd{markright} oder ähnlichen Anweisungen - muss dennoch kein \Macro{protect}\IndexCmd{protect} vorangestellt - werden. Selbstverständlich gilt dies bei Verwendung von - \Package{scrpage2} auch für \Macro{markleft}\IndexCmd{markleft}. - Allerdings können die Anweisungen nicht innerhalb von - \Macro{MakeUppercase} und ähnlichen Anweisungen verwendet werden, - die direkten Einfluss auf ihr Argument haben. Diese Anweisungen - können jedoch als optionales Argument angegeben werden. So erhält - man beispielsweise den Inhalt einer Variable in Großbuchstaben mit - \Macro{usekomavar}\PValue{[\Macro{MakeUppercase}]}\Parameter{Name}. -\end{Explain} -% -\EndIndex{Cmd}{usekomavar}\EndIndex{Cmd}{usekomavar*}% - -\begin{Declaration} - \Macro{ifkomavarempty}\Parameter{Name}\Parameter{Wahr}\Parameter{Falsch}\\ - \Macro{ifkomavarempty*}\Parameter{Name}\Parameter{Wahr}\Parameter{Falsch} -\end{Declaration} -\BeginIndex{Cmd}{ifkomavarempty}% -Mit\ChangedAt{v2.9i}{\Class{scrlttr2}} Hilfe diesen Anweisung kann man -feststellen, ob der Inhalt oder die Bezeichnung einer Variablen leer -ist oder nicht. Das \PName{Wahr}-Argument wird nur dann ausgeführt, -wenn der expandierte Inhalt oder die expandierte Bezeichnung der -Variablen \PName{Name} leer ist. Anderenfalls wird das -\PName{Falsch}-Argument ausgeführt. Die Sternvariante der Anweisung -bezieht sich dabei auf die Bezeichnung der Variablen, während die -normale Variante den Inhalt behandelt. - -\begin{Explain} - In diesem Zusammenhang ist wichtig, dass der Inhalt der Variablen - soweit expandiert wird, wie dies mit \Macro{edef} möglich - ist. Bleiben dabei Leerzeichen oder unexpandierbare Makros wie - \Macro{relax} übrig, so gilt der Inhalt auch dann als nicht leer, - wenn die Verwendung der Variablen zu keiner Ausgabe führen würde. - - Auch diese Anweisung kann nicht innerhalb von \Macro{MakeUppercase} - oder ähnlichen Anweisungen verwendet werden. Sie ist jedoch robust - genug, um beispielsweise als Argument von \Macro{markboth} oder - \Macro{footnote} zu funktionieren. -\end{Explain} -% -\EndIndex{Cmd}{ifkomavarempty}% -% -\EndIndex{}{Variablen} - - - -\subsection{Die Pseudolängen} -\label{sec:scrlttr2.pseudoLength} -\BeginIndex{}{Pseudolängen} - -\begin{Explain} - \TeX{} arbeitet mit einem festen Satz an Registern. Es gibt Register - für Tokens, für Boxen, für Zähler, für Abstände (englisch: - \emph{skip}) und für Größen (englisch: \emph{dimension}). Von all - diesen Registern gibt es jeweils 256 Stück. Für \LaTeX{}-Längen, die - mit \Macro{newlength} angefordert werden, werden Abstandsregister - belegt. Sind alle diese Register verbraucht, kann man keine weiteren - Längen definieren. Die Briefklasse \Class{scrlttr2} würde - normalerweise allein für die erste Seite mehr als 20 solche Register - verbrauchen. \LaTeX{} selbst belegt bereits 40 dieser Register. Das - \Package{typearea}-Paket benötigt ebenfalls einige, so dass ein - Viertel der kostbaren Register verbraucht wäre. Aus diesem Grund - werden briefspezifische Längen in \Class{scrlttr2} eben nicht in - Längen, sondern in Makros abgelegt, den Pseudolängen. Der Nachteil - dieses Vorgehens besteht darin, dass man mit diesen Makros nicht so - einfach rechnen kann wie mit echten Längen. - - Wer nun einwenden will, dass \LaTeX{} in der empfohlenen Installation mit - \eTeX{} inzwischen das oben genannte Beschränkungsproblem nicht mehr - besitzt, hat Recht. Allerdings kam diese Entscheidung für \Class{scrlttr2} - ein wenig zu spät. -\end{Explain} - -\iffalse -Eine Liste aller in \Class{scrlttr2} definierten Pseudolängen findet sich in -\autoref{tab:scrlttr2.pseudoLength}. Nähere Beschreibungen zu den einzelnen -Pseudolängen finden sich in den einzelnen Abschnitten dieses Kapitels. Eine -grafische Darstellung der Bedeutungen ist \autoref{fig:scrlttr2.pseudoLength} -zu entnehmen. - -\begin{figure} - \centering - \includegraphics{lengths} - \caption{Schematische Darstellung der Pseudolängen für den Briefbogen} - \label{fig:scrlttr2.pseudoLength} -\end{figure} - -\begin{longtable}{l>{\raggedright}p{.58\linewidth}} - \captionabove{Von der Klasse \Class{scrlttr2} verwendete Pseudolängen}% - \label{tab:scrlttr2.pseudoLength}\tabularnewline - Pseudolänge & Bedeutung \tabularnewline\hline\tabularnewline[-1.5ex] - \endfirsthead - Pseudolänge & Bedeutung \tabularnewline\hline\tabularnewline[-1.5ex] - \endhead - \PLength{foldmarkhpos} - & Abstand der Faltmarken von der linken Papierkante - \tabularnewline[.5\baselineskip] - \PLength{tfoldmarkvpos} - & Abstand der oberen Faltmarke von der oberen Papierkante - \tabularnewline[.5\baselineskip] - \PLength{bfoldmarkvpos} - & Abstand der unteren Faltmarke von der oberen Papierkante - \tabularnewline[.5\baselineskip] - \PLength{firstheadvpos} - & Abstand des Briefkopfes von der oberen Papierkante - \tabularnewline[.5\baselineskip] - \PLength{firstheadwidth} - & Breite des Briefkopfes (es erfolgt eine Zentrierung relativ zur - Papierbreite) - \tabularnewline[.5\baselineskip] - \PLength{fromrulewidth} - & Länge einer optionalen horizontalen Linie im Briefkopf (siehe Option - \Option{fromrule} in \autoref{sec:scrlttr2.layout}) - \tabularnewline[.5\baselineskip] - \PLength{toaddrvpos} - & Abstand des Anschriftfeldes von der oberen Papierkante - \tabularnewline[.5\baselineskip] - \PLength{toaddrhpos} - & Abstand des Anschriftfeldes von der linken Papierkante (falls der Wert - positiv ist) oder negativer Abstand des Anschriftfeldes von der rechten - Papierkante (falls der Wert negativ ist) - \tabularnewline[.5\baselineskip] - \PLength{toaddrindent} - & linker Einzug der Anschrift innerhalb des Anschriftfeldes - \tabularnewline[.5\baselineskip] - \PLength{toaddrwidth} - & Breite des Anschriftfeldes - \tabularnewline[.5\baselineskip] - \PLength{toaddrheight} - & Höhe des Anschriftfeldes - \tabularnewline[.5\baselineskip] - \PLength{backaddrheight} - & Höhe der Rücksendeadresse am oberen Rand des Anschriftfeldes - \tabularnewline[.5\baselineskip] - \PLength{specialmailindent} - & linker Einzug der Versandart innerhalb des Anschriftfeldes - \tabularnewline[.5\baselineskip] - \PLength{specialmailrightindent} - & rechter Einzug der Versandart innerhalb des Anschriftfeldes - \tabularnewline[.5\baselineskip] - \PLength{locwidth} - & Breite des Feldes für die Absenderergänzung (bei einem Wert von 0 wird - die Breite automatisch aufgrund der in \autoref{sec:scrlttr2.headoptions} - beschriebenen Option \Option{locfield} berechnet) - \tabularnewline[.5\baselineskip] - \PLength{refvpos} - & Abstand der Geschäftszeile von der oberen Papierkante - \tabularnewline[.5\baselineskip] - \PLength{refwidth} - & Breite der Geschäftszeile - \tabularnewline[.5\baselineskip] - \PLength{refhpos} - & Abstand der Geschäftszeile von der linken Papierkante (bei einem Wert - von 0 wird automatisch relativ zur Papierbreite zentriert) - \tabularnewline[.5\baselineskip] - \PLength{refaftervskip} - & vertikaler Abstand nach der Geschäftszeile - \tabularnewline[.5\baselineskip] - \PLength{sigbeforevskip} - & vertikaler Abstand zwischen Gruß und Signatur - \tabularnewline[.5\baselineskip] - \PLength{sigindent} - & Einzug der Signatur gegenüber dem Textkörper - \tabularnewline[.5\baselineskip] - \PLength{firstfootvpos} - & Abstand des Brief"|fußes von der oberen Papierkante - \tabularnewline[.5\baselineskip] - \PLength{firstfootwidth} - & Breite des Brief"|fußes (es erfolgt eine Zentrierung relativ zur - Papierbreite) - \tabularnewline -\end{longtable} -\fi - -\begin{Declaration} - \Macro{@newplength}\Parameter{Name} -\end{Declaration} -\BeginIndex{Cmd}{@newplength}% -Mit Hilfe dieser Anweisung wird eine neue Pseudolänge definiert. Die -neue Pseudolänge ist dann über ihren \PName{Namen} eindeutig -identifiziert. Es wird sichergestellt, dass jeder \PName{Name} nur -einmal vergeben wird. - -Da der Anwender selbst normalerweise keine eigenen Pseudolängen -definieren muss, handelt es sich bei diesem Befehl um keine -Benutzeranweisung. Sie kann innerhalb des Dokuments nicht, wohl aber -beispielsweise innerhalb einer \File{lco}-Datei verwendet werden. -% -\EndIndex{Cmd}{@newplength}% - -\begin{Declaration} - \Macro{useplength}\Parameter{Name} -\end{Declaration} -\BeginIndex{Cmd}{useplength}% -Mit Hilfe dieser Anweisung wird auf den Wert der Pseudolänge mit dem -angegebenen \PName{Namen} zugegriffen. Dies ist eine der wenigen -Benutzeranweisung rund um Pseudolängen. Natürlich kann diese Anweisung -dennoch auch innerhalb einer \File{lco}-Datei verwendet werden. -% -\EndIndex{Cmd}{useplength}% - -\begin{Declaration} - \Macro{setlengthtoplength}% - \OParameter{Faktor}\Parameter{Länge}\Parameter{Pseudolänge}\\ - \Macro{addtolengthplength}% - \OParameter{Faktor}\Parameter{Länge}\Parameter{Pseudolänge} -\end{Declaration} -\BeginIndex{Cmd}{setlengthtoplength}% -\BeginIndex{Cmd}{addtolengthplength}% -\begin{Explain}% - Während man einer Länge einfach einen Faktor voranstellen kann, ist - dies bei Pseudolängen nicht möglich. Angenommen eine Länge - \Macro{Test} hat den Wert 2\Unit{pt}, dann ergibt - \texttt{3\Macro{Test}} den Wert 6\Unit{pt}. Verwendet man - stattdessen eine Pseudolänge, so würde aus - \texttt{3\Macro{useplength}\PParameter{Test}} der Wert 32\Unit{pt}. - Dies ist insbesondere dann lästig, wenn man einer echten - \PName{Länge} den Wert einer \PName{Pseudolänge} zuweisen will. -\end{Explain} -Mit der Anweisung \Macro{setlengthtoplength} kann man einer echten -\PName{Länge} das Vielfache einer \PName{Pseudolänge} zuweisen. -Allerdings wird hier der \PName{Faktor} nicht direkt der -\PName{Pseudolänge} vorangestellt, sondern als optionales Argument -übergeben. Man sollte diese Anweisung auch verwenden, wenn man einer -\PName{Länge} den negativen Wert einer \PName{Pseudolänge} zuweisen -will. Als \PName{Faktor} kann dann wahlweise ein Minuszeichen oder -\PValue{-1} verwendet werden. Die Anweisung -\Macro{addtolengthplength} arbeitet ganz ähnlich. Allerdings wird -hier zur \PName{Länge} das Vielfache der \PName{Pseudolänge} -addiert. -% -\EndIndex{Cmd}{setlengthtoplength}% -\EndIndex{Cmd}{addtolengthplength}% - -\begin{Declaration} - \Macro{@setplength}% - \OParameter{Faktor}\Parameter{Pseudolänge}\Parameter{Wert}\\ - \Macro{@addtoplength}% - \OParameter{Faktor}\Parameter{Pseudolänge}\Parameter{Wert} -\end{Declaration} -\BeginIndex{Cmd}{@setplength}% -\BeginIndex{Cmd}{@addtoplength}% -Mit Hilfe der Anweisung \Macro{@setplength} kann einer -\PName{Pseudolänge} das Vielfache eines \PName{Wertes} zugewiesen -werden. Der \PName{Faktor} wird dabei als optionales Argument -übergeben (siehe auch \Macro{setlengthtoplength}). Mit der Anweisung -\Macro{@addtoplength} kann man zu einer \PName{Pseudolänge} einen -\PName{Wert} addieren. Um einer \PName{Pseudolänge} das Vielfache -einer anderen Pseudolänge zuzuweisen oder hinzuzuaddieren, verwendet -man innerhalb von \PName{Wert} die Anweisung \Macro{useplength}. Um -von einer \PName{Pseudolänge} den Wert einer anderen -\PName{Pseudolänge} zu subtrahieren, verwendet man gleichzeitig als -\PName{Faktor} ein Minuszeichen oder \PValue{-1}. - -Da der Anwender selbst normalerweise keine Pseudolängen ändern muss, -handelt es sich bei diesen Befehlen um keine Benutzeranweisungen. Sie -können innerhalb des Dokuments nicht, wohl aber beispielsweise -innerhalb einer \File{lco}-Datei verwendet werden. -% -\EndIndex{Cmd}{@setplength}% -\EndIndex{Cmd}{@addtoplength}% -% -\EndIndex{}{Pseudolängen}% - -\iffalse% noch nicht fertig aer mal hier hingestellt, damit es nicht - % verloren geht. - % Wird mit 99.99999%iger Sicherheit durch MP-Grafiken von - % Stephan Hennig ersetzt werden. -In \autoref{fig:PLengths} findet sich übrigens eine grafische Auflistung aller -in \Class{scrlttr2} definierter Pseudolängen. Die dort getroffenen Annahmen -über die Werte und den Satzspiegel sind von den gewählten Einstellungen -abhängig und deshalb als weitgehend willkürlich zu betrachten. - -\begin{figure}[p] - \centering - \setlength{\unitlength}{0.004\textwidth}% - \makeatletter - \def\MasspfeilD(#1,#2)#3{% - \begingroup - \@tempdima=-#2pt - \advance\@tempdima by #3pt - \put(#1,\strip@pt\@tempdima){\vector(0,-1){#3}} - \endgroup - }% - \def\MasspfeilUD(#1,#2)#3{% - \put(#1,-#2){\vector(0,1){#3}} - \MasspfeilD(#1,#2){#3} - } - \def\MasspfeilDb(#1,#2)#3{% - \put(#1,-#2){\thinlines\line(1,0){4}} - \begingroup - \@tempdimb=#1pt - \advance\@tempdimb by 2pt - \MasspfeilD(\strip@pt\@tempdimb,#2){#3} - \endgroup - }% - \def\MasspfeilUDb(#1,#2)#3{% - \begingroup - \@tempdima=-#2pt - \advance\@tempdima by #3pt - \put(#1,\strip@pt\@tempdima){\line(1,0){4}} - \endgroup - \put(#1,-#2){\thinlines\line(1,0){4}} - \begingroup - \@tempdimb=#1pt - \advance\@tempdimb by 2pt - \MasspfeilUD(\strip@pt\@tempdimb,#2){#3} - \endgroup - }% - \def\MasspfeilR(#1,#2)#3{% - \begingroup - \@tempdima=#1pt - \advance\@tempdima by -#3pt - \put(\strip@pt\@tempdima,-#2){\vector(1,0){#3}} - \endgroup - } - \def\MasspfeilL(#1,#2)#3{% - \begingroup - \@tempdima=#1pt - \advance\@tempdima by #3pt - \put(\strip@pt\@tempdima,-#2){\vector(-1,0){#3}} - \endgroup - } - \def\MasspfeilLR(#1,#2)#3{% - \put(#1,-#2){\vector(1,0){#3}} - \MasspfeilL(#1,#2){#3} - } - \def\MasspfeilLRb(#1,#2)#3{% - \begingroup - \@tempdima=-#2pt - \advance\@tempdima by -2pt - \put(#1,\strip@pt\@tempdima){\thinlines\line(0,1){4}} - \@tempdimb=#1pt - \advance\@tempdimb by #3pt - \put(\strip@pt\@tempdimb,\strip@pt\@tempdima){\thinlines\line(0,1){4}} - \endgroup - \MasspfeilLR(#1,#2){#3} - } - \def\MasspfeilL(#1,#2)#3{% - \begingroup - \@tempdima=#1pt - \advance\@tempdima by #3pt - \put(\strip@pt\@tempdima,-#2){\vector(-1,0){#3}} - \endgroup - } - \makeatother - \begin{picture}(210,297)(0,-297) - \thicklines\sffamily\tiny - \put(0,-297){\framebox(210,297)[l]{}} - \thinlines - % Foldmarks - \MasspfeilDb(7,105){8}% - \put(8,-96){\rotatebox[origin=lB]{90}{tfoldmarkvpos}} - \MasspfeilLRb(0,105){3.5} - \put(1,-102){\rotatebox[origin=lB]{90}{foldmarkhpos}} - \put(3.5,-105){\line(1,0){2}} - \put(3.5,-148.5){\line(1,0){4}} - \put(3.5,-210){\line(1,0){2}} - \MasspfeilDb(7,210){8}% - \put(8,-201){\rotatebox[origin=lB]{90}{bfoldmarkvpos}} - % Kopf - \put(20,-35){\dashbox{1}(170,27)[l]{}} - \MasspfeilDb(15,8){8}% - \put(18,-2){\makebox(0,0)[l]{firstheadvpos}} - % Adressfeld - \put(20,-85){\dashbox{1}(85,40)[l]{}} - \put(20,-50){\dashbox{1}(85,5)[l]{}} % Rücksendeadresse - \put(41,-55){\dashbox{1}(59,4)[l]{}} % Versandart - \put(25,-85){\dashbox{1}(80,30)[l]{}} % Adresse - % Geschäftszeile - \put(31.5,-98.5){\dashbox{1}(147,7)[l]{}} - % Satzspiegel - \put(31.5,-237.6){\dashbox{1}(147,135.1)[l]{}} - \put(51.5,-108.5){\dashbox{1}(107,6)[l]{}}% Titel - \put(31.5,-116.5){\dashbox{1}(147,4)[l]{}}% Betreff - \put(31.5,-128.5){\dashbox{1}(47,4)[l]{}}% Anrede - \put(31.5,-196){\dashbox{1}(147,63,5)[l]{}}% Text - \put(38,-216){\dashbox{1}(50,16)[l]{}}% Gruß und Signatur - \put(38,-204){\dashbox{1}(50,4)[l]{}}% Gruß - \put(42,-216){\dashbox{1}(42,4)[l]{}}% Signatur - % Fuß - \put(20,-278){\dashbox{1}(170,12)[l]{}} - \end{picture} - \caption{Verwendung der Pseudolängen zur Definition des Briefbogens} - \label{fig:PLengths} -\end{figure} -\fi - -\subsection{Der generelle Aufbau eines Briefdokuments} -\label{sec:scrlttr2.document} - -Der generelle Aufbau\Index{Aufbau} eines Briefdokuments weicht etwas -vom Aufbau eines normalen Dokuments ab. Während ein Buchdokument -normalerweise nur ein Buch enthält, kann ein einzelnes Briefdokument -mehrere Briefe enthalten. Wie in \autoref{fig:scrlttr2.document} -veranschaulicht wird, besteht ein Briefdokument aus einem Vorspann, -den einzelnen Briefen und dem Abschluss. - -Der Vorspann beinhaltet dabei alle Einstellungen, die generell alle -Briefe betreffen. Diese können in den Einstellungen der einzelnen -Briefe jedoch zumindest teilweise überschrieben werden. Die einzige -Einstellung, die derzeit nicht innerhalb eines einzelnen Briefes -überschrieben werden kann, ist die Größe der Grundschrift (siehe -Option \Option{fontsize} in -\autoref{sec:scrlttr2.fontOptions}). Ich empfehle, vor -\Macro{begin}\PParameter{document} nur allgemeine Einstellungen wie -das Laden von Paketen und das Setzen von Optionen vorzunehmen. Alle -Einstellungen, die das Setzen einer Variablen oder sonstige -Textangaben beinhalten, sollten nach \Macro{begin}\PParameter{document} -vorgenommen werden. Dies empfiehlt sich umso mehr, wenn das -Babel-Paket\IndexPackage{babel} (siehe \cite{package:babel}) verwendet -wird oder sprachabhängige Variablen von \Class{scrlttr2} verändert -werden sollen. - -Der Abschluss besteht in der Regel nur aus -\Macro{end}\PParameter{document}. Natürlich können Sie dort aber auch -zusätzliche Kommentare einfügen. - -\begin{figure} - \centering\small\setlength{\fboxsep}{1.5ex} - \fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{documentclass}\OParameter{\dots}\PParameter{scrlttr2}\\ - \dots\\ - {\centering\emph{Einstellungen für alle Briefe}\\} - \dots\\ - \Macro{begin}\PParameter{document}\\ - \dots\\ - {\centering\emph{Einstellungen für alle Briefe}\\} - \dots\\ - }}\\ - \fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{begin}\PParameter{letter}\Parameter{Empfänger}\\ - \dots\\ - {\centering\emph{Inhalt eines einzelnen Briefs}\\} - \dots\\ - \Macro{end}\PParameter{letter}\\ - }}\\ - \parbox{.667\linewidth}{\raggedright\vspace{-.5ex}\vdots\vspace{1ex}}\\ - \fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{end}\PParameter{document}\\ - }}\\ - \caption[Genereller Aufbau eines Briefdokuments mit beliebig vielen - einzelnen Briefen]{Genereller Aufbau eines Briefdokuments mit - beliebig vielen einzelnen Briefen (den Aufbau eines einzelnen - Briefes zeigt \autoref{fig:scrlttr2.letter})} - \label{fig:scrlttr2.document} - \vspace{2\abovecaptionskip} - \fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{begin}\PParameter{letter}% - \OParameter{Optionen}\Parameter{Empfänger}\\ - \dots\\ - {\centering\emph{Einstellungen für diesen Brief}\\} - \dots\\ - \Macro{opening}\Parameter{Anrede}\\ - }}\\ - \fbox{\parbox{.667\linewidth}{\raggedright% - \dots\\ - {\centering\emph{Brief"|text}\\} - \dots\\ - }}\\ - \fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{closing}\Parameter{Grußformel}\\ - \Macro{ps}\\ - \dots\\ - {\centering\emph{Postscriptum}\\} - \dots\\ - \Macro{encl}\Parameter{Anlagen}\\ - \Macro{cc}\Parameter{Verteiler}\\ - \Macro{end}\PParameter{letter}\\ - }}\\ - \caption[Genereller Aufbau eines einzelnen Briefes innerhalb eines - Briefdokuments]{Genereller Aufbau eines einzelnen Briefes - innerhalb eines Briefdokuments (siehe - \autoref{fig:scrlttr2.document})} - \label{fig:scrlttr2.letter} -\end{figure} - -Wie in \autoref{fig:scrlttr2.letter} verdeutlicht wird, bestehen -die einzelnen Briefe wiederum aus einer Einleitung, dem eigentlichen -Brief"|text und einem Schlussteil. In der Einleitung werden alle -Einstellungen vorgenommen, die nur für diesen einen Brief gelten -sollen. Entscheidend ist hierbei, dass diese Einleitung immer mit -\Macro{opening} endet. Ebenso beginnt der Schlussteil immer mit -\Macro{closing}. Gegebenenfalls können die Argumente \PName{Anrede} -und \PName{Grußformel} der beiden Anweisungen leer bleiben, die -Anweisungen müssen jedoch gesetzt werden und haben immer ein Argument. - -\begin{Explain} -Es soll an dieser Stelle nicht verschwiegen werden, dass zwischen den -einzelnen Briefen weitere Einstellungen getroffen werden können. Diese -gelten dann für alle nachfolgenden Briefe. Um Briefdokumente -übersichtlich und wartbar zu halten, sollte man sich jedoch gut -überlegen, ob man zwischen die Briefe tatsächlich weitere generelle -Einstellungen mit beschränkter Gültigkeit setzen will. Ich kann dies -nicht empfehlen. -%\end{Explain} - -Wie bereits erwähnt, können mit Ausnahme der Schriftgröße alle -generellen Einstellungen aus dem Dokumentvorspann auch im Vorspann -einzelner Briefe gesetzt werden. Daher finden sich in diesem Abschnitt -keine weiteren Erklärungen zu den möglichen Einstellungen. Bitte -entnehmen Sie diese dem \autoref{sec:scrlttr2.startLetter}. -\end{Explain} - - -\section{Die Briefeinleitung} -\label{sec:scrlttr2.startLetter} - -In der Briefeinleitung\Index{Einleitung} finden sich alle -Einstellungen für einen Brief sowie alle Angaben zum Aufbau der ersten -Briefseite. Die erste Briefseite übernimmt innerhalb eines Briefes -nicht nur die Rolle der Titelei, sondern besteht aus vielen -unterschiedlichen Teilen. - - -\subsection{Briefkopf} -\label{sec:scrlttr2.firstHead} -\BeginIndex{}{Briefkopf}% - -Unter dem Briefkopf verstehen wir alle Angaben, die den Absender -betreffen und die über der Anschrift stehen. Normalerweise würde man -erwarten, dass diese über den Seitenstil gesetzt werden. Bei der alten -Briefklasse \Class{scrlettr} war dies auch so. Bei \Class{scrlttr2} -wird der Briefkopf jedoch unabhängig vom Seitenstil von der Anweisung -\Macro{opening} ausgegeben. -% Fuellmaterial -\iftrue% -Dabei wird der Briefkopf absolut positioniert, ist also vom -Satzspiegel unabhängig. Die erste Seite eines Briefes, also die Seite -mit dem Briefkopf, wird tatsächlich mit dem Seitenstil \PValue{empty} -gesetzt.% -\fi -% Ende des Fuellmaterials - -\begin{Declaration} - \PLength{firstheadvpos} -\end{Declaration} -\BeginIndex{PLength}{firstheadvpos}% -Die Pseudolänge \PLength{firstheadvpos} gibt den Abstand des -Briefkopfes von der oberen Papierkante an. Der Wert wird in den -vordefinierten \File{lco}-Dateien unterschiedlich gesetzt. Ein -typischer Wert ist 8\Unit{mm}. -% -\EndIndex{PLength}{firstheadvpos} - -\begin{Declaration} - \PLength{firstheadwidth} -\end{Declaration} -\BeginIndex{PLength}{firstheadwidth}% -Die Pseudolänge \PLength{firstheadwidth} gibt die Breite des -Briefkopfes an. Der Wert wird in den vordefinierten \File{lco}-Dateien -unterschiedlich gesetzt. Während er normalerweise von der -Papierbreite und dem horizontalen Abstand der Empfängeradresse vom -linken Papierrand abhängt, entspricht er bei \Option{KOMAold} der -Breite des Satzspiegels. -% -\EndIndex{PLength}{firstheadwidth}% - - -\begin{Declaration} - \Variable{fromname}\\ - \Variable{fromaddress}\\ - \Variable{fromphone}\\ - \Variable{fromfax}\\ - \Variable{fromemail}\\ - \Variable{fromurl}\\ - \Variable{fromlogo} -\end{Declaration} -\BeginIndex{Variable}{fromname}% -\BeginIndex{Variable}{fromaddress}% -\BeginIndex{Variable}{fromphone}% -\BeginIndex{Variable}{fromfax}% -\BeginIndex{Variable}{fromemail}% -\BeginIndex{Variable}{fromurl}% -\BeginIndex{Variable}{fromlogo}% -Diese Variablen stellen die Absenderangaben\Index{Absender} für den -Briefkopf, also den Kopf der ersten Seite eines Briefes dar. Welche -dieser Variablen tatsächlich für den Briefkopf verwendet werden, kann -bei Verwendung der Briefkopferweiterungen (siehe Option -\Option{fromalign} in \autoref{sec:scrlttr2.headoptions}) über die -entsprechenden Optionen eingestellt werden. Die Variablen -\Variable{fromname} und \Variable{fromaddress} werden im Briefkopf -ebenso wie \Variable{fromlogo}\Index{Logo} ohne Bezeichnung, die -Variablen \Variable{fromphone}\Index{Telefon}, -\Variable{fromfax}\Index{Fax}, \Variable{fromemail}\Index{E-Mail} und -\Variable{fromurl}\Index{URL}\Index{WWW}\Index{Homepage} hingegen mit -ihrer Bezeichnung gesetzt. Die Bezeichnungen sind -\autoref{tab:scrlttr2.fromTerm} zu entnehmen. -% -\begin{table} - \centering - \begin{tabular}{ll} - Name & Bezeichnung \\\hline\\[-2ex] - \Variable{fromemail} & - \Macro{usekomavar*}\PParameter{emailseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{emailseparator} - \\ - \Variable{fromfax} & - \Macro{usekomavar*}\PParameter{faxseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{faxseparator} \\ - \Variable{fromname} & - \Macro{headfromname} \\ - \Variable{fromphone} & - \Macro{usekomavar*}\PParameter{phoneseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{phoneseparator} - \\ - \Variable{fromurl} & - \Macro{usekomavar*}\PParameter{urlseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{urlseparator} - \\ - \end{tabular} - \caption{Vordefinierte Bezeichnungen der Absenderangaben im - Briefkopf} - \label{tab:scrlttr2.fromTerm} -\end{table} - -Ein wichtiger Hinweis betrifft noch die Absenderadresse. Innerhalb der -Absenderadresse werden einzelne Teilangaben durch doppelten Backslash -voneinander getrennt. Solche Teilangaben sind beispielsweise Straße -und Hausnummer, Postleitzahl und Ort oder eine Länderangabe. Dieser -doppelte Backslash wird je nach Verwendung der Absenderadresse -unterschiedlich interpretiert und ist nicht zwangsläufig als -Zeilenumbruch zu verstehen. Absätze, vertikale Abstände und Ähnliches -sind innerhalb der Absenderangaben normalerweise nicht gestattet. Man -muss \Class{scrlttr2} schon sehr genau kennen, um sie gegebenenfalls -sinnvoll einsetzen zu können. - -Für das Logo kann übrigens auch eine externe Abbildung geladen werden. -Dazu setzt man als Inhalt der Variablen \Variable{fromlogo} -beispielsweise eine \Macro{includegraphics}-Anweisung. -Selbstverständlich muss dann im Vorspann des Briefdokuments (siehe -\autoref{sec:scrlttr2.document}) auch das \Package{graphics}- oder -\Package{graphicx}-Paket geladen werden (siehe -\cite{package:graphics}). -% -\EndIndex{Variable}{fromname}% -\EndIndex{Variable}{fromaddress}% -\EndIndex{Variable}{fromphone}% -\EndIndex{Variable}{fromfax}% -\EndIndex{Variable}{fromemail}% -\EndIndex{Variable}{fromurl}% -\EndIndex{Variable}{fromlogo}% - -\begin{Declaration} - \Variable{phoneseparator}\\ - \Variable{faxseparator}\\ - \Variable{emailseparator}\\ - \Variable{urlseparator} -\end{Declaration} -\BeginIndex{Variable}{phoneseparator}% -\BeginIndex{Variable}{faxseparator}% -\BeginIndex{Variable}{emailseparator}% -\BeginIndex{Variable}{urlseparator}% -\Index{Telefon}\Index{Fax}\Index{E-Mail}% -\Index{URL}\Index{WWW}\Index{Homepage}% -In diesen Variablen sind Trennzeichen\Index{Trennzeichen} definiert. -Sie werden gegebenenfalls in den Absenderangaben des Briefkopfes -verwendet (siehe \autoref{tab:scrlttr2.fromTerm}). Als Besonderheit -haben sie außerdem eine Bezeichnung. Die Bezeichnungen werden -ebenfalls in den Absenderangaben des Briefkopfes verwendet. Der -vordefinierte Inhalt und die Bezeichnung der Trennzeichen sind -\autoref{tab:scrlttr2.fromSeperator} zu entnehmen. -\begin{table} - \centering - \begin{tabular}{lll} - Name & Bezeichnung & Inhalt \\\hline\\[-2ex] - \Variable{emailseparator} & \Macro{emailname} & \texttt{:\~} \\ - \Variable{faxseparator} & \Macro{faxname} & \texttt{:\~} \\ - \Variable{phoneseparator} & \Macro{phonename} & \texttt{:\~} \\ - \Variable{urlseparator} & \Macro{wwwname} & \texttt{:\~} \\ - \end{tabular} - \caption{Vordefinierte Bezeichnungen und Inhalte der Trennzeichen - für die Absenderangaben im Briefkopf} - \label{tab:scrlttr2.fromSeperator} -\end{table} -% -\EndIndex{Variable}{phoneseparator}% -\EndIndex{Variable}{faxseparator}% -\EndIndex{Variable}{emailseparator}% -\EndIndex{Variable}{urlseparator}% - - -\begin{Declaration} - \Macro{firsthead}\Parameter{Aufbau} -\end{Declaration} -\BeginIndex{Cmd}{firsthead}% -In den meisten Fällen werden die Möglichkeiten, die \Class{scrlttr2} -über Optionen und obige Variablen für die Gestaltung des Briefkopfes -bietet, vollkommen ausreichen. In einigen wenigen Fällen will man -jedoch den Briefkopf freier gestalten können. In diesen Fällen muss -man auf die Möglichkeiten der vordefinierten Briefköpfe, die per -Option ausgewählt werden können, verzichten. Stattdessen gestaltet man -sich seinen Briefkopf frei. Dazu definiert man den gewünschten -\PName{Aufbau} mit der Anweisung \Macro{firsthead}. Innerhalb von -\Macro{firsthead} können beispielsweise mit Hilfe der -\Macro{parbox}-Anweisung (siehe \cite{latex:usrguide}) mehrere Boxen -neben- und untereinander gesetzt werden. Einem versierten Anwender -sollte es so möglich sein, seinen eigenen Briefkopf zu gestalten. -Natürlich kann \PName{Aufbau} auch Zugriffe auf Variablen mit -Hilfe von \Macro{usekomavar} nehmen. -% -\EndIndex{Cmd}{firsthead}% -% -\EndIndex{}{Briefkopf}% - - -\subsection{Brief"|fuß} -\label{sec:scrlttr2.firstFoot}% -\BeginIndex{}{Brieffuss=Brief\/fuß}% - -So wie die erste Seite eines Briefes einen eigenen Briefkopf enthält, -so enthält diese Seite auch einen eigenen Fuß\Index{Fuss=Fuß}. Auch dieser -wird nicht über den Seitenstil, sondern direkt von \Macro{opening} -ausgegeben. - - -\begin{Declaration} - \PLength{firstfootvpos} -\end{Declaration} -\BeginIndex{PLength}{firstfootvpos}% -Diese Pseudolänge gibt den Abstand des Fußes der ersten Briefseite von -der Oberkante des Papiers an. Der Wert wird in den vordefinierten -\File{lco}-Dateien unterschiedlich gesetzt. Es wird außerdem dafür -gesorgt, dass der Textbereich nicht in den Fuß hineinragt. Hierzu -wird auf der ersten Seite gegebenenfalls die Höhe des Textbereiches mit -Hilfe von \Macro{enlargethispage} verkleinert. Mit Hilfe der Option -\Option{enlargefirstpage} kann dafür gesorgt werden, dass die Höhe des -Textbereiches umgekehrt gegebenenfalls auch vergrößert wird. Damit kann -dann der Abstand zwischen Textbereich und Fuß der ersten Seite -auf den Wert der Länge \Length{footskip} verringert werden. Siehe -hierzu auch \autoref{sec:scrlttr2.typeareaOptions}. -% -\EndIndex{PLength}{firstfootvpos}% - - -\begin{Declaration} - \PLength{firstfootwidth} -\end{Declaration} -\BeginIndex{PLength}{firstfootwidth}% -Diese Pseudolänge gibt die Breite des Fußes der ersten Briefseite -an. Der Wert wird in den vordefinierten \File{lco}-Dateien in -Abhängigkeit der Pseudolänge \PLength{firstheadwidth} gesetzt. -% -\EndIndex{PLength}{firstfootwidth}% - - -\begin{Declaration} - \Macro{firstfoot}\Parameter{Aufbau} -\end{Declaration} -\BeginIndex{Cmd}{firstfoot}% -Der Fuß der ersten Seite ist in der Voreinstellung leer. Es besteht -jedoch die Möglichkeit einen \PName{Aufbau} mit Hilfe der Anweisung -\Macro{firstfoot} zu definieren. Dies geschieht genau wie die -Definition des Kopfes mit Hilfe von \Macro{firsthead}. -\begin{Example} - Sie wollen den Inhalt der Variablen \Variable{frombank}, also die - Bankverbindung im Fuß der ersten Seite ausgeben. Der doppelte - Backslash soll dabei durch ein Komma ersetzt werden: - \begin{small} -\begin{verbatim} - \firstfoot{% - \parbox[b]{\linewidth}{% - \centering\def\\{, }\usekomavar{frombank}% - }% - } -\end{verbatim} - \end{small} - Natürlich können Sie für das Trennzeichen auch eine eigene Variable - definieren. Ich überlasse dem Leser dies als Übung. - - Heutzutage hat man recht häufig, dass eine Art Brief"|fuß als - Gegengewicht zum Briefkopf verwendet wird. So etwas kann - beispielsweise wie folgt definiert werden: - \begin{small} -\begin{verbatim} - \firstfoot{% - \parbox[t]{\textwidth}{\footnotesize - \begin{tabular}[t]{l@{}}% - \multicolumn{1}{@{}l@{}}{Gesellschafter:}\\ - Hugo Mayer\\ - Bernd Müller - \end{tabular}% - \hfill - \begin{tabular}[t]{l@{}}% - \multicolumn{1}{@{}l@{}}{Geschäftsführerin:}\\ - Liselotte Mayer\\[1ex] - \multicolumn{1}{@{}l@{}}{Gerichtsstand:}\\ - Hinterdupfeldingen - \end{tabular}% - \ifkomavarempty{frombank}{}{% - \hfill - \begin{tabular}[t]{l@{}}% - \multicolumn{1}{@{}l@{}}{\usekomavar*{frombank}:}\\ - \usekomavar{frombank} - \end{tabular}% - }% - }% - } -\end{verbatim} - \end{small} - Das Beispiel stammt übrigens ursprünglich von Torsten Krüger. Mit - \begin{small} -\begin{verbatim} - \setkomavar{frombank}{Konto 12\,345\,678\\ - bei der HansWurstBank\\ - BLZ 876\,543\,21} -\end{verbatim} - \end{small} - kann die Bankverbindung passend dazu gesetzt werden. Möglicherweise - muss für einen solch hohen Fuß noch die Position des Fußes nach - oben verschoben werden. Dies können Sie gegebenenfalls über die - Pseudolänge \PLength{firstfootvpos}\IndexPLength{firstfootvpos} - erreichen, die weiter oben in diesem Abschnitt beschrieben ist. -\end{Example} -% -\EndIndex{Cmd}{firstfoot}% -% -\EndIndex{}{Brieffuss=Brief\protect\/fuß}% - - -\subsection{Anschrift} -\label{sec:scrlttr2.addressee}% -\BeginIndex{}{Anschrift}% - -Unter der Anschrift versteht man normalerweise nur den Namen und die -Adresse des Empfängers. Als erste Erweiterung zur Anschrift kann die -Versandart betrachtet werden, die etwa bei Einschreiben oder -Infobriefen zur Anwendung kommt. Bei Fensterbriefumschlägen wird auch -die sogenannte Rücksendeadresse zur Anschrift gezählt, da sie im -Anschriftfenster zu sehen sein wird. Die Anschrift folgt unmittelbar -auf den Briefkopf. - - -\begin{Declaration} - \PLength{toaddrvpos}\\ - \PLength{toaddrhpos} -\end{Declaration} -\BeginIndex{PLength}{toaddrvpos}% -\BeginIndex{PLength}{toaddrhpos}% -Diese Pseudolängen geben den Abstand des Anschriftfensters eines -Fensterbriefumschlags vom oberen und vom linken Rand des Papiers an. -Sie werden in den vordefinierten \File{lco}-Dateien unterschiedlich -eingestellt. Für \PLength{toaddrhpos} gilt außerdem eine -Besonderheit. Ist der Wert negativ, so ist sein Betrag der Abstand des -Anschriftfeldes vom rechten Rand des Papiers. Sie finden dies -beispielsweise bei \Option{SN}. Am kleinsten ist der Wert -\PLength{toaddrvpos} bei \Option{DINmtext}. Hier kann es schnell -passieren, dass der Briefkopf in das Anschriftfenster ragt. Ob das -Anschriftfenster überhaupt gesetzt wird, hängt von der Option -\Option{addrfield} ab (siehe \autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{toaddrhpos}% -\EndIndex{PLength}{toaddrvpos}% - - -\begin{Declaration} - \PLength{toaddrwidth} -\end{Declaration} -\BeginIndex{PLength}{toaddrwidth}% -Diese Pseudolänge gibt die Breite des Anschriftfensters an. Diese wird -in den vordefinierten \File{lco}-Dateien entsprechend der -unterschiedlichen Normen unterschiedlich eingestellt. Typische Werte -liegen zwischen 70\Unit{mm} und 100\Unit{mm}. -\begin{Example} - Angenommen, Sie haben das Problem, dass Ihr Drucker einen sehr - breiten unbedruckbaren rechten oder linken Rand von 15\Unit{mm} - besitzt. Dadurch kann bei Option \Option{SN} der Briefkopf, die - Absenderergänzung und die Anschrift nicht komplett gedruckt - werden. Sie erstellen daher eine neue \File{lco}-Datei mit folgendem - Inhalt: - \begin{small} -\begin{verbatim} - \ProvidesFile{SNmmarg.lco}[2002/06/04 v0.1 my own lco] - \LoadLetterOption{SN} - \@addtoplength{toaddrwidth}{-\useplength{toaddrhpos}} - \@setplength{toaddrhpos}{-15mm} - \@addtoplength{toaddrwidth}{\useplength{toaddrhpos}} - \endinput -\end{verbatim} - \end{small} - Bis Sie sich einen Drucker mit kleineren Rändern zugelegt haben, - verwenden Sie dann \Option{SNmmarg} an Stelle von \Option{SN}. -\end{Example} -% -\EndIndex{PLength}{toaddrwidth}% - - -\begin{Declaration} - \PLength{toaddrindent} -\end{Declaration} -\BeginIndex{PLength}{toaddrindent}% -Manchmal will man, dass die Anschrift nicht am linken Rand des -Anschriftfensters beginnt, sondern ein wenig eingezogen wird. Der Wert -dieses Einzugs kann über die Pseudolänge \PLength{toaddrindent} -festgelegt werden. Typischerweise ist dieser Wert jedoch 0\Unit{pt}. -% -\EndIndex{PLength}{toaddrindent}% - - -\begin{Declaration} - \Variable{backaddress}\\ - \Variable{backaddressseparator}\\ - \PLength{backaddrheight} -\end{Declaration} -\BeginIndex{Variable}{backaddress}% -\BeginIndex{Variable}{backaddressseparator}% -\BeginIndex{PLength}{backaddrheight}% -Bei Fensterbriefumschlägen wird der Absender häufig in einer kleinen -Schrift einzeilig über der Empfängeradresse ausgegeben. Diese -Absenderangabe nennt man Rücksendeadresse. Die Rücksendeadresse wird -mit einer horizontalen Linie abgetrennt. Der Inhalt der -Rücksendeadresse\Index{Rücksendeadresse} wird normalerweise aus den -Variablen \Variable{fromname} und \Variable{fromaddress} automatisch -gebildet. Innerhalb der Rücksendeadresse werden doppelte Backslash -durch den Inhalt der Variablen \Variable{backaddressseparator} -ersetzt. Vordefiniert ist hierbei ein Komma, gefolgt von einem nicht -umbrechbaren Leerzeichen. Die Höhe, die innerhalb des -Anschriftfensters für die Rücksendeadresse zur Verfügung steht, ist in -der Pseudolänge \PLength{backaddrheight} abgelegt. Der Wert wird in -den vordefinierten \File{lco}-Dateien typischerweise auf 5\Unit{mm} -eingestellt. Ob die Rücksendeadresse überhaupt gesetzt wird, bestimmt -der Anwender mit den Optionen \Option{addrfield} und -\Option{backaddress} (siehe \autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{backaddrheight}% -\EndIndex{Variable}{backaddress}% -\EndIndex{Variable}{backaddressseparator}% - - -\begin{Declaration} - \Variable{specialmail}\\ - \PLength{specialmailindent}\\ - \PLength{specialmailrightindent} -\end{Declaration} -\BeginIndex{Variable}{specialmail}% -\BeginIndex{PLength}{specialmailindent}% -\BeginIndex{PLength}{specialmailrightindent}% -Zwischen Rücksendeadresse und Empfängeradresse kann noch eine -optionale Versandart\Index{Versandart} gesetzt werden. Diese wird -genau dann gesetzt, wenn die Variable \Variable{specialmail} einen -Inhalt hat. Die Ausrichtung wird mit Hilfe der Pseudolängen -\PLength{specialmailindent} und \PLength{specialmailrightindent} -festgelegt. Diese geben den linken und rechten Einzug der Zeile an. In -den vordefinierten \File{lco}-Dateien ist \PLength{specialmailindent} -auf den dehnbaren Wert \Macro{fill} gesetzt, während -\PLength{specialmailrightindent} auf 1\Unit{em} eingestellt ist. Damit -wird die Versandart 1\Unit{em} vom rechten Rand des Anschriftfensters -gesetzt. -% -\EndIndex{PLength}{specialmailindent}% -\EndIndex{PLength}{specialmailrightindent}% -\EndIndex{Variable}{specialmail}% - - -\begin{Declaration} - \Variable{toname}\\ - \Variable{toaddress} -\end{Declaration} -\BeginIndex{Variable}{toname}% -\BeginIndex{Variable}{toaddress}% -Diese beiden Variablen, die den Namen und die Adresse des Empfängers -beinhalten, werden normalerweise nicht direkt vom Anwender gesetzt. -Vielmehr gewinnt sie \Class{scrlttr2} direkt aus dem -\PName{Empfänger}-Argument der -\Environment{letter}-Umgebung\IndexEnv{letter}. Beachten Sie auch hier -den wichtigen Hinweis zur Absenderadresse aus -\autoref{sec:scrlttr2.firstHead}. -% -\EndIndex{Variable}{toname}% -\EndIndex{Variable}{toaddress}% - - -\begin{Declaration} - \Macro{begin}% - \PParameter{letter}\OParameter{Optionen}\Parameter{Anschrift} -\end{Declaration} -\BeginIndex{Env}{letter}% -Die Briefumgebung ist nur einer der zentralen Dreh- und Angelpunkte -der Briefklasse. Als Besonderheit kann man bei \Class{scrlttr2} der -Briefumgebung zusätzliche \PName{Optionen} mit auf den Weg geben. -Diese werden dann intern per \Macro{KOMAoptions}-Anweisung ausgeführt. -Die \PName{Anschrift} wird als obligatorischer Parameter an die -Umgebung übergeben. Dabei dient der doppelte Backslash als -Trennzeichen zwischen einzelnen Teilen der \PName{Anschrift}. Diese -einzelnen Teile werden im Anschriftfeld als einzelne Zeilen -ausgegeben. Dennoch sollte der doppelte Backslash hier nicht als -fester Zeilenumbruch verstanden werden. Absätze, vertikaler Leerraum -und Ähnliches sind in der Anschrift nicht erlaubt. Sie können zu -unerwarteten Effekten und Fehlermeldungen führen. Dies ist übrigens -bei der Standardbriefklasse genauso. Die -\Environment{letter}-Umgebung beginnt den Brief selbst noch nicht. -Dies geschieht erst mit der \Macro{opening}-Anweisung. -\EndIndex{Env}{letter}% - - -\begin{Declaration} - \Macro{AtBeginLetter}\Parameter{Anweisungen} -\end{Declaration} -\BeginIndex{Cmd}{AtBeginLetter}% -Wie in \cite{latex:clsguide} erwähnt, gibt es bei \LaTeX{} die -Möglichkeit, an bestimmten Stellen während des \LaTeX-Laufs eines -Dokuments zusätzliche \PName{Anweisungen} ausführen zu lassen. Diesem -Zweck dienen beispielsweise die Anweisungen \Macro{AtBeginDocument} -und \Macro{AtEndOfClass}. Man nennt solche Eingriffspunkte auch -\emph{hooks}, also Haken\Index{Haken}. Die Klasse \Class{scrlttr2} -fügt einen weiteren Haken hinzu, der mit \Macro{AtBeginLetter} mit -Fleisch versehen werden kann. Wie man schon daran erkennt, dass -Anweisungen für die Haken nicht in \cite{latex:usrguide} sondern in -\cite{latex:clsguide} dokumentiert sind, sind diese Anweisungen -eigentlich eher für Paket- und Klassenautoren gedacht. Bei der -Briefklasse kann es jedoch eine sinnvolle Anwendung für -\Macro{AtBeginLetter} auch auf Benutzerebene geben. Das folgende -Beispiel zeigt dies. -% -\begin{Example} - Angenommen, Sie haben mehrere Briefe in einem Dokument. Sie verwenden - außerdem eine eigene Anweisung, um in den Briefen einen Fragebogen - zu setzen. Dabei werden die Fragen automatisch mit Hilfe eines - Zählers nummeriert. Da \Class{scrlttr2} dieser Zähler nicht bekannt - ist, würde er auch im Gegensatz etwa zur Seitenzahl am Anfang eines - neuen Briefes nicht zurückgesetzt. Wenn jeder Brief zehn Fragen - beinhaltet, hätte damit die erste Frage im fünften Brief die Nummer - 41 statt der Nummer 1. Sie lösen das, indem Sie \Class{scrlttr2} - mitteilen, dass am Anfang jeden Briefes der Zähler zurückgesetzt - werden soll: - \begin{small} -\begin{verbatim} - \newcounter{Frage} - \newcommand{\Frage}[1]{% - \refstepcounter{Frage}\par - \@hangfrom{\makebox[2em][r]{\theFrage:~}}{#1}} - \AtBeginLetter{\setcounter{Frage}{0}} -\end{verbatim} - \end{small} - Damit hat dann auch die erste Frage im 1001. Brief wieder die Nummer - 1. Selbstverständlich gehören die entsprechenden Definitionen und - Anweisungen entweder mit \Macro{makeatletter} und - \Macro{makeatother} geklammert (siehe \cite{DANTE:FAQ}) in den - Vorspann des Briefdokuments (siehe - \autoref{sec:scrlttr2.document} sowie - \autoref{fig:scrlttr2.document}) oder in ein eigenes Paket - oder eine \File{lco}-Datei (siehe \autoref{sec:lcoFile}). -\end{Example} -% -\EndIndex{Cmd}{AtBeginLetter}% -% -\EndIndex{}{Anschrift}% - -\subsection{Absenderergänzungen} -\label{sec:scrlttr2.locationField} - -Insbesondere bei Geschäftsbriefen reicht der Platz im Briefkopf und im -Seitenfuß oftmals nicht aus, um alle Angaben des Absenders -unterzubringen. Für die zusätzlichen Informationen wird oft der Platz -neben der Anschrift genutzt. In dieser Anleitung wird dieses Feld -\emph{Absenderergänzung} genannt. - - -\begin{Declaration} - \PLength{locwidth} -\end{Declaration} -\BeginIndex{PLength}{locwidth}% -Diese Pseudolänge \PLength{locwidth} gibt die Breite der -Absenderergänzung an. Ihr Wert wird in den vordefinierten -\File{lco}-Dateien typischerweise auf 0\Unit{pt} gesetzt. Dieser Wert -nimmt eine Sonderstellung ein. Er bedeutet nicht, dass die -Absenderergänzung die Breite Null besitzen soll. Vielmehr wird bei -diesem Wert die tatsächliche Breite erst bei \Macro{opening} an Hand -der Breite des Papiers, der Breite des Anschriftfensters und dem -Abstand des Anschriftfensters vom linken Rand gesetzt. Dabei findet -auch die Option \Option{locfield} (siehe -\autoref{sec:scrlttr2.headoptions}) Berücksichtigung. -% -\EndIndex{PLength}{locwidth} - - -\begin{Declaration} - \Variable{location} -\end{Declaration} -\BeginIndex{Variable}{location}% -Der Inhalt der Absenderergänzung wird mit der Variablen -\Variable{location} festgelegt. Für den Inhalt dieser Variablen dürfen -auch Formatieranweisungen wie \Macro{raggedright} verwendet werden. Es -ist zu beachten, dass je nach Einstellung der Optionen -\Option{fromalign} und \Option{fromlogo} ein Teil der -Absenderergänzung bereits durch das Logo belegt wird (siehe -\autoref{sec:scrlttr2.headoptions}). -% -\begin{Example} - Angenommen, Sie wollen in der Absenderergänzung die Gesellschafter, - den Geschäftsführer und den Gerichtsstand Ihrer Firma angeben. Dies - kann beispielsweise wie folgt geschehen: - \begin{small} -\begin{verbatim} - \KOMAoptions{locfield=wide} - \setkomavar{location}{\raggedright - \textbf{Gesellschafter:}\\ - \quad Hugo Mayer\\ - \quad Bernd Müller\\[1ex] - \textbf{Geschäftsführerin:}\\ - \quad Liselotte Mayer\\[1ex] - \textbf{Gerichtsstand:}\\ - \quad Hinterdupfeldingen - } -\end{verbatim} - \end{small} - Die Option \Option{locfield=wide} setzen Sie, damit die ganzen - Angaben horizontal auch wirklich passen. Solche Angaben können Sie - übrigens auch zusammen mit den allgemeinen Absenderangaben in Ihre - eigene \File{lco}-Datei packen. -\end{Example} -% -\EndIndex{Variable}{location}% - - -\subsection{Geschäftszeile} -\label{sec:scrlttr2.refLine}% -\BeginIndex{}{Geschäftszeile}% - -Insbesondere bei Geschäftsbriefen findet sich häufig eine Zeile mit -Angaben wie Namenskürzeln\Index{Kürzel}, Durchwahl\Index{Durchwahl}, -Kunden-\Index{Kundennummer} und Rechnungsnummer\Index{Rechnungsnummer} -oder zur Bezugnahme auf ein früheres Schreiben. Diese Zeile wird in -dieser Anleitung \emph{Geschäftszeile} genannt. Die Geschäftszeile -kann auch länger als eine Zeile sein und wird nur gesetzt, wenn -mindestens eine der Variablen für die Geschäftszeile nicht leer ist. -Es werden auch nur die Felder gesetzt, die nicht leer sind. Um ein -scheinbar leeres Feld zu setzen, muss man der entsprechenden Variablen -einen scheinbar leeren Inhalt, beispielsweise ein festes Leerzeichen -oder \Macro{null}, geben. Wird auf die Geschäftszeile verzichtet, so -werden an ihrer Stelle Bezeichnung und Inhalt der Variablen -\Variable{date} ausgegeben. - - -\begin{Declaration} - \PLength{refvpos} -\end{Declaration} -\BeginIndex{PLength}{refvpos}% -Diese Pseudolänge gibt den Abstand der Geschäftszeile von der Oberkante -des Papiers an. Ihr Wert wird in den vordefinierten \File{lco}-Dateien -unterschiedlich eingestellt. Typische Werte liegen zwischen -80{,}5\Unit{mm} und 98{,}5\Unit{mm}. -% -\EndIndex{PLength}{refvpos}% - - -\begin{Declaration} - \PLength{refwidth} -\end{Declaration} -\BeginIndex{PLength}{refwidth}% -Diese Pseudolänge gibt die Breite an, die für die Geschäftszeile zur -Verfügung steht. Ihr Wert wird in den vordefinierten -\File{lco}-Dateien typischerweise auf 0\Unit{pt} gesetzt. Dieser Wert -hat eine besondere Bedeutung. Es wird damit keineswegs festgelegt, -dass für die Geschäftszeile keine Breite zur Verfügung steht. Vielmehr -bedeutet der Wert, dass die verfügbare Breite erst innerhalb von -\Macro{opening} ermittelt wird. Die dort ermittelte Breite richtet -sich dann nach der Einstellung der Option \Option{refline} (siehe -\autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{refwidth}% - - -\begin{Declaration} - \PLength{refaftervskip} -\end{Declaration} -\BeginIndex{PLength}{refaftervskip}% -Diese Pseudolänge gibt den vertikalen Abstand an, der nach der -Geschäftszeile eingefügt werden soll. Der Wert wird in den -vordefinierten \File{lco}-Dateien eingestellt. Er wirkt sich -unmittelbar auf die Höhe des Textbereiches der ersten Seite aus. Der -typische Wert liegt zwischen einer und zwei Zeilen. -% -\EndIndex{PLength}{refaftervskip}% - - -\begin{Declaration} - \Variable{place}\\ - \Variable{placeseparator} -\end{Declaration} -\BeginIndex{Variable}{place}% -\BeginIndex{Variable}{placeseparator}% -Wie bereits in der Einleitung dieses Abschnitts erwähnt wurde, kann -die Geschäftszeile auch entfallen. Dies geschieht, wenn alle Variablen -der Geschäftszeile bis auf das Datum leer sind. In diesem Fall wird -statt des Datums\Index{Datum} der Inhalt der Variablen für den -Ort\Index{Ort}, \Variable{place}, und der Inhalt der Variablen für das -Trennzeichens\Index{Trennzeichen}, \Variable{placeseparator}, gefolgt -vom Inhalt der Variablen für das Datum, \Variable{date}, gesetzt. Der -vordefinierte Inhalt des Trennzeichens ist dabei ein Komma gefolgt von -einem nicht umbrechbaren Leerzeichen. Ist der Ort leer, so wird auch -das Trennzeichen nicht gesetzt. Der vordefinierte Inhalt der Variablen -\Variable{date} ist \Macro{today}\IndexCmd{today} und hängt von der -Einstellung der Option \Option{numericaldate} ab (siehe -\autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{Variable}{place}% -\EndIndex{Variable}{placeseparator}% - - -\begin{Declaration} - \Variable{yourref}\\ - \Variable{yourmail}\\ - \Variable{myref}\\ - \Variable{customer}\\ - \Variable{invoice} \\ - \Variable{date} -\end{Declaration} -\BeginIndex{Variable}{yourref}% -\BeginIndex{Variable}{yourmail}% -\BeginIndex{Variable}{myref}% -\BeginIndex{Variable}{customer}% -\BeginIndex{Variable}{invoice}% -\BeginIndex{Variable}{date}% -Bei diesen Variablen handelt es sich um typische Felder der -Geschäftszeile. Ihre Bedeutung entnehmen Sie bitte -\autoref{tab:scrlttr2.variables} auf -\autopageref{tab:scrlttr2.variables}. Jede dieser Variablen hat -außerdem eine vordefinierte Bezeichnung, die in -\autoref{tab:scrlttr2.reflineTerm} zu finden ist. Die Breite des -Feldes, das zu jeder Variablen in der Geschäftszeile gehört, passt -sich automatisch der Bezeichnung und dem Inhalt an. -% -\begin{table} - \centering - \begin{tabular}{lll} - Name & Bezeichnung & bei deutscher Sprache \\ - \hline\\[-2ex] - \Variable{yourref} & \Macro{yourrefname} & Ihr Zeichen \\ - \Variable{yourmail} & \Macro{yourmailname} & Ihr Schreiben vom \\ - \Variable{myref} & \Macro{myrefname} & Unser Zeichen \\ - \Variable{customer} & \Macro{customername} & Kundennummer \\ - \Variable{invoice} & \Macro{invoicename} & Rechnungsnummer \\ - \Variable{date} & \Macro{datename} & Datum \\\hline - \end{tabular} - \caption{Vordefinierte Bezeichnungen der typischen Variablen der - Geschäftszeile unter Verwendung sprachabhängiger Anweisungen} - \label{tab:scrlttr2.reflineTerm} -\end{table} -% -\EndIndex{Variable}{yourref}% -\EndIndex{Variable}{yourmail}% -\EndIndex{Variable}{myref}% -\EndIndex{Variable}{customer}% -\EndIndex{Variable}{invoice}% -\EndIndex{Variable}{date}% -% -\EndIndex{}{Geschäftszeile}% - - -\subsection{Titel und Betreff} -\label{sec;scrlttr2.titleSubject} -Geschäftsbriefe werden häufig mit einem Betreff versehen. Dieser -Betreff beschreibt kurz den Vorgang oder den Aspekt, um den es sich -handelt. In der Regel sollte ein Betreff möglichst kurz und prägnant -sein und nicht über mehrere Zeilen gehen. Neben dem Betreff kann ein -Brief auch noch mit einem Titel versehen werden. Von einem Titel wird -normalerweise nur bei Mahnungen, Rechnungen und Ähnlichem Gebrauch -gemacht. - - -\begin{Declaration} - \Variable{title} -\end{Declaration} -\BeginIndex{Variable}{title}% -Bei \Class{scrlttr2} kann ein Brief zusätzlich mit einem -Titel\Index{Titel} versehen werden. Der Titel wird zentriert und in -der Schriftgröße \Macro{LARGE} nach der Geschäftszeile ausgegeben. Die -für das Element \PValue{title} als -\Macro{normalcolor}\Macro{sffamily}\Macro{bfseries} voreingestellte -Schriftart kann mit Hilfe der Schnittstelle, die in -\autoref{sec:maincls.font} beschrieben ist, geändert werden. Dabei -sind auch Größenangaben erlaubt. -\begin{Example} - Angenommen, Sie schreiben eine Mahnung. Sie setzen einen - entsprechenden Titel: - \begin{small} -\begin{verbatim} - \setkomavar{title}{Mahnung} -\end{verbatim} - \end{small} - Damit sollte der Empfänger die Mahnung auch als solche erkennen. -\end{Example} -% -\EndIndex{Variable}{title} - - -\begin{Declaration} - \Variable{subject}\\ - \Variable{subjectseparator} -\end{Declaration} -\BeginIndex{Variable}{subject}% -\BeginIndex{Variable}{subjectseparator}% -Soll ein Betreff\Index{Betreff} gesetzt werden, so geschieht dies, -indem man den Inhalt der Variablen \Variable{subject} entsprechend -festlegt. Je nach Einstellung der Option \Option{subject} kann dem -Betreff eine Bezeichnung vorangestellt werden und die vertikale -Position des Betreffs verändert werden (siehe -\autoref{sec:scrlttr2.headoptions}). Die vordefinierte Bezeichnung -ist \autoref{tab:scrlttr2.subjectTerm} zu entnehmen. Der vordefinierte -Inhalt des Trennzeichens\Index{Trennzeichen} -\Variable{subjectseparator} besteht aus einem Doppelpunkt, gefolgt von -einem Leerzeichen. -% -\begin{table} - \centering - \begin{tabular}{lll} - Name & Bezeichnung \\\hline\\[-2ex] - \Variable{subject} & - \Macro{usekomavar*}\PParameter{subjectseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{subjectseparator} - \\ - \Variable{subjectseparator} & - \Macro{subjectname} \\ - \end{tabular} - \caption{Vordefinierte Bezeichnungen der Variablen für den Betreff} - \label{tab:scrlttr2.subjectTerm} -\end{table} - -Der Betreff wird in einer eigenen Schriftart\Index{Schriftart} -gesetzt. Um diese zu ändern, verwenden Sie die Benutzerschnittstelle, -die in \autoref{sec:maincls.font} beschrieben ist. Für das Element -\PValue{subject} ist -\Macro{normalfont}\Macro{normalcolor}\Macro{bfseries} die in der -Klasse \Class{scrlttr2} voreingestellte Schrift. -\begin{Example} - Angenommen, Sie schreiben als Vereinsvorstandes einen Brief an ein - anderes Mitglied des Vorstands, in dem es um vereinsinterne - Angelegenheiten geht. Sie wollen dabei im Betreff deutlich machen, - dass es sich um einen Betreff handelt, ohne dass Sie eine - Bezeichnung mit Trennzeichen voranstellen. Sie könnten das wie folgt - lösen: - \begin{small} -\begin{verbatim} - \setkomavar{subject}[Betrifft ]{% - vereinsinterne Angelegenheiten} -\end{verbatim} - \end{small} - Sie können es sich aber auch einfach machen: - \begin{small} -\begin{verbatim} - \setkomavar{subject}[]{% - Betrifft vereinsinterne Angelegenheiten} -\end{verbatim} - \end{small} - Außerdem wollen Sie, dass der Betreff nicht nur fett sondern - auch in einer serifenlosen Schriftart erscheint: - \begin{small} -\begin{verbatim} - \addtokomafont{subject}{\sffamily} -\end{verbatim} - \end{small} - Wie Sie sehen, ist das alles ganz einfach zu lösen. -\end{Example} -% -\EndIndex{Variable}{subject}% -\EndIndex{Variable}{subjectseparator}% - - -\subsection{Andere Angaben} -Sie finden hier Variablen und Einstellungen, die keinem anderen -Bereich der Briefeinleitung zugeordnet werden konnte, die jedoch in -diesen Abschnitt gehören. - -\begin{Declaration} - \PLength{tfoldmarkvpos}\\ - \PLength{bfoldmarkvpos} -\end{Declaration} -\BeginIndex{PLength}{tfoldmarkvpos}% -\BeginIndex{PLength}{bfoldmarkvpos}% -Die Briefklasse \Class{scrlttr2} kennt insgesamt drei -Faltmarken\Index{Faltmarken}\Index{Falzmarken}. Die mittlere Faltmarke -dient der Halbierung der Seite und wird deshalb immer in der Mitte der -Seitenhöhe ausgegeben. Die Position der oberen Faltmarke vom oberen -Papierrand wird von der Pseudolänge \PLength{tfoldmarkvpos} bestimmt, -die der unteren Faltmarke von der Pseudolänge \PLength{bfoldmarkvpos}. -Diese beiden Faltmarken dienen nicht der exakten Drittelung des -Papiers beim Falten. Stattdessen soll das Papier mit ihrer Hilfe so -geknickt werden können, dass das Feld für die Anschrift in einem -Fensterbriefumschlag zu sehen ist. Die Einstellungen sind daher in den -vordefinierten \File{lco}-Dateien unterschiedlich gewählt. Eine -Besonderheit stellt \Option{DINmtext} dar. Hier wird zwingend von -einem Briefumschlag im Format C6/5 (auch "`C6 lang"' genannt) -ausgegangen. Briefe, die mit dieser Option erstellt wurden, sind weder -für Umschläge im Format C5 noch für Umschläge im Format C4 geeignet. -% -\EndIndex{PLength}{tfoldmarkvpos}% -\EndIndex{PLength}{bfoldmarkvpos}% - - -\begin{Declaration} - \PLength{foldmarkhpos} -\end{Declaration} -\BeginIndex{PLength}{foldmarkhpos}% -Diese Pseudolänge gibt den Abstand aller drei -Faltmarken\Index{Faltmarken}\Index{Falzmarken} vom linken Papier\-rand -an. Normalerweise sind das 3{,}5\Unit{mm}. Sie können den Wert aber -auch in Ihrer eigenen \File{lco}-Datei ändern, falls Sie einen Drucker -verwenden, der einen breiteren unbedruckbaren linken Rand hat. Die -obere und die untere Faltmarke sind übrigens 2\Unit{mm} lang, während -die mittlere Faltmarke 4\Unit{mm} lang ist. Die Dicke aller drei -Faltmarken ist mit 2\Unit{pt} gleich groß. Derzeit ist es nicht -vorgesehen, die Länge oder Dicke der Faltmarken zu ändern. Ob die -Faltmarken überhaupt gesetzt werden, hängt außerdem von der Option -\Option{foldmarks} ab (siehe \autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{foldmarkhpos}% - - -\begin{Declaration} - \Variable{frombank} -\end{Declaration} -\BeginIndex{Variable}{frombank}% -Diese Variable nimmt derzeit eine Sonderstellung ein. Sie wird intern -bisher nicht verwendet. Sie kann jedoch beispielsweise vom Anwender -verwendet werden, um die Bankverbindung\Index{Bankverbindung} in das -Absenderergänzungsfeld oder den Fuß zu setzen. -% -\EndIndex{Variable}{frombank}% - - -\begin{Declaration} - \Macro{nexthead}\Parameter{Aufbau}\\ - \Macro{nextfoot}\Parameter{Aufbau} -\end{Declaration} -\BeginIndex{Cmd}{nexthead}% -\BeginIndex{Cmd}{nextfoot}% -In den meisten Fällen werden die Möglichkeiten, die \Class{scrlttr2} -über Optionen und Variablen für die Gestaltung des -Seitenkopfes\Index{Kopf} und -fußes\Index{Fuß} auf -Folgeseiten\Index{Folgeseite} zur Verfügung stellt, vollkommen -ausreichen. Dies umso mehr, als man zusätzlich mit \Macro{markboth} -und \Macro{markright} die Möglichkeit hat, die Angaben zu ändern, die -\Class{scrlttr2} in den Kopf setzt. Folgeseiten im Sprachgebrauch -dieser Anleitung sind alle Briefseiten abgesehen von der ersten. Die -Anweisungen \Macro{markboth}\IndexCmd{markboth} und -\Macro{markright}\IndexCmd{markright} können insbesondere mit dem -Seitenstil\Index{Seitenstil} -\PValue{myheadings}\IndexPagestyle{myheadings} verwendet werden. Bei -Verwendung des Paketes \Package{scrpage2}\IndexPackage{scrpage2} gilt -dies natürlich auch für den Seitenstil -\PValue{scrheadings}\IndexPagestyle{scrheadings}. Dort steht außerdem -die Anweisung \Macro{markleft}\IndexCmd{markleft} zur Verfügung. - -In einigen wenigen Fällen will man jedoch den Kopf oder Fuß der -Folgeseiten ähnlich dem Briefkopf freier gestalten können. In diesen -Fällen muss man auf die Möglichkeiten der vordefinierten Köpfe und -Füße, die per Option ausgewählt werden können, verzichten. Stattdessen -gestaltet man sich den Kopf und Fuß der Folgeseiten frei. Dazu -definiert man den gewünschten \PName{Aufbau} mit der Anweisung -\Macro{nexthead} beziehungsweise \Macro{nextfoot}. Innerhalb von -\Macro{nexthead} und \Macro{nextfoot} können beispielsweise mit Hilfe -der \Macro{parbox}-Anweisung (siehe \cite{latex:usrguide}) mehrere -Boxen neben- und untereinander gesetzt werden. Einem versierten -Anwender sollte es so möglich sein, eigene Seitenköpfe und -füße zu -gestalten. Natürlich kann \PName{Aufbau} auch Zugriffe auf -Variablen mit Hilfe von \Macro{usekomavar} nehmen. -% -\EndIndex{Cmd}{nexthead}% -\EndIndex{Cmd}{nextfoot}% - - -\section{Der Text} -\label{sec:scrlttr2.text} - -Im Gegensatz zu einem Artikel, einem Bericht oder einem Buch besitzt -ein Brief normalerweise keine Kapitel- oder Abschnittseinteilung, -keine Gleitumgebungen mit Tabellen und Abbildungen. Daher hat er auch -weder Inhaltsverzeichnis noch Verzeichnisse für Gleitumgebung, -Literatur, Index, Glossary oder Ähnliches. Der Brief"|text besteht im -Wesentlichen aus einer Anrede und dem eigentlichen Text. Er wird -gefolgt von einem Schlussgruß und eventuell einem Nachsatz und -verschiedenen Auf"|listungen nach dem Gruß. - - -\subsection{Anrede} -\label{sec:scrlttr2.opening} - -\begin{Explain} -Bei maschinell erstellen Briefen wurde früher häufig auf eine Anrede -verzichtet. Das lag daran, dass die Möglichkeiten für Serienbriefe in -den Anfängen der maschinell erzeugten Briefe noch sehr gering -waren. Heute sind persönliche Anreden auch bei massenhaft erzeugten -Werbebriefen üblich. -\end{Explain} - -\begin{Declaration} - \Macro{opening}\Parameter{Anrede} -\end{Declaration} -\BeginIndex{Cmd}{opening}% -Dies ist eine der wichtigsten Anweisungen in \Class{scrlttr2}. -Vordergründig wird damit die \PName{Anrede}\Index{Anrede} des Briefes, -beispielsweise "`Sehr geehrter Herr Huber,"', gesetzt. Tatsächlich -setzt diese Anweisung aber auch die -Faltmarken\Index{Faltmarken}\Index{Falzmarken}, den -Briefkopf\Index{Briefkopf}, die Anschrift\Index{Anschrift}, die -Absenderergänzung, die Geschäftszeile\Index{Geschäftszeile}, den -Titel\Index{Titel}, den Betreff\Index{Betreff} und den -Seitenfuß\Index{Kopf}\Index{Fuß}, also die Mehrzahl der Felder, die -mit Optionen und Variablen eingestellt werden. Kurz gesagt: ohne -Anrede kein Brief. -% -\EndIndex{Cmd}{opening}% - - -\subsection{Fußnoten} -\label{sec:scrlttr2.footnotes} - -Fußnoten\Index{Fussnoten=Fußnoten} sollte man in Briefen noch sehr -viel sparsamer verwenden als in anderen Dokumenten. Dennoch verfügt -\Class{scrlttr2} bezüglich der Fußnoten über alle Mechanismen, die in -\autoref{sec:maincls.footnotes} auch für die Hauptklassen beschrieben -sind. Diese werden daher hier nicht erneut aufgeführt. - - -\subsection{Listen} -\label{sec:scrlttr2.lists} - -Listen\Index{Listen} haben in Briefen die gleiche Berechtigung wie in -anderen Dokumenten auch. Deshalb verfügt \Class{scrlttr2} -diesbezüglich über dieselben Möglichkeiten, die in -\autoref{sec:maincls.lists} auch für die Hauptklassen beschrieben -sind. Diese werden daher hier nicht erneut aufgeführt. - - -\subsection{Randnotizen} -\label{sec:scrlttr2.marginNotes} - -Randnotizen\Index{Randnotizen} sind in Briefen eher unüblich. Daher -wird in \Class{scrlttr2} die Option \Option{mpinclude} auch nicht -aktiv unterstützt. Dennoch verfügt die Klasse bezüglich der -Randnotizen über alle Mechanismen, die in -\autoref{sec:maincls.marginNotes} auch für die Hauptklassen -beschrieben sind. Diese werden daher hier nicht erneut aufgeführt. - - -\subsection{Textauszeichnung} -\label{sec:scrlttr2.emphasis} - -Textauszeichnungen\Index{Schriftart} haben in Briefen denselben -Stellenwert wie in anderen Dokumenten. Obwohl eher das Gegenteil zu -beobachten ist, empfehle ich daher auch in Briefen insbesondere mit -aktiven Auszeichnungen eher sparsam umzugehen. Auch Briefe sollen -gelesen werden. Ein Brief in dem jedes Wort in einer anderen Schrift -erscheint, kann nicht gelesen werden. - -Die Briefklasse \Class{scrlttr2} verfügt über dieselben Möglichkeiten -der Textauszeichnung, die in \autoref{sec:maincls.emphasis} für -die Hauptklassen beschrieben sind. Diese werden daher hier nicht -erneut aufgeführt. - - -\section{Der Schlussteil} -\label{sec:scrlttr2.backend} - -Der Schlussteil eines Briefes besteht immer aus einer -Grußfloskel\Index{Gruß}. Selbst bei maschinell erstellten Briefen ohne -Unterschrift\Index{Unterschrift} findet sich diese in der Regel. -Manchmal besteht sie dann aus einem Satz wie "`Dieser Brief wurde -maschinell erstellt und ist ohne Unterschrift gültig"'. Manchmal wird -ein solcher Satz als Signatur\Index{Signatur} verwendet. Auf die -Grußformel können noch ein Nachsatz und verschiedene Auf"|listungen -folgen. - - -\subsection{Schlussgruß} -\label{sec:scrlttr2.closing} - -Der Schlussgruß\Index{Gruß} eines Briefes besteht aus mehreren Teilen. -Neben der Grußformel selbst gibt es noch die Unterschrift und die -Signatur, eine Art Erläuterung zur Unterschrift. - -\begin{Declaration} - \Variable{signature} -\end{Declaration} -\BeginIndex{Variable}{signature}% -Die Variable \Variable{signature}\Index{Signatur} nimmt eine Art -Erläuterung zur Unterschrift\Index{Unterschrift} auf. Ihr Inhalt ist -mit \Macro{usekomavar}\PParameter{fromname} vordefiniert. Eine solche -Erläuterung kann auch mehrzeilig sein. Die einzelnen Zeilen sollten -dann mit doppeltem Backslash voneinander getrennt werden. Absätze -innerhalb der Erläuterung sind jedoch nicht gestattet. -% -\EndIndex{Variable}{signature}% - -\begin{Declaration} - \Macro{closing}\Parameter{Grußfloskel} -\end{Declaration} -\BeginIndex{Cmd}{closing}% -Mit der Anweisung \Macro{closing} wird nicht nur die -\PName{Grußfloskel}\Index{Gruß}, sondern auch der Inhalt der Variablen -\Variable{signature} unter den Brief gesetzt. Die \PName{Grußfloskel} -kann auch mehrzeilig sein. Die einzelnen Zeilen sollten dann mit -doppeltem Backslash voneinander getrennt werden. Absätze innerhalb -der \PName{Grußfloskel} sind jedoch nicht gestattet. -% -\EndIndex{Cmd}{closing}% - - -\begin{Declaration} - \PLength{sigindent}\\ - \PLength{sigbeforevskip}\\ - \Macro{raggedsignature} -\end{Declaration} -\BeginIndex{PLength}{sigindent}% -\BeginIndex{PLength}{sigbeforevskip}% -\BeginIndex{Cmd}{raggedsignature}% -Grußfloskel\Index{Gruß}\Index{Signatur} und Erläuterung der -Unterschrift\Index{Unterschrift} werden innerhalb einer Box gesetzt. -Die Breite dieser Box wird durch die längste Zeile innerhalb von -Grußfloskel und Erläuterung bestimmt. - -Die Box wird mit dem Einzug gesetzt, der durch die Pseudolänge -\PLength{sigindent} bestimmt ist. In den vordefinierten -\File{lco}-Dateien ist der Einzug auf 0\Unit{mm} gesetzt. - -Durch den Befehl \Macro{raggedsignature} wird die Ausrichtung innerhalb -der Box bestimmt. In den vordefinierten \File{lco}-Dateien ist die -Anweisung entweder auf \Macro{centering} (alle außer \Option{KOMAold}) -oder auf \Macro{raggedright} (\Option{KOMAold}) gesetzt. Um innerhalb -der Box beispielsweise eine linksbündige oder rechtsbündige -Ausrichtung zu erhalten, kann der Befehl in gleicher Weise umdefiniert -werden wie \Macro{raggedsection} (siehe das entprechende Beispiel in -\autoref{sec:maincls.structure}). - -Zwischen Grußfloskel und Erläuterung wird ein vertikaler Abstand -eingefügt, der mit der Pseudolänge \PLength{sigbeforevskip} festgelegt -ist. In den vordefinierten \File{lco}-Dateien ist der Wert auf zwei -Zeilen eingestellt. In diese Lücke setzen Sie dann Ihre Unterschrift. -\begin{Example} - Sie schreiben als Vorstand des Vereins "`Rotkehlchen e.\,V."' einen - Brief an die Mitglieder. Dabei wollen Sie einerseits nochmals - verdeutlichen, dass Sie im Namen des Vorstands schreiben, zum - anderen wollen sie ihre Position im Vorstand mit angeben. Dies ist - beispielsweise wie folgt möglich: - \begin{small} -\begin{verbatim} - \setkomavar{signature}{Karl-Heinz zu Bammern Krähenfeld\\ - {\small (2. Vorsitzender "`Rotkehlchen e.\,V."')}} - \closing{Mit freundlichen Grüßen\\ - (für den Vorstand)} -\end{verbatim} - \end{small} - Natürlich können Sie das Setzen der Variablen \Variable{signature} - auch in eine Ihrer privaten \File{lco}-Dateien aufnehmen. Ansonsten - empfiehlt es sich, auch diese Variable in der Briefeinleitung (siehe - \autoref{sec:scrlttr2.startLetter}) zu setzen. -\end{Example} -% -\EndIndex{PLength}{sigindent}% -\EndIndex{PLength}{sigbeforevskip}% -\EndIndex{Cmd}{raggedsignature}% - - - -\subsection{Nachsatz, Verteiler und Anlagen} -\label{sec:scrlttr2.afterClosing} - -Nach dem Gruß können bei Briefen noch eine ganze Reihe von Angaben -folgen. Neben dem Postskriptum gehören dazu vor allem Verteiler und -ein Hinweis auf Anlagen. - -\begin{Declaration} - \Macro{ps} -\end{Declaration}% -\BeginIndex{Cmd}{ps}% -\begin{Explain}% - Als Briefe noch von Hand geschrieben wurden, war das Postskriptum - sehr beliebt. Es handelte sich bei diesen Nachsätzen ursprünglich um - Angaben, die im eigentlichen Brief vergessen wurden. Bei Briefen, - die mit \LaTeX{} geschrieben werden, ist es natürlich einfach, - Vergessenes nachträglich in den Brief einzuarbeiten. Trotzdem ist - das Postskriptum noch immer sehr beliebt, kann man damit doch sehr - schön noch einmal auf ganz andere äußerst wichtige oder eigentlich - ganz unwichtige Dinge hinweisen. -\end{Explain} -Diese Anweisung schaltet lediglich auf das -Postskriptum\Index{Postskriptum} um. Dazu wird ein neuer Absatz -begonnen und ein vertikaler Abstand -- in der Regel zur Signatur -- -eingefügt. Auf die Anweisung \Macro{ps} kann beliebiger Text folgen. -Dabei muss der Anwender auch selbst entscheiden, ob er den Nachsatz -etwa mit der Abkürzung "`PS:"', die übrigens ohne Punkt gesetzt wird, -beginnen will. Die Klasse \Class{scrlttr2} setzt diese Abkürzung weder -automatisch noch optional. -% -\EndIndex{Cmd}{ps} - - -\begin{Declaration} - \Macro{cc}\Parameter{Verteiler}\\ - \Variable{ccseparator} -\end{Declaration} -\BeginIndex{Cmd}{cc}% -\BeginIndex{Variable}{ccseparator}% -Ein \PName{Verteiler}\Index{Verteiler} kann mit der Anweisung -\Macro{cc} gesetzt werden. Der \PName{Verteiler} wird der Anweisung -dabei als Argument übergeben. Wenn der Inhalt der Variablen -\Variable{ccseparator}\Index{Trennzeichen} nicht leer ist, wird dem -\PName{Verteiler} die Bezeichnung und der Inhalt dieser Variablen -vorangestellt. Der \PName{Verteiler} selbst wird dann um die -entsprechende Breite eingerückt ausgegeben. Es empfiehlt sich, den -\PName{Verteiler} \Macro{raggedright} zu setzen und die einzelnen -Angaben durch doppelte Backslash voneinander zu trennen. -\begin{Example} - Sie wollen angeben, dass Ihr Brief an alle Vereinsmitglieder und den - Vorstand geht: - \begin{small} -\begin{verbatim} - \cc{% - der Vorstand\\ - alle Vereinsmitglieder} -\end{verbatim} - \end{small} - Diese Anweisung schreiben Sie unter die \Macro{closing}-Anweisung - aus dem vorherigen Beispiel oder unter ein eventuelles Postskriptum. -\end{Example} -Vor dem Verteiler wird automatisch ein Abstand eingefügt. -% -\EndIndex{Cmd}{cc}% -\EndIndex{Variable}{ccseparator}% - - -\begin{Declaration} - \Macro{encl}\Parameter{Anlagen}\\ - \Variable{enclseparator} -\end{Declaration} -\BeginIndex{Cmd}{encl}% -\BeginIndex{Variable}{enclseparator}% -Die \PName{Anlagen}\Index{Anlagen} sind genauso aufgebaut wie der -Verteiler. Der einzige Unterschied besteht darin, dass die Einleitung -hier von der Bezeichnung und dem Inhalt der Variablen -\Variable{enclseparator}\Index{Trennzeichen} bestimmt wird. -% -\EndIndex{Cmd}{encl}% -\EndIndex{Variable}{enclseparator}% - - - -\section{Unterstützung verschiedener Sprachen} -\label{sec:scrlttr2.languages}% -\BeginIndex{}{Sprachen}% - -Die Klasse \Class{scrlttr2} unterstützt viele Sprachen. Dazu zählen -Deutsch (\PValue{german} für alte deutsche Rechtschreibung, -\PValue{ngerman} für neue deutsche Rechtschreibung und -\PValue{austrian} für Österreichisch), Englisch (\PValue{english} ohne -Angabe ob amerikanisches oder britisches Englisch, \PValue{american} und -\PValue{USenglish} für Amerikanisch, \PValue{british} und -\PValue{UKenglish} für Britisch), Französisch, Italienisch, Spanisch, -Holländisch und Kroatisch. - -\subsection{Sprachauswahl und -umschaltung} -\label{sec:scrlttr2.switchLanguage} -\Index[indexmain]{Sprachumschaltung}\Index[indexmain]{Sprachauswahl} - -Zwischen den Sprachen wird bei Verwendung des -\Package{babel}-Paketes\IndexPackage{babel} (siehe \cite{package:babel}) mit -der Anweisung \Macro{selectlanguage}\Parameter{Sprache} gewechselt. Andere -Pakete wie \Package{german}\IndexPackage{german} (siehe \cite{package:german}) -und \Package{ngerman}\IndexPackage{ngerman} (siehe \cite{package:ngerman}) -besitzen diese Anweisung ebenfalls. In der Regel erfolgt eine -Sprachumschaltung jedoch bereits aufgrund des Ladens eines solchen Paketes. -\iffalse -Näheres entnehmen Sie bitte der jeweiligen Anleitung. -\fi - -\begin{Explain} - Erlauben Sie mir noch einen Hinweis zu den Sprachumschaltpaketen. Das Paket - \Package{french}\IndexPackage{french} (siehe \cite{package:french}) nimmt - neben der Umdefinierung der Begriffe aus - \autoref{sec:scrlttr2.languageTerms} weitere Änderungen vor. So definiert es - etwa die Anweisung \Macro{opening} um. Dabei geht es einfach davon aus, dass - \Macro{opening} immer wie in der Standardbriefklasse \Class{letter} - definiert ist. Dies ist bei \Class{scrlttr2} jedoch nicht der Fall. Das - Paket \Package{french} zerstört deshalb die Definition aus \Class{scrlttr2} - und arbeitet nicht korrekt mir \KOMAScript{} zusammen. Ich betrachte dies - als Fehler des Paketes \Package{french}. - - Wird das Paket \Package{babel}\IndexPackage{babel} für die Umschaltung auf - die Sprache \PValue{french} verwendet und ist gleichzeitig das Paket - \Package{french} installiert, so ergeben sich genau dieselben Probleme, weil - in diesem Fall Teile des Paketes \Package{french} verwendet werden. -\iffalse - Ist das - Paket \Package{french} nicht installiert, ergibt sich das Problem mit - \Package{babel} nicht. Ebenfalls existiert das Problem nicht, wenn man bei - \Package{babel} an Stelle der Sprache \PValue{french} eine der Sprachen - \PValue{acadian}, \PValue{canadien}, \PValue{francais} oder \PValue{frenchb} - verwendet. -\fi - Ich empfehle daher die Verwendung von - \Macro{usepackage}\OParameter{\PValue{frenchb}}\PParameter{babel}, um auf - französische Sprache umzuschalten. - -\iffalse - Es ist nicht auszuschließen, dass mit anderen Sprachen und Paketen ähnliche - Probleme auf"|treten. Für Deutsch sind solche Probleme jedoch nicht bekannt - und treten weder mit den Paketen \Package{german}\IndexPackage{german} oder - \Package{ngerman}\IndexPackage{ngerman} noch mit \Package{babel} auf. -\fi -\end{Explain} - -\begin{Declaration} - \Macro{captionsenglish}\\ - \Macro{captionsUSenglish}\\ - \Macro{captionsamerican}\\ - \Macro{captionsbritish}\\ - \Macro{captionsUKenglish}\\ - \Macro{captionsgerman}\\ - \Macro{captionsngerman}\\ - \Macro{captionsaustrian}\\ - \Macro{captionsfrench}\\ - \Macro{captionsitalian}\\ - \Macro{captionsspanish}\\ - \Macro{captionsdutch}\\ - \Macro{captionscroatian} -\end{Declaration} -\BeginIndex{Cmd}{captionsenglish}\BeginIndex{Cmd}{captionsUSenglish} -\BeginIndex{Cmd}{captionsamerican}\BeginIndex{Cmd}{captionsbritish} -\BeginIndex{Cmd}{captionsUKenglish}\BeginIndex{Cmd}{captionsgerman} -\BeginIndex{Cmd}{captionsngerman} -\BeginIndex{Cmd}{captionsaustrian}\BeginIndex{Cmd}{captionsfrench} -\BeginIndex{Cmd}{captionsitalian}\BeginIndex{Cmd}{captionsspanish} -\BeginIndex{Cmd}{captionsdutch}\BeginIndex{Cmd}{captionscroatian} Wird -die Sprache eines Briefes gewechselt, so werden über diese Anweisungen -die Begriffe aus \autoref{sec:scrlttr2.languageTerms} -umdefiniert. Sollte das verwendete Sprachumschaltpaket dies nicht -unterstützen, so können obige Anweisungen notfalls auch direkt verwendet -werden. -% -\EndIndex{Cmd}{captionsenglish}\EndIndex{Cmd}{captionsUSenglish} -\EndIndex{Cmd}{captionsamerican}\EndIndex{Cmd}{captionsbritish} -\EndIndex{Cmd}{captionsUKenglish}\EndIndex{Cmd}{captionsgerman} -\EndIndex{Cmd}{captionsngerman} -\EndIndex{Cmd}{captionsaustrian}\EndIndex{Cmd}{captionsfrench} -\EndIndex{Cmd}{captionsitalian}\EndIndex{Cmd}{captionsspanish} -\EndIndex{Cmd}{captionsdutch}\EndIndex{Cmd}{captionscroatian} - -\begin{Declaration} - \Macro{dateenglish}\\ - \Macro{dateUSenglish}\\ - \Macro{dateamerican}\\ - \Macro{datebritish}\\ - \Macro{dateUKenglish}\\ - \Macro{dategerman}\\ - \Macro{datengerman}\\ - \Macro{dateaustrian}\\ - \Macro{datefrench}\\ - \Macro{dateitalian}\\ - \Macro{datespanish}\\ - \Macro{datedutch}\\ - \Macro{datecroatian} -\end{Declaration} -\BeginIndex{Cmd}{dateenglish}\BeginIndex{Cmd}{dateUSenglish} -\BeginIndex{Cmd}{dateamerican}\BeginIndex{Cmd}{datebritish} -\BeginIndex{Cmd}{dateUKenglish}\BeginIndex{Cmd}{dategerman} -\BeginIndex{Cmd}{datengerman} -\BeginIndex{Cmd}{dateaustrian}\BeginIndex{Cmd}{datefrench} -\BeginIndex{Cmd}{dateitalian}\BeginIndex{Cmd}{datespanish} -\BeginIndex{Cmd}{datedutch}\BeginIndex{Cmd}{datecroatian}% -Je nach verwendeter Sprache werden auch die Datumsangaben\Index{Datum} -des nummerischen Datums (siehe Option \Option{numericaldate} in -\autoref{sec:scrlttr2.headoptions}) in unterschiedlicher Form -umgesetzt. Die genauen Angaben können der \autoref{tab:date} -entnommen werden. -% -\begin{table} - \centering - \begin{tabular}{ll} - \Macro{dateenglish} & 1/12/1993\\ - \Macro{dateUSenglish} & 12/1/1993\\ - \Macro{dateamerican} & 12/1/1993\\ - \Macro{datebritish} & 1/12/1993\\ - \Macro{dateUKenglish} & 1/12/1993\\ - \Macro{dategerman} & 1.\,12.\,1993\\ - \Macro{datengerman} & 1.\,12.\,1993\\ - \Macro{dateaustrian} & 1.\,12.\,1993\\ - \Macro{datefrench} & 1.\,12.\,1993\\ - \Macro{dateitalian} & 1.\,12.\,1993\\ - \Macro{datespanish} & 1.\,12.\,1993\\ - \Macro{datedutch} & 1.\,12.\,1993\\ - \Macro{datecroatian} & 1.\,12.\,1993.\\ - \end{tabular} - \caption{Sprachabhängige Ausgabeformate für das Datum} - \label{tab:date} -\end{table} -% -\EndIndex{Cmd}{dateenglish}\EndIndex{Cmd}{dateUSenglish} -\EndIndex{Cmd}{dateamerican}\EndIndex{Cmd}{datebritish} -\EndIndex{Cmd}{dateUKenglish}\EndIndex{Cmd}{dategerman} -\EndIndex{Cmd}{datengerman} -\EndIndex{Cmd}{dateaustrian}\EndIndex{Cmd}{datefrench} -\EndIndex{Cmd}{dateitalian}\EndIndex{Cmd}{datespanish} -\EndIndex{Cmd}{datedutch}\EndIndex{Cmd}{datecroatian}% - -\subsection{Sprachabhängige Begriffe} -\label{sec:scrlttr2.languageTerms} -\Index[indexmain]{sprachabhaengige Begriffe=sprachabhängige Begriffe} -Bei \Class{scrlttr2} sind, wie bei \LaTeX{} üblich, sprachabhängige -Begriffe in Anweisungen abgelegt, die bei der Sprachumschaltung -umdefiniert werden. - -\begin{Declaration} - \Macro{yourrefname}\\ - \Macro{yourmailname}\\ - \Macro{myrefname}\\ - \Macro{customername}\\ - \Macro{invoicename}\\ - \Macro{subjectname}\\ - \Macro{ccname}\\ - \Macro{enclname}\\ - \Macro{headtoname}\\ - \Macro{headfromname}\\ - \Macro{datename}\\ - \Macro{pagename}\\ - \Macro{phonename}\\ - \Macro{faxname}\\ - \Macro{emailname}\\ - \Macro{wwwname}\\ - \Macro{bankname} -\end{Declaration} -\BeginIndex{Cmd}{yourrefname}\BeginIndex{Cmd}{yourmailname} -\BeginIndex{Cmd}{myrefname} -\BeginIndex{Cmd}{customername}\BeginIndex{Cmd}{invoicename} -\BeginIndex{Cmd}{subjectname} -\BeginIndex{Cmd}{ccname}\BeginIndex{Cmd}{enclname} -\BeginIndex{Cmd}{headtoname}\BeginIndex{Cmd}{headfromname} -\BeginIndex{Cmd}{datename}\BeginIndex{Cmd}{pagename} -\BeginIndex{Cmd}{phonename}\BeginIndex{Cmd}{faxname} -\BeginIndex{Cmd}{emailname}\BeginIndex{Cmd}{wwwname} -\BeginIndex{Cmd}{bankname}% -Die aufgeführten Anweisungen enthalten die jeweiligen sprachtypischen -Begriffe. Diese können für die Realisierung einer weiteren Sprache -oder aber auch zur eigenen freien Gestaltung angepasst werden. Wie -dies geht, wird in \mbox{\autoref{sec:scrlttr2.defLanguageTerms}} -erklärt. Von \Class{scrlttr2} werden die Begriffe erst nach der -Präambel, also bei \Macro{begin}\PParameter{document} gesetzt. Sie -sind daher vorher nicht verfügbar und können vorher auch nicht -geändert werden. In \autoref{tab:scrlttr2.languageTerms} sind die -Voreinstellungen für \Option{english} und \Option{ngerman} zu finden. -% -\begin{table} - \centering - \begin{tabular}{lll} - Anweisung & \Option{english} & \Option{ngerman} \\\hline\\[-2ex] - \Macro{bankname} & Bank account & Bankverbindung \\ - \Macro{ccname} & cc & Kopien an \\ - \Macro{customername} & Customer no. & Kundennummer \\ - \Macro{datename} & Date & Datum \\ - \Macro{emailname} & Email & E-Mail \\ - \Macro{enclname} & encl & Anlagen \\ - \Macro{faxname} & Fax & Fax \\ - \Macro{headfromname} & From & Von \\ - \Macro{headtoname} & To & An \\ - \Macro{invoicename} & Invoice no. & Rechnungsnummer \\ - \Macro{myrefname} & Our ref. & Unser Zeichen \\ - \Macro{pagename} & Page & Seite \\ - \Macro{phonename} & Phone & Telefon \\ - \Macro{subjectname} & Subject & Betrifft \\ - \Macro{wwwname} & Url & URL \\ - \Macro{yourmailname} & Your letter of & Ihr Schreiben vom\\ - \Macro{yourrefname} & Your ref. & Ihr Zeichen \\ - \end{tabular} - \caption[Voreinstellungen für die sprachabhängigen - Begriffe]{Voreinstellungen für die sprachabhängigen Begriffe bei - Verwendung der Sprachen \Option{english} und \Option{ngerman} - soweit nicht durch die Pakete zur Sprachumschaltung bereits - definiert} - \label{tab:scrlttr2.languageTerms} -\end{table} -% -\EndIndex{Cmd}{yourrefname}\EndIndex{Cmd}{yourmailname} -\EndIndex{Cmd}{myrefname} -\EndIndex{Cmd}{customername}\EndIndex{Cmd}{invoicename} -\EndIndex{Cmd}{subjectname} -\EndIndex{Cmd}{ccname}\EndIndex{Cmd}{enclname} -\EndIndex{Cmd}{headtoname}\EndIndex{Cmd}{headfromname} -\EndIndex{Cmd}{datename}\EndIndex{Cmd}{pagename} -\EndIndex{Cmd}{phonename}\EndIndex{Cmd}{faxname} -\EndIndex{Cmd}{emailname}\EndIndex{Cmd}{wwwname} -\EndIndex{Cmd}{bankname} - - -\subsection{Definieren und Ändern sprachabhängiger Begriffe} -\label{sec:scrlttr2.defLanguageTerms} -\Index[indexmain]{Sprachdefinition} -\begin{Explain} - Normalerweise muss man zur Definition oder zur Änderung - sprachabhängier Begriffe die Anweisungen aus - \autoref{sec:scrlttr2.switchLanguage} so umdefinieren, dass - zusätzlich zu den bisherigen Begriffen auch die neuen oder - geänderten definiert werden. Erschwert wird dieses Vorhaben dadurch, - dass beim Laden eines Paketes wie - \Package{german}\IndexPackage{german} oder - \Package{ngerman}\IndexPackage{ngerman} diese Anweisungen von den - Paketen erneut definiert werden. Bei den genannten Paketen geschieht - dies leider in einer Form, die alle zuvor gemachten Änderungen - zunichte macht. Dies ist auch der Grund, warum \Class{scrlttr2} - seine eigenen Änderungen mit Hilfe von \Macro{AtBeginDocument} bis - \Macro{begin}\PParameter{document}, also bis nach dem Laden aller - Pakete, verzögert. Auch der Anwender muss entweder von - \Macro{AtBeginDocument} Gebrauch machen oder aber seine Änderungen - nicht in die Dokumentpräambel, sondern hinter - \Macro{begin}\PParameter{document} einfügen. Die Klasse - \Class{scrlttr2} bietet ihm für die Definition selbst einige - zusätzliche Anweisungen. -\end{Explain} - -\begin{Declaration} - \Macro{providecaptionname}% - \Parameter{Sprache}\Parameter{Begriff}\Parameter{Inhalt}\\ - \Macro{newcaptionname}% - \Parameter{Sprache}\Parameter{Begriff}\Parameter{Inhalt}\\ - \Macro{renewcaptionname}% - \Parameter{Sprache}\Parameter{Begriff}\Parameter{Inhalt} -\end{Declaration} -\BeginIndex{Cmd}{providecaptionname}% -\BeginIndex{Cmd}{newcaptionname}% -\BeginIndex{Cmd}{renewcaptionname}% -Mit Hilfe dieser drei Anweisungen ist es möglich, einem -\PName{Begriff} in Abhängigkeit der \PName{Sprache} einen -\PName{Inhalt} zuzuweisen. Der \PName{Begriff} ist dabei immer ein -Makro. Die Arbeitsweise der drei Anweisungen unterscheidet sich je -nachdem, ob eine \PName{Sprache} und ein \PName{Begriff} innerhalb der -\PName{Sprache} zum Zeitpunkt des Aufrufs bereits definiert ist. - -Ist eine \PName{Sprache} nicht definiert, so tut -\Macro{providecaptionname} nichts weiter, als dies in der -\File{log}-Datei zu vermerken. Dabei wird für jede Sprache nur einmal -eine entsprechende Information in die \File{log}-Datei -geschrieben. Ist die Sprache definiert, enthält aber bisher keinen -entsprechenden \PName{Begriff}, so wird er mit dem angegebenen -\PName{Inhalt} definiert. Ist der \PName{Begriff} hingegen in der -\PName{Sprache} bereits definiert, so wird er nicht umdefiniert, -sondern ein entsprechender Hinweis in die \File{log}-Datei -geschrieben. - -Die Anweisung \Macro{newcaptionname} verhält sich etwas anders. Ist -die \PName{Sprache} nicht definiert, dann wird sie neu definiert, indem -eine entsprechende Anweisung (siehe -\autoref{sec:scrlttr2.switchLanguage}) definiert wird. Außerdem -wird darüber auch in der \File{log}-Datei informiert. Ist die -\PName{Sprache} definiert, der \PName{Begriff} in dieser -\PName{Sprache} aber noch nicht vorhanden, so wird er mit dem -gewünschten \PName{Inhalt} definiert. Ist der \PName{Begriff} in der -\PName{Sprache} bereits vorhanden, so wird eine Fehlermeldung -ausgegeben. - -Noch einmal anders verhält sich die Anweisung -\Macro{renewcaptionname}. Ist die \PName{Sprache} nicht definiert, so -wird eine Fehlermeldung ausgegeben. Ist die \PName{Sprache} definiert, -der \PName{Begriff} in dieser \PName{Sprache} jedoch nicht, so wird -ebenfalls eine Fehlermeldung ausgegeben. Ist der \PName{Begriff} in -der \PName{Sprache} definiert, so wird er auf den gewünschten -\PName{Inhalt} umdefiniert. - -Die Klasse \Class{scrlttr2} selbst verwendet -\Macro{providecaptionname} um die Begriffe aus -\autoref{sec:scrlttr2.languageTerms} zu definieren. - -\begin{Example} - Möchten Sie statt des Eintrags "`Ihr Schreiben vom"' lieber "`Ihre - Nachricht vom"' in der Geschäftszeile stehen haben, müssen Sie den - Begriff \Macro{yourmailname} wie folgt umdefinieren. - \begin{small} -\begin{verbatim} - \renewcaptionname{ngerman}{\yourmailname}{% - Ihre Nachricht vom} -\end{verbatim} - \end{small} - Da mit \Macro{renewcaptionname} nur bereits vorhandene Begriffe in - vorhandenen Sprachen umdefiniert werden können, müssen Sie diese - Anweisung nach \Macro{begin}\PParameter{document} setzen oder mit - Hilfe von \Macro{AtBeginDocument} verzögern. Außerdem werden Sie - eine Fehlermeldung erhalten, wenn Sie kein Paket zur - Sprachumschaltung auf \PValue{ngerman} verwenden. -\end{Example} -% -\EndIndex{Cmd}{providecaptionname}% -\EndIndex{Cmd}{newcaptionname}% -\EndIndex{Cmd}{renewcaptionname}% -% -\EndIndex{}{Sprachen}% - - -\section{Adressdateien und Serienbriefe} -\label{sec:scrlttr2.addressFile}% -\BeginIndex{}{Adressdatei}\BeginIndex{}{Serienbriefe}% - -Als besonders lästig wird bei Briefen immer das Eintippen der -Adressen und das Erstellen von Serienbriefen betrachtet. Die Klasse -\Class{scrlttr2} bietet hierfür wie schon die obsolete Klasse -\Class{scrlettr} eine gewisse Unterstützung. Eine stark verbesserte -Serienbrief"|funktion ist derzeit in Planung. - -\begin{Declaration} - \Macro{adrentry}\Parameter{Name}\Parameter{Vorname}\Parameter{Adresse}% - \Parameter{Telefon}\Parameter{F1}\Parameter{F2}% - \Parameter{Kommentar}\Parameter{Kürzel} -\end{Declaration} -\BeginIndex{Cmd}{adrentry}% -Mit der \Class{scrlttr2}-Klasse können -Adressdateien\Index[indexmain]{Adressdatei} ausgewertet werden. Dies ist -beispielsweise für Serienbriefe sehr nützlich. Eine Adressdatei muss -die Endung \File{.adr} haben und besteht aus einer Reihe von -\Macro{adrentry}-Einträgen. Ein solcher Eintrag besteht aus acht -Elementen und kann beispielsweise wie folgt aussehen: -\begin{small} -\begin{verbatim} - \adrentry{Maier} - {Herbert} - {\Wiesenweg 37\\ 09091 Blumental} - {0\,23\,34 / 91\,12\,74} - {Bauunternehmer} - {} - {kauft alles} - {MAIER} -\end{verbatim} -\end{small} -Die Elemente fünf und sechs, \PValue{F1} und \PValue{F2}, können frei -bestimmt werden. Denkbar wären neben Hinweisen auf das Geschlecht oder -akademische Grade auch der Geburtstag oder das Eintrittsdatum in einen -Verein. Um das Überschreiben von \TeX- oder \LaTeX-Anweisungen zu -vermeiden, ist es empfehlenswert, für \PName{Kürzel} ausschließlich -Großbuchstaben zu verwenden. - -\begin{Example} - Herr Maier gehört zu Ihren engeren Geschäftspartnern. Da Sie eine - rege Korrespondenz mit ihm pflegen, ist es Ihnen auf Dauer zu - mühsam, jedesmal alle Empfängerdaten aufs Neue einzugeben. - \Class{scrlttr2} nimmt Ihnen diese Arbeit ab. Angenommen, Sie haben - Ihre Kundenkontakte in der Datei \File{partner.adr} gespeichert und - Sie möchten Herrn Maier einen Brief schreiben, dann sparen Sie sich - viel Tipparbeit, wenn Sie folgendes eingeben: - \begin{small} -\begin{verbatim} - \input{partner.adr} - \begin{letter}{\MAIER} - Der Brief ... - \end{letter} -\end{verbatim}\end{small} - Achten Sie bitte darauf, dass Ihr \TeX-System auch auf die - \File{.adr}-Dateien zugreifen kann, da sonst eine Fehlermeldung - von \Macro{input} verursacht wird. Entweder Sie legen die Brief- - und Adressdateien im selben Verzeichnis an, oder Sie binden ein - Adressverzeichnis fest in Ihr \TeX-System ein. -\end{Example} -% -\EndIndex{Cmd}{adrentry} - - -\begin{Declaration} - \Macro{addrentry}\Parameter{Name}\Parameter{Vorname}\Parameter{Adresse}% - \Parameter{Telefon}\Parameter{F1}\Parameter{F2}\Parameter{F3}% - \Parameter{F4}\Parameter{Kürzel} -\end{Declaration} -\BeginIndex{Cmd}{addrentry}% -Da über die Jahre hinweg immer wieder Klagen aufkamen, dass insgesamt -nur zwei freie Felder zu wenig seien, verfügt \Class{scrlttr2} nun -alternativ über die Anweisung \Macro{addrentry}. Mit dem zusätzlichen -"`\texttt{d}"' im Namen sind hier auch zwei weitere freie Felder -hinzugekommen, dafür ist jedoch der Kommentar entfallen. Ansonsten -kann die Anweisung genau wie \Macro{adrentry} verwendet werden. In -einer \File{adr}-Datei können sowohl \Macro{adrentry}- als auch -\Macro{addrentry}-Anweisungen stehen. Ich weise jedoch darauf hin, -dass Zusatzpakete wie das \Package{adrconv}-Paket von Axel Kielhorn -bisher nicht auf die Verwendung von \Macro{addrentry} ausgelegt sind. -Hier muss der Anwender gegebenenfalls selbst entsprechende -Erweiterungen vornehmen. -% -\EndIndex{Cmd}{addrentry} - - -Neben dem vereinfachten Zugriff auf Kundendaten können die -\File{.adr}-Dateien auch für Serienbriefe\Index[indexmain]{Serienbriefe} -genutzt werden. So ist es ohne die komplizierte Anbindung an -Datenbanksysteme möglich, solche Massenpostsendungen zu erstellen. -% -\begin{Example} - Sie wollen einen Serienbrief an alle Mitglieder Ihres - Anglervereins schicken, um zur nächsten Mitgliederversammlung - einzuladen. - \begin{small} -\begin{verbatim} - \documentclass{scrlttr2} - \usepackage{ngerman} - \usepackage[latin1]{inputenc} - \begin{document} - \renewcommand*{\adrentry}[8]{ - \begin{letter}{#2 #1\\#3} - \opening{Liebe Vereinsmitglieder,} - unsere nächste Mitgliederversammlung findet am - Montag, dem 12.~August 2002, statt. - - Folgende Punkte müssen besprochen werden... - \closing{Petri Heil,} - \end{letter} - } - \input{mitglieder.adr} - \end{document} -\end{verbatim} - \end{small} - Sind in Ihrer \File{adr}-Datei auch \Macro{addrentry}-Anweisungen - enthalten, müssen Sie dafür eine entsprechende Definition vor dem - Einladen der Adressdatei ergänzen: - \begin{small} -\begin{verbatim} - \renewcommand*{\addrentry}[9]{ - \begin{letter}{#2 #1\\#3} - \opening{Liebe Vereinsmitglieder,} - unsere nächste Mitgliederversammlung findet am - Montag, dem 12.~August 2002, statt. - - Folgende Punkte müssen besprochen werden... - \closing{Petri Heil,} - \end{letter} - } -\end{verbatim} - \end{small} - Bei diesem Beispiel wird kein Gebrauch von dem zusätzlichen freien - Feld gemacht. -\end{Example} - -Natürlich kann der Brief"|inhalt auch von den Adressatenmerkmalen -abhängig gemacht werden. Als Bedingungsfelder können die frei -bestimmbaren Elemente fünf oder sechs eines \Macro{adrentry}-Eintrages -genutzt werden. -\begin{Example} - Angenommen, Sie verwenden das Element fünf, um das Geschlecht eines - Vereinsmitgliedes zu hinterlegen (\PValue{m/w}) und das sechste - Element weist auf einen Rückstand der Mitgliedsbeiträge hin. Wollen - Sie nun alle säumigen Mitglieder anschreiben und persönlich anreden, - so hilft Ihnen folgendes Beispiel weiter: - \begin{small} -\begin{verbatim} - \renewcommand*{\adrentry}[8]{ - \ifdim #6sp>0sp\relax - % #6 ist ein Betrag (Gleitkommazahl) größer 0. - % Es werden also die säumigen Mitglieder - % herausgefiltert. - \begin{letter}{#2 #1\\#3} - \if #5m \opening{Lieber #2,} \fi - \if #5w \opening{Liebe #2,} \fi - - Leider mussten wir feststellen, dass du mit der - Zahlung deiner Mitgliedsbeiträge im Rückstand bist. - - Wir möchten Dich bitten, den offenen Betrag von - #6~EUR auf das Vereinskonto einzuzahlen. - \closing{Petri Heil,} - \end{letter} - \fi - } -\end{verbatim} - \end{small} -\end{Example} -Es ist also möglich, den Brieftext auf bestimmte Empfängermerkmale -gezielt abzustimmen und so den Eindruck eines persönlichen -Schreibens zu erwecken. Die Anwendungsbreite ist lediglich durch -die maximale Anzahl von zwei freien \Macro{adrentry}-Elementen -beziehungsweise vier freien \Macro{addrentry}-Elementen begrenzt. - - -\begin{Declaration} - \Macro{adrchar}\Parameter{Anfangsbuchstaben}\\ - \Macro{addrchar}\Parameter{Anfangsbuchstaben} -\end{Declaration} -\BeginIndex{Cmd}{adrchar}% -\BeginIndex{Cmd}{addrchar}% -\Index[indexmain]{Adressverzeichnis}\Index[indexmain]{Telefonliste}% -Es ist auch möglich, die Informationen einer \File{.adr}-Datei in -Adressverzeichnisse oder Telefonlisten umzuwandeln. Sie benötigen dazu -zusätzlich das \Package{adrconv}-Paket von Axel Kielhorn (siehe -\cite{package:adrconv}). In diesem Paket sind interaktive -\LaTeX-Dokumente enthalten, mit deren Hilfe sehr einfach entsprechende -Listen erstellt werden können. - -Damit die Listen alphabetisch sortiert ausgegeben werden, muss bereits -die Adressdatei sortiert gewesen sein. Es empfiehlt sich dabei, vor -jedem neuen Anfangsbuchstaben eine Anweisung \Macro{adrchar} mit -diesem Buchstaben als Argument einzufügen. \Class{scrlttr2} selbst -ignoriert diese Anweisung. -% -\begin{Example} - Sie haben folgende, winzige Adressdatei: -% In der folgenden verbatim-Umgebung je nach Umbruchbedarf einzelne -% Elemente löschen oder hinzufügen. MICHAEL und GABRIEL sollten jedoch -% erhalten bleiben. - \begin{small} -\begin{verbatim} - \adrchar{E} - \adrentry{Engel}{Gabriel} - {Wolke 3\\12345 Himmelreich} - {000\,01\,02\,03}{}{}{Erzengel}{GABRIEL} - \adrentry{Engel}{Michael} - {Wolke 3a\\12345 Himmelreich} - {000\,01\,02\,04}{}{}{Erzengel}{MICHAEL} - \adrentry{Engel}{Raphael} - {Wolke 3b\\12345 Himmelreich} - {000\,01\,02\,05}{}{}{Erzengel}{RAPHAEL} - \adrchar{K} - \adrentry{Kohm}{Markus} - {Fichtenstra\ss e 63\\68535 Edingen-Neckarhausen} - {+49~62\,03~1\,??\,??}{}{}{\"Uberhaupt kein Engel} - {KOMA} - \adrchar{T} - \adrentry{Teufel}{Luzifer} - {Hinter der Flamme 1\\66666 H\"ollenschlund} - {}{}{}{Gefallener Engel ohne Telefon}{LUZIFER} -\end{verbatim} - \end{small} - Diese bearbeiten Sie nun unter Verwendung von \File{adrdir.tex} aus - \cite{package:adrconv}. Seite~3 des Ergebnisses sieht dann etwa so - aus: - \begin{center} - \setlength{\unitlength}{1mm} - \begin{picture}(80,57) - \put(0,57){\line(1,0){80}} - \put(0,3){\line(0,1){54}} - \put(80,3){\line(0,1){54}} - \thicklines - \put(10,42){\line(1,0){60}} - \put(70,45){\makebox(0,0)[r]{\textsf{\textbf{E}}}} - \put(10,23){\makebox(0,20)[l]{\parbox{5cm}{\raggedright - \textsc{Engel}, Gabriel\\\quad\small Wolke 3\\ - \quad 12345 Himmelreich\\ - \quad (Erzengel)}}} - \put(70,23){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\ - \small~\\\textsc{gabriel}\\000\,01\,02\,03}}} - \put(10,4){\makebox(0,20)[l]{\parbox{5cm}{\raggedright - \textsc{Engel}, Michael\\\quad\small Wolke 3a\\ - \quad 12345 Himmelreich\\ - \quad (Erzengel)}}} - \put(70,4){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\ - \small~\\\textsc{michael}\\000\,01\,02\,04}}} - \qbezier(0,3)(10,6)(40,3)\qbezier(40,3)(60,0)(80,3) - \end{picture} - \end{center} - Dabei wird der Buchstabe in der Kopfzeile von \Macro{adrchar} - erzeugt. Siehe dazu die Definition in \File{adrdir.tex}. -\end{Example} -Näheres zum \Package{adrconv}-Paket ist der zugehörigen Anleitung zu -entnehmen. Dort finden Sie auch Angaben darüber, ob die aktuelle -Version von \Package{adrconv} bereits mit \Macro{addrentry} und -\Macro{addrchar} umgehen kann. Frühere Versionen kannten nur -\Macro{adrentry} und \Macro{adrchar}. -% -\EndIndex{Cmd}{adrchar}\EndIndex{Cmd}{addrchar}% -% -\EndIndex{}{Adressdatei}\EndIndex{}{Serienbriefe}% - - -\section{Von \Class{scrlettr} nach \Class{scrlttr2}} -\label{sec:scrlttr2.fromscrlettr} - -Bei der Umwandlung eines alten Briefes, der ursprünglich mit -\Class{scrlettr}\IndexClass{scrlettr} gesetzt wurde, besteht der erste -Schritt darin, die \File{lco}-Datei \Option{KOMAold} als Option bei -\Macro{documentclass} anzugeben. Damit sollte die Mehrzahl der -Anweisungen der alten Klasse bereits funktionieren. An einigen Stellen -wird sich die Ausgabe mit der neuen Klasse trotzdem unterscheiden, -weil nun mal der Satzspiegel der alten Klasse nicht vollständig -nachgebildet wird. Dies hat seine Ursache nicht zuletzt darin, dass in -der Satzspiegelerstellung von \Class{scrlettr} noch diverse Fehler -enthalten waren. So war die Position der Faltmarken beispielsweise von -der Höhe der Kopfzeile abhängig, die wiederum von der Größe der -Grundschrift abhängig war. Eindeutig ein Designfehler der Klasse -\Class{scrlettr}. - -Keine Kompatibilität wird bezüglich der von \Class{scrlettr} -verwendeten Längen erreicht. Wer also in seinem Dokument den -Satzspiegel von \Class{scrlettr} verändert hatte, der sollte diese -Änderungen entfernen oder auskommentieren. In einigen Fällen führt die -Änderung einer Länge oder einer internen Anweisung von -\Class{scrlettr} auch zu einer Fehlermeldung, da die entsprechenden -Längen oder Anweisungen in \Class{scrlttr2} nicht mehr definiert -sind. Versuchen Sie in dem Fall ebenfalls diese Änderungen zu -entfernen oder auszukommentieren. - -Nach dem Wechsel von \Class{scrlettr} zu \Class{scrlttr2} wird der -alte Beispielbrief allein schon durch Setzen der Option -\Option{KOMAold} verarbeitbar: -\begin{small} -\begin{verbatim} - \documentclass[10pt,KOMAold]{scrlttr2} - \usepackage{ngerman} - \name{\KOMAScript{}-Gruppe} - \address{Klassengasse 1\\12345 \LaTeX{}hausen} - \signature{Euer \KOMAScript{}-Team} - \begin{document} - \begin{letter}{Die \KOMAScript{}-Nutzer\\ - Irgendwo\\weltweit} - \opening{Liebe \KOMAScript{}-Nutzer,} - das \KOMAScript{}-Team m"ochte Euch mit ein paar - Informationen .... - \closing{Viel Spa"s} - \end{letter} - \end{document} -\end{verbatim} -\end{small} - -Der nächste Schritt kann dann darin bestehen, dass man eben nicht mehr -das Layout der alten Klasse nachbilden, aber trotzdem nicht auf die -alten Anweisungen verzichten will. Will man beispielsweise das Layout -von \Option{DIN}, so gibt man einfach diese Option zusätzlich und -\emph{nach} der Option \Option{KOMAold} an: -\begin{small} -\begin{verbatim} - \documentclass[10pt,KOMAold,DIN]{scrlttr2} - \usepackage{ngerman} - \name{\KOMAScript{}-Gruppe} - \address{Klassengasse 1\\12345 \LaTeX{}hausen} - \signature{Euer \KOMAScript{}-Team} - \begin{document} - \begin{letter}{Die \KOMAScript{}-Nutzer\\ - Irgendwo\\weltweit} - \opening{Liebe \KOMAScript{}-Nutzer,} - das \KOMAScript{}-Team m"ochte Euch mit ein paar - Informationen .... - \closing{Viel Spa"s} - \end{letter} - \end{document} -\end{verbatim} -\end{small} -Durch weitere Optionen kann das Aussehen auch weiter beeinflusst -werden. Ich empfehle stattdessen aber gleich noch einen Schritt weiter -zu gehen. - -Der letzte Schritt besteht dann darin, alle alten Anweisungen durch -die neuen Entsprechungen zu ersetzen und die Option \Option{KOMAold} -zu entfernen. Bei der Ersetzung kann es nützlich sein, einen Blick in -die Datei \File{KOMAold.lco} zu werfen. In dieser sind die alten -Befehle mit Hilfe der neuen Variablen und Anweisungen nachgebildet. -\begin{small} -\begin{verbatim} - \documentclass{scrlttr2} - \usepackage{ngerman} - \setkomavar{fromname}{\KOMAScript{}-Gruppe} - \setkomavar{fromaddress}{Klassengasse 1\\ - 12345 \LaTeX hausen} - \setkomavar{signature}{Euer \KOMAScript{}-Team} - \let\raggedsignature=\raggedright - \begin{document} - \begin{letter}{Die \KOMAScript-Nutzer\\ - Irgendwo\\ - weltweit} - \opening{Liebe \KOMAScript-Nutzer,} - das \KOMAScript-Team m"ochte Euch mit ein paar - Informationen .... - \closing{Viel Spa"s} - \end{letter} - \end{document} -\end{verbatim} -\end{small} -In diesem Beispiel wurde außerdem von der Möglichkeit Gebrauch -gemacht, die Anordnung des Schlussgrußes und der Signatur durch -Änderung der Anweisung \Macro{raggedsignature} zu beeinflussen. Dies ist -immer dann empfehlenswert, wenn die Signatur erheblich breiter als die -Grußfloskel ist. - - -\section{Autoren} -\label{sec:scrlttr2.authors} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die -Vorlage dafür geliefert. -% In folgender Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\end{itemize} - -% -\EndIndex{Class}{scrlttr2}\EndIndex{}{Briefe} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/datladen.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/datladen.tex deleted file mode 100644 index 16f6389d807..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/datladen.tex +++ /dev/null @@ -1,319 +0,0 @@ -\ProvidesFile{datladen.tex}[2003/04/10 KOMA-Script Anleitung] -% ========================================================================= -% datladen.tex -% Copyright (c) 2001-2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of -% the LaTeX Project Public License Version 1.0 distributed together -% with this file. See LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ------------------------------------------------------------------------- -% datladen.tex -% Copyright (c) 2001-2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch -% LEGAL.TXT oder LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist -% auch diese Anleitung komplett in Deutsch. Moeglicherweise existiert -% auch eine englische Version der Anleitung. Falls Sie eine solche -% benoetigen, schauen Sie bitte in liesmich.txt nach, ob eine solche -% vorhanden ist. -% ========================================================================= -% -% Modul: datladen.tex -% Autoren: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Inhalt: Anleitung zu scrlfile, dem Paket fuer hooks vor und nach -% dem Laden anderer Pakete -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% - -\chapter{Paketabhängigkeiten mit \Package{scrlfile} beherrschen} -\label{cha:scrlfile} - -\BeginIndex{Package}{scrlfile} - -\section{Die Sache mit den Paketabhängigkeiten} -\label{sec:scrlfile.dependency} -\begin{Explain} - Die Einführung von \LaTeXe{} brachte 1994 eine Menge Neuerungen im - Umgang mit \LaTeX-Erweiterungen. So stehen dem Paketautor heute eine - ganze Reihe von Befehlen zur Verfügung, um festzustellen, ob ein - anderes Paket oder eine bestimmte Klasse verwendet wird und ob dabei - bestimmte Optionen zur Anwendung kommen. Der Paketautor kann selbst - andere Pakete laden oder diesen Optionen mit auf den Weg geben, für - den Fall, dass sie später noch geladen werden. Es bestand daher die - Hoffnung, dass es künftig unerheblich wäre, in welcher Reihenfolge - Pakete geladen werden. Diese Hoffnung hat sich leider nicht erfüllt. - Immer häufiger definieren unterschiedliche Pakete den gleichen - Befehl neu oder um. Dabei ist es dann sehr entscheidend, in welcher - Reihenfolge die Pakete geladen werden. Manchmal ist das für den - Anwender kaum zu überschauen. In manchen Fällen ist es auch - notwendig, einfach nur in irgendeiner Form auf das Laden eines - anderen Paketes zu reagieren. Auch das ist nicht immer ganz einfach. - - Nehmen wir als einfaches Beispiel das Laden des - \Package{longtable}-Paketes bei Verwendung von \KOMAScript{}. Das - \Package{longtable}-Paket definiert seine eigene Form von - Tabellenüberschriften. Diese passen perfekt zu den - Tabellenüberschriften der Standardklassen. Sie passen aber überhaupt - nicht zu den Voreinstellungen für die Tabellenüberschriften von - \KOMAScript{} und reagieren auch nicht auf die entsprechenden - Möglichkeiten der Konfiguration. Um dieses Problem zu lösen, müssen - die Befehle von \Package{longtable}, die für die - Tabellenüberschriften zuständig sind, von \KOMAScript{} umdefiniert - werden. Allerdings sind die \KOMAScript{}-Klassen bereits - abgearbeitet, wenn das Paket geladen wird. - - Bisher bestand die einzige Möglichkeit, dieses Problem zu lösen - darin, die Umdefinierung mit Hilfe von \Macro{AtBeginDocument} auf - einen späteren Zeitpunkt zu verschieben. Will der Anwender die - entsprechende Anweisung jedoch selbst umdefinieren, so sollte er - dies eigentlich ebenfalls in der Präambel tun. Das kann er jedoch - nicht, weil \KOMAScript{} ihm dabei in die Quere kommt. Er müsste - die Umdefinierung also ebenfalls mit Hilfe von - \Macro{AtBeginDocument} durchführen. - - Aber eigentlich müsste \KOMAScript{} die Abarbeitung gar nicht auf - den Zeitpunkt von \Macro{begin}\PParameter{document} verschieben. Es - würde genügen, wenn sie bis unmittelbar nach dem Laden von - \Package{longtable} verzögert werden könnte. Leider fehlen - entsprechende Anweisungen im \LaTeX-Kern. Das Paket - \Package{scrlfile} bringt hier Abhilfe. - - Ebenso wäre es denkbar, dass man vor dem Laden eines bestimmten - Paketes gerne die Bedeutung eines Makros in einem Hilfsmakro retten - und nach dem Laden des Paketes wieder restaurieren will. Auch das - geht mit \Package{scrlfile}. - - Die Anwendung von \Package{scrlfile} ist nicht auf die Abhängigkeit - von Paketen beschränkt. Auch Abhängigkeiten von anderen Dateien - können berücksichtigt werden. So kann beispielsweise dafür gesorgt - werden, dass das nicht unkritische Laden einer Datei wie - \File{french.ldf} automatisch zu einer Warnung führt. - - Obwohl das Paket in erster Linie für andere Paketautoren interessant - sein dürfte, gibt es durchaus auch Anwendungen für normale - \LaTeX-Benutzer. Deshalb sind in diesem Kapitel auch für beide - Gruppen Beispiele aufgeführt. -\end{Explain} - - -\section{Aktionen vor und nach dem Laden} -\label{sec:scrlfile.macros} - -\begin{Declaration} - \Macro{BeforeFile}\Parameter{Datei}\Parameter{Anweisungen}\\ - \Macro{AfterFile}\Parameter{Datei}\Parameter{Anweisungen} -\end{Declaration}% -\BeginIndex{Cmd}{BeforeFile}% -\BeginIndex{Cmd}{AfterFile}% -Mit Hilfe von \Macro{BeforeFile} kann dafür gesorgt werden, dass -\PName{Anweisungen} erst vor dem nächsten Laden einer bestimmten -\PName{Datei} ausgeführt werden. Vergleichbar arbeitet -\Macro{AfterFile}. Nur werden die \PName{Anweisungen} hier erst nach -dem Laden der \PName{Datei} ausgeführt. Wird die Datei nie geladen, so -werden die \PName{Anweisungen} auch nie ausgeführt. - -\begin{Explain} - Um die Funktionalität bereitstellen zu können, bedient sich - \Package{scrlfile} der bekannten \LaTeX-Anweisung - \Macro{InputIfFileExists}. Diese wird hierzu umdefiniert. Falls die - Anweisung nicht die erwartete Definition hat, gibt - \Package{scrlfile} eine Warnung aus. Dies geschieht für den Fall, - dass die Anweisung in späteren \LaTeX-Versionen geändert wird oder - bereits von einem anderen Paket umdefiniert wurde. - - Die Anweisung \Macro{InputIfFileExists} wird von \LaTeX{} immer - verwendet, wenn eine Datei geladen werden soll. Dies geschieht - unabhängig davon, ob die Datei mit \Macro{LoadClass}, - \Macro{documentclass}, \Macro{usepackage}, \Macro{RequiresPackage}, - \Macro{include} oder Ähnlichem geladen wird. Lediglich die Anweisung -\begin{verbatim} - \input foo -\end{verbatim} - lädt die Datei \texttt{foo} ohne Verwendung von - \Macro{InputIfFileExists}. Sie sollten daher stattdessen immer -\begin{verbatim} - \input{foo} -\end{verbatim} - verwenden. Beachten Sie die Klammern um den Dateinamen! -\end{Explain} -% -\EndIndex{Cmd}{BeforeFile}% -\EndIndex{Cmd}{AfterFile}% - -\begin{Declaration} - \Macro{BeforeClass}\Parameter{Klasse}\Parameter{Anweisungen}\\ - \Macro{BeforePackage}\Parameter{Paket}\Parameter{Anweisungen} -\end{Declaration}% -\BeginIndex{Cmd}{BeforeClass}% -\BeginIndex{Cmd}{BeforePackage}% -Diese beiden Befehle arbeiten genau wie \Macro{BeforeFile} mit dem -winzigen Unterschied, dass die \PName{Klasse} beziehungsweise das -\PName{Paket} mit seinem Namen und nicht mit seinem Dateinamen -angegeben wird. Die Endungen \File{.cls} und \File{.sty} entfallen -hier also. -% -\EndIndex{Cmd}{BeforeClass}% -\EndIndex{Cmd}{BeforePackage}% - -\begin{Declaration} - \Macro{AfterClass}\Parameter{Klasse}\Parameter{Anweisungen}\\ - \Macro{AfterClass*}\Parameter{Klasse}\Parameter{Anweisungen}\\ - \Macro{AfterPackage}\Parameter{Paket}\Parameter{Anweisungen}\\ - \Macro{AfterPackage*}\Parameter{Paket}\Parameter{Anweisungen} -\end{Declaration}% -\BeginIndex{Cmd}{AfterClass}% -\BeginIndex{Cmd}{AfterClass*}% -\BeginIndex{Cmd}{AfterPackage}% -\BeginIndex{Cmd}{AfterPackage*}% -Die Anweisungen \Macro{AfterClass} und \Macro{AfterPackage} arbeiten -wie \Macro{AfterFile} mit dem winzigen Unterschied, dass die -\PName{Klasse} beziehungsweise das \PName{Paket} mit seinem Namen und -nicht mit seinem Dateinamen angegeben wird. Die Endungen \File{.cls} -und \File{.sty} entfallen hier also. Bei den Sternvarianten gibt es -eine zusätzliche Funktionalität. Ist die entsprechende Klasse oder das -entsprechende Paket bereits geladen, so werden die \PName{Anweisungen} -nicht nach dem nächsten Laden, sondern unmittelbar ausgeführt. -% -\EndIndex{Cmd}{AfterClass}% -\EndIndex{Cmd}{AfterClass*}% -\EndIndex{Cmd}{AfterPackage}% -\EndIndex{Cmd}{AfterPackage*}% - -\begin{Example} - Als Beispiel für Paket- oder Klassenautoren will ich zunächst - erklären, wie \KOMAScript{} selbst Gebrauch von den neuen - Anweisungen macht. Dazu findet sich in \Class{scrbook} - beispielsweise Folgendes: - \begin{small} -\begin{verbatim} -\AfterPackage{hyperref}{% - \@ifpackagelater{hyperref}{2001/02/19}{}{% - \ClassWarningNoLine{scrbook}{% - You are using an old version of hyperref package!% - \MessageBreak% - This version has a buggy hack at many drivers% - \MessageBreak% - causing \string\addchap\space to behave strange.% - \MessageBreak% - Please update hyperref to at least version - 6.71b}}} -\end{verbatim} - \end{small} - Alte Versionen von \Package{hyperref} definierten ein Makro von - \Class{scrbook} in einer Weise um, so dass es mit neueren Versionen - von \KOMAScript{} nicht mehr funktioniert. Neuere Versionen von - \Package{hyperref} unterlassen dies, wenn sie eine neuere Version - von \KOMAScript{} erkennen. Für den Fall, dass \Package{hyperref} - zu einem späteren Zeitpunkt geladen wird, sorgt also \Class{scrbook} - dafür, dass unmittelbar nach dem Laden des Paketes überprüft wird, ob - es sich um eine verträgliche Version handelt. Falls dies nicht der - Fall ist, wird eine Warnung ausgegeben. - - An anderer Stelle findet sich in drei \KOMAScript-Klassen Folgendes: - \begin{small} -\begin{verbatim} - \AfterPackage{caption2}{% - \renewcommand*{\setcapindent}{% -\end{verbatim} - \end{small} - Nach dem Laden von \Package{caption2} und nur falls das Paket - geladen wird, wird hier die \KOMAScript-Anweisung - \Macro{setcapindent} umdefiniert. Der Inhalt der Umdefinierung ist - für dieses Beispiel unerheblich. Es sei nur erwähnt, dass - \Package{caption2} die Kontrolle über die \Macro{caption}-Anweisung - übernimmt und daher die normale Definition von \Macro{setcapindent} - keinerlei Wirkung mehr hätte. Die Umdefinierung verbessert dann die - Zusammenarbeit mit \Package{caption2}. - - Es gibt aber auch Beispiele für den sinnvollen Einsatz der neuen - Anweisungen durch normale Anwender. Angenommen, Sie erstellen ein - Dokument, aus dem sowohl eine PS-Datei mit \LaTeX{} und dvips als auch - eine PDF-Datei mit pdf\LaTeX{} erstellt werden soll. Das Dokument soll - außerdem Hyperlinks aufweisen. Im Tabellenverzeichnis haben Sie - Einträge, die über mehrere Zeilen gehen. Nun gibt es zwar mit - pdf\LaTeX{} bei der PDF-Ausgabe keine Probleme, da dort Links - umbrochen werden können. Bei Verwendung des - \Package{hyperref}-Treibers für dvips oder - hyper\TeX{} ist dies jedoch nicht - möglich. In diesem Fall hätten Sie gerne, dass bei - \Package{hyperref} die Einstellung \Option{linktocpage} verwendet - wird. Die Entscheidung, welcher Treiber geladen wird, wird bei Ihnen - automatisch von \File{hyperref.cfg} erledigt. Dazu sieht die Datei - beispielsweise wie folgt aus: - \begin{small} -\begin{verbatim} - \ProvidesFile{hyperref.cfg} - \@ifundefined{pdfoutput}{\ExecuteOptions{dvips}} - {\ExecuteOptions{pdftex}} - \endinput -\end{verbatim} - \end{small} - - Alles weitere kann nun \Macro{AfterFile} überlassen werden: - \begin{small} -\begin{verbatim} - \documentclass{article} - \usepackage{scrlfile,ngerman} - \AfterFile{hdvips.def}{\hypersetup{linktocpage}} - \AfterFile{hypertex.def}{\hypersetup{linktocpage}} - \usepackage{hyperref} - \begin{document} - \listoffigures - \clearpage - \begin{figure} - \caption{Dies ist ein Beispiel mit einer - Abbildungsunterschrift, die etwas länglich ist und - bei der trotzdem auf die Verwendung des optionalen - Arguments verzichtet wurde} - \end{figure} - \end{document} -\end{verbatim} - \end{small} - Egal, ob nun der \Package{hyperref}-Treiber \Option{hypertex} oder - \Option{dvips} zu Anwendung kommt, wird die dann nützliche - Einstellung \Option{linktocpage} verwendet. Wenn Sie jedoch mit - pdf\LaTeX{} eine PDF-Datei erstellen, wird darauf verzichtet. -\end{Example} - -\begin{Explain} - Übrigens können Sie das Laden von \Package{scrlfile} und die - \Macro{AfterFile}-Anweisungen auch in Ihre private - \File{hyperref.cfg} einfügen. Verwenden Sie dabei jedoch zum Laden - des Paketes besser \Macro{RequiresPackage} an Stelle von - \Macro{usepackage} (siehe \cite{latex:clsguide}). Die neuen Zeilen - müssen in obigem Beispiel unmittelbar nach der - \Macro{ProvidesFile}-Zeile, also unbedingt vor der Ausführung der - Optionen \Option{dvips} oder \Option{pdftex}, eingefügt werden. -\end{Explain} -\EndIndex{Package}{scrlfile} - - -\section{Autoren} -\label{sec:scrlfile.authors} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die Vorlage -dafür geliefert. -% In folgender Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item Markus Kohm \TextEMail{Markus.Kohm@gmx.de} -\end{itemize} - - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/datmzeit.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/datmzeit.tex deleted file mode 100644 index 6c66efe6958..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/datmzeit.tex +++ /dev/null @@ -1,230 +0,0 @@ -\ProvidesFile{datmzeit.tex}[2004/09/05 KOMA-Script Anleitung] -% ============================================================================ -% datmzeit.tex -% Copyright (c) 2001-2004 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% datmzeit.tex -% Copyright (c) 2001-2004 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: Datum- und Zeitroutinen -% Autoren: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Inhalt: Erweiterte Ausgaben von Datum und Zeit mit scrdate und scrtime -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% - -\chapter{Wochentag und Uhrzeit mit \Package{scrdate} und \Package{scrtime}} -\label{cha:datetime} - -Zu \KOMAScript{} gehören auch zwei Pakete, um den Umgang mit -Datum\Index{Datum} und Zeit\Index{Zeit} über die beiden -Standardbefehle \Macro{today} und \Macro{date} hinaus zu -erweitern. Ebenso wie die anderen Pakete aus {\KOMAScript} können -diese Pakete auch mit den Standardklassen verwendet werden. - -\section{Der aktuelle Wochentag mit \Package{scrdate}} -\label{sec:datetime.scrdate} -\BeginIndex{Package}{scrdate} - -\begin{Declaration} - \Macro{todaysname} -\end{Declaration}% -\BeginIndex{Cmd}{todaysname}% -Bekanntlich erhält man mit \Macro{today}\IndexCmd{today} das aktuelle -Datum in der landestypischen Schreibweise. \Package{scrdate} bietet -mit \Macro{todaysname} eine Anweisung, um den aktuellen Wochentag zu -erhalten. -\begin{Example} - Sie wollen in Ihrem Dokument ausgeben, an welchem Tag es mit - \LaTeX{} in eine \File{dvi}-Datei übersetzt wurde. Sie schreiben - dazu - \begin{small} -\begin{verbatim} - Dieses Dokument wurde an einem {\todaysname} übersetzt. -\end{verbatim} - \end{small} - und erhalten beispielsweise: - \begin{quote} - Dieses Dokument wurde an einem {\todaysname} übersetzt. - \end{quote} -\end{Example} -\begin{Explain} - \textbf{Tipp:} Wenn Sie den Namen des Tages in Kleinbuchstaben - benötigen, weil das in der entsprechenden Sprache innerhalb des - Satzes so üblich ist, können Sie das erreichen, obwohl die Namen der - Wochentage in \Package{scrdate} alle groß geschrieben sind. In - diesem Fall können Sie einfach auf die \LaTeX-Anweisung - \Macro{MakeLowercase} zurückgreifen und - \Macro{MakeLowercase}\PParameter{\Macro{todaysname}} schreiben. -\end{Explain} -\EndIndex{Cmd}{todaysname} - -\begin{Declaration} - \Macro{nameday}\Parameter{Name} -\end{Declaration}% -\BeginIndex{Cmd}{nameday}% -So wie mit \Macro{date}\IndexCmd{date} die Ausgabe von \Macro{today} -direkt geändert werden kann, setzt \Macro{nameday} die Ausgabe von -\Macro{todaysname} auf den Wert \PName{Name}. -\begin{Example} - Sie setzen mit \Macro{date} das aktuelle Datum auf einen festen - Wert. Für die Ausgabe des zugehörigen Wochentags interessiert es nur, - dass dieser Tag ein Werktag war. Daher schreiben Sie - \begin{small} -\begin{verbatim} - \nameday{Werktag} -\end{verbatim} - \end{small} - und erhalten so mit dem Satz aus dem vorherigen Beispiel: - \begin{quote}\nameday{Werktag} - Dieses Dokument wurde an einem {\todaysname} übersetzt. - \end{quote} -\end{Example} -\EndIndex{Cmd}{nameday} - -Das \Package{scrdate}-Paket beherrscht derzeit die Sprachen Englisch -(english and USenglish), Deutsch (german, ngerman und austrian), -Französisch (french), Italienisch (italian), Spanisch (spanish) und -Kroatisch (croatian), kann aber auch für andere Sprachen konfiguriert -werden. Näheres dazu entnehme man \File{scrdate.dtx}. - -Bei der aktuellen Version ist es egal, ob \Package{scrdate} vor oder -nach \Package{german}\IndexPackage{german}, -\Package{babel}\IndexPackage{babel} oder ähnlichen Paketen geladen -wird, in jedem Falle wird die korrekte Sprache -gewählt. - -\begin{Explain} - Etwas genauer ausgedrückt: Solange die Sprachauswahl in einer zu - \Package{babel}\IndexPackage{babel} bzw. - \Package{german}\IndexPackage{german} kompatiblen Form erfolgt und - die Sprache \Package{scrdate} bekannt ist, wird die Sprache korrekt - gewählt. Ist dies nicht der Fall, werden (US-)englische Ausdrücke - verwendet. -\end{Explain} -\EndIndex{Package}{scrdate} - -\section{Die aktuelle Zeit mit \Package{scrtime}} -\label{sec:datetime.scrtime} -\BeginIndex{Package}{scrtime} - -\begin{Declaration}% - \Macro{thistime}\OParameter{Trennung}\\ - \Macro{thistime*}\OParameter{Trennung} -\end{Declaration}% -\BeginIndex{Cmd}{thistime}\BeginIndex{Cmd}{thistime*}% -\Macro{thistime} liefert die aktuelle Zeit\Index{Zeit}. Als -Trennbuchstabe zwischen den Werten Stunden, Minuten und Sekunden -wird das optionale Argument \PName{Trennung} verwendet. Die -Voreinstellung ist hierbei das Zeichen "`\PValue{:}"'. - -\Macro{thistime*} funktioniert fast genau wie \Macro{thistime}. Der -einzige Unterschied besteht darin, dass im Gegensatz zu -\Macro{thistime} bei \Macro{thistime*} die Minutenangaben bei Werten -kleiner 10 nicht durch eine vorangestellte Null auf zwei Stellen -erweitert wird. -\begin{Example} - Die Zeile - \begin{small} -\begin{verbatim} - Ihr Zug geht um \thistime\ Uhr. -\end{verbatim} - \end{small} - liefert als Ergebnisse beispielsweise eine Zeile wie - \begin{quote} - Ihr Zug geht um \thistime\ Uhr. - \end{quote} - oder - \begin{quote} - Ihr Zug geht um 23:09 Uhr. - \end{quote} - \bigskip - Demgegenüber liefert die Zeile - \begin{small} -\begin{verbatim} - Beim nächsten Ton ist es \thistime*[\ Uhr,\ ] Minuten und - 42 Sekunden. -\end{verbatim} - \end{small} - als mögliches Ergebniss etwas wie: - \begin{quote} - Beim nächsten Ton ist es \thistime*[\ Uhr,\ ] Minuten und 42 Sekunden. - \end{quote} - oder - \begin{quote} - Beim nächsten Ton ist es 23\ Uhr,\ 9 Minuten und 42 Sekunden. - \end{quote} -\end{Example} -\EndIndex{Cmd}{thistime}\EndIndex{Cmd}{thistime*} - -\begin{Declaration}% - \Macro{settime}\Parameter{Wert} -\end{Declaration}% -\BeginIndex{Cmd}{settime}% -\Macro{settime} setzt die Ausgabe von \Macro{thistime} und -\Macro{thistime*} auf einen festen \PName{Wert}% -\footnote{Allerdings darf man nicht erwarten, dass nun die Zeit - stillsteht!}. % -Anschließend wird das optionale Argument von \Macro{thistime} bzw. -\Macro{thistime*} ignoriert, da ja die komplette Zeichenkette, die -\Macro{thistime} bzw. \Macro{thistime*} nun liefert, hiermit explizit -festgelegt wurde.% -\EndIndex{Cmd}{settime} - -\begin{Declaration} - \Option{12h}\\ - \Option{24h} -\end{Declaration}% -\BeginIndex{Option}{12h}\BeginIndex{Option}{24h}% -Mit den Optionen \Option{12h} und \Option{24h} kann ausgewählt -werden, ob die Zeit bei \Macro{thistime} und \Macro{thistime*} im -12-Stunden- oder 24-Stunden-Format ausgegeben werden soll. -Voreingestellt ist \Option{24h}% -\footnote{Leider beherrscht das \Package{scrtime}-Paket noch nicht die - Sternzeit nach \textsc{StarTrek}\Index{StarTrek}, ein echter - Mangel!}. % -Die Option verliert bei einem Aufruf von \Macro{settime} ebenfalls ihre -Gültigkeit.% -\EndIndex{Option}{12h}\EndIndex{Option}{24h} -\EndIndex{Package}{scrtime} - -\section{Autoren} -\label{sec:datetime.authors} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die Vorlage -dafür geliefert. -% In folgener Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item Axel Sommerfeldt -\item Markus Kohm \TextEMail{Markus.Kohm@gmx.de} -\end{itemize} -Die Fußnoten stammen von Axel Sommerfeldt. - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/einleit.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/einleit.tex deleted file mode 100644 index 977f090d199..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/einleit.tex +++ /dev/null @@ -1,310 +0,0 @@ -\ProvidesFile{einleit.tex}[2003/05/26 KOMA-Script Anleitung] -% ============================================================================ -% einleit.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% einleit.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: Einleitung -% Autoren: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Inhalt: Die Einleitung zu dem Dokument -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% - -\chapter{Einleitung} -\label{cha:introduction} - -\section{Vorwort}\label{sec:introduction.preface} - -{\KOMAScript} ist ein sehr komplexes Paket (engl. \emph{bundle}). Dies -ist schon allein darin begründet, dass es nicht nur aus einer einzigen -Klasse (engl. \emph{class}) oder einem einzigen Paket (engl. -\emph{package}), sondern einer Vielzahl derer besteht. Zwar sind die -Klassen als Gegenstücke zu den Standardklassen konzipiert (siehe -\autoref{cha:maincls}), das heißt jedoch insbesondere nicht, -dass sie nur über die Befehle, Umgebungen und Einstellmöglichkeiten -der Standardklassen verfügen oder deren Aussehen als -Standardeinstellung übernehmen. -Die Fähigkeiten von {\KOMAScript} reichen -teilweise weit über die Fähigkeiten der Standardklassen hinaus. -Manche davon sind auch als Ergänzung zu den Grundfähigkeiten des -\LaTeX-Kerns zu betrachten. - -Allein aus dem Vorgenannten ergibt sich schon zwangsläufig, dass die -Dokumentation zu {\KOMAScript} sehr umfangreich ausfällt. Hinzu kommt, -dass {\KOMAScript} in der Regel nicht gelehrt wird. Das heißt, es gibt -keinen Lehrer, der seine Schüler kennt und damit den Unterricht und -das Unterrichtsmaterial entsprechend wählen und anpassen kann. Es wäre -ein Leichtes, die Dokumentation für irgendeine Zielgruppe zu -verfassen. Die Schwierigkeit, der sich die Autoren gegenüber sehen, -besteht jedoch darin, dass eine Anleitung für alle möglichen -Zielgruppen benötigt wird. Wir haben uns bemüht, eine Anleitung zu -erstellen, die für den Informatiker gleichermaßen geeignet ist wie für -die Sekretärin des Fischhändlers. Wir haben uns bemüht, obwohl es sich -dabei eigentlich um ein unmögliches Unterfangen handelt. Ergebnis sind -zahlreiche Kompromisse. Wir bitten jedoch, die Problematik bei -eventuellen Beschwerden zu berücksichtigen und bei der Verbesserung -unserer derzeitigen Lösung zu helfen. - -Trotz des Umfangs der Anleitung bitten wir außerdem darum, im Falle von -Problemen zunächst die Dokumentation zu konsultieren. Hierzu gehören -neben dieser Anleitung auch alle Text-Dokumente, die Bestandteil -des Pakets sind. Sie sind in \File{liesmich.txt} vollständig aufgeführt. - -%\clearpage% HACK: Feintuning, um overfull \vbox zu vermeiden (nicht - % nachmachen!) -\section{Dokumentaufbau}\label{sec:introduction.structure} - -Diese Anleitung enthält sehr wenige Informationen, die speziell für den -\LaTeX-Neuling geschrieben wurden. Es wird als zwingend vorausgesetzt, -dass Dokumente wie \cite{l2kurz} und \cite{latex:usrguide} gelesen und -verstanden sind. Auch das Studium des einen oder anderen Buches zu -\LaTeX{} wird empfohlen. Literaturempfehlungen finden sich -beispielsweise in \cite{DANTE:FAQ}. Der Umfang von \cite{DANTE:FAQ} -ist ebenfalls erheblich. Dennoch wird darum gebeten, das Dokument -nicht nur irgendwo vorliegen zu haben, sondern es mindestens einmal zu -lesen und bei Problemen zu konsultieren. -\iffalse% Nicht in die gedruckte Version! -In \cite{DANTE:FAQ} findet -man übrigens auch einen Tipp, wie man ein A5-Dokument so auf A4-Papier -drucken kann, dass man durch Falten in der Mitte ein Heft daraus -machen kann. Die \KOMAScript-Anleitung liegt im A5-Format vor. -\fi - -\begin{Explain} - Im Gegensatz zu tiefgehender Anfängerinformation sind weiterführende - Informationen und Begründungen in dieser Dokumentation reichlich - vorhanden. Um solche Dokumentteile leichter erkennbar zu machen, - sind sie in einer besonderen Schrift hervorgehoben. Damit ist es - besonders ungeduldigen und uninteressierten Zeitgenossen möglich, - solche Teile zu überspringen. Empfohlen wird dies aber ausdrücklich - nicht. Gleichwohl ist es gut zu wissen, dass diese Teile nicht - zwingend verstanden werden müssen, um {\KOMAScript} anzuwenden. Vor - der Änderung und Kritisierung der Voreinstellungen von - {\KOMAScript}, ist das Studium und Verständnis dieser Teile jedoch - von erheblichem Vorteil. -\end{Explain} - -Die Einteilung der Anleitung in Kapitel und Abschnitte soll ebenfalls dabei -helfen, nur die Teile lesen zu müssen, die tatsächlich von Interesse sind. Um -dies zu erreichen, sind die Informationen zu den einzelnen Klassen und Paketen -nicht über das gesamte Dokument verteilt, sondern jeweils in einem Kapitel -konzentriert. Querverweise in ein anderes Kapitel sind damit in der Regel auch -Verweise auf einen anderen Teil des Gesamtpakets. Da die drei Hauptklassen in -weiten Teilen übereinstimmen, sind sie in einem gemeinsamen Kapitel -zusammengefasst. Die Unterschiede werden deutlich hervorgehoben. Soweit dies -sinnvoll ist, geschieht es auch durch eine entsprechende Randnotiz. Wenn etwas -nur die Klasse \Class{scrartcl}\OnlyAt{\Class{scrartcl}} betrifft, kann -dies beispielsweise wie in diesem Absatz erfolgen. - -\section{Die Geschichte von \KOMAScript}\label{sec:introduction.history} - -\begin{Explain} - Anfang der 90er~Jahre wurde Frank Neukam damit beauf"|tragt, ein - Vorlesungsskript zu setzen. Damals war noch \LaTeX2.09 aktuell und - es gab keine Unterscheidung nach Klassen und Paketen, sondern alles - waren Stile (engl. \emph{styles}). Die Standarddokumentstile - erschienen ihm für ein Vorlesungsskript nicht optimal und boten auch - nicht alle Befehle und Umgebungen, die er benötigte. - - Zur selben Zeit beschäftigte sich Frank auch mit Fragen der - Typografie, insbesondere mit \cite{JTsch87}. Damit stand für Frank - fest, nicht nur irgendeinen Dokumentstil für Skripten zu erstellen, - sondern allgemein eine Stilfamilie, die den Regeln der europäischen - Typografie folgt. {\Script} war geboren. - - Ich, Markus Kohm, traf auf {\Script} ungefähr um den Jahreswechsel - 1992/1993. Im Gegensatz zu Frank Neukam hatte ich häufig mit - Dokumenten zu tun, für die ich das A5-Format bevorzuge. Zu jenem - Zeitpunkt wurde A5 weder von den Standardklassen noch von {\Script} - unterstützt. Daher dauerte es nicht lange, bis ich erste - Veränderungen an {\Script} vornahm. Diese fanden sich auch in - {\ScriptII} wieder, das im Dezember~1993 von Frank veröffentlicht - wurde. - - Mitte 1994 erschien dann \LaTeXe. Die damit einhergehenden - Änderungen waren tiefgreifend. Daher blieb dem Anwender von - {\ScriptII} nur die Entscheidung, sich entweder auf den - Kompatibilitätsmodus von \LaTeX{} zu beschränken, oder auf {\Script} - zu verzichten. Wie viele andere wollte ich beides nicht. Also machte - ich mich daran, einen \Script-Nachfolger für {\LaTeXe} zu - entwickeln, der am 7.~Juli~1994 unter dem Namen {\KOMAScript} - erschienen ist. Ich will hier nicht näher auf die Wirren eingehen, - die es um die offizielle Nachfolge von {\Script} gab und warum mein - Paket einen neuen Namen hat. Tatsache ist, dass auch aus Franks - Sicht {\KOMAScript} der Nachfolger von {\ScriptII} ist. Zu erwähnen - ist noch, dass {\KOMAScript} ursprünglich ohne Briefklasse - erschienen war. Diese wurde im Dezember~1994 von Axel Kielhorn - beigesteuert. Noch etwas später erstellte Axel Sommerfeldt den - ersten richtigen scrguide zu {\KOMAScript}. - - Seither ist einiges an Zeit vergangen. {\LaTeX} hat sich ein wenig - verändert, die \LaTeX-Landschaft erheblich. {\KOMAScript} hat sich - weiterentwickelt. Es findet nicht mehr allein im deutschsprachigen - Raum Anwender, sondern in ganz Europa, Nordamerika, Australien - und Asien. - Diese Anwenderklientel sucht bei {\KOMAScript} nicht allein nach - einem typografisch ansprechenden Ergebnis. Zu beobachten ist - vielmehr, dass bei {\KOMAScript} ein neuer Schwerpunkt entstanden - ist: Flexibilisierung durch Variabilisierung. Unter diesem - Schlagwort verstehe ich die Möglichkeit, in das Erscheinungsbild an - vielen Stellen eingreifen zu können. Dies führte zu vielen neuen - Makros, die mehr schlecht als recht in die existierende Anleitung - integriert wurden. Irgendwann wurde es damit auch Zeit für eine - komplett überarbeitete Anleitung.\par -\end{Explain} - - -\section{Danksagung}\label{sec:introduction.thanks} -Eine Danksagung in der Einleitung? Gehört sie nicht vielmehr an den -Schluss? Richtig! Eigentlich gehört die an das Ende. Mein Dank gilt -hier jedoch nicht primär denjenigen, die diese Anleitung möglich -gemacht haben. Für den Dank an die Guide-Autoren mache ich den Leser -zuständig! Mein persönlicher Dank gilt Frank Neukam, ohne dessen -\Script-Familie es vermutlich {\KOMAScript} nie gegeben hätte. Mein -Dank gilt denjenigen, die an der Entstehung von {\KOMAScript} und den -Anleitungen mitgewirkt haben. Stellvertretend für andere möchte ich -hier Jens-Uwe Morawski und Torsten Krüger nennen. Jens unermüdlichem -Einsatz ist neben vielem Anderen die englische Übersetzung der -Anleitung zu verdanken. Torsten war der beste Betatester, den ich je -hatte. Er hat damit insbesondere an der Verwendbarkeit von -\Class{scrlttr2} und \Class{scrpage2} einen erheblichen Anteil. Mein -Dank gilt auch allen, die mich immer wieder aufgemuntert haben, weiter -zu machen und dieses oder jenes noch besser, weniger fehlerhaft oder -schlicht zusätzlich zu implementieren. - -Ganz besonderen Dank bin ich den Gründern von DANTE, Deutschsprachige -Anwendervereinigung \TeX~e.V\kern-.18em., schuldig, durch die letztlich die -Verbreitung von \TeX{} und \LaTeX{} und allen Paketen einschließlich -{\KOMAScript} an einer zentralen Stelle überhaupt ermöglicht wird. In gleicher -Weise bedanke ich mich bei den aktiven Helfern in der Usenet-Gruppe -\texttt{de.comp.text.tex} und der Mailingliste -\texttt{\TeX-D-L} \cite{DANTE:FAQ}, die mir so -manche Antwort auf Fragen zu {\KOMAScript} abnehmen. - - -\section{Rechtliches}\label{sec:introduction.legal} -{\KOMAScript} steht unter der {\LaTeX} Project Public Licence. Eine nicht -offizielle deutsche Übersetzung ist Bestandteil dieses Pakets. In allen -Zweifelsfällen gilt im deutschsprachigen Raum der Text \File{LEGALDE.TXT}, -während in allen anderen Ländern der Text \File{LEGAL.TXT} anzuwenden ist. - -Für die Korrektheit der Anleitung, Teile der Anleitung oder einer anderen in -diesem Paket enthaltenen Dokumentation wird keine Gewähr übernommen. - - -\section{Installation}\label{sec:introduction.installation} -Die Installation von {\KOMAScript} wird in den Dateien \File{liesmich.txt} und -\File{INSTALLDE.TXT} beschrieben. Beachten Sie dazu auch die jeweilige -Dokumentation zu der installierten \TeX-Distribution. - - -\section{Fehlermeldungen} -\label{sec:introduction.errors} -Sollten Sie der Meinung sein, dass Sie einen Fehler in der Anleitung, -einer der \KOMAScript-Klassen, einem der \KOMAScript-Pakete oder einem -anderen Bestandteil von \KOMAScript{} gefunden haben, so sollten Sie -wie folgt vorgehen. Prüfen Sie zunächst, ob inzwischen eine neue -Version von \KOMAScript{} erschienen ist. Installieren Sie diese neue -Version gegebenenfalls und kontrollieren Sie, ob der Fehler oder das -Problem auch dann noch vorhanden ist. - -Wenn es sich nicht um einen Fehler in der Dokumentation handelt und -der Fehler oder das Problem nach einem Update noch immer auf"|tritt, -erstellen Sie bitte wie in \cite{DANTE:FAQ} angegeben ein minimales -Beispiel. Ein solches Beispiel sollte nur einen minimalen Text und -nur die Pakete und Definitionen enthalten, die für die Verdeutlichung -des Fehlers unbedingt notwendig sind. Auf exotische Pakete sollte -möglichst ganz verzichtet werden. -Oft lässt sich ein Problem durch ein minimales Beispiel so weit -eingrenzen, dass bereits vom Anwender selbst festgestellt werden kann, -ob es sich um einen Anwendungsfehler handelt oder nicht. Auch ist so -sehr häufig zu erkennen, welche Pakete oder Klassen konkret das -Problem verursachen und ob es sich überhaupt um ein -\KOMAScript-Problem handelt. Dies können Sie gegebenenfalls -zusätzlich überprüfen, indem Sie statt einer \KOMAScript-Klasse einen -Test mit der entsprechenden Standardklasse vornehmen. Danach ist dann -auch klar, ob der Fehlerbericht an den Autor von \KOMAScript{} oder an -den Autor eines anderen Pakets zu richten ist. Sie sollten spätestens -jetzt noch einmal gründlich die Anleitungen der entsprechenden Paket, -Klassen und \KOMAScript-Bestandteile studieren sowie \cite{DANTE:FAQ} -konsultieren. Möglicherweise existiert ja bereits eine Lösung für Ihr -Problem, so dass sich eine Fehlermeldung erübrigt. - -Für die eigentliche Meldung sollte unbedingt das zu \KOMAScript{} -gehörende interaktive \LaTeX-Dokument \File{komabug.tex} verwendet -werden. Dazu sollte das Programm \File{latex} in einer Shell -- -beispielsweise die Eingabeaufforderung von Windows -- mit dem Parameter -\File{komabug.tex} gestartet werden. Es erfolgt dann ein textueller -Frage-Antwort-Dialog, bei dem eine Nachricht in die Datei -\File{komabug.msg} ausgegeben wird, die alle grundlegenden -Informationen enthält. Im Dokument ist auch die Adresse angegeben, an -die Sie die Meldung schicken können. Bitte beachten Sie unbedingt -die Angaben zum Betreff Ihrer E-Mail in der erzeugten Datei -\File{komabug.msg}. Anfragen, bei denen diese wenigen Punkte beachtet -wurden, werden normalerweise zügig bearbeitet. - -Häufig werden Sie eine Frage zu \KOMAScript{} oder im Zusammenhang mit -\KOMAScript{} lieber öffentlich, beispielsweise in -\texttt{de.comp.text.tex} stellen wollen, als dem \KOMAScript-Autor zu -schreiben. Auch in diesem Fall sollten Sie unbedingt die Version des -\LaTeX-Kerns, die Version der verwendeten Klassen und Pakete und ein -minimales Beispiel angeben. Wenn Sie in diesem Beispiel noch vor -\Macro{documentclass} die Anweisung \Macro{listfiles} -verwenden, können Sie die -Angaben zu den Versionen anschließend der \File{log}-Datei entnehmen. - - -\section{Weitere Informationen} - -Sobald Sie im Umgang mit \KOMAScript{} geübt sind, werden Sie sich -möglicherweise Beispiele zu schwierigeren Aufgaben wünschen. Solche -Beispiele gehen über die Vermittlung von Grundwissen hinaus und sind -daher nicht Bestandteil dieser Anleitung. Auf den Internetseiten des -\KOMAScript{} Documentation Projects \cite{homepage} finden Sie -jedoch weiterführende Beispiele. Diese sind für fortgeschrittene -\LaTeX-Anwender konzipiert. Für Anfänger sind sie wenig oder nicht -geeignet. - - -\section{Autoren}\label{sec:introduction.authors} -Unter dieser Überschrift ist am Ende jedes Kapitels der Dokumentation -zu finden, welche Autoren daran mitgewirkt haben. Der jeweils -zuständige Autor ist dabei fett hervorgehoben. Ist beim zuständigen -Autor eine E-Mail-Adresse angegeben, können Sie diesem auch direkt -schreiben. Bei diesem Kapitel ist das: -\begin{itemize} -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: - diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/addrconv.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/addrconv.tex deleted file mode 100644 index d65c223b3bb..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/addrconv.tex +++ /dev/null @@ -1,113 +0,0 @@ -\ProvidesFile{addrconv.tex}[2002/05/21 KOMA-Script Manual] -% ============================================================================ -% addrconv.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% addrconv.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: Database converter for address files -% Authors: Jens-Uwe Morawski (JUM) <morawski@gmx.net> -% Content: conversion with addrconv/adrconv -% Language: english -% german file: adrkonv.tex -% Date of translated german file: -% 2002/05/21 -% charset of comments: -% US-ASCII -% - -\chapter{Creating address files from a address database}% -\label{cha:addrconv}% -\index{address file}% -\IndexPackage{addrconv} - -In former versions of \KOMAScript{} the package -\Package{addrconv} was a permanent part of -the \KOMAScript{} sytem. - -The chief involvment with \KOMAScript{} was -that with the help of \Package{addrconv} -it was possible to create address files -from a address database in \BibTeX{} format. -Next the address file could be used for -the \KOMAScript{} letter class or with -the package \Package{scraddr}. - -\begin{small} -\begin{verbatim} - @address{HMUS, - name = {Carl McExample}, - title = {Dr.}, - city = {Anywhere}, - zip = 01234, - country = {Great Britain}, - street = {A long Road}, - phone = {01234 / 5 67 89}, - note = {always forget his birthday}, - key = {HMUS}, - } -\end{verbatim} -\end{small} - - -From entries, as can be seen above, address files -can be generated. -For this \Package{addrconv} employs \BibTeX{} and -some \BibTeX{} styles. -Additionally there are some \LaTeX{} files which -help to create various telephon and address lists for -printing. - -The package \Package{addrconv} was indeed a separate -package, since besides what is required for -\KOMAScript{} it includes some interessting features -more. -Therefore the package \Package{addrconv}, -as announced in the previous \KOMAScript{} release, -is removed from the \KOMAScript{} system. - -The package \Package{adrconv}, only one \emph{d}, -replaces \Package{addrconv} entirely. -If it is not included in your \TeX{} distribution then -it can be downloaded from \cite{package:adrconv} and -you can install it separately. - -\section{Authors} -\label{sec:addrconv.authors} -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item \textbf{Jens-Uwe Morawski} -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/addressf.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/addressf.tex deleted file mode 100644 index 8569b17df1f..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/addressf.tex +++ /dev/null @@ -1,243 +0,0 @@ -\ProvidesFile{addressf.tex}[2002/10/15 KOMA-Script manual, english] -% ============================================================================ -% addressf.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% addressf.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: scraddr package -% Translation by: Jens-Uwe Morawski <morawski@gmx.net> -% Contents: Access to Address Files with -% \Package{scraddr} -% Language: English -% Charset of comments: US-ASCII -% Translation of german file: addressen.tex -% Date of translated german file: 2002/10/15 -% - -\chapter{Access to Address Files with \Package{scraddr}} -\label{cha:scraddr} -\BeginIndex{Package}{scraddr} - -\section{Overview}\label{sec:scraddr.overview} -The package \Package{scraddr} is a small extension to -the \KOMAScript{} letter class. -Its aim is to make access to the data of address files -more flexible and easier. -Basically the package implements a new loading mechanism -for address files, which contain address entries of the kind -described in the previous chapter. - -\begin{Declaration} -\Macro{InputAddressFile}\Parameter{file name} -\end{Declaration}% -\BeginIndex{Cmd}{InputAddressFile}% -% -The command \Macro{InputAddressFile} reads the content -of the address file, given as its parameter. -If the file does not exist the command returns an -error message. - -For every entry in the address file the command generates a -set of macros for accessing the data. -First a short reminder of how an address entry is structured. -\begin{Declaration}% - \Macro{adrentry}\Parameter{Lastname}\Parameter{Firstname}% - \Parameter{Address}\Parameter{Telephone}\Parameter{F1}\Parameter{F2}% - \Parameter{Comment}\Parameter{Key}\\ - % - or\\ - % - \Macro{addrentry}\Parameter{Lastname}\Parameter{Firstname}% - \Parameter{Address}\Parameter{Telephone}\Parameter{F1}\Parameter{F2}% - \Parameter{F3}\Parameter{F4}\Parameter{Key} -\end{Declaration}% - -The last parameter is the identifier of an entry, thus the -\PName{Key} has to be unique and not blank. If the file contains more -than one entry with the same \PName{Key} value, the last occurrence -will be used. The \PName{Key} should only be composed of letters. -\begin{Declaration} -\Macro{Name}\Parameter{Key}\\ -\Macro{FirstName}\Parameter{Key}\\ -\Macro{LastName}\Parameter{Key}\\ -\Macro{Address}\Parameter{Key}\\ -\Macro{Telephone}\Parameter{Key}\\ -\Macro{FreeI}\Parameter{Key}\\ -\Macro{FreeII}\Parameter{Key}\\ -\Macro{Comment}\Parameter{Key}\\ -\Macro{FreeIII}\Parameter{Key}\\ -\Macro{FreeIV}\Parameter{Key} -\end{Declaration}% -\BeginIndex{Cmd}{Name}\BeginIndex{Cmd}{FirstName}\BeginIndex{Cmd}{LastName}% -\BeginIndex{Cmd}{Address}\BeginIndex{Cmd}{Telephone}\BeginIndex{Cmd}{FreeI}% -\BeginIndex{Cmd}{FreeII}\BeginIndex{Cmd}{FreeIII}\BeginIndex{Cmd}{FreeIV}% -\BeginIndex{Cmd}{Comment}% -% -These commands give access to data of your address file. -The parameter \PName{Key} is the same as in the -\Macro{adrentry} or \Macro{addrentry} command. -In the address of letters often both, first-name and -last-name, are required. -The command \Macro{Name}\PParameter{Key} is an abridgement for -\Macro{FirstName}\PParameter{Key} \Macro{LastName}\PParameter{Key}. - -\EndIndex{Cmd}{InputAddressFile}% -\EndIndex{Cmd}{Name}\EndIndex{Cmd}{FirstName}\EndIndex{Cmd}{LastName}% -\EndIndex{Cmd}{Address}\EndIndex{Cmd}{Telephone}\EndIndex{Cmd}{FreeI}% -\EndIndex{Cmd}{FreeII}\EndIndex{Cmd}{FreeIII}\EndIndex{Cmd}{FreeIV}% -\EndIndex{Cmd}{Comment}% - -\section{Usage}\label{sec:scraddr.usage} - -First of all, we need an address file with valid address entries. -In this example the file has the name \emph{lotr.adr} and contains -the following entries. -\begin{verbatim} - \addrentry{Baggins}{Frodo}% - {The Hill\\ Bag End/Hobbiton in the Shire}{}% - {Bilbo Baggins}{pipe-weed}% - {the Ring-bearer}{Bilbo's heir}{FRODO} - \adrentry{Gamgee}{Samwise}% - {Bagshot Row 3\\Hobbiton in the Shire}{}% - {Rosie Cotton}{taters}% - {the Ring-bearer's faithful servant}{SAM} - \adrentry{Bombadil}{Tom}% - {The Old Forest}{}% - {Goldberry}{trill queer songs}% - {The Master of Wood, Water and Hill}{TOM} -\end{verbatim} - -The \Ord{4} parameter, the telephone number, has been left -blank. If you know the story behind these addresses you -will agree that a telephone number makes no sense here. -The command \Macro{InputAddressFile} is used to load -the address file shown above. -\begin{verbatim} - \InputAddressFile{lotr} -\end{verbatim} - - -With the help of the commands introduced in this chapter -we can now write a letter to the old \textsc{Tom Bombadil}. -In this letter we ask him, if he can remember two -fellow-travelers from Elder Days. - -\begin{verbatim} - \begin{letter}{\Name{TOM}\\\Address{TOM}} - \opening{Dear \FirstName{TOM} \LastName{TOM},} - - or \FreeIII{TOM}, how your delightful \FreeI{TOM} calls - you. - Can you remember Mr.\,\LastName{FRODO}, - strictly speaking \Name{FRODO}, since there was - Mr.\,\FreeI{FRODO} too. - He was \Comment{FRODO} in the Third Age - and \FreeIV{FRODO} - \Name{SAM}, \Comment{SAM}, has attended him. - - Their pasions were very wordly. - \FirstName{FRODO} enjoyed to smoke \FreeII{FRODO}, - his attendant has appreciate a good meal with - \FreeII{SAM}. - - Do you remember? Certainly Mithrandir has told you much - about their deeds and adventures . - \closing{``O spring-time and summer-time - and spring again after!\\ - O wind on the waterfall, - and the leaves' laughter!''} - \end{letter} -\end{verbatim} - -The \Ord{5} and \Ord{6} parameter of the \Macro{adrentry} or -\Macro{adrentry} command are -for free use. They are accessible with the commands \Macro{FreeI} and -\Macro{FreeII}. In this example the \Ord{5} parameter contains the -name of a person who is the most important in the life of the entry's -person, the \Ord{6} contains the person's passion. -The \Ord{7} parameter is a comment or in general also a free -parameter. The commands \Macro{Comment} or \Macro{FreeIII} give -access to the data. Using \Macro{FreeIV} is only valid for -\Macro{addrentry} entries; for \Macro{adrentry} entries it -results in a warning. -\EndIndex{Package}{scraddr} - -\section{Package Warning Options} - -As mentioned above the command \Macro{FreeIV} leads -to a fault if it is used for \Macro{adrentry} entries. - -Therefore \Package{scraddr} supports package options -in order to give the user the possibility to -choose how the package should react in such situation. -It is possible to choose different settings between -\emph{ignore} and \emph{rupture} of the \LaTeX{} run. - -\begin{Declaration} -\Option{adrFreeIVempty}\\ -\Option{adrFreeIVshow}\\ -\Option{adrFreeIVwarn}\\ -\Option{adrFreeIVstop} -\end{Declaration} -% -\BeginIndex{Option}{adrFreeIVempty}\BeginIndex{Option}{adrFreeIVshow} -\BeginIndex{Option}{adrFreeIVwarn}\BeginIndex{Option}{adrFreeIVstop} -% -One of these options can be given in the optional argument -of the \Macro{usepackage} command. The default setting is -\Option{adrFreeIVshow}. - -\begin{labeling}[\,--]{\Option{adrFreeIVempty}} -\item[\Option{adrFreeIVempty}] - the command \Macro{FreeIV} will be ignored -\item[\Option{adrFreeIVshow}] - ``(entry FreeIV undefined at \PName{Key})'' will be - written as warning in the text -\item[\Option{adrFreeIVwarn}] - writes a warning in the log-file -\item[\Option{adrFreeIVstop}] - the \LaTeX{} run will be interrupted with an error message -\end{labeling} -\EndIndex{Option}{adrFreeIVempty}\EndIndex{Option}{adrFreeIVshow} -\EndIndex{Option}{adrFreeIVwarn}\EndIndex{Option}{adrFreeIVstop} - -\section{Authors} -\label{sec:scraddr.authors} -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item \textbf{Jens-Uwe Morawski} -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/datetime.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/datetime.tex deleted file mode 100644 index 14c4988de23..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/datetime.tex +++ /dev/null @@ -1,233 +0,0 @@ -\ProvidesFile{datetime.tex}[2002/06/17 KOMA-Script manual english] -% ============================================================================ -% datetime.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% datetime.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: Date and time -% Translation by: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Contents: Extended output of date and time -% using scrdate and scrtime -% Language: English -% Charset of comments: US-ASCII -% Translation of german file: datmzeit.tex -% Date of translated german file: 2001-10-05 -% - -\chapter{Week-Day and Time Using \Package{scrdate} and \Package{scrtime}} -\label{cha:datetime} - -There are two packages at \KOMAScript{} to improve and extend the -handling of date\Index{date} and time\Index{time}. So you have not -only the standard commands \Macro{today} and \Macro{date}. Like all -the other packages from \KOMAScript{} bundle these two packages may be used -not only with \KOMAScript{} classes but also with standard and many -other classes. - - -\section{The Name of the Current Day of Week Using \Package{scrdate}} -\label{sec:sec:datetime.scrdate} -\BeginIndex{Package}{scrdate} - -\begin{Declaration} - \Macro{todaysname} -\end{Declaration}% -\BeginIndex{Cmd}{todaysname}% -You should know, that you may get the current date with -\Macro{today}\IndexCmd{today} in a language dependend -spelling. \Package{scrdate} offers you the command -\Macro{todaysname}. This results in the name of the current day of -week in a language dependend spelling. -\begin{Example} - At your document you want to show the name of the week-day at which - the \File{dvi}-file was generated using \LaTeX. To do this, you - write: - \begin{small} -\begin{verbatim} - I've done the \LaTeX-run of this document on a \todaysname. -\end{verbatim} - \end{small} - This will result in e.g.: - \begin{quote} - I've done the \LaTeX-run of this document on a \todaysname. - \end{quote} -\end{Example} -\begin{Explain} - \textbf{Tip:} The names of the week-days are saved in - capitalization. So the first letter is a capital letter, all the - others are small letters. But at some languages you also need the - names with a first letter in lower case. You may achieve this using - the standard \LaTeX{} command \Macro{MakeLowercase}. You simply have - to write \Macro{MakeLowercase}\PParameter{\Macro{todaysname}}. -\end{Explain} -\EndIndex{Cmd}{todaysname} - -\begin{Declaration} - \Macro{nameday}\Parameter{name} -\end{Declaration}% -\BeginIndex{Cmd}{nameday}% -You should know, that you may change the output of \Macro{today} using -\Macro{date}\IndexCmd{date}. In a analogous way you can change the -output of \Macro{todaysname} using \Macro{nameday} into \PName{name}. -\begin{Example} - You're changing the current date into a fix value using - \Macro{date}. You are not interested in the name of the day, but - you want to show, that it is a workday. So you set: - \begin{small} -\begin{verbatim} - \nameday{workday} -\end{verbatim} - \end{small} - After this the previous example will result in: - \begin{quote} - I've done the \LaTeX-run of this document on a workday. - \end{quote} -\end{Example} -\EndIndex{Cmd}{nameday} - -Package \Package{scrdate} knows the languages english (english, -american, USenglish, UKenglish and british), german (german, ngerman -and austrian), french, italian, spanish and croatian. If you want to -configure it for other languages, see \File{scrdate.dtx}. - -At current implementation it doesn't matter, if you're loading -\Package{scrdate} before or after -\Package{german}\IndexPackage{german}, -\Package{ngerman}\IndexPackage{ngerman}, -\Package{babel}\IndexPackage{babel} or similar packages. The current -language will be setup at \Macro{begin}\PParameter{document}. - -\begin{Explain} - To explain it a little bit more exactly: While you are using a - language selection, which works in a compatible way to - \Package{babel}\IndexPackage{babel} or - \Package{german}\IndexPackage{german}, the correct language will be - used by \Package{scrdate}. If you are using another language - selection you will get english caption names. At \File{scrdate.dtx} - you will find the description of the \Package{scrdate}-commands for - defining the names. -\end{Explain} -\EndIndex{Package}{scrdate} - - -\section{Getting the Time with Package \Package{scrtime}} -\label{sec:datetime.scrtime} -\BeginIndex{Package}{scrtime} - -\begin{Declaration}% - \Macro{thistime}\OParameter{delimiter}\\ - \Macro{thistime*}\OParameter{delimiter} -\end{Declaration}% -\BeginIndex{Cmd}{thistime}\BeginIndex{Cmd}{thistime*}% -\Macro{thistime} results in the current\Index{time}. -The delimiter between the values of hour and minute -can be given in the optional argument. -The default symbol of the delimiter is "\PValue{:}". - -\Macro{thistime*} works in the same way as \Macro{thistime}. -The difference between both is that the value of the minute -using \Macro{thistime*} is not preceded with zero when its value -is less than 10, thus using \Macro{thistime} the minute-value -has always two places. -\begin{Example} - The line - \begin{small} -\begin{verbatim} - Your train departs at \thistime . -\end{verbatim} - \end{small} - results for example in: - \begin{quote} - Your train departs at \thistime . - \end{quote} - or: - \begin{quote} - Your train departs at 23:09. - \end{quote} - \bigskip - In contrast to the prevous example a line like: - \begin{small} -\begin{verbatim} - This day is already \thistime*[\ hours and\ ] minutes old. -\end{verbatim} - \end{small} - results in: - \begin{quote} - This day is already \thistime*[\ hours and\ ] minutes old. - \end{quote} - or: - \begin{quote} - This day is already 12 hours and 25 minutes old. - \end{quote} -\end{Example} -\EndIndex{Cmd}{thistime}\EndIndex{Cmd}{thistime*} - -\begin{Declaration}% - \Macro{settime}\Parameter{Time} -\end{Declaration}% -\BeginIndex{Cmd}{settime}% -\Macro{settime} sets the output \Macro{thistime} and -\Macro{thistime*} on the value of \PName{Time}. -Afterwards the optinal parameter of \Macro{thistime} or -\Macro{thistime*} is ignored, since the result -of \Macro{thistime} or \Macro{thistime*} -was completely determined using \Macro{settime}.% -\EndIndex{Cmd}{settime} - -\begin{Declaration} - \Option{12h}\\ - \Option{24h} -\end{Declaration}% -\BeginIndex{Option}{12h}\BeginIndex{Option}{24h}% -Using the options \Option{12h} and \Option{24h} one can -select whether the result of \Macro{thistime} and \Macro{thistime*} -is in 12- or in 24-hour format. The default is \Option{24h}.% - -The option has no effect on the results of -\Macro{thistime} and \Macro{thistime*} if \Macro{settime} -has been used.% -\EndIndex{Option}{12h}\EndIndex{Option}{24h} -\EndIndex{Package}{scrtime} - -\section{Authors} -\label{sec:datetime.authors} -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item Frank Neukam -\item Markus Kohm \TextEMail{Markus.Kohm@gmx.de} -\item Axel Sommerfeldt -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/headfoot.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/headfoot.tex deleted file mode 100644 index 656b74621c9..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/headfoot.tex +++ /dev/null @@ -1,1478 +0,0 @@ -\ProvidesFile{headfoot.tex}[2004/09/13 KOMA-Script manual, english] -% ============================================================================ -% headfoot.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% headfoot.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% module: scrpage2 -% authors: Jens-Uwe Morawski <morawsi@gmx.net> -% Markus Kohm <Markus.Kohm@gmx.de> -% translation: -% Jens-Uwe Morawski <morawsi@gmx.net> -% Karl-Heinz Zimmer <khz@kde.org> -% Christoph Bier <christoph.bier@web.de> -% content: head and foot lines with scrpage2 -% language: english -% comments encoding: -% US-ASCII -% date of translated german file: 2004/07/06 -% -\chapter{Adapt Head and Foot with \Package{scrpage2}}\label{cha:scrpage} -% -\BeginIndex{Package}{scrpage2}% -% -In \autoref{cha:typearea} this guide referenced a package -to customise the head and foot lines of a document. -This package \Package{scrpage2}, the successor of \Package{scrpage}, -enables the user to create versatile head and foot layouts with -less effort, due to a simple but powerful user interface. - -\BeginIndex{Package}{scrpage}% -% -The package's focus is its good integration into the whole -\KOMAScript{}-bundle, thus it extents the base functionality -of \KOMAScript{} perfectly. -It is very flexible in either its layout and usage, compared to -other packages often to be seen -like \Package{fancyhdr}\cite{package:fancyhdr}. - -Neither \Package{scrpage2} nor \Package{scrpage} must be used -with \KOMAScript{}, the package can be used in any -other document-class environment. -New documents shall base upon the package \Package{scrpage2}, -but the package \Package{scrpage} is always distributed -for compatibility reasons. -The current chapter points to \Package{scrpage2} only. -Commands available in both versions are signed \ScrpageMark{}(see margin), -if the commands of the new version differ from the former one an advice -can be found in marked paragraphs\ScrpageNote{}. -% -\EndIndex{Package}{scrpage} - - -\begin{Explain}% Introduction to headings - \LaTeX{}s head and foot mechanism is a little complicated, thus a - brief view in its depth is needed. - Basically the \LaTeX{}-kernel defines the chief page styles - \PValue{empty} and \PValue{plain}. - The latter writes only a page number in the foot, in contrast - using \PValue{empty} results in blank head and foot. - Besides, many document classes provide the style - \PValue{headings}, which allows more complex style settings. - The \PValue{headings} style often has a subvariant, the - \emph{my}-variant. In contrast to the \PValue{headings} style - the \PValue{myheadings} switches off the automatic update - of the running head, thus it is the users task keeping headings - in sync with the current document content. - A more detailed discription can be found in - \autoref{sec:maincls.pageStyle}. - - Another important note is that some \LaTeX{}-commands - switch to the pagestyle \PValue{plain} for the current page, - independent from what pagestyle was choosen by the author, - consequently the document needs an appropriate - \PValue{plain} pagestyle. - - Therefore \Package{scrpage2} defines its own \PValue{plain} - and \PValue{headings} page styles, named \PValue{scrplain} - and \PValue{scrheadings}. - The manual activation of \PValue{scrplain} is not necessary, - since the activation of \PValue{scrheadings} takes care of it - automatically. - Only if one wants to use his own page style in combination - with \PValue{scrplain}, the page style \PValue{scrplain} has to - be activated first, i.e. \Macro{pagestyle}\Parameter{scrplain}% - \Macro{pagestyle}\Parameter{personalPagestyle}. - - % the following is not required, but included here since first - % page is stretched - The original \PValue{headings} page style of the document class - is available as \PValue{useheadings}. This re-definition is - required since \Package{scrpage2} uses another way to deal with - automatic and manual headings. This way is more flexible and - allows configurations usually difficult to implement for - unexperienced users. The required commands to work with the - \Package{scrpage2} implementation are introduced at the end - of \autoref{sec:scrpage.basics.buildIn} and - the begin of \autoref{sec:scrpage.basics.mark}. -\end{Explain} - -\section{Basic Functionality}\label{sec:scrpage.basics} -\subsection{Predefined Page Styles}\label{sec:scrpage.basics.buildIn} -% \lehead ... -% scrheadings -% \headmark \pagemark - -\begin{Declaration} - \PValue{scrheadings}\\ - \PValue{scrplain} -\end{Declaration}% -\BeginIndex{Pagestyle}{scrheadings}\BeginIndex{Pagestyle}{scrplain}% -\Index{page style}% -% -Package \Package{scrpage2} delivers an own pagestyle, named -\PValue{scrheadings}. -The command \Macro{pagestyle}\PParameter{scrheadings} activates -this page style, likewise -after activation an appropriate \PValue{plain} pagestyle -is available. -In this case \emph{appropriate} meens that the \PValue{plain} -page style is also configureable by the commands introduced in -\autoref{sec:scrpage.basics.format}, which, for example, -configure the head and foot width. -Neither the activation of \PValue{scrheadings} nor \PValue{scrplain} -influences the mode of manual or automatic headings, -see \autoref{sec:scrpage.basics.mark}. - -\begin{Declaration} - \Macro{lehead}% - \OParameter{scrplain-left-even}\Parameter{scrheadings-left-even}\\ - \Macro{cehead}% - \OParameter{scrplain-concentric-even}\Parameter{scrheadings-concentric-even}\\ - \Macro{rehead}% - \OParameter{scrplain-right-even}\Parameter{scrheadings-right-even}\\ - \Macro{lefoot}% - \OParameter{scrplain-left-even}\Parameter{scrheadings-left-even}\\ - \Macro{cefoot}% - \OParameter{scrplain-concentric-even}\Parameter{scrheadings-concentric-even}\\ - \Macro{refoot}% - \OParameter{scrplain-right-even}\Parameter{scrheadings-right-even}\\ - \Macro{lohead}% - \OParameter{scrplain-left-odd}\Parameter{scrheadings-left-odd}\\ - \Macro{cohead}% - \OParameter{scrplain-concentric-odd}\Parameter{scrheadings-concentric-odd}\\ - \Macro{rohead}% - \OParameter{scrplain-right-odd}\Parameter{scrheadings-right-odd}\\ - \Macro{lofoot}% - \OParameter{scrplain-left-odd}\Parameter{scrheadings-left-odd}\\ - \Macro{cofoot}% - \OParameter{scrplain-concentric-odd}\Parameter{scrheadings-concentric-odd}\\ - \Macro{rofoot}% - \OParameter{scrplain-right-odd}\Parameter{scrheadings-right-odd}\\ - \Macro{ihead}% - \OParameter{scrplain-inside}\Parameter{scrheadings-inside}\\ - \Macro{chead}% - \OParameter{scrplain-concentric}\Parameter{scrheadings-concentric}\\ - \Macro{ohead}% - \OParameter{scrplain-outside}\Parameter{scrheadings-outside}\\ - \Macro{ifoot}% - \OParameter{scrplain-inside}\Parameter{scrheadings-inside}\\ - \Macro{cfoot}% - \OParameter{scrplain-concentric}\Parameter{scrheadings-concentric}\\ - \Macro{ofoot}% - \OParameter{scrplain-outside}\Parameter{scrheadings-outside} -\end{Declaration}% -\BeginIndex{Cmd}{lehead}\BeginIndex{Cmd}{cehead}\BeginIndex{Cmd}{rehead}% -\BeginIndex{Cmd}{ihead}\BeginIndex{Cmd}{chead}\BeginIndex{Cmd}{ohead}% -\BeginIndex{Cmd}{lohead}\BeginIndex{Cmd}{cohead}\BeginIndex{Cmd}{rohead}% -\BeginIndex{Cmd}{lefoot}\BeginIndex{Cmd}{cefoot}\BeginIndex{Cmd}{refoot}% -\BeginIndex{Cmd}{ifoot}\BeginIndex{Cmd}{cfoot}\BeginIndex{Cmd}{rfoot}% -\BeginIndex{Cmd}{lofoot}\BeginIndex{Cmd}{cofoot}\BeginIndex{Cmd}{rofoot}% -% -The page styles include three boxes either in head and foot. -The commands modifying the content of these boxes can be seen -in \autoref{fig:scrpage.leheadetall}. -Commands in the middle column modify the boxes content on both the odd -and even pages. - -\begin{figure} - \centering - \setlength{\unitlength}{1mm}\begin{picture}(100,65)(0,10)\small - \put(0,12){\dashbox{2}(40,56){even page}} - \put(60,12){\dashbox{2}(40,56){odd page}} - % items top left - \put(1,63){\framebox(8,4){~}} - \put(16,63){\framebox(8,4){~}} - \put(31,63){\framebox(8,4){~}} - % items top right - \put(61,63){\framebox(8,4){~}} - \put(76,63){\framebox(8,4){~}} - \put(91,63){\framebox(8,4){~}} - % items bottom left - \put(1,13){\framebox(8,4){~}} - \put(16,13){\framebox(8,4){~}} - \put(31,13){\framebox(8,4){~}} - % items bottom right - \put(61,13){\framebox(8,4){~}} - \put(76,13){\framebox(8,4){~}} - \put(91,13){\framebox(8,4){~}} - % commands and arrow - % for twoside - % - \put(50,65){\makebox(0,0){\Macro{ihead}}} - \put(44,65){\vector(-1,0){4}}\put(56,65){\vector(1,0){4}} - \put(50,58){\makebox(0,0){\Macro{chead}}} - \put(44,58){\line(-1,0){24}}\put(56,58){\line(1,0){24}} - \put(20,58){\vector(0,1){4}}\put(80,58){\vector(0,1){4}} - \put(50,51){\makebox(0,0){\Macro{ohead}}} - \put(44,51){\line(-1,0){40}}\put(56,51){\line(1,0){40}} - \put(4,51){\vector(0,1){11}}\put(96,51){\vector(0,1){11}} - % - \put(50,15){\makebox(0,0){\Macro{ifoot}}} - \put(56,15){\vector(1,0){4}}\put(44,15){\vector(-1,0){4}} - \put(50,22){\makebox(0,0){\Macro{cfoot}}} - \put(44,22){\line(-1,0){24}}\put(56,22){\line(1,0){24}} - \put(20,22){\vector(0,-1){4}}\put(80,22){\vector(0,-1){4}} - \put(50,29){\makebox(0,0){\Macro{ofoot}}} - \put(44,29){\line(-1,0){40}}\put(56,29){\line(1,0){40}} - \put(4,29){\vector(0,-1){11}}\put(96,29){\vector(0,-1){11}} - % commands for oneside - \put(5,69){\makebox(0,0)[b]{\Macro{lehead}}} - \put(20,69){\makebox(0,0)[b]{\Macro{cehead}}} - \put(35,69){\makebox(0,0)[b]{\Macro{rehead}}} - % - \put(65,69){\makebox(0,0)[b]{\Macro{lohead}}} - \put(80,69){\makebox(0,0)[b]{\Macro{cohead}}} - \put(95,69){\makebox(0,0)[b]{\Macro{rohead}}} - % - \put(5,11){\makebox(0,0)[t]{\Macro{lefoot}}} - \put(20,11){\makebox(0,0)[t]{\Macro{cefoot}}} - \put(35,11){\makebox(0,0)[t]{\Macro{refoot}}} - % - \put(65,11){\makebox(0,0)[t]{\Macro{lofoot}}} - \put(80,11){\makebox(0,0)[t]{\Macro{cofoot}}} - \put(95,11){\makebox(0,0)[t]{\Macro{rofoot}}} - \end{picture} - \caption[Commands for modification of - \Package{scrpage2}-pagestyles elements]% - {Commands for modification of pagestyles \PValue{scrheadings} and - \PValue{scrplain} and their association to head and foot elements} - \label{fig:scrpage.leheadetall} -\end{figure} - -\begin{Example} -If one wants the page number be placed in the middle of the -foot, then following can be used: -\begin{small} -\begin{verbatim} - \cfoot{\pagemark} -\end{verbatim} -\end{small} -The next example shows how to place both running head and -page number in the head; the running head inside and the page number -outside. -\begin{small} -\begin{verbatim} - \ohead{\pagemark} - \ihead{\headmark} - \cfoot{} -\end{verbatim} -\end{small} -The command \Macro{cfoot}\PParameter{} is only required in order -to empty the item in middle of the foot, -which normally contains the page number. -\end{Example} - -Using the commands which are associated with only one item -allows more advanced settings. - -\begin{Example} -Assuming one has the order to write an annual report for his -company, he could use commands like this: -\begin{small} -\begin{verbatim} - \ohead{\pagemark} - \rehead{Annual Report 2001} - \lohead{\headmark} - \cefoot{TheCompanyName Inc.} - \cofoot{Department: Development} -\end{verbatim} -\end{small} -In order to keep in sync the data in the foot with the content -of the document, the foot has to be updated using \Macro{cofoot} -when a new department is discussed in the report. -\end{Example} - -As mentioned above, there is an \PValue{plain}-pagestyle which corresponds -to \PValue{scrheadings}. Since it should also be possible to adapt this style, the -commands support an optional argument. Thus the contents of the appropriate -field of the \PValue{plain}-pagestyle can be modified. - -\begin{Example} -The position of the page number for the pagestyle \PValue{scrheadings} -can be declared as follows: -\begin{small} -\begin{verbatim} - \cfoot[\pagemark]{} - \ohead[]{\pagemark} -\end{verbatim} -\end{small} -When now the command \Macro{chapter}, after it has started a new page, -switches to the \PValue{plain}-pagestyle, then the page number -is centered in the foot. -\end{Example} -% -\EndIndex{Pagestyle}{scrheadings}\EndIndex{Pagestyle}{scrplain}% - -\begin{Declaration} - \Macro{clearscrheadings}\\ - \Macro{clearscrplain}\\ - \Macro{clearscrheadfoot} -\end{Declaration}% -\BeginIndex{Cmd}{clearscrheadings}% -\BeginIndex{Cmd}{clearscrplain}% -\BeginIndex{Cmd}{clearscrheadfoot}% - -If one wants to redefine both the page style \PValue{scrheadings} -and the \PValue{plain} page style, frequently one must delete -some already occupied page items. Since one fills all items -rarely with new contents, in most cases several -instruction with empty parameters are necessary. -With the help of these three instructions the deletion is fast and -thoroughly possible. -While \Macro{clearscrheadings} only deletes all fields of the -page style \PValue{scrheadings} and \Macro{clearscrplain} deletes -all fields of the appropriate \PValue{plain} page style, -\Macro{clearscrheadfoot} sets all fields of both page styles on -empty contents. - -\begin{Example} -If one wants to reset the page style to the default \KOMAScript{} settings, -independent from the actual configuration, only these three commands are -sufficient. -\begin{small} -\begin{verbatim} - \clearscrheadfoot - \ohead{\headmark} - \ofoot[\pagemark]{\pagemark} -\end{verbatim} -\end{small} -Without the commands \Macro{clearscrheadfoot}, -\Macro{clearscrheadings} and \Macro{clearscrplain} -6 commands with 9 empty arguments are required. - - \begin{small} -\begin{verbatim} - \ihead[]{} - \chead[]{} - \ohead[]{\headmark} - \ifoot[]{} - \cfoot[]{} - \ofoot[\pagemark]{\pagemark} -\end{verbatim} - \end{small} - Of course, assuming a special configuration some of them can - be dropped. -\end{Example} -% -\EndIndex{Cmd}{clearscrheadings}% -\EndIndex{Cmd}{clearscrplain}% -\EndIndex{Cmd}{clearscrheadfoot}% -% -\EndIndex{Cmd}{lehead}\EndIndex{Cmd}{cehead}\EndIndex{Cmd}{rehead}% -\EndIndex{Cmd}{ihead}\EndIndex{Cmd}{chead}\EndIndex{Cmd}{ohead}% -\EndIndex{Cmd}{lohead}\EndIndex{Cmd}{cohead}\EndIndex{Cmd}{rohead}% -\EndIndex{Cmd}{lefoot}\EndIndex{Cmd}{cefoot}\EndIndex{Cmd}{refoot}% -\EndIndex{Cmd}{ifoot}\EndIndex{Cmd}{cfoot}\EndIndex{Cmd}{rfoot}% -\EndIndex{Cmd}{lofoot}\EndIndex{Cmd}{cofoot}\EndIndex{Cmd}{rofoot}% - -\begin{Declaration} - \Macro{leftmark}\\ - \Macro{rightmark} -\end{Declaration}% -\BeginIndex{Cmd}{leftmark}\BeginIndex{Cmd}{rightmark}% -These two instructions make it possible to access the running headlines, -which are normally meant for the left or for the right page. These two -instruction are not made available by scrpage or scrpage2, but directly -by the \LaTeX{} kernel. If in this section running headline of the -left side or the right page are mentioned, -then the contents of \Macro{leftmark} or \Macro{rightmark} -is meant. -% -\EndIndex{Cmd}{leftmark}\EndIndex{Cmd}{rightmark}% - -\medskip -In previous examples two commands already have been used, which -haven't been introduced yet. Now, the description of these -commands shall follow. - -\BeginIndex{Cmd}{headmark} -\begin{Declaration} -\Macro{headmark} -\end{Declaration}% -\ScrpageMark{}% -This command gives access to the content of running heads. -In contrast to \Macro{leftmark} and \Macro{rightmark}, one -need not regard the proper assignment to left or right page. -\EndIndex{Cmd}{headmark} - -\BeginIndex{Cmd}{pagemark} -\begin{Declaration} -\Macro{pagemark} -\end{Declaration}% -\ScrpageMark{}% -This command returns the formatted page number. The formatting -can be controlled by \Macro{pnumfont} introduced in -\autoref{sec:scrpage.basics.format} or by \Macro{setkomafont} -if a newer version \KOMAScript{} is used, see \autoref{sec:maincls.font}. -% the last describtion \setkomafont ... is only fill-text -\EndIndex{Cmd}{pagemark} - -\BeginIndex{Cmd}{pagestyle}\BeginIndex{Pagestyle}{useheadings} -\begin{Declaration} -\Option{useheadings} -\end{Declaration}% -The package \Package{scrpage2} is meant primarily for the fact that the supplied -styles are used or own styles are defined. However it can be necessary -to shift back also to the style provided by the document class. -It would be obvious to do this with \Macro{pagestyle}\PParameter{headings}, -but this has however the disadvantage that commands -\Macro{automark} and \Macro{manualmark} discussed in the following -do not function as expected. -For this reason one should shift back to the original styles using -\Macro{pagestyle}\PParameter{useheadings}. -Such a switching has then no effect on it whether one -operates with manual or automatic running headlines. -% -\EndIndex{Cmd}{pagestyle}\EndIndex{Pagestyle}{useheadings} - -\subsection{Manual and Automatic Headings} -\label{sec:scrpage.basics.mark} -% \automark \manualmark -% -Usually there is a \emph{my}-version of the \PValue{headings}-style. -If such a style is active, then the running headlines are -updated no longer automatically. -With \Package{scrpage2} another path is taken. Whether the running -headlines are living or not, determines the instructions \Macro{automark} -and \Macro{manualmark}. -The default can be also already influenced while the loading of the -package with the options \Option{automark} and \Option{manualmark}, -see \autoref{sec:scrpage.basics.options} -on \autopageref{page:scrpage.automark}. - -\BeginIndex{Cmd}{manualmark} -\begin{Declaration} -\Macro{manualmark} -\end{Declaration}% -As the name already clarifies, \Macro{manualmark} switches off the updating -of the running headlines. It is left to the user to provide for -updating or for contents of the running headlines. -For that purpose the instructions \Macro{markboth}\IndexCmd{markboth} -und \Macro{markright}\IndexCmd{markright} are available. -\EndIndex{Cmd}{manualmark} - -\BeginIndex{Cmd}{automark} -\begin{Declaration} - \Macro{automark}\OParameter{right page}\Parameter{left page} -\end{Declaration}% -The macro \Macro{automark} however activates the automatic updating. -For the two parameters the designations of the document level -are to be used, whose title in appropriate place is to appear. -Valid values for the parameters are: -\PValue{part}\ChangedAt{2.2}{\Package{scrpage2}}, \PValue{chapter}, -\PValue{section}, \PValue{subsection}, \PValue{subsubsection}, -\PValue{paragraph}, \PValue{subparagraph}. -For most of the classes usage of \PValue{part} will not produce -the expected results. So far only \KOMAScript\ classes from version~2.9s -up are known to support this value. - -The optional argument \PName{right page} is meant understandably only for -two-sided documents. -In the one-sided case you should normally not use it. -With the help of the option \Option{autooneside} one can also adjust -that the optional argument in one-sided mode is ignored automatically, -see \autoref{sec:scrpage.basics.options}. -% -\begin{Example} -Assuming that the document uses a \emph{book} class, -which topmost section level is \emph{chapter}, -then after a preceding \Macro{manualmark} -\begin{small} -\begin{verbatim} - \automark[section]{chapter} -\end{verbatim} -\end{small} -restores the original behaviour. -If one prefers one of the lower section levels in running head -following can be used. -\begin{small} -\begin{verbatim} - \automark[subsection]{section} -\end{verbatim} -\end{small} -How useful the last declaration is, everybody has to decide -for oneself. -\end{Example} - -\begin{Explain} -The data of the headings is set by the command -\Macro{markboth}\IndexCmd{markboth} for the top-most -section levels, for the lower levels -\Macro{markright}\IndexCmd{markright} or -\Macro{markleft}\IndexCmd{markleft} are used. -These commands are called indirectly by the sectioning commands. -The macro \Macro{markleft} is provided by the package -\Package{scrpage2}. -Its definition is similar to \Macro{markright} originating from -the \LaTeX{} kernel. -Although \Macro{markleft} is not defined as an internal command, -the direct use is not recommended. -\end{Explain} -\EndIndex{Cmd}{automark} - - -\subsection{Formatting of Heading and Footing} -\label{sec:scrpage.basics.format} -% \headfont \pnumfont -% \setheadwidth \setfootwidth -% \set(head|foot)(top|sep|bot)line -In the previous paragraph it concerned mainly contentwise things. Is -not sufficient naturally, in order to satisfy the formative -ambitions. Therefore it is to turn in this paragraph exclusive therefore. -% -\BeginIndex{Cmd}{headfont}\BeginIndex{Cmd}{pnumfont} -\begin{Declaration} -\Macro{headfont}\\ -\Macro{pnumfont} -\end{Declaration}% -\ScrpageMark{}% -The command \Macro{headfont} contains the commands -which determine the formatting of head and foot lines. -The style of the page number defines the command -\Macro{pnumfont}. -\begin{Example} -If, for example, one wants the head and foot to be typeset in bold -sans-serif and the page number in a slanted style, then it can be -used the configuration: -\begin{small} -\begin{verbatim} - \renewcommand{\headfont}{\normalfont\sffamily\bfseries} - \renewcommand{\pnumfont}{\normalfont\rmfamily\slshape} -\end{verbatim} -\end{small} -\end{Example} -\EndIndex{Cmd}{headfont}\EndIndex{Cmd}{pnumfont} -% -Since version 2.8p of the \KOMAScript{} classes a new -configuration scheme is implemented. -If \Package{scrpage2} is used together with these classes then -it is recommended to setup font attributes the way described -in \autoref{sec:maincls.font}. -\begin{Example} -This interfaces implements the command \Macro{setkomafont} -in order to configure the font attributes. -The previous definition can then be written as: -\begin{small} -\begin{verbatim} - \setkomafont{pagehead}\normalfont\sffamily\bfseries} - \setkomafont{pagenumber}{\normalfont\rmfamily\slshape} -\end{verbatim} -\end{small} -\end{Example} - -\BeginIndex{Cmd}{setheadwidth}\BeginIndex{Cmd}{setfootwidth} -\begin{Declaration} -\Macro{setheadwidth}\OParameter{shift}\Parameter{width}\\ -\Macro{setfootwidth}\OParameter{shift}\Parameter{width} -\end{Declaration}% -Normally the widths of heading and footing line -correspond to the width of the text body. -The commands \Macro{setheadwidth} and \Macro{setfootwidth} enable the -user to adapt in a simple manner the widths to his needs. -The mandatory argument \PName{width} takes up the value for the width -of the page head or foot, -\PName{shift} is a longitudinal dimension for the shift of the -appropriate item toward the outside page edge. - -For the most common situations the mandatory argument \PName{width} -accepts the following symbolic values: -\begin{labeling}[\,--]{\PValue{textwithmarginpar}} -\item[\PValue{paper}] the width of the paper -\item[\PValue{page}] the width of the page -\item[\PValue{text}] the width of the text body -\item[\PValue{textwithmarginpar}] the width of the text body including margin. -\item[\PValue{head}] the current head width -\item[\PValue{foot}] the current foot width -\end{labeling} -The difference between \PValue{paper} and \PValue{page} is, that -\PValue{page} means the width of the paper less the binding correction. -This only applies if the package \Package{typearea}\IndexPackage{typearea} -is used (see \autoref{cha:typearea}). -Without \Package{typearea} both values are equal. - -\begin{Example} -The layout of the \emph{\LaTeX\,Companion}, the head-line projects -into the margin, can be obtained with: -\begin{small} -\begin{verbatim} - \setheadwidth[0pt]{textwithmarginpar} -\end{verbatim} -\end{small} -% -and looks on an odd page like this: -% -\begin{XmpTopPage} - \XmpHeading{10,25}{85} - \thinlines\XmpRule{10,23}{85} - \XmpSetText[\XmpTopText]{10,21} - \XmpMarginNote{83,11.8} -\end{XmpTopPage} -% -If the foot-line shall have the same width and alignment, then -two ways are possible. The first simply repeats the settings -for the foot-line: -\begin{small} -\begin{verbatim} - \setfootwidth[0pt]{textwithmarginpar} -\end{verbatim} -\end{small} -% -In the second way the symbolic value \PValue{head} is used, since the -head has already the desired settings. -\begin{small} -\begin{verbatim} - \setfootwidth[0pt]{head} -\end{verbatim} -\end{small} -\end{Example} - -If no \PName{shift} is indicated, -i.e. without the optional argument, then -the heading or the foot appears symmetrically on the page arranged. -A value for the \PName{shift} is determined automatically, which -corresponds to the current page shape. -% -\begin{Example} -According to the previous example the optional argument is abandoned: -\begin{small} -\begin{verbatim} - \setheadwidth{textwithmarginpar} -\end{verbatim} -\end{small} -% -and looks on an odd page like this: -% -\begin{XmpTopPage} - \XmpHeading{5,25}{85} - \thinlines\XmpRule{5,23}{85} - \XmpSetText[\XmpTopText]{10,21} - \XmpMarginNote{83,11.8} -\end{XmpTopPage} -\end{Example} - -As to be seen, the heading is now shifted inward, while the -heading width has not changed. -The shift is calculated in a way that the configuration of the typearea -become visible also here. -% -\EndIndex{Cmd}{setheadwidth}\EndIndex{Cmd}{setfootwidth} - -\BeginIndex{Cmd}{setheadtopline}\BeginIndex{Cmd}{setheadsepline} -\BeginIndex{Cmd}{setfootseptline}\BeginIndex{Cmd}{setfootbotline} -\begin{Declaration} -\Macro{setheadtopline}\OParameter{length}\Parameter{thickness}\OParameter{commands}\\ -\Macro{setheadsepline}\OParameter{length}\Parameter{thickness}\OParameter{commands}\\ -\Macro{setfootsepline}\OParameter{length}\Parameter{thickness}\OParameter{commands}\\ -\Macro{setfootbotline}\OParameter{length}\Parameter{thickness}\OParameter{commands} -\end{Declaration}% -According to the configuration of head and foot there are -commands to modify the lines above and below the head and foot. - -\begin{labeling}[\,--]{\Macro{setfootsepline}} -\item[\Macro{setheadtopline}] configures the line above the head -\item[\Macro{setheadsepline}] configures the line below the head -\item[\Macro{setfootsepline}] configures the line above the foot -\item[\Macro{setfootbotline}] configures the line below the foot -\end{labeling} - -The mandatory argument \PName{thickness} determines, -how strongly the line is drawn. -The optional argument \PName{length} accepts the same symbolic values as -\PName{width} with \Macro{setheadwidth}, as also a normal length expression. -As long as in the document \PName{length} value was not assigned to the -optional argument, the appropriate line length adapts automatically -the width of the heading or the foot. - -Use \PValue{auto} in the length argument to restore this -automatism for the length of a line. - -The\ChangedAt{2.2}{\Package{scrpage2}} -optional argument \PName{commands} may be used to specify additional commands -to be executed before the respective line is drawn. -For example such commands could be used for changing the -color\Index{header>color}\Index{footer>color}\Index{color>in - header}\Index{color>in footer} of that line. -When using a \KOMAScript\ class you could also use -\Macro{setkomafont}\IndexCmd{setkomafont} to specify commands -for one of the elements -\FontElement{headtopline}\IndexFontElement{headtopline}, -\FontElement{headsepline}\IndexFontElement{headsepline}, -\FontElement{footsepline}\IndexFontElement{footsepline}, -\FontElement{footbottomline}\IndexFontElement{footbottomline}, -\FontElement{footbotline}\IndexFontElement{footbotline}. -These could be extended by adding \Macro{addtokomafont}\IndexCmd{addtokomafont}. -See \autoref{sec:maincls.font} for details on the \Macro{setkomafont} and -\Macro{addkomafont} commands. - -\begin{Declaration} -\Macro{setheadtopline}\OParameter{\upshape\PValue{auto}}\Parameter{\upshape\PValue{current}}\\ -\Macro{setheadtopline}\OParameter{\upshape\PValue{auto}}\Parameter{}\\ -\Macro{setheadtopline}\OParameter{\upshape\PValue{auto}}\Parameter{}\OParameter{} -\end{Declaration}% -The arguments shown here for the command \Macro{setheadtopline}, -are of course valid for the other three configuration commands, too. - -If the mandatory parameter has the value \PValue{current} or has been -left empty then the line height is not changed. -This may be used to modify the length of the line without changing its height. - -\PName{commands} is an optional argument, if omitted all command setting -will remain active that might have been specified before, while using -an empty \PName{commands} argument will revoke any previously valid -commands. - -\begin{Example} -If the head for example is to be contrasted by a strong line of 2\,pt -above and a normal line of 0.4\,pt between head and body, it can be -achieved with: -\begin{small} -\begin{verbatim} - \setheadtopline{2pt} - \setheadsepline{.4pt} -\end{verbatim} -\end{small} -% -\begin{XmpTopPage} - \XmpHeading{10,25}{70} - \thinlines\XmpRule{10,23}{70} - \thicklines\XmpRule{10,28}{70} - \XmpSetText[\XmpTopText]{10,21} - \XmpMarginNote{83,11.8} -\end{XmpTopPage} - -To specify that this line is to be drawn also e.\,g. in red color you -would change the commands like this: -\begin{small} -\begin{verbatim} - \setheadtopline{2pt}[\color{red}] - \setheadsepline{.4pt}[\color{red}] -\end{verbatim} -\end{small} -In this sample as well as in the following one line color is activated -by applying the syntax of the \Package{color}\IndexPackage{color} package, -so this package must be loaded of course. Since \Package{scrpage2} comes -without built-in color handling any package providing color support -may be used. - -\KOMAScript\ classes also support the following way of color specification: -\begin{small} -\begin{verbatim} - \setheadtopline{2pt} - \setheadsepline{.4pt} - \setkomafont{headtopline}[\color{red}] - \setkomafont{headsepline}[\color{red}] -\end{verbatim} -\end{small} - -The automatic adjustment of the head and foot width is illustrated -in the following example: -\begin{small} -\begin{verbatim} - \setfootbotline{2pt} - \setfootsepline[text]{.4pt} - \setfootwidth[0pt]{textwithmarginpar} -\end{verbatim} -\end{small} - -% \phantomsection for hyperref-\pageref-links jum-2001/11/24 -\phantomsection\label{page:scrpage.autoLineLength} -\begin{XmpBotPage} - \XmpHeading{10,18}{85} - \thinlines\XmpRule{17,21}{70} - \thicklines\XmpRule{10,16}{85} - \XmpSetText[\XmpBotText]{10,33} - \XmpMarginNote{83,24} -\end{XmpBotPage} -\end{Example} - -Now not everybody will like the alignment of the line above -the foot, instead one will expect the line left-aligned. -This can only be achieved with a global package option, which -will be described together with other package option -in the next \autoref{sec:scrpage.basics.options}. -\EndIndex{Cmd}{setheadtopline}\EndIndex{Cmd}{setheadsepline} -\EndIndex{Cmd}{setfootseptline}\EndIndex{Cmd}{setfootbotline} - -\subsection{Package Options}\label{sec:scrpage.basics.options} -% head(in|ex)clude foot(in|ex)clude --> typearea -% headtopline headsepline footbotline footsepline (plain...) -% komastyle standardstyle -% markuppercase markusecase -% automark manualmark - -\BeginIndex{Option}{headinclude}\BeginIndex{Option}{footinclude} -\BeginIndex{Option}{headexclude}\BeginIndex{Option}{footexclude} -\begin{Declaration} -\Option{headinclude}\\ -\Option{headexclude}\\ -\Option{footinclude}\\ -\Option{footexclude} -\end{Declaration}% -These options intend whether the page-header or that page-footing -are reckoned in with the page-body for the calculation of the type-area. -The adjustments necessary by the use of these parameters -are made by the package -\Package{typearea} (see \autoref{sec:typearea.options}), if this -package is loaded after \Package{scrpage2}. -Important is here that on use of a \KOMAScript{} class -these options must be indicated for the document class and not -for \Package{scrpage2}, in order to obtain an effect. -% -\EndIndex{Option}{headinclude}\EndIndex{Option}{footinclude} -\EndIndex{Option}{headexclude}\EndIndex{Option}{footexclude} - -\BeginIndex{Option}{headtopline}\BeginIndex{Option}{plainheadtopline} -\BeginIndex{Option}{headsepline}\BeginIndex{Option}{plainheadsepline} -\BeginIndex{Option}{footsepline}\BeginIndex{Option}{plainfootsepline} -\BeginIndex{Option}{footbotline}\BeginIndex{Option}{plainfootbotline} -\begin{Declaration} -\Option{headtopline} und \Option{plainheadtopline}\\ -\Option{headsepline} und \Option{plainheadsepline}\\ -\Option{footsepline} und \Option{plainfootsepline}\\ -\Option{footbotline} und \Option{plainfootbotline} -\end{Declaration}% -A basic adjustment for the lines under and over heading and footing -can be made with these options. -These adjustments are considered then as default to all -page styles defined with \Package{scrpage2}. -If one of these options is used, then a line thickness -is used by 0.4\,pt. - -Since there is an appropriate \PValue{plain}-style to the page style -\PValue{scrheadings}, with the \Option{plain\dots}-options also the -appropriate line of the plain style can be configured. -These \Option{plain}-options work however only, even if the -corresponding option without plain are activated. -Thus \Option{plainheadtopline} shows no effect without the -\Option{headtopline} option set. - -With these options it is to be noted that the appropriate page part, -heading or footing, is reckoned in with the text-area -for the calculation of the type-area in case a line has been activated. -This means, if with \Option{headsepline} the separation-line -between heading and text is activated, then the packge \Package{typearea} -calculates the type-area in such a way that the page-header -is part of the text block automatically. - -The conditions for the options of the preceding paragraph, apply also to -this automatism. That means that the package \Package{typearea} -must be loaded to scrpage2, or that on use of a \KOMAScript{} class, -the options \Option{headinclude} and \Option{footinclude} -must be set explicitly with \Macro{documentclass} in order to -transfer heading or footing line in the text-area. -% -\EndIndex{Option}{headtopline}\EndIndex{Option}{plainheadtopline} -\EndIndex{Option}{headsepline}\EndIndex{Option}{plainheadsepline} -\EndIndex{Option}{footsepline}\EndIndex{Option}{plainfootsepline} -\EndIndex{Option}{footbotline}\EndIndex{Option}{plainfootbotline} - -\BeginIndex{Option}{ilines}% -\BeginIndex{Option}{clines}% -\BeginIndex{Option}{olines}% -\Index{rule}\Index{line}% -\begin{Declaration} -\Option{ilines}\\ -\Option{clines}\\ -\Option{olines} -\end{Declaration}% -% -The definition of the line lengths can lead to an -undesired adjustment, since -the line is centered in the heading or footing area. -With the package options presented here, this specification can be -modified for all page styles defined with \Package{scrpage2}. -The option \Option{ilines} sets the adjustment in such a -way that the lines align to the inside edge. -The option \Option{clines} behaves like the standard adjustment and -\Option{olines} aligns at the outside edge. - -\begin{Example} -The next example illustrates the influence of the -option \Option{ilines}. Please compare to the example for -\Macro{setfootsepline} on \autopageref{page:scrpage.autoLineLength}. - \begin{small} -\begin{verbatim} - \usepackage[ilines]{scrpage2} - \setfootbotline{2pt} - \setfootsepline[text]{.4pt} - \setfootwidth[0pt]{textwithmarginpar} -\end{verbatim} - \end{small} - -Only the use of the option \Option{ilines} leads to the different -result shown below: -\begin{XmpBotPage} - \XmpHeading{10,18}{85} - \thinlines\XmpRule{10,21}{70} - \thicklines\XmpRule{10,16}{85} - \XmpSetText[\XmpBotText]{10,33} - \XmpMarginNote{83,24} -\end{XmpBotPage} - In contrast to the default configuration the separation line - between text and foot is now left-aligned not centered. -\end{Example} -\EndIndex{Option}{ilines}\EndIndex{Option}{clines}\EndIndex{Option}{olines} - -% \phantomsection for hyperref-\pageref-links jum-2001/11/24 -\phantomsection\label{page:scrpage.automark}% -\BeginIndex{Option}{automark}\BeginIndex{Option}{manualmark} -\begin{Declaration} -\Option{automark}\\ -\Option{manualmark} -\end{Declaration}% -These options set the adjustment at the beginning of the document -whether automatic updating of the running headlines takes place. -The option \Option{automark} switches the automatic updating on, -\Option{manualmark} deactivates it. -Without use of one of the two options the adjustment is preserved, -which was valid while the loading of the package. -% -\begin{Example} -One loads the package \Package{scrpage2} directly after the document -class \Class{scrreprt} without any package options. - \begin{small} -\begin{verbatim} - \documentclass{scrreprt} - \usepackage{scrpage2} -\end{verbatim} - \end{small} -Since the default page style of \Class{scrreprt} is \PValue{plain}, -this page style is also active yet. -Futhermore \PValue{plain} means manual headings. -If one now activates the page style \PValue{scrheadings} with - \begin{small} -\begin{verbatim} - \pagestyle{scrheadings} -\end{verbatim} - \end{small} -then the manual headings are always active. - -If one uses the document class \Class{scrbook} instead, then after: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \usepackage{scrpage2} -\end{verbatim} - \end{small} -the page style \PValue{headings} is active and the running headings -are updated automatically. -Switching to the page style \PValue{scrheadings} keeps this -setting present. -The marking-commands of \Class{scrbook} continue to be used. - -However, the use of - \begin{small} -\begin{verbatim} - \usepackage[automark]{scrpage2} -\end{verbatim} - \end{small} -activates the automatic update of the running heading independent ->from the used document class. -The option does not effect the used page style \PValue{plain} of -the class \Class{scrreprt}. -The headings are not visible until the page style has been changed to -\PValue{scrheadings}\IndexPagestyle{scrheadings}, -\PValue{useheadings} or another self-defined page style with headings. -\end{Example} -\EndIndex{Option}{automark}\EndIndex{Option}{manualmark} - -\BeginIndex{Option}{autooneside} -\begin{Declaration} - \Option{autooneside} -\end{Declaration}% -This option ensures that the optional parameter of -\Macro{automark}\IndexCmd{automark} will be ignored automatically -in one-side mode. See the explanation of the command -\Macro{automark} in \autoref{sec:scrpage.basics.mark}. -\EndIndex{Option}{autooneside} - -\BeginIndex{Option}{komastyle}\BeginIndex{Option}{standardstyle} -\begin{Declaration} -\Option{komastyle}\\ -\Option{standardstyle} -\end{Declaration}% -These options determine the kind of the pre-defined page style -\PValue{scrheadings}. -The option \Option{komastyle} takes up a configuration like -the \KOMAScript{} classes. -This is the default for \KOMAScript{} classes and can this way -also be set for other classes. - -A configuration expected from the standard classes can be -defined using option \Option{standardstyle}. -Automatically the option \Option{markuppercase} will be -activated, but only if option \Option{markusedcase} is not given. -\EndIndex{Option}{komastyle}\EndIndex{Option}{standardstyle} - -\BeginIndex{Option}{markuppercase}\BeginIndex{Option}{markusedcase} -\begin{Declaration} -\Option{markuppercase}\\ -\Option{markusedcase} -\end{Declaration}% -The package \Package{scrpage2} has -to modify internal commands, which are used by document structuring -commands, in order to get the function of \Macro{automark} working. -Since some classes, in contrast to the \KOMAScript{} classes, -write the headings in uppercase letters, \Package{scrpage2} -has to know how the used document class represents the headings. - -Option \Option{markuppercase} shows \Package{scrpage2} that -the document class uses uppercase letters. -If the document class does not represent the headings in -uppercase letters the option \Option{markusedcase} should -be given. -These options are not suitable to force a representation, thus -unexpected effects may occur, if the given option does not match -the behaviour of the document class. -\EndIndex{Option}{markuppercase}\EndIndex{Option}{markusedcase} - -\begin{Declaration} - \Option{nouppercase} -\end{Declaration}% -\BeginIndex{Option}{nouppercase}% -In the previous paragraph about \Option{markuppercase} and -\Option{markusedcase} it has been already stated that some -document classes represent the running headings\Index{heading} in -uppercase letters using the commands -\Macro{MakeUppercase} or \Macro{uppercase}. -Setting the option \Option{nouppercase} allows to disable these -both commands. -The option \Option{nouppercase} only is valid as long page styles -defined by \Package{scrpage2} are used, including -\PValue{scrheadings} and its appropriate \PValue{plain} page style. - -The applicated method is very brutal and can cause that desired -changes of normal letters to uppercase letters -\Index{uppercase letters} do not occur. -Since these cases appear not frequently the option \Option{nouppercase} -is a useful solution. - -\begin{Example} -If a document uses the standard class \Class{book}\IndexClass{book}, -but the uppercase headings are not desired, then the preamble of -the document could start with: - \begin{small} -\begin{verbatim} - \documentclass{book} - \usepackage[nouppercase]{scrpage2} - \pagestyle{scrheadings} -\end{verbatim} - \end{small} - The selection of the page style \PValue{scrheadings} is necessary, - since otherwise the page style \PValue{headings} is active, which - does not respect the settings made by option \Option{nouppercase}. -\end{Example} - -In some cases not only classes but also packages set the running -headings in uppercase letters. -Also in these cases the option \Option{nouppercase} should be able -to switch back to the normal non-uppercase headings. -\EndIndex{Option}{nouppercase} - -\section{Defining Own Page Styles}\label{sec:scrpage.UI} -% -% -\subsection{The Interface for Beginners}\label{sec:scrpage.UI.user} -% \deftripstyle -\BeginIndex{Cmd}{deftripstyle}\Index{page style} - -Now one would not always be bound only to the provided page styles, -but moreover there will be the wish to define own page styles. -Sometimes there will be a special need, since a specific -\emph{Corporate Identity} requires the declaration of own page styles. -The easiest way to deal with is: -\begin{Declaration} -\Macro{deftripstyle}\Parameter{name}% -\OParameter{LO}\OParameter{LI}% -\Parameter{HI}\Parameter{HC}\Parameter{HO}% -\Parameter{FI}\Parameter{FC}\Parameter{FO} -\end{Declaration}% -\ScrpageMark{}% -The parameters have the following meaning: -\begin{labeling}[\,--]{\PName{Name}} -\item[\PName{name}] the name of the page style, in order to activate them - using the command \Macro{pagestyle}\Parameter{name} -\item[\PName{LO}] the thickness of the outside lines, - i.e. the line above the head - and the line below the foot (optional) -\item[\PName{LI}] the thickness of the separation lines, - i.e. the line below the head - and the line above the foot (optional) -\item[\PName{HI}] contents of the inside box in the page head for two-side - layout or left for one-side layout -\item[\PName{HC}] contents of the centered box in the page head -\item[\PName{HO}] contents of the outside box in the page head for two-side - layout or right for one-side layout -\item[\PName{FI}] contents of the inside box in the page foot for two-side - layout or left for one-side layout -\item[\PName{FC}] contents of the centered box in the page foot -\item[\PName{FO}] contents of the outside box in the page foot for two-side - layout or right for one-side layout -\end{labeling} - -The command \Macro{deftripstyle} surely represents the simplest -possibility of defining page styles. -Unfortunately also restrictions are connected with since in a -page range with one via deftripstyle defined page style -no modification of the lines above and below heading and footing -can take place. - -\begin{Example} -Assuming a two-side layout, where the running headings are placed inside. -Furthermore the document title, here "`Report"`, shall be placed outside -in the head, the page number is centered in the foot. -\begin{small} -\begin{verbatim} - \deftripstyle{TheReport}% - {\headmark}{}{Report}% - {}{\pagemark}{} -\end{verbatim} -\end{small} - -Shall moreover the lines above the head and below the foot be -drawn with a thickness of 2\,pt and the text body be separated ->from head and foot with 0.4\,pt lines, then the definition has to -be extended. -\begin{small} -\begin{verbatim} - \deftripstyle{TheReport}[2pt][.4pt]% - {\headmark}{}{Report}% - {}{\pagemark}{} -\end{verbatim} -\end{small} -% -\typeout{^^J--- Ignore underfull and overfull \string\hbox:} -\begin{center}\setlength{\unitlength}{1mm}\begin{picture}(100,50)\scriptsize -\thinlines -\put(5,0){\line(0,1){50}} -\put(55,0){\line(0,1){50}} -\put(5,50){\line(1,0){40}} -\put(55,50){\line(1,0){40}} -% -\thicklines -\put(45,0){\line(0,1){50}} -\put(95,0){\line(0,1){50}} -\put(5,0,){\line(1,0){40}} -\put(55,0){\line(1,0){40}} -% -\XmpHeading[Report\hfill 2. The Eye]{11,46}{30} -\XmpHeading[2.1 Retina\hfill Report]{59,46}{30} -\XmpHeading[\hfill 14\hfill]{11,6.5}{30} -\XmpHeading[\hfill 15\hfill]{59,6.5}{30} -\put(11,43){\makebox(0,0)[tl]{\parbox{30mm}{\tiny% - \textbf{2.1 Retina}\\ - \XmpText[49]}}} -\put(59,43){\makebox(0,0)[tl]{\parbox{30mm}{\tiny% - \XmpText[51]}}} -% -\thinlines -\XmpRule{11,44.5}{30}\XmpRule{59,44.5}{30} -\XmpRule{11,8}{30}\XmpRule{59,8}{30} -\linethickness{1pt} -\XmpRule{11,48}{30}\XmpRule{59,48}{30} -\XmpRule{11,5}{30}\XmpRule{59,5}{30} -\end{picture}\end{center} -\typeout{^^J--- Don't ignore underfull and overfull \string\hbox:^^J} -\end{Example} -\EndIndex{Cmd}{deftripstyle} - -\subsection{The Interface for Experts}\label{sec:scrpage.UI.expert} -% \defpagestyle \newpagestyle \providepagestyle \renewpagestyle -\BeginIndex{Cmd}{defpagestyle}\BeginIndex{Cmd}{newpagestyle} -\BeginIndex{Cmd}{renewpagestyle}\BeginIndex{Cmd}{providepagestyle} -\Index{page style} -Simple page styles, how they can be defined with \Macro{deftripstyle}, -are rare according to experience. -Either a professor requires that the thesis looks in -such a way like its own, and who wants to contradict -it seriously, or a company would like that the half -financial department emerges in the page footing. -No problem, the solution is: -% -\begin{Declaration} -\Macro{defpagestyle}\Parameter{name}\Parameter{head-definition}\Parameter{foot-definition}\\ -\Macro{newpagestyle}\Parameter{name}\Parameter{head-definition}\Parameter{foot-definition}\\ -\Macro{renewpagestyle}\Parameter{name}\Parameter{head-definition}\Parameter{foot-definition}\\ -\Macro{providepagestyle}\Parameter{name}\Parameter{head-definition}\Parameter{foot-definition} -\end{Declaration}% -\ScrpageMark{}% -These four commands give full access to the capabilities of -\Package{scrpage2} according to define page styles. -Their structure is indentical, they differ only the manner of working. - -\begin{labeling}[\,--]{\Macro{providepagestyle}} -\item[\Macro{defpagestyle}] defines always a new pagestyle. -If a page style with this name already exists it will be overwritten. -\item[\Macro{newpagestyle}] defines a new pagestyle. -If a page style with this name already exists a error message will be given. -\item[\Macro{renewpagestyle}] redefines a pagestyle. -If apage style with this name does not exist a error message will be given. -\item[\Macro{providepagestyle}] defines a new pagestyle, -but only if there is no page style with that name already present. -\end{labeling} - -The syntax of the four commands is explained on command -\Macro{defpagestyle} examplary. -\begin{labeling}[\,--]{\PName{head definition}} -\item[\PName{name}] the name of the page style for - \Macro{pagestyle}\Parameter{name} -\item[\PName{head-definition}] the declaration of the heading consisting - of five element; elements in round parenthesis are optional:\\ -\AParameter{ALL,ALT}\Parameter{EP}\Parameter{OP}\Parameter{OS}\AParameter{BLL,BLT} -\item[\PName{foot-definition}] the declaration of the footing consisting - of five element; elements in round parenthesis are optional:\\ -\AParameter{ALL,ALT}\Parameter{EP}\Parameter{OP}\Parameter{OS}\AParameter{BLL,BLT} -\end{labeling} - -It can be seen, that head and foot declaration are identical. -The parameters have the following meaning: -\begin{labeling}[\,--]{\PName{OLD}} -\item[\PName{ALL}] above line length: (head = outside, foot = separation line) -\item[\PName{ALT}] above line thickness -\item[\PName{EP}] definition for \emph{even} pages -\item[\PName{OP}] definition for \emph{odd} pages -\item[\PName{OS}] definition for \emph{one-side} layout -\item[\PName{BLL}] below line length: (head = separation line, foot = outside) -\item[\PName{BLT}] below line thickness -\end{labeling} - -If the optional line-parameters are omitted, then the line behaviour keeps -configurable by the commands introduced in \autoref{sec:scrpage.basics.format}. -In the old version \Package{scrpage}\ScrpageNote{} the line-parameters -are mandatory. - -The three elements \PName{EP}, \PName{OP} and \PName{OS} are boxes with -the width of page head or foot respectively. -The definition occur on the left side in the box, thus the space between -two text elements has to be stretched using \Macro{hfill}, in order to -write the first text element on the left edge \emph{and} the second text -element on the right edge. -% -\begin{verbatim} - {\headmark\hfill\pagemark} -\end{verbatim} - -If one would like a third text-element centered in the box, then an -extended definition must be used. -The commands \Macro{rlap} and \Macro{llap} simply write the given -arguments, but for \LaTeX{} they take no horizontal space. -Only this way the middle text is really centered. -% -\begin{verbatim} - {\rlap{\headmark}\hfill centered text\hfill\llap{\pagemark}} -\end{verbatim} - -This and more examples of the expert's interface and other commands -provided by \Package{scpage2} follow now in the final example. - -\begin{Example} -This examples uses the document class \Class{scrbook}, which -means that the default page layout is two-side. -While the loading of the package \Package{scrpage2} the -options \Option{automark} and \Option{headsepline} are -given. -The first switches on the automatic update of running -headings, the second determines that a separation line between -head and text-body is drawn in the \PValue{scrheadings} page style. - -\begin{small}\begin{verbatim} - \documentclass{scrbook} - \usepackage[automark,headsepline]{scrpage2} -\end{verbatim}\end{small} - -The expert's interface is used to define two page styles. -The page style \PValue{withoutLines} does not define any -line parameters. -The second page style \PValue{withLines} defines -a line thicknes of 1\,pt for the line above the head -and 0\,pt for the separation-line between head and text. - -\begin{small}\begin{verbatim} - \defpagestyle{withoutLines}{% - {Example\hfill\headmark}{\headmark\hfill without lines} - {\rlap{Example}\hfill\headmark\hfill% - \llap{without lines}} - }{% - {\pagemark\hfill}{\hfill\pagemark} - {\hfill\pagemark\hfill} - } -\end{verbatim}\end{small} - -\begin{small}\begin{verbatim} - \defpagestyle{withLines}{% - (\textwidth,1pt) - {with lines\hfill\headmark}{\headmark\hfill with lines} - {\rlap{\KOMAScript}\hfill \headmark\hfill% - \llap{with lines}} - (0pt,0pt) - }{% - (\textwidth,.4pt) - {\pagemark\hfill}{\hfill\pagemark} - {\hfill\pagemark\hfill} - (\textwidth,1pt) - } -\end{verbatim}\end{small} - -At the document's begin the page style \PValue{scrheadings} -is choosen. -The command \Macro{chapter} starts a new chapter and sets -automatically the page style for this page to \PValue{plain}. - -The command \Macro{chead} shows how running headings can -be represented even on a \PValue{plain} page. -Running headings on chapter start-pages are not usual, -since in this case the page looses its emphasis-character. -Basically it is more important to show that a new -chapter starts here than that a section of this page has -a special title. - -\begin{Explain}% not important, only to enhance the paragraph breaking -Instead of \Macro{leftmark} one would expect -the use of \Macro{rightmark} in the parameter -of \Macro{chead}, since the chapter starts on an even -page. But, because of internal \LaTeX{} definitions, -this does not work. It only returns an empty string. -\end{Explain} -\begin{small}\begin{verbatim} - \begin{document} - \pagestyle{scrheadings} - \chapter{Thermodynamics} - - \chead[\leftmark]{} - - \section{Main Laws} - Every system has an extensive condition unit called - Energy. In a closed system the energy is constant. -\end{verbatim}\end{small} - -\begin{XmpTopPage} - \XmpHeading[\hfill\textsl{1. Thermodynamics}\hfill]{10,27}{70} - \put(10,17){\normalsize\textbf{\sffamily 1.Thermodynamics}} - \put(10,12){\textbf{\sffamily 1.1 Main Laws}} - \XmpSetText[% - Every System has an extensive condition unit]{10,9} -\end{XmpTopPage} - -After starting a new page the page style \PValue{scrheadings} -is active and thus the separation line below the heading is -visible. -\begin{small}\begin{verbatim} - There is a condition unit of a system, called entropy, - which temporal alteration consits of entropy stream - and entropy generation. -\end{verbatim}\end{small} -\begin{XmpTopPage} - \XmpHeading[\textsl{1. Thermodynamics}\hfill]{20,27}{70} - \thinlines\XmpRule{20,25}{70} - \XmpSetText[% - There is a condition unit of a system, called entropy, - which temporal alteration consits of entropy stream - and entropy generation.]{20,20} -\end{XmpTopPage} - -After switching to the next page, the automatic update of the -running headings is disabled using \Macro{manualmark}. -The page style \PValue{withoutLines} becomes active. -Since no line parameters are given in the definition of this -page style, the default configuration is used, which draws -a separation line between head and text-body. -\begin{XmpTopPage} - \XmpHeading[\slshape Energy Conversion\hfill without lines]{10,27}{70} - \thinlines\XmpRule{10,25}{70} - \XmpSetText[% - \textbf{\sffamily 1.2 Exergy and Anergy}\\ - While the transition of a system to an equilibrium state - with its environment the maximum work gainable is called - exergy.]{10,21} -\end{XmpTopPage} - -\begin{small}% -\begin{verbatim} - \manualmark - \pagestyle{withoutLines} - \section{Exergy and Anergy}\markright{Energy Conversion} - While the transition of a system to an equilibrium state - with its environment the maximum work gainable is called - exergy. -\end{verbatim}% -\end{small} - -At the next page of the document the page style \PValue{withLines} -is activated. -The line settings of its definition are taken in account and the -lines are drawn accordingly. -\begin{small}% -\begin{verbatim} - \pagestyle{mitLinien} - \renewcommand{\headfont}{\itshape\bfseries} - The portion of an energy not conversable in exergie - is named anergy \Var{B}. - \[ B = U + T (S_1 - S_u) - p (V_1 - V_u)\] - \end{document} -\end{verbatim}% -\end{small} -\begin{XmpTopPage} - \XmpHeading[\itshape\bfseries with lines\hfill 1. Thermodynamics]{20,27}{70} - \thicklines\XmpRule{20,29}{70} - \XmpSetText[% - The portion of an energy not conversable in exergie - is named anergy $B$. - \[ B = U + T (S_1 - S_u) - p (V_1 - V_u)\] ]{20,20} -\end{XmpTopPage} -\end{Example} -\EndIndex{Cmd}{defpagestyle}\EndIndex{Cmd}{newpagestyle} -\EndIndex{Cmd}{renewpagestyle}\EndIndex{Cmd}{providepagestyle} - -\subsection{Managing Page Styles}\label{sec:scrpage.UI.cfgFile} -% scrpage.cfg -\BeginIndex{File}{scrpage.cfg} -Before long the work with different page styles will establish a -common set of employed page styles, depending on taste and tasks. -In order to make the management of page styles easier, -\Package{scrpage2} reads after initialisation the file \File{scrpage.cfg}. -This file can contain a set of user-defined page styles, which -many projects can share. -\EndIndex{File}{scrpage.cfg} - -\section{Authors} -\label{sec:scrpage.authors} -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item Markus Kohm \TextEMail{Markus.Kohm@gmx.de} -\item \textbf{Jens-Uwe Morawski} -\end{itemize} -\EndIndex{Package}{scrpage2} -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/introduc.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/introduc.tex deleted file mode 100644 index a679d94a798..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/introduc.tex +++ /dev/null @@ -1,246 +0,0 @@ -\ProvidesFile{introduc.tex}[2004/09/13 KOMA-Script Manual] -% ============================================================================ -% introduct.tex -% Copyright (c) 2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% introduct.tex -% Copyright (c) 2002 Markus Kohm und bei die weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: Introduction -% Translation by: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Contents: The introduction to the manual -% Language: English -% Charset of comments: US-ASCII -% Translation of german file: einleit.tex -% Date of translated german file: 2002-05-27 -% - -\chapter{Introduction} -\label{cha:introduction} - -\section{Preface}\label{sec:introduction.preface} - -{\KOMAScript} is a very complex bundle. You may see this, because it -is not only one class or one package but a bundle of many classes and -packages. The classes are counterparts to the standard classes (see -\autoref{cha:maincls}) but never they come with only the same -commands, environments, options and optional possibilities like the -standard classes nor they result in the same look-a-like. More about -the history of \KOMAScript{} you will find at -\autoref{sec:introduction.history}. - -\KOMAScript{} comes with a lot of classes, packages, commands, -environments and possibilities. Some of these you may find also at the -standard classes, many of them you wouldn't. Some are even supplements to -the \LaTeX{} kernel. - -Because of all this \KOMAScript{} manual has to be large. Also there's -no school for \KOMAScript. So there's no teacher knowing everyone of -his students. Such a teacher should be able to change the lessons -dependent on the kind of students he has to teach. It would be easy to -write a manual which is good for one kind of a reader. But it is nearly -impossible to write a manual which is good for every reader. Never the -less the authors tried to do so. The result must be a -compromise. Please remebers this, if you don't like the manual or -parts of it, before you'll write a report about. We hope the -compromise is a good one. Never the less, if you have solutions of -improvements write us. - -If you habe any problem with \KOMAScript{} please read the manual -despite the size of it. Apart from the guide this means also all the -other text files of the bundle. You will find a list of these as -\File{readme.txt}. - - -\section{Structure of the Manual}\label{sec:introduction.structure} - -There's only less information for \LaTeX{} beginners at the guide. -Beginners should first read documents like \cite{lshort} or -\cite{latex:usrguide}. It would also be good to read a book about -\LaTeX. You'll find literature at almost every faq like \cite{UK:FAQ}. -You should also have a look to these faqs, if you have a problem with -\LaTeX{}. - -\begin{Explain} - Informations about understanding \LaTeX{} or \KOMAScript{} are - written like this paragraph. You do not need this informations to - use \KOMAScript{}, but if you have problems in using \KOMAScript you - should read this parts too. So read them before writing a bug - report. -\end{Explain} - -Some of you do not want to read the whole guide but only informations -about one class or package. This should be possible, because you will -find almost all informations about one package or one class at one -chapter. Only the three main classes are described together at one -chapter, because most informations about are valid for all of them. If -something is only valid for one or two of the three you will find a -note at the margin. If for example something is only valid for -\Class{scrartcl}\OnlyAt{\Class{scrartcl}} this is marked at the -margin like here. - - -\section{History of \KOMAScript}\label{sec:introduction.history} - -\begin{Explain} - At the early 90th Frank Neukam has to write a student script. At - that time \LaTeX2.09 was \LaTeX. At \LaTeX2.09 classes and packages - has been all the same and where called \emph{styles}. Frank thought - the standard document styles not to be good enough for his work. He - needed more and other commands and environments. - - At the same time Frank was very interested in typography. After - reading \cite{JTsch87} he decided to write his own document style - not only to write the one script but also to have a style family - especialy for european and german typography. \Script{} was born. - - I, Markus Kohm, found {\Script} at december 1992. While Frank used - A4 paper format, I often had to use A5. At 1992/1993 the standard - styles and \Script{} had no options for A5 paper. So I`ve changed - \Script{}. These and other changes where also found at \ScriptII{} - released by Frank at december 1993. - - At the middle of 1994 \LaTeXe{} could be found at CTAN. Most users - of \ScriptII{} not only wanted to use these styles at compatibility - mode of \LaTeXe{} but have a native \LaTeXe{} \Script{} --- me too. - So I have made new \LaTeXe{} classes a first package and released all - together named \KOMAScript{} at july~7th~1994. Some month later - Frank declared \KOMAScript{} to be the new \Script. At this time - there was no letter class at \KOMAScript{}. Axel Kielhorn wrote it - and so since december~1994 it is part of \KOMAScript{}. Some time - later Axel Sommerfeldt has written the first real scrguide. The - old english scrguide was made by Werner Lemberg. - - A lot of time is gone. There where minor changes at \LaTeX{} but a - lot of changes at the surroundings. There are many new packages and - classes. \KOMAScript{} isn't the \KOMAScript{} from 1994, it's much - more. While it was first made to have good classes for german - authors, now it made to have classes with more flexibility than the - standard classes. I've got a lot email from all over the - world. Because of this I've written lots of new macros. They all - needs documentation. Some day we needed simply a new scrguide. -\end{Explain} - -This new scrguide is not only made for A5 paper. Because of the -history the implementation is german. The primary documentation is in -german too. Maybe this isn't easy to understand. But see: Almost -everything around \LaTeX{} is english. \KOMAScript{} is german. But -don't worry, the commands, environments, options etc. are -english. Sometimes my english was not good enough to find the correct -english name, never the less I tried. As result you'll find options -called \Option{pointlessnumbers} which means only ``numbers without -dot at the end'' and should be called e.g.\ \Option{dotlessnumbers}. - - -\section{Thanks}\label{sec:introduction.thanks} - -In fact the thanks-giving is part of the addendum, but my thanks -are not primarily for the authors of this guide. -These thanks should be given by the readers! - -I give my personal thanks to Frank Neukam. Without his \Script{} -family \KOMAScript{} wouldn't be. - -I am indebted to the persons who have contributed to {\KOMAScript} -in many different fashions. -Vicariously for all those contributers I would like mention -Jens-Uwe Morawski and Torsten Kr\"uger. -The english translation of the guide is , besides many other things, -obliged to Jens' untiring engagement. -Torsten was the best beta-tester I ever had. Especially his work has -enhanced the usabillity of \Class{scrlttr2} und \Class{scrpage2}. - -Many thanks to all who have encouraged me to go on, make things -better, less error-prone or to implement some additional features. - -Thanks to DANTE, Deutschsprachige Anwendervereinigung -\TeX~e.V\kern-.18em, without the DANTE server, \KOMAScript{} couldn't -be released and distributed. -Thanks to everybody at the \TeX{} news groups and mailing lists, -who answer questions and help me to support \KOMAScript{}. - -\section{Legal Notes}\label{sec:introduction.legal} - -{\KOMAScript} was released under {\LaTeX} Project Public Licence. You -will find it at the file \File{LEGAL.TXT}. Germans will also find a -inofficial translation at \File{LEGALDE.TXT}. This german file is -valid at every country with german being an official language. - -There's no warranty for any documentation or any other part of the -\KOMAScript{} bundle. - -\section{Installation}\label{sec:introduction.installation} -You'll find the documentation about installation at the files -\File{readme.txt} and \File{INSTALL.TXT}. Read also the documentation -of the \TeX{} distribution you're using. - -\section{Bugreports and Other Requests} -\label{sec:introduction.errors} - -If you think, you've found a bug at the documentation, one of the -\KOMAScript{} classes, one of the \KOMAScript{} packages or another -part of \KOMAScript{} please do the following. First have a look at -CTAN to see, if there is a new version of the part with the bug. In -this case install the new part and try it again. - -If you've found an error not at the documentation or a bug, which is -still at the updated file, please write a short example \LaTeX{} -document to show the problem. At this example you should only use -these packages and definitions needed to demonstrate the -problem. Don't use unusual packages. - -Writing this example you will often find out, if the problem is a bug -at \KOMAScript{} or not. Report only bugs at \KOMAScript{} to the -author of \KOMAScript{}. Please use \File{komabug.tex} for the -generation of the bug report. \File{komabug.tex} is an interactive -\LaTeX{} document. - -If you want to ask your question at a news group or mainling list, you -should also write such a example as part of your question. But you -need not use \File{komabug.tex} in this case. To get the versions of -all used packages, simply put \Macro{listfiles} in the preamble of -your example and read the end of the \File{log}-file. - - -\section{Authors}\label{sec:introduction.authors} -Every chapter will be finished with a section called ``authors''. You -will find there the authors of the original chapter of the german -scrguide. The main author is written using a bold font. The translator -is shown using an italic font. If there is an email address, please -send reports about this chapter of the documentation to this -address. If no translator is given, the authors are the translators. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\end{itemize} - -\endinput -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/letter.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/letter.tex deleted file mode 100644 index b68dd863dd9..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/letter.tex +++ /dev/null @@ -1,3372 +0,0 @@ -\ProvidesFile{letter.tex}[2004/09/16 KOMA-Script manual (new letter class)] -% ============================================================================ -% letter.tex -% Copyright (c) 2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% letter.tex -% Copyright (c) 2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: New letter class -% Translation by: Harald H.-J. Bongartz -% Raimund Kohl -% Contents: Chapter with manual for the -% new letter class scrlttr2 -% Language: English -% Charset of comments: US-ASCII -% Translation of german file: brief.tex -% Date of translated german file: 2003-02-13 -% - -\chapter{The New Letter Class \Class{scrlttr2}} -\label{cha:scrlttr2} - -\BeginIndex{Class}{scrlttr2}\BeginIndex{}{Letters}% -\begin{Explain} -Since the June 2002 release, \KOMAScript{} contains a completely -rewritten letter class\ChangedAt{v2.8q}{\Class{scrlttr2}}. Although part -of the code is identical to the classes from \autoref{cha:maincls}, -letters are quite different from articles, reports, books, and such. -That alone justifies a separate chapter about the letter class. But -there is another reason for a chapter on \Class{scrlttr2}. The class has -been redeveloped from scratch. And the user interface differs from every -other class the author knows. You can dispute the sense or nonsense of -that new usage concept. The author just thinks that this new user -interface offers some advantages. - -\section{Looking Back on the Old Letter Class} -\label{sec:scrlttr2.scrlettr} - -With the June 2002 release the old letter class -\Class{scrlettr}\IndexClass{scrlettr} becomes obsolete. It should better -not be used for new letters. There is no development on the old -letter class anymore, and support is very restricted. -However, if you really need the documentation of the old letter class, -you can still find it in the file \File{scrlettr.dtx}, but only in -German. You can run it through \LaTeX{} some times, like that: -\begin{verbatim} - latex scrlettr.dtx - latex scrlettr.dtx - latex scrlettr.dtx -\end{verbatim} -You get the file \File{scrlettr.dvi} containing the old German manual. - -To facilitate the transition to the new class, there is a compatibility -option. In general, the complete functionality still remains in the new -class. Without that compatibility option, the user interface and the -defaults will be different. More detail on this option is provided in -sections~\ref{sec:scrlttr2.options} and \ref{sec:scrlttr2.fromscrlettr}. -\end{Explain} - -\section{Options} -\label{sec:scrlttr2.options} - -The letter class \Class{scrlttr2} uses the package -\Package{keyval}\IndexPackage{keyval} to handle options. This is part of -the \Package{graphics} package (see \cite{package:graphics}). Since -\Package{graphics} is part of the \emph{required} section of \LaTeX, it -should be found in every \LaTeX{} distribution. Should your \TeX{} -distribution contain \LaTeX, but not the packages \Package{graphics} -and \Package{keyval}, please complain to your \TeX{} distributor. If you -want to use \Class{scrlttr2}, you will have to install the -\Package{graphics} package yourself in that case. - -\begin{Explain} -The special feature of the \Package{keyval} package is the possibility -to accompany options by values. You do not only need a lot less -options, but maybe even fewer optional arguments. You will see that when -discussing the \Environment{letter} environment in -\autoref{sec:scrlttr2.addressee}. The class will automatically load -the \Package{keyval} package. If you need to supply options to the -\Package{keyval} package, you should use the -\Macro{PassOptionsToPackage} command before -\Macro{documentclass}. -\end{Explain} - -\subsection{Defining Options Later} -\label{sec:scrlttr2.options.late} - -This section anticipates a feature of the new letter class. The meaning -of this feature will not become clear until the structure of a document -with more than one letter inside and another feature of \Class{scrlttr2} -will be understood. But to keep the number of forward references low, it -is reasonable to describe them this early. - -\begin{Declaration} - \Macro{KOMAoptions}\Parameter{option list} -\end{Declaration} -\BeginIndex{Cmd}{KOMAoptions}% -The possibility to change many options after loading the class is a -special feature of the \Class{scrlttr2} class. The \Macro{KOMAoptions} -command serves this purpose, taking options and their values as -arguments. You can list multiple options, separated by commas, like in -the optional argument of \Macro{documentclass}. If an option is only -available when loading the class, i.\,e.\ as an optional argument to -\Macro{documentclass}, there will be an explicit remark in the option's -description. - -\begin{Explain} -If you set an option to an illegal value within the \PName{option -list}, \LaTeX{} will stop and show an error message. By entering -``\texttt{h}'' you will get an explanation that will also list possible -values for that particular option. -\end{Explain} -% -\EndIndex{Cmd}{KOMAoptions}% - -\subsection{Page Layout Options} -\label{sec:scrlttr2.typeareaOptions} - -In contrast to the old \Class{scrlettr} class, but in correspondence -with the other \KOMAScript{} classes, the \Class{scrlttr2} class refers -to the \Package{typearea} package for the construction of the page -layout (see \autoref{cha:typearea}). The package will be loaded -by the class automatically, and the class controls the package. The -necessary options will be explained in this section. - -\begin{Declaration} - \Option{paper}=\PName{format} -\end{Declaration} -\BeginIndex{Option}{paper}% -This option defines the paper format. Theoretically, all paper formats -the \Package{typearea} package knows about are supported. But you have -to leave out the suffix \PValue{paper} when entering a value. So, for -letter format you would use the value \PValue{letter}. The formats of -the ISO A, B, C, and D series must be entered with small letters, e.,g. -\PValue{a4} for ISO A4. See also \autoref{sec:typearea.paperTypes}. - -\begin{Explain} -Although every paper size supported by \Package{typearea} can be used, -several formats may result in unexpected results on the first page of -a letter by now. That is not a matter of the class concept, but there -exist only parameter sets for ISO A4 at this time. Unfortunately, there -are no general rules to define the placement of the address field and -similar for an arbitrary paper size. But it is possible to define -additional parameter sets. See \autoref{sec:lcoFile} for more -information. - -\end{Explain} -% -\EndIndex{Option}{paper}% - -\begin{Declaration} - \Option{BCOR}=\PName{length}\\ - \Option{DIV}=\PName{value}\\ - \Option{headlines}=\PName{count} -\end{Declaration} -\BeginIndex{Option}{BCOR}% -\BeginIndex{Option}{DIV}% -\BeginIndex{Option}{headlines}% -The options for the divisor, the binding correction\Index{binding -correction}, and the number of headlines will be translated directly -into the corresponding options of the \Package{typearea} package. -If the options are set using \Macro{KOMAoptions} and not as class -options, the \Macro{typearea} command from the \Package{typearea} -package will be used instead. See \autoref{sec:typearea.options}. -% -\EndIndex{Option}{BCOR}% -\EndIndex{Option}{DIV}% -\EndIndex{Option}{headlines}% - -\begin{Declaration} - \Option{enlargefirstpage} -\end{Declaration} -\BeginIndex{Option}{enlargefirstpage}% -As described later in this chapter, the first page of a letter always -uses a different page layout. The \Class{scrlttr2} class provides a -mechanism to calculate height and vertical alignment of head and foot -of the first page independently of the following pages. If, as a -result, the foot of the first page would reach into the text area, -this text area would automatically be made smaller using the -\Macro{enlargethispage}\IndexCmd{enlargethispage} macro. On the other -hand, if the text area should become larger, supposed the foot on the -first page allows that, you could use this option. At best, some more -text would fit on the first page. See also the description of pseudo -length \PLength{firstfootvpos} at \autoref{sec:scrlttr2.firstFoot}. -This option can take the standard values for simple switches, as -listed in \autoref{tab:scrlttr2.simpleSwitchValues}. Default is -\PValue{false}. -% -\EndIndex{Option}{enlargefirstpage}% - -\begin{table} - \centering - \begin{tabular}{ll} - Value & Description \\\hline\\[-1.75ex] - \PValue{true} & activates the option \\ - \PValue{on} & activates the option \\ - \PValue{false}& deactivates the option \\ - \PValue{off} & deactivates the option \\ - \end{tabular} - \caption{Standard values for simple switches in \Class{scrlttr2}} - \label{tab:scrlttr2.simpleSwitchValues} -\end{table} - -\subsection{Other Layout Options} -\label{sec:scrlttr2.layout} - -In this subsection, you will find all options that have influence on -the layout in general, except page layout. Strictly speaking, all page -layout options (see~\ref{sec:scrlttr2.typeareaOptions}) are also layout -options, and vice versa for some of them. - -\begin{Declaration} - \Option{twoside} -\end{Declaration}% -\BeginIndex{Option}{oneside}% -From the author's point of view, double-sided letters do not make much -sense. Therefore, the option \Option{twoside} only partially switches to -double-sided layout. You get the possibility to have different margins -on left and right pages, but it is not used. So this option really means -\emph{activate the possibilities of a double-sided document, but stay - with the one-sided layout as far and as long as possible.} -This option can take the standard values for simple switches, as listed -in \autoref{tab:scrlttr2.simpleSwitchValues}. Default is -\PValue{false}. -% -\EndIndex{Option}{twoside}% - -By the way, double-sided letters are not supported, because they seem -unreasonable. - -\begin{Declaration} - \Option{cleardoublepage}=\PName{style} -\end{Declaration} -\BeginIndex{Option}{cleardoublepage}% -If you want pages inserted by the \Macro{cleardoublepage} command to -just contain a page number in head and foot or to be empty, this can be -accomplished with this option. There are three different styles -supported: -\begin{description} -\item[\PValue{empty}] switches to page style\Index{page style} - \PValue{empty}\IndexPagestyle{empty} for inserted pages. -\item[\PValue{plain}] switches to page style - \PValue{plain}\IndexPagestyle{plain} for inserted pages. -\item[\PValue{standard}] keeps the current page style for inserted pages. -\end{description} -The page styles will be discussed in -\autoref{sec:scrlttr2.pageStyle}. Default is \PValue{standard}. -% -\EndIndex{Option}{cleardoublepage}% - -\begin{Declaration} - \Option{headsepline}\\ - \Option{footsepline} -\end{Declaration} -\BeginIndex{Option}{headsepline}% -\BeginIndex{Option}{footsepline}% -These two options insert a separator line below the head or above the -foot, resp., on consecutive pages. In the lingo of this manual, all -pages of a letter except the first one are consecutive pages. -This option can take the standard values for simple switches, as listed -in \autoref{tab:scrlttr2.simpleSwitchValues}. Default is -\PValue{false}. If one of the options is used without value, like in the -declaration above, this evaluates as \PValue{true}, so the separator -line will be activated. When used as a \Macro{documentclass} option, the -\Package{typearea} package will be called with the option -\Option{headinclude} or \Option{footinclude}, resp.\ -(see~\ref{sec:typearea.options}). -% -\EndIndex{Option}{headsepline}% -\EndIndex{Option}{footsepline}% - -\begin{Declaration} - \Option{mpinclude}\\ - \Option{mpexclude} -\end{Declaration} -\BeginIndex{Option}{mpinclude}% -\BeginIndex{Option}{mpexclude}% -These two options of the \Package{typearea} package should not be used -with the \Class{scrlttr2} class, because the first page in particular -does not take this option into account. To anticipate any complaints, a -warning will be issued when this option is used. If you feel adventurous -you could try how these options, especially \Option{mpinclude}, interact -with other class options. -% -\EndIndex{Option}{mpinclude}% \EndIndex{Option}{mpexclude}% - -\begin{Declaration} - \Option{pagenumber}=\PName{position} -\end{Declaration} -\BeginIndex{Option}{pagenumber}% -This option defines if and where a page number will be placed on -consecutive pages. All pages without a letter-head are consecutive -pages. This option effects the page layouts\Index{page layout} -\PValue{headings} and \PValue{plain}. It also effects the default page -styles of the \Package{scrpage2} package, if set before loading the -package (see \autoref{cha:scrpage}). It can take values only -influencing horizontal, only vertical, or both positions. Possible value -are: -\begin{labeling}[~--]{\PValue{footcentered}} - \item[\PValue{bot}] page number in foot, horizontal - position not changed - \item[\PValue{botcenter}] page number in foot, centered - \item[\PValue{botcentered}] same as \PValue{botcenter} - \item[\PValue{botleft}] page number in foot, left justified - \item[\PValue{botmiddle}] same as \PValue{botcenter} - \item[\PValue{botright}] page number in foot, right justified - \item[\PValue{center}] page number centered horizontally, - vertical position\\ not changed - \item[\PValue{centered}] same as \PValue{center} - \item[\PValue{false}] no page number - \item[\PValue{foot}] same as \PValue{bot} - \item[\PValue{footcenter}] same as \PValue{botcenter} - \item[\PValue{footcentered}] same as \PValue{botcenter} - \item[\PValue{footleft}] same as \PValue{botleft} - \item[\PValue{footmiddle}] same as \PValue{botcenter} - \item[\PValue{footright}] same as \PValue{botright} - \item[\PValue{head}] page number in head, horizontal - position not changed - \item[\PValue{headcenter}] page number in head, centered - \item[\PValue{headcentered}] same as \PValue{headcenter} - \item[\PValue{headleft}] page number in head, left justified - \item[\PValue{headmiddle}] same as \PValue{headcenter} - \item[\PValue{headright}] page number in head, right justified - \item[\PValue{left}] page number left, vertical position not changed - \item[\PValue{middle}] same as \PValue{center} - \item[\PValue{no}] same as \PValue{false} - \item[\PValue{off}] same as \PValue{false} - \item[\PValue{right}] page number right, vertical position not changed - \item[\PValue{top}] same as \PValue{head} - \item[\PValue{topcenter}] same as \PValue{headcenter} - \item[\PValue{topcentered}] same as \PValue{headcenter} - \item[\PValue{topleft}] same as \PValue{headleft} - \item[\PValue{topmiddle}] same as \PValue{headcenter} - \item[\PValue{topright}] same as \PValue{headright} -\end{labeling} -Default is \PValue{botcenter}. -% -\EndIndex{Option}{pagenumber}% - -\begin{Declaration} - \Option{parskip}=\PName{value} -\end{Declaration}% -\BeginIndex{Option}{parskip}% -\begin{Explain}% -Especially in letters you often encounter paragraphs marked not with -indentation of the first line, but with a vertical skip between them. It -is a matter of tradition. Apparently it has been easier for a secretary -to operate the carriage return lever twice than setting an indentation -using a tab stop or the space bar. Correct justification is almost -impossible using a typewriter, so letters are traditionally typeset -unjustified. - -However, typographers like Jan Tschichold take the view that letters, -written using means of modern typesetting, should take advantage of -their possibilities like other documents do. Under these circumstances, -letters should also be typeset using paragraph indentation and -justification. The author of \Class{scrlttr2} shares this point of view, -but nevertheless refrains from imposing to many restrictions upon the -user. -\end{Explain} - -As as reaction to many serious requests, \Class{scrlttr2} offers the -possibility to mark paragraphs not only by indentation of the first -line, but alternatively by vertical skip. You can choose between full or -half a line of vertical space. When using paragraph spacing, it seems -often useful to keep the last line of a paragraph shorter, so that -paragraph recognition will be eased. All these features are controlled -by different values for the \Option{parskip} option: -\begin{labeling}[~--]{\PValue{half*}} -\item[\PValue{false}] paragraph indentation instead of vertical space; -the last line of a paragraph may be arbitrarily filled. -\item[\PValue{full}] one line vertical space between paragraphs; there -must be at least 1\Unit{em} free space in the last line of a paragraph. -\item[\PValue{full*}] one line vertical space between paragraphs; there -must be at least a quarter of a line free space at the end of a paragraph. -\item[\PValue{full+}] one line vertical space between paragraphs; there -must be at least a third of a line free space at the end of a paragraph. -\item[\PValue{full-}] one line vertical space between paragraphs; -the last line of a paragraph may be arbitrarily filled. -\item[\PValue{half}] half a line vertical space between paragraphs; there -must be at least 1\Unit{em} free space in the last line of a paragraph. -\item[\PValue{half*}] half a line vertical space between paragraphs; there -must be at least a quarter of a line free space at the end of a paragraph. -\item[\PValue{half+}] half a line vertical space between paragraphs; there -must be at least a third of a line free space at the end of a paragraph. -\item[\PValue{half-}] one line vertical space between paragraphs; -the last line of a paragraph may be arbitrarily filled. -\item[\PValue{off}] same as \PValue{false} -\item[\PValue{on}] same as \PValue{full} -\item[\PValue{true}] same as \PValue{full} -\end{labeling} -Default is \PValue{false}. -% -\EndIndex{Option}{parskip}% - -\subsection{Font Options} -\label{sec:scrlttr2.fontOptions} - -Fonts options are any options with influence on the size of the base -font or of fonts for letter parts. In theory, options affecting the font -type would also count as font options. At present there is only one -option for font size in \Class{scrlttr2}. - -\begin{Declaration} - \Option{fontsize}=\PName{size} -\end{Declaration} -\BeginIndex{Option}{fontsize}% -In the main classes, you choose the font size\Index{font size} for the -document using the \Option{10pt}, \Option{12pt}, etc. options. In the -\Class{scrlttr2} class, the desired \PName{size} is set using the -\Option{fontsize} option. The functionality is the same. This option can -only be used with \Macro{documentclass}, not with \Macro{KOMAoptions}. -Default is \PValue{12pt}. -% -\EndIndex{Option}{fontsize}% - -\subsection{Options for Letter-Head and Address} -\label{sec:scrlttr2.headoptions} - -The \Class{scrlttr2} class offers lots of extensions for the design of -the letter-head. There are also options for address formatting, -extending the possibilities of the standard letter class, although these -features could already be found in the now obsolete \Class{scrlettr} -class. - -\begin{Declaration} - \Option{fromalign} -\end{Declaration} -\BeginIndex{Option}{fromalign}% -This option defines the placement of the from address in the letter-head -of the first page. At the same time, this option serves as a switch to -activate or deactivate the extended letter-head options. If these -extensions are deactivated, some other options will have no effect. This -will be noted with the respecting options. Possible values for -\Option{fromalign} are: -\begin{labeling}[~--]{\PValue{centered}} -\item[\PValue{center}] return address centered; an optional logo will be -on top of the extended return address; letter-head extensions will be -activated. -\item[\PValue{centered}] same as \PValue{center} -\item[\PValue{false}] standard design will be used for the return -address; the letter-head extensions are deactivated. -\item[\PValue{left}] left justified return address; an optional logo -will be right justified; letter-head extensions will be activated. -\item[\PValue{middle}] same as \PValue{center} -\item[\PValue{no}] same as \PValue{false} -\item[\PValue{off}] same as \PValue{false} -\item[\PValue{right}] right justified return address; an optional logo will be left justified; letter-head extensions will be activated. -\end{labeling} -Default is \PValue{left}. -% -\EndIndex{Option}{fromalign}% - -\begin{Declaration} - \Option{fromrule} -\end{Declaration} -\BeginIndex{Option}{fromrule}% -This option is part of the letter-head extensions (see option -\Option{fromalign} above). It allows you to place -a horizontal line within the return address. The possible values are: -\begin{labeling}[~--]{\PValue{afteraddress}} -\item[\PValue{afteraddress}] line below the return address -\item[\PValue{aftername}] line right below the sender's name -\item[\PValue{below}] same as \PValue{afteraddress} -\item[\PValue{false}] no line -\item[\PValue{no}] same as \PValue{false} -\item[\PValue{off}] same as \PValue{false} -\item[\PValue{on}] same as \PValue{afteraddress} -\item[\PValue{true}] same as \PValue{afteraddress} -\item[\PValue{yes}] same as \PValue{afteraddress} -\end{labeling} -Default is \PValue{false}. You can not activate more than one line at a -time. -% -\EndIndex{Option}{fromrule}% - -\begin{Declaration} - \Option{fromphone} -\end{Declaration} -\BeginIndex{Option}{fromphone}% -This option is part of the letter-head extensions (see option -\Option{fromalign} above). It defines whether the -phone number will be part of the return address. This option can take -the standard values for simple switches, as listed in -\autoref{tab:scrlttr2.simpleSwitchValues}. Default is \PValue{false}. -% -\EndIndex{Option}{fromphone}% - -\begin{Declaration} - \Option{fromfax} -\end{Declaration} -\BeginIndex{Option}{fromfax}% -This option is part of the letter-head extensions (see option -\Option{fromalign} above). It defines whether the -facsimile number will be part of the return address. This option can take -the standard values for simple switches, as listed in -\autoref{tab:scrlttr2.simpleSwitchValues}. Default is \PValue{false}. -% -\EndIndex{Option}{fromfax}% - -\begin{Declaration} - \Option{fromemail} -\end{Declaration} -\BeginIndex{Option}{fromemail}% -This option is part of the letter-head extensions (see option -\Option{fromalign} above). It defines whether the -email address will be part of the return address. This option can take -the standard values for simple switches, as listed in -\autoref{tab:scrlttr2.simpleSwitchValues}. Default is \PValue{false}. -% -\EndIndex{Option}{fromemail}% - -\begin{Declaration} - \Option{fromurl} -\end{Declaration} -\BeginIndex{Option}{fromurl}% -This option is part of the letter-head extensions (see option -\Option{fromalign} above). It defines whether the -URL will be part of the return address. This option can take -the standard values for simple switches, as listed in -\autoref{tab:scrlttr2.simpleSwitchValues}. Default is \PValue{false}. -% -\EndIndex{Option}{fromurl}% - -\begin{Declaration} - \Option{fromlogo} -\end{Declaration} -\BeginIndex{Option}{fromlogo}% -This option is part of the letter-head extensions (see option -\Option{fromalign} above). It defines whether the -logo will be part of the return address. This option can take -the standard values for simple switches, as listed in -\autoref{tab:scrlttr2.simpleSwitchValues}. Default is \PValue{false}. -% -\EndIndex{Option}{fromlogo}% - -\begin{Declaration} - \Option{addrfield} -\end{Declaration} -\BeginIndex{Option}{addrfield}% -This option defines whether an address field will be set. Default is to -use the address field. This option can take the standard values for -simple switches, as listed in -\autoref{tab:scrlttr2.simpleSwitchValues}. Default is \PValue{true}. -% -\EndIndex{Option}{addrfield}% - -\begin{Declaration} - \Option{backaddress} -\end{Declaration} -\BeginIndex{Option}{backaddress}% -This option defines whether a return address for window envelopes will -be set. Default is to use the return address. If the address field is -suppressed (see option \Option{addrfield}), there will be no return -address either. This option can take the standard values for simple -switches, as listed in \autoref{tab:scrlttr2.simpleSwitchValues}. -Default is \PValue{true}. -% -\EndIndex{Option}{backaddress}% - -\begin{Declaration} - \Option{subject} -\end{Declaration} -\BeginIndex{Option}{subject}% -This option serves two purposes: First, you can choose if your subject -should have a title, given by the \PName{subject} variable (see -\autoref{tab:scrlttr2.subjectTerm}). Second, you can choose if the -subject should be set before or after the opening. Possible values for -this option are: -\begin{labeling}[~--]{\PValue{beforeopening}} -\item[\PValue{afteropening}] set subject after opening -\item[\PValue{beforeopening}] set subject before opening -\item[\PValue{titled}] add title to subject -\item[\PValue{untitled}] do not add title to subject -\end{labeling} -Defaults are \PValue{beforeopening} and \PValue{untitled}. -% -\EndIndex{Option}{subject}% - -\begin{Declaration} - \Option{locfield} -\end{Declaration} -\BeginIndex{Option}{locfield}% -\Class{scrlttr2} places a field with additional sender attributes next -to the address field. This can be used for bank accounts or similar. -Depending on the \Option{fromalign} option, it will also be used for the -sender logo. The width of this field may be defined within an \File{lco} -file (see \autoref{sec:lcoFile}). If the width is set to 0 in that -file, then the \Option{locfield} option can toggle between two presets -for the field width. See the explanation on the \Variable{locwidth} -pseudo length in \autoref{sec:scrlttr2.locationField}. Possible -values for this option are: -\begin{labeling}[~--]{\PValue{narrow}} -\item[\PValue{narrow}] small sender supplement field -\item[\PValue{wide}] large sender supplement field -\end{labeling} -Default is \PValue{narrow}. -% -\EndIndex{Option}{locfield}% - -\begin{Declaration} - \Option{foldmarks} -\end{Declaration} -\BeginIndex{Option}{foldmarks}% -This option activates fold marks for two or three panel folding of the -letter. The exact placement of the fold marks for three panel letter fold -depends on user settings or the \File{lco} file, resp.\ (see -\autoref{sec:lcoFile}). The folding need not result in equal sized -parts. This option can take the standard values for simple switches, as -listed in \autoref{tab:scrlttr2.simpleSwitchValues}. Default is -\PValue{true}, which implies setting the fold marks. -% -\EndIndex{Option}{foldmarks}% - -\begin{Declaration} - \Option{numericaldate} -\end{Declaration} -\BeginIndex{Option}{numericaldate}% -This option toggles between the standard, language-dependent date -presentation and a short, numerical one. \KOMAScript{} does not -provide the standard presentation. It should be defined by packages -like \Package{german}\IndexPackage{german}, -\Package{babel}\IndexPackage{babel}, or -\Package{isodate}\IndexPackage{isodate}. The short, numerical -presentation will be produced by \Class{scrlttr2} itself. This option -can take the standard values for simple switches, as listed in -\autoref{tab:scrlttr2.simpleSwitchValues}. Default is -\PValue{false}, which results in standard date presentation. In the -now obsolete \Class{scrlettr} class, this was achieved using the -\Option{orgdate} option, but with opposite results. -% -\EndIndex{Option}{numericaldate}% - -\begin{Declaration} - \Option{refline} -\end{Declaration} -\BeginIndex{Option}{refline}% -With the \Class{scrlttr2} class, the head, foot, address, and -sender attributes may extend beyond the normal type area to the left -and to the right. This option defines if that also applies to the -reference line. Normally, the reference line contains at least the date, -but it can hold additional data. Possible values for this option are: -\begin{labeling}[~--]{\PValue{narrow}} -\item[\PValue{narrow}] reference line restricted to type area -\item[\PValue{wide}] reference line corresponds to address and sender -attributes -\end{labeling} -Default is \PValue{narrow}. -% -\EndIndex{Option}{refline}% - -\subsection{Format Options} -\label{sec:scrlttr2.formatingOptions} - -Format options are those, which influence form or format of the -output and do not belong to another section. You might also call them -the \emph{miscellaneous options}. - -\begin{Declaration} - \Option{draft} -\end{Declaration} -\BeginIndex{Option}{draft}% -This option toggles between the final\Index{final version} and the -draft\Index{draft version} version of a document. In particular, -enabling the \Option{draft} option activates little black boxes that -will be drawn at the end of overfull lines. For the unpracticed eye, -these boxes ease the identification of paragraphs that need manual -improvement. When the \Option{draft} option is disabled, there will be -no such boxes. This option can take the standard values for simple -switches, as listed in \autoref{tab:scrlttr2.simpleSwitchValues}. -Default is \PValue{false}, as usual. But I strongly recommend enabling -the \Option{draft} option when designing a letter, as for every other -document. -% -\EndIndex{Option}{draft}% - -\subsection{The Letter Class Option Files} -\label{sec:lcoFile} - -\BeginIndex{}{lco=\File{lco}}% -Normally, you would not redefine parameters like the distance between -the address field and the top edge of the paper every time you write a -letter. Instead, you would reuse a whole set of parameters for certain -occasions. It will be much the same for the letter-head and foot used on -the first page. Therefore, it is reasonable to save these settings in a -separate file. For this purpose, the \Class{scrlttr2} class offers the -\File{lco} files. The \File{lco} suffix is an abbreviation for -\emph{\emph{l}etter \emph{c}lass \emph{o}ption}. - -In an \File{lco} file you can use all commands available to the document -at the time the \File{lco} file is loaded. Additionally, it can contain -internal commands available to package writers. For \Class{scrlttr2}, -these are in particular the commands \Macro{@newplength}, \Macro{@setplength}, -\Macro{@addtoplength} and \Macro{addtolengthplength} (see -\autoref{sec:scrlttr2.pseudoLength}). - -There are already some \File{lco} files included in the \KOMAScript{} -distribution. The \File{DIN.lco}, \File{DINmtext.lco}, -\File{SNleft.lco}, and \File{SN.lco} files serve to adjust \KOMAScript{} -to different layout standards. They are well suited as templates for -your own parameter sets. The \File{KOMAold.lco} file, however, serves to -improve compatibility with the old letter class \Class{scrlettr}. -Because it contains internal commands not open to package writers, you -should not use them as a template for your own \File{lco} files. You can -find a list of predefined \File{lco} files in \autoref{tab:lcoFiles}. - -\begin{Explain} -If you have defined a parameter set for a letter standard not yet -supported by \KOMAScript{}, you are explicitly invited to send this -parameter set to the \KOMAScript{} support address. Please do not forget -to include the permission for distribution under the \KOMAScript{} -license (see the \File{LEGAL.TXT} file). If you know the necessary -metrics for an unsupported letter standard, but are not able to write a -corresponding \File{lco} file yourself, you can also contact me. You -will find current addresses in the latest volume of the -\KOMAScript\textsf{-News} or in \autoref{sec:introduction.authors}. -\end{Explain} - -\begin{Declaration} - \Macro{LoadLetterOption}\Parameter{name} -\end{Declaration} -\BeginIndex{Cmd}{LoadLetterOption}% -Usually, the \File{lco} files will be loaded by the -\Macro{documentclass} command. You enter the name of the \File{lco} file -without suffix as an option. The \File{lco} file will be loaded right -after the class file. - -But it is also possible to load an \File{lco} file later, or even from -within another \File{lco} file. This can be done with the -\Macro{LoadLetterOption} command, which gets the \PName{name} of the -\File{lco} file without suffix as a parameter. -\begin{Example} -You write a document containing several letters. Most of them should -comply with the German DIN standard. So you start with: -\begin{small} -\begin{verbatim} - \documentclass{scrlttr2} -\end{verbatim} -\end{small} -But one letter should use the \File{DINmtext} variant, with the address -field placed more to the top, which results in more text fitting on the -first page. The folding will be modified so that the address field still -matches the address window in a DIN~C6/5 envelope. -You can achieve this as follows: -\begin{small} -\begin{verbatim} - \begin{letter}{Markus Kohm\\ - Fichtenstraße 63\\68535 Edingen-Neckarhausen} - \LoadLetterOption{DINmtext} - \opening{Hello,} -\end{verbatim} -\end{small} -Since construction of the page does not start before the -\Macro{opening}, it is sufficient to load the \File{lco} file before the -\Macro{opening} command. In particular, this need not be done before -\Macro{begin}\PParameter{letter}. So the changes made by loading the -\File{lco} file are local to the corresponding letter. -\end{Example} - -\begin{Explain} -If an \File{lco} file is loaded via \Macro{documentclass}, it may -nevertheless take the name of an option, provided it is an option that -does not take an argument. However, it would be possible to give the -name \File{fromalign=left.lco} to an \File{lco} file. It will get -loaded every time the \Macro{documentclass} option \Option{fromalign} -is used with the value \PValue{left}. Admittedly, this is quite -academic. Of course you can use this feature only if your operating and -file system support this kind of file names. Otherwise you have to -choose another file name and add the corresponding option, if -needed. -\end{Explain} - -\begin{Example} - You do not want to enter your sender address every time, so you - create an \File{lco} file with the necessary data, like this: - \begin{small} -\begin{verbatim} - \ProvidesFile{mkohm.lco}[2002/02/25 letter class option] - \setkomavar{fromname}{Markus Kohm} - \setkomavar{fromaddress}{Fichtenstra\ss e 63\\ - 68535 Edingen-Neckarhausen} -\end{verbatim} - \end{small} - Please note that the German sharp s, ``ß'', was entered using the - \TeX{} macro \Macro{ss}, because right after \Macro{documentclass} - no packages for input encoding, for example - \Macro{usepackage}\PValue{[latin1]}\PParameter{inputenc} for Unix or - \Macro{usepackage}\PValue{[ansinew]}\PParameter{inputenc} for - Windows, and no language packages, like - \Macro{usepackage}\PParameter{ngerman}\IndexPackage{ngerman} for the - new German orthography, are loaded. - - But if you would always use the same input encoding, you could also - include it into your \File{lco} file. This would look like this: - \begin{small} -\begin{verbatim} - \ProvidesFile{mkohm.lco}[2002/02/25 letter class option] - \RequirePackage[latin1]{inputenc} - \setkomavar{fromname}{Markus Kohm} - \setkomavar{fromaddress}{Fichtenstraße 63\\ - 68535 Edingen-Neckarhausen} -\end{verbatim} - \end{small} - There is one problem with this usage: you cannot load this - \File{lco} file later in your document. If you want to have letters - with different senders in one document, you should refrain from - loading packages in your \File{lco} file. - - Let us further assume that I always typeset letters using the preset - \File{KOMAold}. Then I could add the following line to my - \File{mkohm.lco} file: - \begin{small} -\begin{verbatim} - \LoadLetterOption{KOMAold} -\end{verbatim} - \end{small} - - Anyway, now you can preset my sender address using - \begin{small} -\begin{verbatim} - \documentclass[mkohm]{scrlttr2} -\end{verbatim} - \end{small} -\end{Example} - -In \autoref{tab:lcoFiles} you find a list of all predefined \File{lco} -files. If you use a printer that has large unprintable areas on the left -or right side, you might have problems with the -\Option{SN}\IndexOption{SN} option. The Swiss standard SN~101\,130 -defines the address field to be placed 8\,mm from the right paper edge, -so the headline and the sender attributes will be set with the same -small distance to the paper edge. This also applies to the reference -line when using the \Option{refline}\PValue{=wide} option (see -\autoref{sec:scrlttr2.headoptions}). If you have this kind of -problem, create your own \File{lco} file that loads \Option{SN} first -and then changes \PLength{toaddrhpos}\IndexPLength{toaddrhpos} (see -\autoref{sec:scrlttr2.addressee}) to a smaller value. Please also -reduce \PLength{toaddrwidth} accordingly. -% -\EndIndex{Cmd}{LoadLetterOption}% - -\begin{table} -\centering -\begin{tabular}{lp{.7\textwidth}} -\File{lco} file & Description and features \\\hline\\[-2ex] -\Option{DIN}\IndexOption[indexmain]{DIN}% - & parameter set for letters on A4 size paper, - complying with German standard DIN~676; - suitable for window envelopes in the sizes C4, C5, C6, - and C6/5 (C6 long).\\ -\Option{DINmtext}\IndexOption[indexmain]{DINmtext}% - & parameter set for letters on A4 size paper, - complying with DIN~676, but using an alternate layout - with more text on the first page; - only suitable for window envelopes in the sizes C6 and - C6/5 (C6 long).\\ -\Option{KOMAold}\IndexOption[indexmain]{KOMAold}% - & parameter set for letters on A4 size paper using a - layout close to the now obsolete \Class{scrlettr} - letter class; suitable for window envelopes in the sizes - C4, C5, C6, and C6/5 (C6 long); - some additional commands to improve compatibility with - obsolete \Class{scrlettr} commands are defined; - \Class{scrlttr2} may behave slightly different when - used with this \File{lco} file than with the other - \File{lco} files.\\ -\Option{SN}\IndexOption[indexmain]{SN}% - & parameter set for Swiss letters with address field on - the right side, according to SN~010\,130; suitable for - Swiss window envelopes in the sizes C4, C5, C6, and - C6/5 (C6 long).\\ -\Option{SNleft}\IndexOption[indexmain]{SNleft}% - & parameter set for Swiss letters with address field on - the left side; - suitable for Swiss window envelopes with window on the - left side in the sizes C4, C5, C6, and C6/5 (C6 long). - \\ -\end{tabular} -\caption{The predefined \File{lco} files} -\label{tab:lcoFiles} -\end{table} - -\begin{Explain} -\begin{Declaration} - \Macro{LetterOptionNeedsPapersize}% - \Parameter{option name}\Parameter{paper size} -\end{Declaration} -\BeginIndex{Cmd}{LetterOptionNeedsPapersize} -As mentioned in \autoref{sec:scrlttr2.typeareaOptions}, there are -only parameter sets and \File{lco} files for A4 sized paper. But in -every \File{lco} file distributed with \KOMAScript{} you will find a -\Macro{LetterOptionNeedsPapersize} command so that you will be warned -when using another \PName{paper size}. The first argument is the name of -the \File{lco} file without the ``\File{.lco}'' suffix. Second argument -is the paper size the \File{lco} file is designed for. - -If several \File{lco} files are loaded, the -\Macro{LetterOptionNeedsPapersize} command can be contained in each of -them, but the \Macro{opening} -command will only check the last given \PName{paper size}. As shown in -the following example, an experienced user can thus easily write -\File{lco} files with parameter sets for other paper sizes. If you do -not plan to set up \File{lco} files yourself, you may just forget about -this option and skip the example. - -\begin{Example} -Supposed you use A5 sized paper in normal, i.\,e.\ upright or -portrait, orientation for your letters. We further assume that you want -to put them into standard C6 window envelopes. Then, the position of the -address field would be the same as for a DIN standard letter on A4 sized -paper. The main difference is that A5 paper needs only one fold. So you -want to disable the upper and lower fold marks. The easiest way to -achieve this is to place the marks outside the paper area. - \begin{small} -\begin{verbatim} - \ProvidesFile{paper=a5.lco}[2002/05/02 letter class option] - \LetterOptionNeedsPapersize{paper=a5}{a5} - \@setplength{tfoldmarkvpos}{\paperheight} - \@setplength{bfoldmarkvpos}{\paperheight} -\end{verbatim} - \end{small} -Besides, the placement of the foot must be adjusted. It is left to the -reader to find an appropriate value. When using such an \File{lco} file, -you must only take care that other \File{lco} file options, like -\File{SN}, are declared before the paper size, i.\,e.\ before loading -``\File{paper=a5.lco}''. This seems too complicated? Only before you -used it the first time. Anyway, how often do you write letters not using -your standard format? -\end{Example} -% -\EndIndex{Cmd}{LetterOptionNeedsPapersize} -\end{Explain} - -By the way, the \File{DIN} \File{lco} file will always be loaded as the -first \File{lco} file. This ensures that all pseudo lengths will have -more or less reasonable default values. - -Please note that it is not possible to use \Macro{PassOptionsToPackage} -to pass options to packages from within an \File{lco} file that have -already been loaded by the class. Normally, this only applies to the -\Package{typearea}, \Package{scrlfile}, and \Package{keyval} packages. -% -\EndIndex{}{lco=\File{lco}}% - -\section{General Document Properties} -\label{sec:scrlttr2.general} - -Some document properties aren't assigned to a certain part of the -document such as the letter-head or the letter body. Several of -these properties have already been mentioned in -\autoref{sec:scrlttr2.options}. - - -\subsection{Font Selection} -\label{sec:scrlttr2.font} - -\BeginIndex{}{font style}\BeginIndex{}{font size}% -\begin{Explain} -Commands for defining, extending and querying the font of a specific -element can be found~\ref{sec:maincls.font}. These commands work exactly -the same in \Class{scrlttr2}. The elements which can be influenced in -this way are listed in \autoref{tab:scrlttr2.elementsWithoutText}. -% -\begin{table} - \centering% - \begin{tabular}{lp{.6\linewidth}} - Element & Description \\\hline\\[-2ex] - \FontElement{backaddress}\IndexFontElement[indexmain]{backaddress} - & \raggedright return address for a window envelope - \tabularnewline[.75ex] - \FontElement{descriptionlabel}% - \IndexFontElement[indexmain]{descriptionlabel} - & \raggedright label, i.e. the optional argument of - \Macro{item}, in a \Environment{description} environment - \tabularnewline[.75ex] - \FontElement{fromaddress}\IndexFontElement[indexmain]{fromaddress} - & \raggedright sender's address in the letter-head - \tabularnewline[.75ex] - \FontElement{fromname}\IndexFontElement[indexmain]{fromname} - & \raggedright sender's address in the letter-head if different - from \FontElement{fromaddress} - \tabularnewline[.75ex] - \FontElement{pagefoot}\IndexFontElement[indexmain]{pagefoot} - & \raggedright in most cases the footer, sometimes the - header of a page - \tabularnewline[.75ex] - \FontElement{pagehead}\IndexFontElement[indexmain]{pagehead} - & \raggedright in most cases the header, sometimes the footer - of page - \tabularnewline[.75ex] - \FontElement{pagenumber}\IndexFontElement[indexmain]{pagenumber} - & \raggedright page number in the footer or header which is - inserted with \Macro{pagemark} - \tabularnewline[.75ex] - \FontElement{subject}\IndexFontElement[indexmain]{subject} - & \raggedright subject in the opening of the letter - \tabularnewline[.75ex] - \FontElement{title}\IndexFontElement[indexmain]{title} - & \raggedright headline in the opening of the letter - \tabularnewline[.75ex] - \end{tabular} - \caption{Alphabetical list of the elements, whose font can be - changed in \Class{scrlttr2} using the commands \Macro{setkomafont} and - \Macro{addtokomafont}} - \label{tab:scrlttr2.elementsWithoutText} -\end{table} -\end{Explain} -% -\EndIndex{}{font style}\EndIndex{}{font size}% - - -\subsection{Page Style} -\label{sec:scrlttr2.pageStyle} One of the general properties of a -document is the page style. Please refer also the -\autoref{sec:maincls.pageStyle} and \autoref{cha:scrpage}. - -\begin{Declaration} -\Macro{pagestyle}\PParameter{empty}\\ -\Macro{pagestyle}\PParameter{plain}\\ -\Macro{pagestyle}\PParameter{headings}\\ -\Macro{pagestyle}\PParameter{myheadings}\\ -\Macro{thispagestyle}\Parameter{local page style} -\end{Declaration} -\BeginIndex{Cmd}{pagestyle}% -\BeginIndex{Cmd}{thispagestyle}% -\BeginIndex{Pagestyle}{empty}% -\BeginIndex{Pagestyle}{plain}% -\BeginIndex{Pagestyle}{headings}% -\BeginIndex{Pagestyle}{myheadings}% -In letters written with \Class{scrlttr2} there are four different -page styles. -\begin{description} -\item[empty] is the page style, in which the header and footer of - subsequent pages (all pages apart from the first) are completely - empty. This page style is also used for the first page, because - header and footer of this page are set using the macro - \Macro{opening}. - -\item[plain] is the page style with only page numbers in the header or - footer on subsequent pages. The placement of these page numbers is - determined by the option \Option{pagenumber} (see - \autoref{sec:scrlttr2.layout}). - -\item[headings] is the page style for automatic page headings of - subsequent pages. The inserted marks are the sender's name from the - variable \Variable{fromname}\IndexVariable{fromname} and the subject - from the variable \Variable{subject}\IndexVariable{subject} (see - \autoref{sec:scrlttr2.firstHead} and - \autoref{sec;scrlttr2.titleSubject}). At which position these - marks and the page numbers are placed depends on the option - \Option{pagenumber} (see \autoref{sec:scrlttr2.layout}). Apart - from that, the author can change these marks after \Macro{opening} - manually. -\item[myheadings] is the page style for manual page headings of - subsequent pages. This is very similar to \PValue{headings}, but - here the marks are set by the author using the commands - \Macro{markboth}\IndexCmd{markboth} and - \Macro{markright}\Index{markright}. -\end{description} - -Page styles are also influenced by the option -\Option{headsepline}\IndexOption{headsepline} or -\Option{footsepline}\IndexOption{footsepline} (see -\autoref{sec:scrlttr2.layout}). The page style beginning with -the current page is switched with \Macro{pagestyle}. In contrast, -\Macro{thispagestyle} changes only the page style of the current -page. The letter class itself uses -\Macro{thispagestyle}\PParameter{empty} within -\Macro{opening}\IndexCmd{opening} for the first page of the -letter. -% -\EndIndex{Cmd}{pagestyle}% -\EndIndex{Cmd}{thispagestyle}% -\EndIndex{Pagestyle}{empty}% -\EndIndex{Pagestyle}{plain}% -\EndIndex{Pagestyle}{headings}% -\EndIndex{Pagestyle}{myheadings}% - -\BeginIndex[indexother]{}{font style}% -For changing the font style of headers or footers you should use the -user interface described in \autoref{sec:maincls.font}. For -header and footer the same element is used which you can name either -\FontElement{pagehead}\IndexFontElement{pagehead} or -\FontElement{pagefoot}\IndexFontElement{pagefoot}. The element for the -page number within the header or footer is named -\FontElement{pagenumber}\IndexFontElement{pagenumber}. Default -settings are listed in \autoref{tab:maincls.defaultFontsHeadFoot}. -Please have also a look at the example in -\autoref{sec:maincls.pageStyle}. -% -\EndIndex[indexother]{}{font style}% - -\begin{Declaration} - \Macro{clearpage}\\ - \Macro{cleardoublepage}\\ - \Macro{cleardoublestandardpage}\\ - \Macro{cleardoubleplainpage}\\ - \Macro{cleardoubleemptypage} -\end{Declaration}% -\BeginIndex{Cmd}{clearpage}% -\BeginIndex{Cmd}{cleardoublepage}% -\BeginIndex{Cmd}{cleardoublestandardpage}% -\BeginIndex{Cmd}{cleardoubleplainpage}% -\BeginIndex{Cmd}{cleardoubleemptypage}% -Please refer to \autoref{sec:maincls.pageStyle}. The function -of \Macro{cleardoublepage} in \Class{scrlttr2} depends on the -option \Option{cleardoublepage} which is described in more detail -in \autoref{sec:scrlttr2.layout}. -% -\EndIndex{Cmd}{clearpage}% -\EndIndex{Cmd}{cleardoublepage}% -\EndIndex{Cmd}{cleardoublestandardpage}% -\EndIndex{Cmd}{cleardoubleplainpage}% -\EndIndex{Cmd}{cleardoubleemptypage}% - - - -\subsection{Variables} -\label{sec:scrlttr2.variables} - -\BeginIndex{}{Variables}% -Apart from options, commands, environments, counters and lengths -additional elements have already been introduced in \KOMAScript{}. -A typical property of an element is the font style and the option -to change it (see \autoref{sec:maincls.font}). At this point -we now are going to introduce variables. Variables have a name by -which they are called and they have a content. The content of a -variable can be set independently from time and location of the -actual usage. The main difference between a command and a variable -is that a command usually triggers an action whereas a variable -only consist of plain text. Furthermore a variable can have an -additional description, which can be set and issued. - -This section only gives a short introduction to the term variable. -The following examples have no special meaning. More detailed -examples can be found in the explanation of predefined variables -of the letter class in the following sections. An overview of all -variables is given in \autoref{tab:scrlttr2.variables}. - -\begin{table} -\centering -\begin{tabular}{lp{.6\linewidth}} -Variable & Bedeutung \\\hline\\[-2ex] -\Variable{backaddress} & return address for window envelopes \\ -\Variable{backaddressseparator} & separator within the return address \\ -\Variable{ccseparator} & separator between title of additional addressees and additional addressees \\ -\Variable{customer} & customer number \\ -\Variable{date} & date \\ -\Variable{emailseparator} & separator between e-mail name and e-mail address\\ -\Variable{enclseparator} & separator between title of enclosure and enclosures \\ -\Variable{faxseparator} & separator between title of fax and fax number \\ -\Variable{fromaddress} & sender's address without its name \\ -\Variable{frombank} & sender's bank account \\ -\Variable{fromemail} & sender's e-mail \\ -\Variable{fromfax} & sender's fax number \\ -\Variable{fromlogo} & commands for inserting the sender's logo \\ -\Variable{fromname} & complete name of the sender \\ -\Variable{fromphone} & sender's telephone number \\ -\Variable{fromurl} & one url of the sender \\ -\Variable{invoice} & invoice number\\ -\Variable{location} & more details of the sender \\ -\Variable{myref} & sender's reference \\ -\Variable{place} & place \\ -\Variable{placeseparator} & separator between place and date \\ -\Variable{phoneseparator} & separator between title of telephone and telephone number \\ -\Variable{signature} & signature beneath the ending of the letter \\ -\Variable{specialmail} & special mail \\ -\Variable{subject} & subject \\ -\Variable{subjectseparator} & separator between title of subject and subject \\ -\Variable{title} & letter title \\ -\Variable{toname} & complete name of addressee \\ -\Variable{toaddress} & address of addressee without its name \\ -\Variable{yourmail} & date of addressee's mail \\ -\Variable{yourref} & addressee's reference \\ -\end{tabular} -\caption{Alphabetical list of all supported variables in -\Class{scrlttr2}} \label{tab:scrlttr2.variables} -\end{table} - - -\begin{Declaration} - \Macro{newkomavar}\OParameter{description}\Parameter{name}\\ - \Macro{newkomavar*}\OParameter{description}\Parameter{name}\\ - \Macro{addtoreffields}\Parameter{name} -\end{Declaration} -\BeginIndex{Cmd}{newkomavar}\BeginIndex{Cmd}{newkomavar*}% -\BeginIndex{Cmd}{addtoreffields}% -With \Macro{newkomavar} a new variable is defined. This variable -is addressed via \PName{name}. As an option you can define a -\PName{description} for the variable \PName{name}. Using the -command \Macro{addtoreffields} you can add the variable -\PName{name} to the reference fields (see -\autoref{sec:scrlttr2.refLine}). The \PName{description} and -the content of the variable are added at the end of the reference -fields. The starred version \Macro{newkomavar*} is similar to the -one without star with a subsequent call of the command -\Macro{addtoreffields}. Thus, the starred version automatically -adds the variable to the reference fields. -\begin{Example} - Suppose you need an additional field for a direct dialling. You - can define this field either with - \begin{small} -\begin{verbatim} - \newkomavar[Direct dialling]{myphone} - \addtoreffields{myphone} -\end{verbatim} - \end{small} - or more concise with - \begin{small} -\begin{verbatim} - \newkomavar*[direct dialling]{myphone} -\end{verbatim} - \end{small} - -\end{Example} -When you define a variable for the reference fields you should -always give them a description. -% -\EndIndex{Cmd}{newkomavar}\EndIndex{Cmd}{newkomavar*}% -\EndIndex{Cmd}{addtoreffields}% - - -\begin{Declaration} - \Macro{setkomavar}% - \Parameter{name}\OParameter{description}\Parameter{content}\\ - \Macro{setkomavar*}\Parameter{name}\Parameter{description} -\end{Declaration} -\BeginIndex{Cmd}{setkomavar}\BeginIndex{Cmd}{setkomavar*}% -With the command \Macro{setkomavar} you determine the -\PName{content} of the variable \PName{name}. Using an optional -argument you can at the same time change the \PName{description} -of the variable. In contrast, \Macro{setkomavar*} can only set the -\PName{description} of the variable \PName{name}. -\begin{Example} - Suppose you have defined a direct dialling as mentioned above - and you now want to set the content. You write: - \begin{small} -\begin{verbatim} - \setkomavar{myphone}{-\,11} -\end{verbatim} - \end{small} - In addition, you want to replace the term ``direct dialling'' - with ``Connexion''. Thus you add the description - \begin{small} -\begin{verbatim} - \setkomavar*{myphone}{Connexion} -\end{verbatim} - \end{small} - or you can put both in one command: - \begin{small} -\begin{verbatim} - \setkomavar{myphone}[Connexion]{-\,11} -\end{verbatim} - \end{small} -\end{Example} -By the way: You may delete the content of a variable using an empty -\PName{content} argument. You can also delete the description using an -empty \PName{description} argument. -\begin{Example} - Suppose you have defined a direct dialling as mentioned above and - you now don't want a description to be set. You write: - \begin{small} -\begin{verbatim} - \setkomavar*{myphone}{} -\end{verbatim} - \end{small} - You can combine this with the definition of the content: - \begin{small} -\begin{verbatim} - \setkomavar{myphone}[]{-\,11} -\end{verbatim} - \end{small} - So you may setup the content and delete the description using only - one command. -\end{Example} -% -\EndIndex{Cmd}{setkomavar}\EndIndex{Cmd}{setkomavar*}% - - -\begin{Declaration} - \Macro{usekomavar}\OParameter{command}\Parameter{name}\\ - \Macro{usekomavar*}\OParameter{command}\Parameter{name} -\end{Declaration} -\BeginIndex{Cmd}{usekomavar}\BeginIndex{Cmd}{usekomavar*}% -In\ChangedAt{v2.9i}{\Class{scrlttr2}} some cases it is necessary that -the user can access the content or the description of a variable. This -is specially important when you have defined a variable which is not -added to the reference fields. Using the command \Macro{usekomavar} you -have access to the content of the variable \PName{name} whereas the -starred version \Macro{usekomavar*} gives you the description. - -\begin{Explain} - The commands \Macro{usekomavar} and \Macro{usekomavar*} are, similar - to all commands where a starred version or an optional argument - exists, not fully expandable. Nevertheless if used within - \Macro{markboth}\IndexCmd{markboth}, - \Macro{markright}\IndexCmd{markright} or similar commands you - needn't insert a \Macro{protect}\IndexCmd{protect} before using - them. Of course this is also true in \Package{scrpage2} for - \Macro{markleft}\IndexCmd{markleft}. But they couldn't be used at - commands like \Macro{MakeUppercase}\IndexCmd{MakeUppercase}. - \Macro{MakeUppercase}\PParameter{\Macro{usekomavar}\Parameter{name}} - would result in \Macro{usekomavar}\Parameter{NAME}. To avoid this - problem you may use commands like \Macro{MakeUppercase} as optional - argument of \Macro{usekomavar} or \Macro{usekomavar*}. So you'll get - the upper case content of a variable using - \Macro{usekomavar}\PValue{[\Macro{MakeUppercase}]}\Parameter{name}. -\end{Explain} -% -\EndIndex{Cmd}{usekomavar}\EndIndex{Cmd}{usekomavar*}% -% -\EndIndex{}{variables} - -\begin{Declaration} - \Macro{ifkomavarempty}\Parameter{name}\Parameter{true}\Parameter{false}\\ - \Macro{ifkomavarempty*}\Parameter{name}\Parameter{true}\Parameter{false} -\end{Declaration} -\BeginIndex{Cmd}{ifkomavarempty}% -With\ChangedAt{v2.9i}{\Class{scrlttr2}} these commands you may check -wether or not the expanded contents or description of a variable is -empty. The \PName{true} argument will be executed if the contents or -description is empty. Otherwise the \PName{false} argument will be -executed. The variant with star sign handles the description of a -variable, the variant without star the contents. - -\begin{Explain} - Maybe it is important to know, that the contents or description of - the variable will be expanded using \Macro{edef}. If this results in - spaces or unexpandable macros like \Macro{relax}, it is not - empty. This is even true, if the use of the variable would not - result in any output. - - Both variants of the command must not be used at the argument of - \Macro{MakeUppercase}\IndexCmd{MakeUppercase} or commands, which - have similar effects to their arguments. See the description of - \Macro{usekomavar} above for more information about using commands - like \Macro{usekomavar} or \Macro{ifkomavarempty} at the argument of - \Macro{MakeUppercase}. But they are robust enough to be used at the - argument of e.g. \Macro{markboth} or \Macro{footnote}. -\end{Explain} - - -\subsection{The Pseudo Lengths} -\label{sec:scrlttr2.pseudoLength} - -\begin{Explain} - \TeX{} works with a fixed number of registers. There are registers - for tokens, for boxes, for counters, for skips and for dimensions. - Overall there are 256 for each of them. For \LaTeX{} lengths, which - are addressed with \Macro{newlength} skip registers are used. If all - of these registers are in use you can not define additional lengths. - The letter class \Class{scrlttr2} only for the first page would use - up more than 20 of such registers. \LaTeX{} itself already uses 40 - of these registers. The \Package{typearea} package needs some of - them too. Thus approximately a quarter of the precious registers is - already in use. That's the reason why lengths specific to letters in - \Class{scrlttr2} are defined with macros instead of lengths. The - drawback of this is that computations withs macros is somewhat more - complicated than with real lengths. -\end{Explain} - -\begin{Declaration} - \Macro{@newplength}\Parameter{name} -\end{Declaration} -\BeginIndex{Cmd}{@newplength}% -This command defines an new pseudo length. This new pseudo length -can clearly identified with its \PName{name}. It is made sure that -every \PName{name} can only be given once. - -Since the user in general doesn't define its own pseudo lengths it -is not intended as a user command. Thus, it can not be used within -a document, but for example within a \File{lco} file. -% -\EndIndex{Cmd}{@newplength}% - -\begin{Declaration} - \Macro{useplength}\Parameter{name} -\end{Declaration} -\BeginIndex{Cmd}{useplength}% -Using this command you can access the value of the pseudo length -with the given \PName{name}. This is the only user command in -connection with pseudo lengths. Of course this command can also be -used with a \File{lco} file. -% -\EndIndex{Cmd}{useplength}% - -\begin{Declaration} - \Macro{setlengthtoplength}% - \OParameter{factor}\Parameter{length}\Parameter{pseudo length}\\ - \Macro{addtolengthplength}% - \OParameter{factor}\Parameter{length}\Parameter{pseudo length} -\end{Declaration} -\BeginIndex{Cmd}{setlengthtoplength}% -\BeginIndex{Cmd}{addtolengthplength}% -\begin{Explain}% -While you can combine a length with a factor this is not possible -with pseudo lengths. Suppose you have a length \Macro{test} with -the value 2\Unit{pt}, then \texttt{3\Macro{test}} gives you the -value 6\Unit{pt}. Using pseudo lengths instead -\texttt{3\Macro{useplength}\PParameter{test}} would give you -32\Unit{pt}. This is especially annoying if you want a real -\PName{length} assign the value of a \PName{pseudo length}. -\end{Explain} -Using the command \Macro{setlengthtoplength} you can assign a -multiple of a \PName{pseudo length} to a real \PName{length}. -Instead of putting the \PName{factor} in front of the -\PName{pseudo length} it is given as an optional argument. You -should also use this command when you want to assign a negative -value of a \PName{pseudo length} to a \PName{length}. In this case -you can either use a minus sign or \PValue{-1} as the -\PName{factor}. The command \Macro{addtolengthplength} works very -similar to that. It adds a multiple of \PName{pseudo length} to -\PName{length}. -% -\EndIndex{Cmd}{setlengthtoplength}% -\EndIndex{Cmd}{addtolengthplength}% - -\begin{Declaration} - \Macro{@setplength}% - \OParameter{factor}\Parameter{pseudo length}\Parameter{value}\\ - \Macro{@addtoplength}% - \OParameter{factor}\Parameter{pseudo length}\Parameter{value} -\end{Declaration} -\BeginIndex{Cmd}{@setplength}% -\BeginIndex{Cmd}{@addtoplength}% -Using the command \Macro{@setplength} you assign a multiple of a -\PName{value} to a \PName{pseudo length}. The \PName{factor} is -given as an optional argument. -The command \Macro{@addtoplength} -adds the \PName{value} to a \PName{pseudo length}. For assigning -or adding the multiple of \PName{pseudo length} to another pseudo -length the command \Macro{useplength} is used within \PName{value}. -To substract the value of a \PName{pseudo length} from another -\PName{pseudo length} a minus sign or \PValue{-1} as -\PName{factor} is used. - -Since the user in general doesn't define its own pseudo lengths it -is not intended as a user command. Thus, it can not be used within -a document, but for example within a \File{lco} file. -% -\EndIndex{Cmd}{@setplength}% -\EndIndex{Cmd}{@addtoplength}% - - - -\subsection{The General Structure of a Letter Document} -\label{sec:scrlttr2.document} - -The general structure of a letter document differs somewhat from -the structure of a normal document. Whereas a book document in -general contains only one book, a letter document can contain -several letters. As illustrated in -\autoref{fig:scrlttr2.document} a letter document consists of a -preamble, the individual letters and the closing. - -The preamble comprises all settings that in general concern all -letters. Most of them can be overwritten in the settings of the -individual letters. The only setting which can not be changed within a -single letter is the font size (see option \Option{fontsize} in -\autoref{sec:scrlttr2.fontOptions}). General settings such as the -loading of packages and the setting of options should be placed before -\Macro{begin}\PParameter{document} only. All settings that comprise -the setting of variables or other text features should be done after -\Macro{begin}\PParameter{document}. This is particularly recommend -when the \Package{babel} package\IndexPackage{babel} (see -\cite{package:babel}) is used or language dependend variables of -\Class{scrlttr2} are to be changed. - -The closing usually consists only of the standard closing for the -end of a document. Of course you can also insert additional -comments at this point. - -\begin{figure} -\centering\small\setlength{\fboxsep}{1.5ex} -\fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{documentclass}\OParameter{\dots}\PParameter{scrlttr2}\\ - \dots\\ - {\centering\emph{Settings for all letters}\\} - \dots\\ - \Macro{begin}\PParameter{document}\\ - \dots\\ - {\centering\emph{Settings for all letters}\\} - \dots\\ - }}\\ -\fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{begin}\PParameter{letter}\Parameter{addressee}\\ - \dots\\ - {\centering\emph{Content of the individual letter}\\} - \dots\\ - \Macro{end}\PParameter{letter}\\ - }}\\ -\parbox{.667\linewidth}{\raggedright\vspace{-.5ex}\vdots\vspace{1ex}}\\ -\fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{end}\PParameter{document}\\ - }}\\ -\caption{General structure of a letter document with several -individual letters (the structure of a single letter is shown in - \autoref{fig:scrlttr2.letter})} -\label{fig:scrlttr2.document} -\vspace{2\abovecaptionskip} -\fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{begin}\PParameter{letter}% - \OParameter{Optionen}\Parameter{addressee}\\ - \dots\\ - {\centering\emph{Settings for this letter}\\} - \dots\\ - \Macro{opening}\Parameter{opening}\\ - }}\\ -\fbox{\parbox{.667\linewidth}{\raggedright% - \dots\\ - {\centering\emph{letter text}\\} - \dots\\ - }}\\ -\fbox{\parbox{.667\linewidth}{\raggedright% - \Macro{closing}\Parameter{closing}\\ - \Macro{ps}\\ - \dots\\ - {\centering\emph{postscript}\\} - \dots\\ - \Macro{encl}\Parameter{enclosures}\\ - \Macro{cc}\Parameter{additional addressees}\\ - \Macro{end}\PParameter{letter}\\ - }}\\ -\caption{General structure of a single letter within a letter -document (see also \autoref{fig:scrlttr2.document})} -\label{fig:scrlttr2.letter} -\end{figure} - -As shown in \autoref{fig:scrlttr2.letter} every single letter -itself consists of an introduction, the letter body and the -closing. In the introduction all settings for only this letter are -defined. It is important that this introduction always ends with -\Macro{opening}. Similarily the closing starts with -\Macro{closing}. If needed both arguments \PName{opening} and -\PName{closing} can be left empty. Nevertheless both commands have -to be used and must have an argument. - -\begin{Explain} -There are further settings that can be changed between the -individual letters. These settings have an effect on all -subsequent letters. For reasons of maintainability of your letter -documents it is not recommended to use further general settings -with limited validity between the letters. -\end{Explain} - -As already mentioned you can use all settings in the preamble of a -letter document in the preamble of the individual letters apart -from the font size. Therefore you will not find more detailed -explanations for the possible settings at this point. Please refer -to \autoref{sec:scrlttr2.startLetter}. - - -\section{The Letter Declaration} -\label{sec:scrlttr2.startLetter} - -The letter declaration gives all settings for the letter itself as well -as for the first page of the body. The first page consists of more than just the -prelims of the letter; it consists of several different parts. - -\subsection{The Letter-Head} -\label{sec:scrlttr2.firstHead} - -The term letter-head here refers to all of the sender's data -and is printed above the addressee's address. It usually is expected to -have all this set via the pagestyle setting. The earlier version of letterclass -\Class{scrlettr} worked that way. But with \Class{scrlttr2}, the letter-head has gotten -independent of the pagestyle setting and is run by the command \Macro{opening}. -% Fuellmaterial -\iftrue -The position of the letter-head is absolute and independent of the type -area. In fact the first page of a letter, that page that holds the letter-head, -is set by \PValue{empty}. -\fi -% Ende des Fuellmaterials - -\begin{Declaration} - \PLength{firstheadvpos} -\end{Declaration} -\BeginIndex{PLength}{firstheadvpos}% -The pseudolength \PLength{firstheadvpos} gives the distance between the top of -the sheet and the letter-head. This value is set differently in the predefined -\File{lco}-files. A typical value is 8\Unit{mm}. -% -\EndIndex{PLength}{firstheadvpos} - -\begin{Declaration} - \PLength{firstheadwidth} -\end{Declaration} -\BeginIndex{PLength}{firstheadwidth}% -The pseudolength \PLength{firstheadwidth} gives the width of the -letter-head. This value is set differently in the predefined -\File{lco}-files. While this value usually depends on the paperwidth and the -distance between the left side of the sheet and the address' field, it was -the type area width in \Option{KOMAold}. -% -\EndIndex{PLength}{firstheadwidth}% - -\begin{Declaration} - \Variable{fromname}\\ - \Variable{fromaddress}\\ - \Variable{fromphone}\\ - \Variable{fromfax}\\ - \Variable{fromemail}\\ - \Variable{fromurl}\\ - \Variable{fromlogo} -\end{Declaration} -\BeginIndex{Variable}{fromname}% -\BeginIndex{Variable}{fromaddress}% -\BeginIndex{Variable}{fromphone}% -\BeginIndex{Variable}{fromfax}% -\BeginIndex{Variable}{fromemail}% -\BeginIndex{Variable}{fromurl}% -\BeginIndex{Variable}{fromlogo}% -% -These variables give all statements concerning the sender necessary to create -the letter-head. Which variable will be used to build the letter-head in the -end can be chosen by use of the letter-head extensions (see option -\Option{fromalign} in \autoref{sec:scrlttr2.headoptions}) and the options -given there. The variables \Variable{fromname}, and \Variable{fromaddress}, -and \Variable{fromlogo} will be set in the letter-head without their label; -the variables \Variable{fromphone}, \Variable{fromfax}, \Variable{fromemail} -and \Variable{fromurl} will be set with it's label. The labels are taken from -\autoref{tab:scrlttr2.fromTerm}. -% -\begin{table} -\centering -\begin{tabular}{ll} -name & label \\\hline\\[-2ex] -\Variable{fromemail} & \Macro{usekomavar*}\PParameter{emailseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{emailseparator} - \\ -\Variable{fromfax} & \Macro{usekomavar*}\PParameter{faxseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{faxseparator} \\ -\Variable{fromname} & \Macro{headfromname} \\ -\Variable{fromphone} & \Macro{usekomavar*}\PParameter{phoneseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{phoneseparator} - \\ -\Variable{fromurl} & \Macro{usekomavar*}\PParameter{urlseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{urlseparator} - \\ -\end{tabular} -\caption{The sender's predefined labels for the letter-head} -\label{tab:scrlttr2.fromTerm} -\end{table} - -An important hint concerns the sender's address. Within the sender's address, -parts such as Street, P.O.~Box, State, Country etc, are separated with a -double backslash. Depending on how the sender's address is used this double -backslash will be interpreted differently and therefore not strictly as a line -break. Paragraphs, vertical distances and the like usually aren't allowed within -the sender's address declaration. One has to have very good knowledge of -\Class{scrlttr2} to use things like those mentioned above, intelligently. - -It's possible, by the way, to load an external picture to use it as a logo. In -this case then put the content of \Variable{fromlogo} to a -\Macro{includegraphics}-command. The corresponding package (see -\cite{package:graphics}) of course has to be given with the letter declaration -(see \autoref{sec:scrlttr2.document}). -% -\EndIndex{Variable}{fromname}% -\EndIndex{Variable}{fromaddress}% -\EndIndex{Variable}{fromphone}% -\EndIndex{Variable}{fromfax}% -\EndIndex{Variable}{fromemail}% -\EndIndex{Variable}{fromurl}% -\EndIndex{Variable}{fromlogo}% - -\begin{Declaration} - \Variable{phoneseparator}\\ - \Variable{faxseparator}\\ - \Variable{emailseparator}\\ - \Variable{urlseparator} -\end{Declaration} -\BeginIndex{Variable}{phoneseparator}% -\BeginIndex{Variable}{faxseparator}% -\BeginIndex{Variable}{emailseparator}% -\BeginIndex{Variable}{urlseparator}% -With these variables, hyphens are defined. If applicable they are used with the -sender's data in the letter-head (see \autoref{tab:scrlttr2.fromTerm}). As -a feature, they are labeled and used in the sender's details -of the letter-head. To look up the predefined labels -and their contents, see \autoref{tab:scrlttr2.fromSeperator}. -% -% table moved in following paragraph (JUM) >>> -% -\EndIndex{Variable}{phoneseparator}% -\EndIndex{Variable}{faxseparator}% -\EndIndex{Variable}{emailseparator}% -\EndIndex{Variable}{urlseparator}% - - -\begin{Declaration} - \Macro{firsthead}\Parameter{construction} -\end{Declaration} -\BeginIndex{Cmd}{firsthead}% -Mostly \Class{scrlttr2} and its variables offer enough possibilities to create -a letter-head. In very rare situations one may wish to have more freedom to -create. In those situations one will have to do without predefined -letter-heads, which could have been chosen via options. Instead one is to -create freely. Therefore one has to define the preferred \PName{construction} -with the command \Macro{firsthead}. Within \Macro{firsthead} and with the help -of the \Macro{parbox}-command (see \cite{latex:usrguide}) one can set several -boxes side by side or one underneath the other. An advanced user will thus be -able to create a letter-head on his own. And doing this of course the -\PName{construct} may use varibles with the help of \Macro{usekomavar}. -% -% <<< table of previous paragraph -\begin{table} -\centering -\begin{tabular}{lll} -name & label & content \\\hline\\[-2ex] -\Variable{emailseparator} & \Macro{emailname} & \texttt{:\~} \\ -\Variable{faxseparator} & \Macro{faxname} & \texttt{:\~} \\ -\Variable{phoneseparator} & \Macro{phonename} & \texttt{:\~} \\ -\Variable{urlseparator} & \Macro{wwwname} & \texttt{:\~} \\ -\end{tabular} -\caption{predefined labels and contents of hyphens for sender's datas in the - letter-head} -\label{tab:scrlttr2.fromSeperator} -\end{table} -% -\EndIndex{Cmd}{firsthead}% - - -\subsection{The Footer} -\label{sec:scrlttr2.firstFoot} -As the first page holds a letter-head of its own it holds a footer -of its own too. And, same as with the letter-head, it will be printed independent of the -pagestyle settings but with the use of \Macro{opening}. - -\begin{Declaration} - \PLength{firstfootvpos} -\end{Declaration} -\BeginIndex{PLength}{firstfootvpos}% -% -This pseudolength gives the distance between the footer and the upper -border of the sheet. This value is set different in the predefined -\File{lco}-files. Also it takes care of preventing text jutting into the -footer area. If needed, it can help to shorten the textheight on the first page -using \Macro{enlargethispage}. -Likewise and if it is needed the textheight can -be extended with help of the option \Option{enlargefirstpage}. This way, the -distance between text area and the first page's footer can be reduced to -the value \Length{footskip}. See also \autoref{sec:scrlttr2.typeareaOptions}. -% -\EndIndex{PLength}{firstfootvpos}% - - -\begin{Declaration} - \PLength{firstfootwidth} -\end{Declaration} -\BeginIndex{PLength}{firstfootwidth}% -This pseudolength gives the width of the letter's firstpage footer. The -value is set in dependency of the pseudolength \PLength{firstheadwidth} in the -\File{lco}-files. -% -\EndIndex{PLength}{firstfootwidth}% - - -\begin{Declaration} - \Macro{firstfoot}\Parameter{construction} -\end{Declaration} -\BeginIndex{Cmd}{firstfoot}% -The first page's footer is preset to empty. But with the -\Macro{firstfoot} command it is possible to give definitions the same -way as with defining the letter-head with \Macro{firsthead}. -\begin{Example} - As the first page's footer, you may want to set the content of the variable - \Variable{bank} (the bank account). The double backslash shall be exchanged - with a comma at the same time: - \begin{small} -\begin{verbatim} - \firstfoot{% - \parbox[b]{\linewidth}{% - \centering\def\\{, }\usekomavar{frombank}% - }% - } -\end{verbatim} - \end{small} - For the hyphen you might define a varible of your own if you like. Consider - that has been left to the reader as an exercise. - - Nowadays it has become very common to create a proper footer to have - some balance to the letter-head. This can be done like this: - \begin{small} -\begin{verbatim} - \firstfoot{% - \parbox[t]{\textwidth}{\footnotesize - \begin{tabular}[t]{l@{}}% - \multicolumn{1}{@{}l@{}}{partners:}\\ - Jim Smith\\ - Russ Mayer - \end{tabular}% - \hfill - \begin{tabular}[t]{l@{}}% - \multicolumn{1}{@{}l@{}}{Manager:}\\ - Jane Fonda\\[1ex] - \multicolumn{1}{@{}l@{}}{Court Of Jurisdiction:}\\ - Great Plains - \end{tabular}% - \ifkomavarempty{frombank}{}{% - \hfill - \begin{tabular}[t]{l@{}}% - \multicolumn{1}{@{}l@{}}{\usekomavar*{frombank}:}\\ - \usekomavar{frombank} - \end{tabular}% - }% - }% - } -\end{verbatim} - \end{small} - This example, by the way, came from Torsten Kr\"uger. With - \begin{small} -\begin{verbatim} - \setkomavar{frombank}{Account No. 12\,345\,678\\ - at Citibank\\ - bank code no: 876\,543\,21} -\end{verbatim} - \end{small} - the bank account can be set accordingly. If the footer will have a - height like that it might happen that you have to shift its position. You - do this with the pseudolength - \PLength{firstfootvpos}\IndexPLength{firstfootvpos}, which is described - above in this section. -\end{Example} -% -\EndIndex{Cmd}{firstfoot}% - - -\subsection{The Address} -\label{sec:scrlttr2.addressee} -The term address here usually refers to name and address of the addressee. But -there are extensions. The first extension is the way of distribution -e.g. ``special mail''. If window envelopes are used the return address is -another extension since it has to show up within the envelope's window. The -address immediately follows beneath the letter-head. - -\begin{Declaration} - \PLength{toaddrvpos}\\ - \PLength{toaddrhpos} -\end{Declaration} -\BeginIndex{PLength}{toaddrvpos}% -\BeginIndex{PLength}{toaddrhpos}% -These pseudolengths give the distance between address window of a window -envelope and the upper and left border of the sheet. They are set different in -the predefined \File{lco}-files. The smallest value is \PLength{toaddrvpos} at -\Option{DINmtext}. It can happen easily that the letter-head juts into the -address window field. Whether the address window field will be set at all -depends on giving the option \Option{addrfield} (see -\autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{toaddrhpos}% -\EndIndex{PLength}{toaddrvpos}% - - -\begin{Declaration} - \PLength{toaddrwidth} -\end{Declaration} -\BeginIndex{PLength}{toaddrwidth}% -This pseudolength gives the width of the address window. It is set -differently in the predefined \File{lco}-files according to the different -standards that exist. Typically it is something between 70\Unit{mm} and -100\Unit{mm}. -% -\EndIndex{PLength}{toaddrwidth}% - - -\begin{Declaration} - \PLength{toaddrindent} -\end{Declaration} -\BeginIndex{PLength}{toaddrindent}% -Sometimes it is wanted that the address isn't set exactly at the beginning -of the left border of the address window, but a little indented to the -right. The value of the indentiation can be set with the pseudolength -\PLength{toaddrindent}. But typically it is 0\Unit{pt}. -% -\EndIndex{PLength}{toaddrindent}% - - -\begin{Declaration} - \Variable{backaddress}\\ - \Variable{backaddressseparator}\\ - \PLength{backaddrheight} -\end{Declaration} -\BeginIndex{Variable}{backaddress}\BeginIndex{Variable}{backaddressseparator}% -\BeginIndex{PLength}{backaddrheight}% -The sender's address often is printed in one line with small letters above the -address if window envelopes are used. This line, called return address, is -separated by a horizontal line, and usually build automaticly of the variables -\Variable{fromname} und \Variable{fromaddress}. Double backslashes set within -this return address will be exchanged by the settings of the variable -\Variable{backaddressseparator}. Predefined here is a comma with a whitespace. -The height this return address field can take is defined with the pseudolength -\PLength{backaddrheight}. The value typically is 5\Unit{mm} and set in the -predefined \File{lco}-files. If the return address line is to be set or not -depends on putting the options \Option{addrfield} and \Option{backaddress} in -the letter declarations (see \autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{backaddrheight}% -\EndIndex{Variable}{backaddress}\EndIndex{Variable}{backaddressseparator}% - - -\begin{Declaration} - \Variable{specialmail}\\ - \PLength{specialmailindent}\\ - \PLength{specialmailrightindent} -\end{Declaration} -\BeginIndex{Variable}{specialmail}% -\BeginIndex{PLength}{specialmailindent}% -\BeginIndex{PLength}{specialmailrightindent}% -Between the return address and addressee, the distribution like -specialmail can be set optionally. -It's set then if \Variable{specialmail} has a value. -The both pseudolengths \PLength{specialmailindent} and -\PLength{specialmailrightindent} determine the alignment. -They determine the left and right indentation. -The predefined \File{lco}-files have \PLength{specialmailindent} -set as the elastic value \Macro{fill}, while the pseudolength \PLength{specialmailrightindent} -is set to 1\Unit{em}. Thus distribution term is set 1\Unit{em} off the -right border of the address window. -% -\EndIndex{PLength}{specialmailindent}% -\EndIndex{PLength}{specialmailrightindent}% -\EndIndex{Variable}{specialmail}% - - -\begin{Declaration} - \Variable{toname}\\ - \Variable{toaddress} -\end{Declaration} -\BeginIndex{Variable}{toname}% -\BeginIndex{Variable}{toaddress}% -These two variables that give name and address of the addressee usually aren't -set directly by the user. Instead \Class{scrlttr2} takes it directly off the -\PName{addressee}-argument of the -\Environment{letter}-environment\IndexEnv{letter}. See also the hint about the -sender's address in \autoref{sec:scrlttr2.firstHead}. -% -\EndIndex{Variable}{toname}% -\EndIndex{Variable}{toaddress}% - - -\begin{Declaration} - \Macro{begin}% - \PParameter{letter}\OParameter{options}\Parameter{address} -\end{Declaration} -\BeginIndex{Env}{letter}% -The letter environment is but one key point of the letter class. Especially -with \Class{scrlttr2} it is possible to run the letter environment with -additional \PName{options}. They will be run according to the -\Macro{KOMAoptions}-commands. \PName{address} will be given to the letter -environment as an obligatory parameter. Here the double backslash works as a -hyphen between parts of \PName{address}. Those parts then are printed as -single lines. The double backslashes here shouldn't be understood as -strict line break commands. Paragraphs, vertical space, etc., aren't accepted -within the address. They can lead to unexpected effects and error messages. -By the way it is the same way with the standard letter class. -The~\Environment{letter}-environment itself doesn't start the letter. The -letter is started with the \Macro{opening}-command. -\EndIndex{Env}{letter}% - - -\begin{Declaration} - \Macro{AtBeginLetter}\Parameter{command} -\end{Declaration} -\BeginIndex{Cmd}{AtBeginLetter}% -It is possible with \LaTeX{} to process additional \PName{commands} -while running the \LaTeX{}-process at determined times. -For that matter, the \Macro{AtBeginDocument} or \Macro{AtEndOfClass} -exist; those points along the processing of \LaTeX{} are called \emph{hooks}. -The class \Class{scrlttr2} adds another hook to this, that can be used with -\Macro{AtBeginLetter}. Originally those hooks are made for package or class -authors, which can be understood by the fact that the descriptions for those -hooks aren't documented in \cite{latex:usrguide}, but in -\cite{latex:clsguide}. With the letter class there could come some useful -applications for \Macro{AtBeginLetter} as the following example may show: -% -\begin{Example} - Given one has to set more letters than just one with one document and uses - commands within the letter to set a form. The numbers of the questions in - that form should be generated automatically with the help of a counter. Since, in - contrary to the page numbering, that counter is not known by - \Class{scrlttr2}, it wouldn't be reset at each start of a new letter. - Given each form holds ten questions, then question 1 would not be question 1 - in the fifth letter, but instead number 41. The solution is in having - \Class{scrlttr2} reset this counter at the beginning of each new letter: - \begin{small} -\begin{verbatim} - \newcounter{Question} - \newcommand{\Question}[1]{% - \refstepcounter{Question}\par - \@hangfrom{\makebox[2em][r]{\theQuestion:~}}{#1}} - \AtBeginLetter{\setcounter{Question}{0}} -\end{verbatim} - \end{small} - This way question~1 remains question~1, even in the 1001st letter. Of course - definitions like those mentioned above need to be given either braced (see - \cite{DANTE:FAQ}) in the declaration of the letter (see - \autoref{sec:scrlttr2.document} and - \autoref{fig:scrlttr2.document}) with \Macro{makeatletter} and - \Macro{makeatother}, or loaded as package of one's own, or as - \File{lco}-file (see \autoref{sec:lcoFile}). -\end{Example} -% -\EndIndex{Cmd}{AtBeginLetter}% - - -\subsection{The Sender's Extensions} -\label{sec:scrlttr2.locationField} - -Often, especially with business letters, the space for letter-head or pagefoot -seems to be too tight to put all you want to have set. To give more details -about the sender, often the space right beside the addressee's field is -used. In this manual this field is called \emph{sender's extension} - - -\begin{Declaration} - \PLength{locwidth} -\end{Declaration} -\BeginIndex{PLength}{locwidth}% -This pseudolength \PLength{locwidth} declares the width of the sender's -extensions. Its value is set typically 0\Unit{pt} in the predefined -\File{lco}-files. This value takes on a special position. It does not mean -that the sender's extension has no width. Instead it's actual width is set -with the \Macro{opening} when paperwidth, address window width, and distance -between left border of the sheet and address window is given. With it the -option \Option{locfield} (see \autoref{sec:scrlttr2.headoptions}) is -taken into account. -% -\EndIndex{PLength}{locwidth} - - -\begin{Declaration} - \Variable{location} -\end{Declaration} -\BeginIndex{Variable}{location}% -The content of the sender's extension is determined by the variable -\Variable{location}. To set this variable's content it's allowed to use -formatting commands like \Macro{raggedright}. One has to consider that -depending on the use of the options \Option{fromalign} and \Option{fromlogo}, -a part of the space for the sender's extension may be in use already (see -\autoref{sec:scrlttr2.headoptions}). -% -\begin{Example} - Given you like to put the names of your partners, manager, or court of - jurisdiction with the sender's extension, you can do this like: - \begin{small} -\begin{verbatim} - \KOMAoptions{locfield=wide} - \setkomavar{location}{\raggedright - \textbf{Partners:}\\ - \quad Hugo Mayer\\ - \quad Bernd Müller\\[1ex] - \textbf{Manager:}\\ - \quad Liselotte Mayer\\[1ex] - \textbf{Court of jurisdiction:}\\ - \quad Washington, DC - } -\end{verbatim} - \end{small} - The option \Option{locfield=wide} is set to make the details fit in - horizontally. Sender details like those mentioned in the above example, - can be given together with the common sender address with your own - \File{lco}-file. -\end{Example} -% -\EndIndex{Variable}{location}% - - -\subsection{The Business Line} -\label{sec:scrlttr2.refLine} - -Especially with business letters, a line can be found that gives initials, dial -code, customer number, invoice number, or a reference to a previous letter. -In this manual this line is called \emph{business line}. The business line can -consist of more than just one line and is set only if one of those variables -mentioned above is given. Only those fields will be set that are given. To set -a seemingly empty field, one needs to give as value at least a white space or -\Macro{null}. If you want to have your letter without a business line, then -just the variable \Variable{date} will be set instead. - - -\begin{Declaration} - \PLength{refvpos} -\end{Declaration} -\BeginIndex{PLength}{refvpos}% -This pseudolength gives the distance between the upper border of the sheet -and the business line. It's value is set differently in the predefined -\File{lco}-files. Typical values are between 80{,}5\Unit{mm} and -98{,}5\Unit{mm}. -% -\EndIndex{PLength}{refvpos}% - - -\begin{Declaration} - \PLength{refwidth} -\end{Declaration} -\BeginIndex{PLength}{refwidth}% -This pseudolength gives the width that is available for the business line. -The value is set typically to 0\Unit{pt} in the predefined \File{lco}-files. -This value has a special meaning. In no way does it determine that there is -no available width for the business line. Instead this value means that the -width will be calculated with the \Macro{opening}. Thus the calculated width -depends on the determination of the options \Option{refline} (see -\autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{refwidth}% - - -\begin{Declaration} - \PLength{refaftervskip} -\end{Declaration} -\BeginIndex{PLength}{refaftervskip}% -This pseudolength gives the vertical space that has to be inserted beneath -the business line. The value is set in the predefined \File{lco}-files. It -effects directly the textheight of the first page. A typical value is -something between one and two lines. -% -\EndIndex{PLength}{refaftervskip}% - - -\begin{Declaration} - \Variable{place}\\ - \Variable{placeseparator} -\end{Declaration} -\BeginIndex{Variable}{place}% -\BeginIndex{Variable}{placeseparator}% -As said before in the introduction of this paragraph, the business line can be -left out. This happens if all variables of the business line are empty with -the exception of the variable for the date. In this case, the content of -\Variable{place} and \Variable{placeseparator} will be set, followed by the -content of \Variable{date}. The predefined content of the -\Variable{placeseparator} is a comma followed by a white space. If this -variable \Variable{place} has no value then the hyphen remains unset also. -The predefined subject of \Variable{date} is \Macro{today} and depends on the -setting of the option \Option{numericaldate} (see -\autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{Variable}{place}% -\EndIndex{Variable}{placeseparator}% - - -\begin{Declaration} - \Variable{yourref}\\ - \Variable{yourmail}\\ - \Variable{myref}\\ - \Variable{customer}\\ - \Variable{invoice} \\ - \Variable{date} -\end{Declaration} -\BeginIndex{Variable}{yourref}% -\BeginIndex{Variable}{yourmail}% -\BeginIndex{Variable}{myref}% -\BeginIndex{Variable}{customer}% -\BeginIndex{Variable}{invoice}% -\BeginIndex{Variable}{date}% -These variables are typical for business line fields. To find out about their -meaning, see table ~\ref{tab:scrlttr2.variables} on -\autopageref{tab:scrlttr2.variables}. Each variable covers a predefined label -that can be seen at \autoref{tab:scrlttr2.reflineTerm}. The field width that -belongs to each variable, adjusts itself automatically to its label and -content. -% -\begin{table} -\centering -\begin{tabular}{lll} - name & label & in english \\\hline\\[-2ex] - \Variable{yourref} & \Macro{yourrefname} & Your reference \\ - \Variable{yourmail} & \Macro{yourmailname} & Your letter from \\ - \Variable{myref} & \Macro{myrefname} & Our reference \\ - \Variable{customer} & \Macro{customername} & Customer No.: \\ - \Variable{invoice} & \Macro{invoicename} & Invoice No.: \\ - \Variable{date} & \Macro{datename} & date \\ -\end{tabular} -\caption{predefined labels of the business line's typical variables. The - content of the makros depend on language.} -\label{tab:scrlttr2.reflineTerm} -\end{table} -% -\EndIndex{Variable}{yourref}% -\EndIndex{Variable}{yourmail}% -\EndIndex{Variable}{myref}% -\EndIndex{Variable}{customer}% -\EndIndex{Variable}{invoice}% -\EndIndex{Variable}{date}% - - - -\subsection{The Title and the Subject Line} -\label{sec;scrlttr2.titleSubject} -Business letters most often carry a subject line. The subject line indicates -in short of what that letter is about. Usually the subject should be short and -precise and not run across several lines. The letter may also carry a title. -Titles find usage with unregular letters like an Invoice or a Reminder. - - -\begin{Declaration} - \Variable{title} -\end{Declaration} -\BeginIndex{Variable}{title}% -With \Class{scrlttr2} a letter can carry an additional title. The title -becomes centered and set with letter size \Macro{LARGE} right -after and beneath the business line. -The predefined font setup for this element -(\Macro{normalcolor}\Macro{sffamily}\Macro{bfseries}) can be changed with -help of the interface described in \autoref{sec:maincls.font}. Font size -declarations are allowed. -\begin{Example} - Given you are to write a reminder. Thus you put the title: - \begin{small} -\begin{verbatim} - \setkomavar{title}{Reminder} -\end{verbatim} - \end{small} - This way the addressee will recognize a reminder as such. -\end{Example} -% -\EndIndex{Variable}{title} - - -\begin{Declaration} - \Variable{subject}\\ - \Variable{subjectseparator} -\end{Declaration} -\BeginIndex{Variable}{subject}% -\BeginIndex{Variable}{subjectseparator}% -In case a subject should be set then you have to determine the variable -\Variable{subject} fit. Depending on what the option \Option{subject} is set -to a label can be put in front of the subject issue; also the vertical -position of the subject issue can be changed (see -\autoref{sec:scrlttr2.headoptions}). To see the predetermined labels -look at \autoref{tab:scrlttr2.subjectTerm}. The predefined value of -\Variable{subjectseparator} is a colon followed by a white space. -% -\begin{table} -\centering -\begin{tabular}{lll} - name & label \\\hline\\[-2ex] - \Variable{subject} & \Macro{usekomavar*}\PParameter{subjectseparator}% - \texttt{\%} \\ & \texttt{\quad}% - \Macro{usekomavar}\PParameter{subjectseparator} - \\ - \Variable{subjectseparator} & \Macro{subjectname} \\ -\end{tabular} -\caption{Predefined Labels Of The Subject's Variables.} -\label{tab:scrlttr2.subjectTerm} -\end{table} - -The subject line is set in a separate type face. To change this use -the user interface described in \autoref{sec:maincls.font}. For -the element \FontElement{subject}\IndexFontElement{subject} the -predetermined type face in \Class{scrlttr2} is -\Macro{normalfont}\Macro{normalcolor}\Macro{bfseries}. -\begin{Example} - Given you are a board member and want to write a letter to another member of - that board about a few internals of the organization. You want to - clarify with your subject line what this letter is all about, but without - labeling it thus. You can do this that way: - \begin{small} -\begin{verbatim} - \setkomavar{subject}[Subject ]{% - organization's internals} -\end{verbatim} - \end{small} - or easier: - \begin{small} -\begin{verbatim} - \setkomavar{subject}[]{% - about organization's internals} -\end{verbatim} - \end{small} - More than just that you may want to have set the subject line not only bold but - also with sans serif types: - \begin{small} -\begin{verbatim} - \addtokomafont{subject}{\sffamily} -\end{verbatim} - \end{small} - As you can see, it's really easy to solve this problem. -\end{Example} -% -\EndIndex{Variable}{subject}% -\EndIndex{Variable}{subjectseparator}% - - -\subsection{Further Issues} -In this paragraph variables and settings are listed which couldn't be assigned -to any other paragraph of the letter declaration but somehow belong to this -chapter. - -\begin{Declaration} - \PLength{tfoldmarkvpos}\\ - \PLength{bfoldmarkvpos} -\end{Declaration} -\BeginIndex{PLength}{tfoldmarkvpos}% -\BeginIndex{PLength}{bfoldmarkvpos}% -The letterclass \Class{scrlttr2} all in all has 3 fold marks. The one in the -middle serves to halve the paper and is therefore printed always in the middle -of paperheight. The position of the upper fold mark, seen from the upper -sheet's border, is determined by the pseudolength \PLength{tfoldmarkvpos}; the -lower one is determined by the pseudolength \PLength{bfoldmarkvpos}. All three -fold marks do not serve to exactly fold to a standard 3 panel letter -fold. Instead the idea is to have the paper folded so that the address -field is seen in the window of a window envelope. The settings therefore are -different in the predefined \File{lco}-files. A special case is -\Option{DINmtext}. In this case the envelope format C6/5 (also called -``C6~long'') is necessary. Letters produced in this format aren't compatible -with neither format C~5 nor C~4. -% -\EndIndex{PLength}{tfoldmarkvpos}% -\EndIndex{PLength}{bfoldmarkvpos}% - - -\begin{Declaration} - \PLength{foldmarkhpos} -\end{Declaration} -\BeginIndex{PLength}{foldmarkhpos}% -This pseudolength gives the distance between all of the three fold marks -and the sheet's left border. Usually it's 3{,}5\Unit{mm}. In case you work -with a printer with a broader unprintable left margin this value can be -changed in your own \File{lco}-file. The length of the upper and lower -fold mark is the same and 4\Unit{mm} long. The thickness of all three is -2\Unit{pt}. At the moment there are no plans to change this value. If the fold -marks will be set at all depends on the option \Option{foldmarks} (see -\autoref{sec:scrlttr2.headoptions}). -% -\EndIndex{PLength}{foldmarkhpos}% - - -\begin{Declaration} - \Variable{frombank} -\end{Declaration} -\BeginIndex{Variable}{frombank}% -This variable at the moment takes on a special position. Not in use internally -up to this moment it can come into usage if one e.g. wants to have set his -bank account within the sender's extension field or the footer. -% -\EndIndex{Variable}{frombank}% - - -\begin{Declaration} - \Macro{nexthead}\Parameter{construction}\\ - \Macro{nextfoot}\Parameter{construction} -\end{Declaration} -\BeginIndex{Cmd}{nexthead}% -\BeginIndex{Cmd}{nextfoot}% -The possibilities that are offered with variables and options in -\Class{scrlttr2} should be good enough in most of the cases to create -letter-heads and foots for those pages that follow the first letter page. This -even more since you can additionally change the sender's statements with -\Macro{markboth} and \Macro{markright} that \Class{scrlttr2} uses to create -the letter head. With the term ``follow up pages'' in this manual all pages -are meant excepted the first letter page. The commands -\Macro{markboth}\IndexCmd{markboth} and \Macro{markright}\IndexCmd{markright} -can be used all together with pagestyle\Index{page style} -\PValue{myheadings}\IndexPagestyle{myheadings}. If the package -\Package{scrpage2}\IndexPackage{scrpage2} is used this, of course, is valid -also for pagestyle \PValue{scrheadings}\IndexPagestyle{scrheadings}. Then too -the command \Macro{markleft}\IndexCmd{markleft} is available. - -At times one wants to have more freedom with creating letter head or foot of -the follow up pages. Then one has to let go of the possibilities of predefined -letter heads or foots, that could have been chosen via option. Instead one is -free to create it just the way one wants to have them set. Therefore one is to -create the desired \PName{construction} with use of the command -\Macro{nexthead} or \Macro{nextfoot} respectively. Within \Macro{nexthead} und -\Macro{nextfoot} for example you can have several boxes side by side or one -beneath the other by use of \Macro{parbox}-command (see -\cite{latex:usrguide}). With this a more advanced user should have no problems -with creating letter heads of foots of his own. With \PName{construction} of -course you can make use of the variables of \Macro{usekomavar} too. -% -\EndIndex{Cmd}{nexthead}% -\EndIndex{Cmd}{nextfoot}% - - - -\section{The Text} -\label{sec:scrlttr2.text} - -In contrast to an article, a report or a book the letter has -no chapter or section structure. -Even float environments with tables and figure are unusual. -Therefore a letter has no table of contents, lists of -figures and tables, index, bibliography, glossary or other things. -The letter texts mainly consist of an opening and the main -text. Thereupon follows the signature, a postscript -and different listings. - - -\subsection{The Opening} -\label{sec:scrlttr2.opening} - -\begin{Explain} -In the early days of computer generated letters the programs didn't -have many capabilities, therefore the letters seldom had -an opening. -Today the capabilities have been enhanced. Thus personal -openings are very common, even in mass-production -advertising letters. -\end{Explain} - -\begin{Declaration} - \Macro{opening}\Parameter{opening} -\end{Declaration} -\BeginIndex{Cmd}{opening}% -This is the most important command in \Class{scrlttr2}. -For the user it seems that only the opening will be typeset, -but the command also typesets the folding marks, headings, -address field, subject, the page foot and others. -That means: without \Macro{opening} there is no letter. -% -\EndIndex{Cmd}{opening}% - -\subsection{Footnotes} -\label{sec:scrlttr2.footnotes} - -In letters footnotes should be used more sparingly than in normal -documents. However, \Class{scrlttr2} is equipped with all -mechanisms mentioned in \autoref{sec:maincls.footnotes} for -the main document classes. Therefore it will not be discussed -here again. - -\subsection{Lists} -\label{sec:scrlttr2.lists} - -Lists have the same validity in letters as in normal documents. -Thus \Class{scrlttr2} provides the same possibilities -as mentioned in \autoref{sec:maincls.lists} for the -main document classes. - -\subsection{Margin Notes} -\label{sec:scrlttr2.marginNotes} - -Margin notes are quite uncommon in letters. Therefore the -option \Option{mpinclude} is not supported by \Class{scrlttr2}. -However, \Class{scrlttr2} is equipped with all -mechanisms mentioned in \autoref{sec:maincls.marginNotes} for -the main document classes. Therefore it will not be discussed -here again. - -\subsection{Text Emphasis} -\label{sec:scrlttr2.emphasis} - -The distinction of text has the same importance in letters as in -other documents. Thus the same rules apply that means: emphasize -text sparingly. Even letters should be readable and a letter -where each word is typeset in an other font is indeed unreadable. - -The class \Class{scrlttr2} is equipped with all -mechanisms mentioned in \autoref{sec:maincls.emphasis} for -the main document classes. Therefore it will not be discussed -here again. - -\section{The Closing Part} -\label{sec:scrlttr2.backend} - -A letter always ends with a closing phrase. -Even computer generated letters without signature -have this phrase. -Sometimes this is a sentence like ``This letter has been -generated automatically.''. -Sometimes a sentence like this will even be used as signature. -Thereupon can follow a postscript and some listings. - -\subsection{Closing} -\label{sec:scrlttr2.closing} - -The closing consists of three parts. Besides the closing phrase -there are a hand-written inscription and the signature, an explanation -for the inscription. - -\begin{Declaration} - \Variable{signature} -\end{Declaration} -\BeginIndex{Variable}{signature}% -The variable \Variable{signature} includes an explanation -for the inscription. Their content is pre-defined as -\Macro{usekomavar}\PParameter{fromname}. -The explanation can consist of multiple lines. The lines -should be separated by a double backslash. Paragraphs -in the explanation are not permitted. -% -\EndIndex{Variable}{signature}% - -\begin{Declaration} - \Macro{closing}\Parameter{closing phrase} -\end{Declaration} -\BeginIndex{Cmd}{closing}% -The command \Macro{closing} does not only typeset the -closing phrase, but moreover it typesets the phrase followed -by a vertical space and the content of the variable \Variable{signature}. -The closing phrase can consists of multiple lines, but -paragraphs are not permitted. -% -\EndIndex{Cmd}{closing}% - - -\begin{Declaration} - \PLength{sigindent}\\ - \PLength{sigbeforevskip}\\ - \Macro{raggedsignature} -\end{Declaration} -\BeginIndex{PLength}{sigindent}% -\BeginIndex{PLength}{sigbeforevskip}% -\BeginIndex{Cmd}{raggedsignature}% -Closing phrase, inscription and signature will be typeset -in a box. The width of the box is determined by the length -of the longest line of the closing phrase or signature. - -The box will be typeset with indentation of the length -in pseudo-length \PLength{sigindent}. In the default -\File{lco} file this length is set to 0\Unit{mm}. - -The command \Macro{raggedsignature} defines the alignment -inside the box. In the default \File{lco} file the command -is either defined as \Macro{centering} (all besides \Option{KOMAold}) -or \Macro{raggedright} (\Option{KOMAold}). -In order to get flushright or flushleft alignment inside the box -the command can be redefined in the same way as -\Macro{raggedsection} (see \autoref{sec:maincls.structure}). - -Between closing phrase and signature a vertical space is -inserted. The height of this space is defined in the pseudo-length -\PLength{sigbeforevskip}. It defaults to 2 lines. -In this space you can write your inscription. -\begin{Example} - You are writing as directorate of a society a letter - to all members. - Moreover you want in one respect elucidate that you are writing - in the name of the board of directors and on the other hand - you want indicate your position in the board of directors. - \begin{small} -\begin{verbatim} - \setkomavar{signature}{John McEnvy\\ - {\small (Vize-President ``The Other Society'')}} - \closing{Regards\\ - (for the board of directors)} -\end{verbatim} - \end{small} - Certainly you can set the variable \Variable{signature} - in your private \File{lco} file. - Usally you should prefer to define the variable in the - letter preamble. -\end{Example} -% -\EndIndex{PLength}{sigindent}% -\EndIndex{PLength}{sigbeforevskip}% -\EndIndex{Cmd}{raggedsignature}% - -\subsection{Postscript, Carbon Copy and Enclosures} -\label{sec:scrlttr2.afterClosing} - -After the closing can follow some other statements. -Besides the postscript there are the distribution list -of carbon copies and the reference to enclosures. - -\begin{Declaration} - \Macro{ps} -\end{Declaration}% -\BeginIndex{Cmd}{ps}% -\begin{Explain}% -In the time when letters were written by hand it was quite usual -to use a postscript because this was the only way to add -information which one had forget to mention in the main part of -the letter. Of course, in letters written with \LaTeX{} you can -insert additional lines easily. Nevertheless, it is still popular -to use the postscript. It gives a good possibility to underline -again the most important or sometimes the less important things of -this letter. -% -\end{Explain} -This instruction just switches to the postscript. -Therefore a new paragraph begins and a vertical distance --- usually below the signature -- is inserted. -The command \Macro{ps} is followed by normal text. If you -want the postscript to be introduced with the acronym "PS:" you -have to type the acronym inside the command. By the way, this -acronym is been written without a full stop. The acronym is -neither be typeset automatically nor optionally by the class -\Class{scrlttr2}. -% -\EndIndex{Cmd}{ps} - - -\begin{Declaration} - \Macro{cc}\Parameter{distribution list}\\ - \Variable{ccseparator} -\end{Declaration} -\BeginIndex{Cmd}{cc}% -\BeginIndex{Variable}{ccseparator}% -With the command \Macro{cc} it is possible to typeset a -\PName{distribution list}. -The command gets the \PName{distribution list} as argument. -If the content of the variable \Variable{ccseparator} -isn't empty then the name and the content of the variable -is inserted prior to \PName{distribution list}. -In this case the \PName{distribution list} will be indented -appropriately. -It is a good idea to set the \PName{distribution list} -\Macro{raggedright} and to separate the lines by a double backslash. -\begin{Example} -You want to indicate that your letter is adressed to all members of a -society and to the board of directors: - \begin{small} -\begin{verbatim} - \cc{% - the board of directors\\ - all society members\\ -\end{verbatim} - \end{small} - Write this instruction below the \Macro{closing}-instruction - from the previous example or below a possible postscript. -\end{Example} -A vertical space is inserted automatically before the distribution -list. -% -\EndIndex{Cmd}{cc}% -\EndIndex{Variable}{ccseparator}% - - -\begin{Declaration} - \Macro{encl}\Parameter{enclosures}\\ - \Variable{enclseparator} -\end{Declaration} -\BeginIndex{Cmd}{encl}% -\BeginIndex{Variable}{enclseparator}% -\PName{Enclosures} have the same structure as the distribution list. -There is just a single difference, the enclosures starts with -the name and the content of the variable \Variable{enclseparator}. -% -\EndIndex{Cmd}{encl}% -\EndIndex{Variable}{enclseparator}% - - -\section{Language Support} -\label{sec:scrlttr2.languages} - -The document class \Class{scrlttr2} supports many languages. These -are German \PValue{ngerman} (\PValue{german} for old German -orthography), \PValue{austrian} for Austrian, English -(\PValue{english} without specification whether American or British -should be used, \PValue{american} and \PValue{USenglish} for American, -\PValue{british} and \PValue{UKenglish} for British), French, Italian, -Spanish, Dutch and Croatian. - -\subsection{Language Selection} -\label{sec:scrlttr2.switchLanguage} -\Index[indexmain]{language selection} - -If the package \Package{babel}\IndexPackage{babel} is used one can -switch between languages with the command -\Macro{selectlanguage}\Parameter{language}. Other packages like -\Package{german}\IndexPackage{german} and -\Package{ngerman}\IndexPackage{ngerman} also define this command. As -a rule the language selection takes place when such a package is -loaded. - -There is one thing more to mention about language packages. The -package \Package{french}\IndexPackage{french} re-defines not only the -terms of \autoref{sec:scrlttr2.languageTerms}. The package even -re-defines the command \Macro{opening}, since it assumes that the -definition of the standard \Class{letter} is used. Therefore the -package \Package{french} spoils the definition of the \Class{scrlttr2} -class. I think this is a fault of the \Package{french} package. - -If one utilizes the \Package{babel}\IndexPackage{babel} package in -order to switch to language \PValue{french} and the package -\Package{french}\IndexPackage{french} is installed too, then the same -problems occur since \Package{babel} employs definitions from the -\Package{french} package. If the package \Package{french} is not -installed then there are no problems. - -Additionally there is no problem if for \Package{babel} instead of -\PValue{french} other languages like \PValue{acadian}, -\PValue{canadien}, \PValue{francais} or \PValue{frenchb} are chosen. -Therefore I recommend -\Macro{usepackage}\PValue{[frenchb]}\PParameter{babel} in order to -select french. - -Other languages can cause these problems too. Currently there are no -problems known with the \Package{babel} package for the german -language and the various english language selections. - -\iftrue -% You may use this paragraphs to improve page break: -Most \Package{babel} features at \Package{babel} or original -language definition files of \Package{babel} (e.g. \File{frenchb.ldf}), -which may cause problems with other packages or classes, can be -switched off. This is a great advantage of babel. So if you have a -problem, try to switch of such features or ask the authors of -\Package{babel}. - -There are no problems known using the -\Package{german}\IndexPackage{german} or -\Package{ngerman}\IndexPackage{ngerman} package for german selection -with old or new orthography. -\fi - -\begin{Declaration} - \Macro{captionsenglish}\\ - \Macro{captionsUSenglish}\\ - \Macro{captionsamerican}\\ - \Macro{captionsbritish}\\ - \Macro{captionsUKenglish}\\ - \Macro{captionsgerman}\\ - \Macro{captionsngerman}\\ - \Macro{captionsaustrian}\\ - \Macro{captionsfrench}\\ - \Macro{captionsitalian}\\ - \Macro{captionsspanish}\\ - \Macro{captionsdutch}\\ - \Macro{captionscroatian} -\end{Declaration} -\BeginIndex{Cmd}{captionsenglish}\BeginIndex{Cmd}{captionsUSenglish} -\BeginIndex{Cmd}{captionsamerican}\BeginIndex{Cmd}{captionsbritish} -\BeginIndex{Cmd}{captionsUKenglish}\BeginIndex{Cmd}{captionsgerman} -\BeginIndex{Cmd}{captionsngerman} -\BeginIndex{Cmd}{captionsaustrian}\BeginIndex{Cmd}{captionsfrench} -\BeginIndex{Cmd}{captionsitalian}\BeginIndex{Cmd}{captionsspanish} -\BeginIndex{Cmd}{captionsdutch}\BeginIndex{Cmd}{captionscroatian} If -one switches the language then using these commands the language-terms -from \autoref{sec:scrlttr2.languageTerms} are re-defined. -If the used language selection scheme does not support this -then the commands above can be used directly. -% -\EndIndex{Cmd}{captionsenglish}\EndIndex{Cmd}{captionsUSenglish} -\EndIndex{Cmd}{captionsamerican}\EndIndex{Cmd}{captionsbritish} -\EndIndex{Cmd}{captionsUKenglish}\EndIndex{Cmd}{captionsgerman} -\EndIndex{Cmd}{captionsngerman} -\EndIndex{Cmd}{captionsaustrian}\EndIndex{Cmd}{captionsfrench} -\EndIndex{Cmd}{captionsitalian}\EndIndex{Cmd}{captionsspanish} -\EndIndex{Cmd}{captionsdutch}\EndIndex{Cmd}{captionscroatian} - - -\begin{Declaration} - \Macro{dateenglish}\\ - \Macro{dateUSenglish}\\ - \Macro{dateamerican}\\ - \Macro{datebritish}\\ - \Macro{dateUKenglish}\\ - \Macro{dategerman}\\ - \Macro{datengerman}\\ - \Macro{dateaustrian}\\ - \Macro{datefrench}\\ - \Macro{dateitalian}\\ - \Macro{datespanish}\\ - \Macro{datedutch}\\ - \Macro{datecroatian} -\end{Declaration} -\BeginIndex{Cmd}{dateenglish}\BeginIndex{Cmd}{dateUSenglish} -\BeginIndex{Cmd}{dateamerican}\BeginIndex{Cmd}{datebritish} -\BeginIndex{Cmd}{dateUKenglish}\BeginIndex{Cmd}{dategerman} -\BeginIndex{Cmd}{datengerman} -\BeginIndex{Cmd}{dateaustrian}\BeginIndex{Cmd}{datefrench} -\BeginIndex{Cmd}{dateitalian}\BeginIndex{Cmd}{datespanish} -\BeginIndex{Cmd}{datedutch}\BeginIndex{Cmd}{datecroatian}% -The date\Index{Date} in its numerical representation -(see option \Option{numericaldate} in -\autoref{sec:scrlttr2.headoptions}) will be written depending -on the selected language. Some examples can be found in -\autoref{tab:date}. -% -\EndIndex{Cmd}{dateenglish}\EndIndex{Cmd}{dateUSenglish} -\EndIndex{Cmd}{dateamerican}\EndIndex{Cmd}{datebritish} -\EndIndex{Cmd}{dateUKenglish}\EndIndex{Cmd}{dategerman} -\EndIndex{Cmd}{datengerman} -\EndIndex{Cmd}{dateaustrian}\EndIndex{Cmd}{datefrench} -\EndIndex{Cmd}{dateitalian}\EndIndex{Cmd}{datespanish} -\EndIndex{Cmd}{datedutch}\EndIndex{Cmd}{datecroatian}% - -\begin{table}[t] -\centering -\begin{tabular}{ll} - Command & Date example \\\hline\\[-1.6ex] - \Macro{dateenglish} & 1/12/1993\\ - \Macro{dateUSenglish} & 12/1/1993\\ - \Macro{dateamerican} & 12/1/1993\\ - \Macro{datebritish} & 1/12/1993\\ - \Macro{dateUKenglish} & 1/12/1993\\ - \Macro{dategerman} & 1.\,12.\,1993\\ - \Macro{datengerman} & 1.\,12.\,1993\\ - \Macro{dateaustrian} & 1.\,12.\,1993\\ - \Macro{datefrench} & 1.\,12.\,1993\\ - \Macro{dateitalian} & 1.\,12.\,1993\\ - \Macro{datespanish} & 1.\,12.\,1993\\ - \Macro{datedutch} & 1.\,12.\,1993\\ - \Macro{datecroatian} & 1.\,12.\,1993.\\ -\end{tabular} -\caption{Language-dependent forms of the date} -\label{tab:date} -\end{table} -% - - -\subsection{Language-Dependent Terms}% -\label{sec:scrlttr2.languageTerms}% -\Index[indexmain]{language-dependent terms}% -\Index[indexmain]{terms, language-dependent} - -As usual in \LaTeX{}, the language-dependent terms are defined -by commands. These commands are re-defined when one switches -the language. - -\begin{Declaration} - \Macro{yourrefname}\\ - \Macro{yourmailname}\\ - \Macro{myrefname}\\ - \Macro{customername}\\ - \Macro{invoicename}\\ - \Macro{subjectname}\\ - \Macro{ccname}\\ - \Macro{enclname}\\ - \Macro{headtoname}\\ - \Macro{headfromname}\\ - \Macro{datename}\\ - \Macro{pagename}\\ - \Macro{phonename}\\ - \Macro{faxname}\\ - \Macro{emailname}\\ - \Macro{wwwname}\\ - \Macro{bankname} -\end{Declaration} -\BeginIndex{Cmd}{yourrefname}\BeginIndex{Cmd}{yourmailname} -\BeginIndex{Cmd}{myrefname} -\BeginIndex{Cmd}{customername}\BeginIndex{Cmd}{invoicename} -\BeginIndex{Cmd}{subjectname} -\BeginIndex{Cmd}{ccname}\BeginIndex{Cmd}{enclname} -\BeginIndex{Cmd}{headtoname}\BeginIndex{Cmd}{headfromname} -\BeginIndex{Cmd}{datename}\BeginIndex{Cmd}{pagename} -\BeginIndex{Cmd}{phonename}\BeginIndex{Cmd}{faxname} -\BeginIndex{Cmd}{emailname}\BeginIndex{Cmd}{wwwname} -\BeginIndex{Cmd}{bankname} The commands above contain the -language-dependent terms. These definitions can be modified in -order to support a new language or for private cutomization. -How this can be done is described in -\autoref{sec:scrlttr2.defLanguageTerms}. -The definitions become active at \Macro{begin}\PParameter{document}. -Therefore they are not available in the \LaTeX{} preamble. -Thus they even can not be re-defined there. -In \autoref{tab:scrlttr2.languageTerms} the default settings -for \Option{english} and \Option{ngerman} can be found. -% -\EndIndex{Cmd}{yourrefname}\EndIndex{Cmd}{yourmailname} -\EndIndex{Cmd}{myrefname} -\EndIndex{Cmd}{customername}\EndIndex{Cmd}{invoicename} -\EndIndex{Cmd}{subjectname} -\EndIndex{Cmd}{ccname}\EndIndex{Cmd}{enclname} -\EndIndex{Cmd}{headtoname}\EndIndex{Cmd}{headfromname} -\EndIndex{Cmd}{datename}\EndIndex{Cmd}{pagename} -\EndIndex{Cmd}{phonename}\EndIndex{Cmd}{faxname} -\EndIndex{Cmd}{emailname}\EndIndex{Cmd}{wwwname} -\EndIndex{Cmd}{bankname} - -\begin{table}[!t] -\centering -\begin{tabular}{lll} -Command & \Option{english} & \Option{ngerman} \\\hline\\[-2ex] -\Macro{bankname} & Bank account & Bankverbindung \\ -\Macro{ccname} & cc & Kopien an \\ -\Macro{customername} & Customer no. & Kundennummer \\ -\Macro{datename} & Date & Datum \\ -\Macro{emailname} & Email & E-Mail \\ -\Macro{enclname} & encl & Anlagen \\ -\Macro{faxname} & Fax & Fax \\ -\Macro{headfromname} & From & Von \\ -\Macro{headtoname} & To & An \\ -\Macro{invoicename} & Invoice no. & Rechnungsnummer \\ -\Macro{myrefname} & Our ref. & Unser Zeichen \\ -\Macro{pagename} & Page & Seite \\ -\Macro{phonename} & Phone & Telefon \\ -\Macro{subjectname} & Subject & Betrifft \\ -\Macro{wwwname} & Url & URL \\ -\Macro{yourmailname} & Your letter of & Ihr Schreiben vom\\ -\Macro{yourrefname} & Your ref. & Ihr Zeichen \\ -\end{tabular} -\caption{Default settings for languages \Option{english} - and \Option{ngerman}} -\label{tab:scrlttr2.languageTerms} -\end{table} -% - -\subsection{Defining Language Terms} -\label{sec:scrlttr2.defLanguageTerms} -\Index[indexmain]{language definition} -\begin{Explain} - Normally one has to change or define the language terms of - \autoref{sec:scrlttr2.switchLanguage} in a way that additionally - to the available terms even the new or re-defined terms are - defined. Some packages like \Package{german}\IndexPackage{german} or - \Package{ngerman}\IndexPackage{ngerman} re-define those settings - when they are loaded. These packages re-define the definitions in a - way that spoils all previous private settings. That is also the - reason, why \Class{scrlttr2} delays its own changes with - \Macro{AtBeginDocument} until - \Macro{begin}\PParameter{document}. The user can also use - \Macro{AtBeginDocument} or re-define the language terms after - \Macro{begin}\PParameter{document}. The class \Class{scrlttr2} - provides some commands for defining language terms. -\end{Explain} - -\begin{Declaration} - \Macro{providecaptionname}% - \Parameter{language}\Parameter{term}\Parameter{definition}\\ - \Macro{newcaptionname}% - \Parameter{language}\Parameter{term}\Parameter{definition}\\ - \Macro{renewcaptionname}% - \Parameter{language}\Parameter{term}\Parameter{definition} -\end{Declaration} -\BeginIndex{Cmd}{providecaptionname}% -\BeginIndex{Cmd}{newcaptionname}% -\BeginIndex{Cmd}{renewcaptionname}% -Using one of the commands above the user can assign -a \PName{definition} for a \PName{language} to a \PName{term} . -The \PName{term} is always a command. The commands differ -dependent from whether a \PName{term} is already define -in \PName{language} or not. - -If \PName{language} is not defined then \Macro{providecaptionname} -writes only a message in the log-file. This happens only -once for each language. -If \PName{language} is defined but \PName{term} isn't defined -yet, then it will be defined using \PName{definition}. -The \PName{term} will not be re-defined if the \PName{language} -already has a definition. Instaed a log-message will be written. - -The command \Macro{newcaptionname} has a slightly different behaviour. -If the \PName{language} is not yet defined then a new language -command (see \autoref{sec:scrlttr2.switchLanguage}) -will be created and a log-message will be written. -If \PName{term} is not yet defined in \PName{language} then -it will be defined with \PName{definition}. -If \PName{term} already exists in \PName{language} then this -results in an error message. - -The command \Macro{renewcaptionname} requires an existing -definition of \PName{term} in \PName{language}. -In this case \PName{term} for \PName{language} will be re-defined -according to \PName{definition}. If neither \PName{language} -nor \PName{term} exist or \PName{term} is unknown in a defined -language then a error message will be given. - -The class \Class{scrlttr2} itself employs \Macro{providecaptionname} -in order to define the commands in -\autoref{sec:scrlttr2.languageTerms}. -\begin{Example} - If you prefer ``Your message of'' instead of ``Your letter of'' - you have to re-define the definition of \Macro{yourmailname}. - \begin{small} -\begin{verbatim} - \renewcaptionname{english}{\yourmailname}{% - Your message of} -\end{verbatim} - \end{small} - - Since only available terms can be re-defined you have to - delay the command until \Macro{begin}\PParameter{document} - using \Macro{AtBeginDocument}. - Furthermore you will get an error message if there is no - package used that defines a language selection command - for \PName{english}. -\end{Example} -% -\EndIndex{Cmd}{providecaptionname}% -\EndIndex{Cmd}{newcaptionname}% -\EndIndex{Cmd}{renewcaptionname}% - -\section{Address Files and Circular Letters} -\label{sec:scrlttr2.addressFile} - -When people write circular letters they mostly dislike to -type the many addresses. -The class \Class{scrlttr2} and its predecessor \Class{scrlettr} -as well provide basic support for it. -Currently there are plans for a much enhanced support. - -\typeout{^^J--- Ignore underfull and overfull \string\hbox:}% -\begin{Declaration} - \Macro{adrentry}\Parameter{Lastname}\Parameter{Firstname}% - \Parameter{Address}\Parameter{Telephone}\Parameter{F1}\Parameter{F2}% - \Parameter{Comment}\Parameter{Key} -\end{Declaration}% -\typeout{^^J--- Don't ignore underfull and overfull \string\hbox:} -\BeginIndex{Cmd}{adrentry} -\label{decl:adrentry} - -The class \Class{scrlttr2} supports to use address files. -These address files contain address entries. -Each entry is an \Macro{adrentry} command with eight parameters as -can be seen above. -The file extension of the address file has to be \File{.adr}. -\begin{small} -\begin{verbatim} - \adrentry{McEnvy} - {Flann} - {Main Street 1\\ Glasgow} - {123 4567} - {male} - {} - {niggard} - {FLANN} -\end{verbatim} -\end{small} -The \Ord{5} and \Ord{6} element, \PValue{F1} and \PValue{F2}, can be -used freely, for example for the gender, the academic grade, the -birthday or the date the person has joined a society. The last -parameter \PName{Key} should only consist of uppercase letters in -order to not interfere with other \TeX{} or \LaTeX{} commands. - -\begin{Example} - Mr.\,McEnvy is one of your most important business partners, - but every day you get a reclamation from him. - Before long you don't want to bother typing his boring - address again and again. - Here \Class{scrlttr2} can help. - All your business partners have an entry in your - \File{partners.adr} address file. - If you now have to answer Mr.\,McEnvy again, then you - can save typing as can be seen below: - \begin{small} -\begin{verbatim} - \input{partners.adr} - \begin{letter}{\FLANN} - Your today's reclamation ... - \end{letter} -\end{verbatim}\end{small} - Your \TeX{} system must be configured to have access to your - address file. Without access the \Macro{input} command results - in an error. You can either put your address file where you - are running \LaTeX{} or configure your system to find - the file in a special directory. -\end{Example} -% -\EndIndex{Cmd}{adrentry} - -\typeout{^^J--- Ignore underfull and overfull \string\hbox:}% -\begin{Declaration} - \Macro{addrentry}\Parameter{Lastname}\Parameter{Firstname}% - \Parameter{Address}\Parameter{Telephone}\Parameter{F1}\Parameter{F2}% - \Parameter{F3}\Parameter{F4}\Parameter{Key} -\end{Declaration}% -\typeout{^^J--- Dont't ignore underfull and overfull \string\hbox:} -\BeginIndex{Cmd}{addrentry}% -Over the years people objected that the \Macro{adrentry} has only -two free parameters. Since \TeX{} supports at maximum nine -parameters per command, there now exists a new command called -\Macro{addrentry}, note the additional ``d''. -This command supports four freely definable parameters, that -means one parameter more than \Macro{adrentry}, since the comment -parameter has been replaced with the fourth free parameter. -The numbers of parameters is the only difference between -both commands. Thus you can mix both entry types in -one address file. - -There are some packages which can employ \File{adr} files. -For example \Package{adrconv} by Axel Kielhorn can be used -to create address lists from \File{adr} files. -But it has currently no support for command \Macro{addrentry}. -The only choice is to extent the package yourself. -% -\EndIndex{Cmd}{addrentry} - -Besides the simple acccess to addresses the address files can -be easily used in order to write circular letters. -Thus there is no complicated data-base system and its connection -to \TeX{} required. -% -\begin{Example} - Suppose you are member of a society and want write a invitation - for the next general meeting to all members. - \begin{small} -\begin{verbatim} - \documentclass{scrlttr2} - \begin{document} - \renewcommand*{\adrentry}[8]{ - \begin{letter}{#2 #1\\#3} - \opening{Dear members,} - our next general meeting will be on monday - August 12, 2002. The following topics are ... - \closing{Regards,} - \end{letter} - } - \input{members.adr} - \end{document} -\end{verbatim} - \end{small} - If the address file contains \Macro{addrentry} statements - too, then even an additional definition for \Macro{addrentry} - is required. - \begin{small} -\begin{verbatim} - \renewcommand*{\addrentry}[9]{ - \begin{letter}{#2 #1\\#3} - \opening{Dear members,} - our next general meeting will be on monday - August 12, 2002. The topics of the meeting are ... - \closing{Regards,} - \end{letter} - } -\end{verbatim} - \end{small} - In this simple example the extra freely definable parameter - is not used. -\end{Example} - -With some additional programming one can let the contents -depend on the address data. For this the free parameters -can be used. - -\begin{Example} - Suppose the fifth parameter of the \Macro{adrentry} command - contains the gender of a member (\PValue{m/f}). - The sixth parameter contains what member subscribtion - has still not been discharged by the member. - If you would like to write a more personal reminder - then the next example can help you. - \begin{small} -\begin{verbatim} - \renewcommand*{\adrentry}[8]{ - \ifcase #6 - % #6 greater than 0? - % this selects all members with open subscription - \else - \begin{letter}{#2 #1\\#3} - \if #5m \opening{Dear Mr.\,#2,} \fi - \if #5f \opening{Dear Mrs.\,#2,} \fi - - Unfortunately we have to remind you that you have - still not paid the member subscription for this - year. - - Please remit EUR #6 to the account of the society. - \closing{Regards,} - \end{letter} - \fi - } -\end{verbatim} - \end{small} -\end{Example} -As you can see the letter text can be made more personal -depending on attributes of the letter's addressee. -The number of attributes is only restricted by number of the -two free parameters of the \Macro{adrentry} command or -four free parameters of the \Macro{addrentry} command. - -\begin{Declaration} - \Macro{adrchar}\Parameter{initial letter}\\ - \Macro{addrchar}\Parameter{initial letter} -\end{Declaration} -\BeginIndex{Cmd}{adrchar}\BeginIndex{Cmd}{addrchar} -\Index[indexmain]{address list}\Index[indexmain]{telephone list}% -As already mentioned above it is possible to create address -and telephone lists using \File{adr} files. -For that the additional package \Package{adrconv}-Paket by -Axel Kielhorn (see \cite{package:adrconv}) is needed. -This package contains interactive \LaTeX{} documents -which help to create those lists. - -The address files have to be sorted already in order to -get sorted lists. It is recommended to sort and separate the -entries by the initial letter of \PName{Lastname}. -As a seperator the commands \Macro{adrchar} and \Macro{addrchar} -can be used. These commands will be ignored if the address files -are utilized in \Class{scrlettr2}. -% -\begin{Example} - Suppose the following address file: - \begin{small} -\begin{verbatim} - \adrchar{A} - \adrentry{Angel}{Gabriel} - {Cloud 3\\12345 Heaven's Realm} - {000\,01\,02\,03}{}{}{archangel}{GABRIEL} - \adrentry{Angel}{Michael} - {Cloud 3a\\12345 Heaven's Realm} - {000\,01\,02\,04}{}{}{archangel}{MICHAEL} - \adrchar{K} - \adrentry{Kohm}{Markus} - {Fichtenstra\ss e 63\\68535 Edingen-Neckarhausen} - {+49~62\,03~1\,??\,??}{}{}{no angel at all} - {KOMA} -\end{verbatim} - \end{small} - This address file can be treated with \File{adrdir.tex} of the - \Package{adrconv} package \cite{package:adrconv}. - The result should look like this: - \begin{center} - \setlength{\unitlength}{1mm} - \begin{picture}(80,57) - \put(0,57){\line(1,0){80}} - \put(0,3){\line(0,1){54}} - \put(80,3){\line(0,1){54}} - \thicklines - \put(10,42){\line(1,0){60}} - \put(70,45){\makebox(0,0)[r]{\textsf{\textbf{A}}}} - \put(10,23){\makebox(0,20)[l]{\parbox{5cm}{\raggedright - \textsc{Angel}, Gabriel\\\quad\small Cloud 3\\ - \quad 12345 Heaven's Realm\\ - \quad (archangel)}}} - \put(70,23){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\ - \small~\\\textsc{gabriel}\\000\,01\,02\,03}}} - \put(10,4){\makebox(0,20)[l]{\parbox{5cm}{\raggedright - \textsc{Angel}, Michael\\\quad\small Cloud 3a\\ - \quad 12345 Heaven'S Realm\\ - \quad (archangel)}}} - \put(70,4){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\ - \small~\\\textsc{michael}\\000\,01\,02\,04}}} - \qbezier(0,3)(10,6)(40,3)\qbezier(40,3)(60,0)(80,3) - \end{picture} - \end{center} - The letter in the page heading is created by the - \Macro{adrchar} command, see the definition in \File{adrdir.tex}. -\end{Example} -More about the \Package{adrconv} package can be found in its -documentation. There you should even find informations if -the version of \Package{adrconv} supports already the -\Macro{addrentry} and \Macro{addrchar} commands. -Former versions only know the commands \Macro{adrentry} and -\Macro{adrchar}. -% -\EndIndex{Cmd}{adrchar}\EndIndex{Cmd}{addrchar}% - - -\section{From \Class{scrlettr} to \Class{scrlttr2}} -\label{sec:scrlttr2.fromscrlettr} - -The first step in the conversion of an old letter written with -the \Class{scrlettr} class is to load the appropriate -\File{lco} file using option \Option{KOMAold} at -\Macro{documentclass}. -Thereupon most commands of the old class should work. -But you will encounter some differences in the output, since -the page layout of both classes is not the same. -The reason is that the calculation of the type-area in \Class{scrlettr} -has some minor bugs. For example the position of the folding marks -used to depend on the height of the page heading, which again has -dependence to the font size. That was an unambiguous design fault. - -There is no compatibility regarding the defined lengths -in \Class{scrlettr}. -If one has changed the page layout of \Class{scrlettr} -then those statements have to be deleted or commented out. -In some cases the modification of length can cause -an error, since this length is not defined anymore. -You should delete or comment these modifications as well. - -The old letter example: -\begin{small} -\begin{verbatim} - \documentclass[10pt,KOMAold]{scrlttr2} - \name{\KOMAScript{} team} - \address{Class Alley 1\\12345 \LaTeX{} City} - \signature{Your \KOMAScript{} team} - \begin{document} - \begin{letter}{\KOMAScript{} users\\ - Everywhere\\world-wide} - \opening{Dear \KOMAScript{} users,} - the \KOMAScript{} team is proud to annouce... - \closing{Happy \TeX{}ing} - \end{letter} - \end{document} -\end{verbatim} -\end{small} -works as expected only by option \Option{KOMAold}. - - -The next step is that the layout of the old letter will -not be used anymore, but the old commands should still -be available. -If for example one wants the layout of \Option{DIN} -then this option can be given in \Macro{documentclass}, -but is has to be specified \emph{after} the option -\Option{KOMAold}. - -\begin{small} -\begin{verbatim} - \documentclass[10pt,KOMAold,DIN]{scrlttr2} - \name{\KOMAScript{} team} - \address{Class Alley 1\\12345 \LaTeX{} City} - \signature{Your \KOMAScript{} team} - \begin{document} - \begin{letter}{\KOMAScript{} users\\ - Everywhere\\world-wide} - \opening{Dear \KOMAScript{} users,} - the \KOMAScript{} team is proud to annouce... - \closing{Happy \TeX{}ing} - \end{letter} - \end{document} -\end{verbatim} -\end{small} -Using more options this way you have further influence on the -layout, but a more inherent change is really recommended. - -That is to replace all old commands with its new representations -and omit the option \Option{KOMAold}. -It can help to read the contents of \File{KOMAold.lco}. -In that file the old commands are defined using the new ones. - -\begin{small} -\begin{verbatim} - \documentclass{scrlttr2} - \setkomavar{fromname}{\KOMAScript{} team} - \setkomavar{fromaddress}{Class Alley 1\\ - 12345 \LaTeX{} City} - \setkomavar{signature}{Your \KOMAScript{} team} - \let\raggedsignature=\raggedright - \begin{document} - \begin{letter}{\KOMAScript{} users\\ - Everywhere\\ - world-wide} - \opening{Dear \KOMAScript{} users,} - the \KOMAScript{} team is proud to annouce... - \closing{Happy \TeX{}ing} - \end{letter} - \end{document} -\end{verbatim} -\end{small} -This example shows also the possibility to change the -alignment of the signature by re-defining the command -\Macro{raggedsignature}. -This is recommended if the width of the real signature -is greater than the signature-definition of the command -\Macro{setkomavar}\PParameter{signature}\PParameter{\dots}. - -\section{Authors} -\label{sec:scrlttr2.authors} -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\item \textit{Harald H.-J.\,Bongartz} -\item \textit{Georg Grandke} -\item \textit{Raimund Kohl} -\item \textit{Jens-Uwe Morawski} -\end{itemize} -% -\EndIndex{Class}{scrlttr2}\EndIndex{}{Letters} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/loadfile.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/loadfile.tex deleted file mode 100644 index c8b3a6eb6a7..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/loadfile.tex +++ /dev/null @@ -1,334 +0,0 @@ -\ProvidesFile{loadfile.tex}[2004/09/13 KOMA-Script Manual english] -% ============================================================================ -% loadfile.tex -% Copyright (c) 2001-2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% loadfile.tex -% Copyright (c) 2001-2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: scrlfile -% Authors: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Contents: excecuting commands depending on one file is loaded -% Language: English -% Date of translated german file: -% 2002/08/30 -% Charset of comments: -% US-ASCII -% - -\chapter{Control Package Dependencies with \Package{scrlfile}} -\label{cha:scrlfile} - -\BeginIndex{Package}{scrlfile} - -\section{About Package Dependencies} -\label{sec:scrlfile.dependency} -\begin{Explain} - The introduction of \LaTeXe{} in 1994 brought many changes - in the handling with \LaTeX-extensions. - Today the package author has many macros in order to determine - if another package or class is employed and whether specific - options are used. - The author can load other packages or can specify options in the - the case the package is loaded later. - This has led to the expectation that the order of package-loading - will be not important. - But this hope has not been fulfilled, since often different packages - define or redefine one macro again and again. - In such a case the order of package-loading becomes very - important. - For the user this is sometimes difficult to understand the - behaviour and in some cases the user wants only react - on the loading of a package. This is also not really simple. - - - Assuming the simple example that loads the package \Package{longtable} - with a \KOMAScript{} document-class employed. - The \Package{longtable} package defines table captions - suitable for the standard classes, but the captions - are totally unsuitable for documents using \KOMAScript{} and thus - the provided configuration commands have no influence. - In order to solve this problem the commands which are responsible - for the table captions of the \Package{longtable} package - have to be re-defined. But at the moment when the \Package{longtable} - is loaded the \KOMAScript{} class is already processed. - - - The only chance for \KOMAScript{} was to delay the re-definition - until the begin of the document with help of the - macro \Macro{AtBeginDocument}. - If the user wants to change the definitions too, it is - recommended to do this in the preamble of the document. - But this is impossible since later at \Macro{begin}\PParameter{document} - \KOMAScript will again overwrite the user-definition with its own. - Therefore the user has to delay his definition with - \Macro{AtBeginDocument} as well. - - However, \KOMAScript{} shouldn't delay the re-definition - until \Macro{begin}\PParameter{document}. - It would be enough to delay until the package \Package{longtable} - has been loaded. But unfortunately the basic \LaTeX{} does not - define appropriate commands. The package \Package{scrlfile} - provides redress here. - - Likewise, it might be conceivable that before a package - is loaded one would like to save the definition of a macro - in a help-macro, in order to restore its meaning after - the package has been loaded. The package \Package{scrlfile} - allows this too. - - The employment of \Package{scrlfile} is not limited to - package dependencies only. - Even dependencies with any other file can be attended. - For example the user can be warned if the not uncritical file - \File{french.ldf} has been loaded. - - Though the package is particularly interesting for - package authors, there are of course applications for - normal \LaTeX{} users too. - Therefore this chapter gives and explains examples - for both groups of users. -\end{Explain} - - -\section{Actions Prior and After Loading} -\label{sec:scrlfile.macros} - -\begin{Declaration} - \Macro{BeforeFile}\Parameter{file}\Parameter{instructions}\\ - \Macro{AfterFile}\Parameter{file}\Parameter{instructions} -\end{Declaration}% -\BeginIndex{Cmd}{BeforeFile}% -\BeginIndex{Cmd}{AfterFile}% -The macro \Macro{BeforeFile} enables to execute \PName{instructions} -the next time the \PName{file} is loaded. -In the same way works \Macro{AfterFile}, but here the -\PName{instructions} will be executed after the \PName{file} -has been loaded. -If \PName{file} will never be loaded then the \PName{instructions} -will never be executed. - -\begin{Explain} - In order to implement those features \Package{scrlfile} - re-defines the well known \LaTeX{} command - \Macro{InputIfFileExists}. - If this macro has not the expected definition \Package{scrlfile} - gives a warning. - This is for the case that in future \LaTeX{} versions - the macro can have a different definition or an other package - has already re-defined it. - - The command \Macro{InputIfFileExists} is used - everytime \LaTeX{} has to load a file. - This is independent from whether the actual command was \Macro{LoadClass}, - \Macro{documentclass}, \Macro{usepackage}, \Macro{RequiresPackage}, - or \Macro{include}. Exclusively the command -\begin{verbatim} - \input foo -\end{verbatim} - loads the file \texttt{foo} without to utilize - \Macro{InputIfFileExists}. Therefore one should always use -\begin{verbatim} - \input{foo} -\end{verbatim} - instead. Notice the parentheses surrounding the file name! -\end{Explain} -% -\EndIndex{Cmd}{BeforeFile}% -\EndIndex{Cmd}{AfterFile}% - -\begin{Declaration} - \Macro{BeforeClass}\Parameter{class}\Parameter{instructions}\\ - \Macro{BeforePackage}\Parameter{package}\Parameter{instructions} -\end{Declaration}% -\BeginIndex{Cmd}{BeforeClass}% -\BeginIndex{Cmd}{BeforePackage}% -These both commands work the same way as \Macro{BeforeFile}. -The only difference is that the document class \PName{class} -and the \LaTeX{} package \PName{package} are specified -with their names and not with their file names. -That means the file extensions \File{.cls} and \File{.sty} -can be omitted. -% -\EndIndex{Cmd}{BeforeClass}% -\EndIndex{Cmd}{BeforePackage}% - -\begin{Declaration} - \Macro{AfterClass}\Parameter{class}\Parameter{instructions}\\ - \Macro{AfterClass*}\Parameter{class}\Parameter{instructions}\\ - \Macro{AfterPackage}\Parameter{package}\Parameter{instructions}\\ - \Macro{AfterPackage*}\Parameter{package}\Parameter{instructions} -\end{Declaration}% -\BeginIndex{Cmd}{AfterClass}% -\BeginIndex{Cmd}{AfterClass*}% -\BeginIndex{Cmd}{AfterPackage}% -\BeginIndex{Cmd}{AfterPackage*}% -The commands \Macro{AfterClass} und \Macro{AfterPackage} -work the same way as \Macro{AfterFile}. -The only difference is that the document class \PName{class} -and the \LaTeX{} package \PName{package} are specified -with their names and not with their file names. -That means the file extensions \File{.cls} and \File{.sty} -can be omitted. -The starred versions execute the \PName{instructions} not -only next time the class or package is loaded, but also -immediately if the class or package has been loaded already. -% -\EndIndex{Cmd}{AfterClass}% -\EndIndex{Cmd}{AfterClass*}% -\EndIndex{Cmd}{AfterPackage}% -\EndIndex{Cmd}{AfterPackage*}% - -\begin{Example} - In the following an example for class and package authors - shall be given. - It shows how \KOMAScript{} itself employs the new commands. - The class \Class{scrbook} contains: - \begin{small} -\begin{verbatim} -\AfterPackage{hyperref}{% - \@ifpackagelater{hyperref}{2001/02/19}{}{% - \ClassWarningNoLine{scrbook}{% - You are using an old version of hyperref package!% - \MessageBreak% - This version has a buggy hack at many drivers% - \MessageBreak% - causing \string\addchap\space to behave strange.% - \MessageBreak% - Please update hyperref to at least version - 6.71b}}} -\end{verbatim} - \end{small} - Old versions of the \Package{hyperref} package re-define - a macro of the \Class{scrbook} class in a way that does not - work with newer \KOMAScript{} versions. - New versions of \Package{hyperref} neglect these changes - if a new \KOMAScript{} version is detected. - For the case that \Package{hyperref} is loaded the code - in \Class{scrbook} verifies that a appropriate - \Package{hyperref} version is used. If not the command gives - a warning. - - At other places in three \KOMAScript{} classes following can be found: - \begin{small} -\begin{verbatim} - \AfterPackage{caption2}{% - \renewcommand*{\setcapindent}{% -\end{verbatim} - \end{small} - Next the package \Package{caption2} has been loaded, and only - if the package has been loaded really, \KOMAScript{} re-defines - its own command \Macro{setcapindent}. - The exact code of the definition is not important. - It should only be noted that \Package{caption2} claims the - control over the \Macro{caption} macro. - Thus the normal definition of the \Macro{setcapindent} macro - would not work as expected. - The re-definition improves the collaboration with \Package{caption2}. - - There are of course useful examples for normal \LaTeX{} user too. - Suppose a document that should be availbale as PS file, using - LaTeX{} and dvips, and as PDF file, using pdf\LaTeX. - The document should contain hyper-links. - In the List of Tables there are entries longer than one line. - This is not a problem for the pdf\LaTeX{} way, since here - hyper-links can run across multiple lines. - But if a \Package{hyperref} driver for dvips or - hyper\TeX{} is used then this is not possible. - In this case one wants that for the \Package{hyperref} setup - the \Option{linktocpage} is used. - - The decision what \Package{hyperref} driver has to be used - happens automatically via \File{hyperref.cfg}. - The file has for example the content below. - \begin{small} -\begin{verbatim} - \ProvidesFile{hyperref.cfg} - \@ifundefined{pdfoutput}{\ExecuteOptions{dvips}} - {\ExecuteOptions{pdftex}} - \endinput -\end{verbatim} - \end{small} - - All following is now the task of \Macro{AfterFile}. - \begin{small} -\begin{verbatim} - \documentclass{article} - \usepackage{scrlfile} - \AfterFile{hdvips.def}{\hypersetup{linktocpage}} - \AfterFile{hypertex.def}{\hypersetup{linktocpage}} - \usepackage{hyperref} - \begin{document} - \listoffigures - \clearpage - \begin{figure} - \caption{This is an example for a long figure caption, - but even though it does not employ the optional - caption argument that would allow to write - a short caption in the List of Figures.} - \end{figure} - \end{document} -\end{verbatim} - \end{small} - If now \Package{hyperref} drivers \Option{hypertex} or - \Option{dvips} are used then the useful \Package{hyperref} option - \Option{linktocpage} will be set. - In the pdf\LaTeX{} case the option will not be set, since - in that case an other \Package{hyperref} driver \File{hpdftex.def} - will be used. That means neither \File{hdvips.def} nor - \File{hypertex.def} will be loaded. -\end{Example} - -\begin{Explain} - Furthermore the loading of package \Package{scrlfile} - and the \Macro{AfterFile} statement can be written - in the private \File{hyperref.cfg}. - But then instead of \Macro{usepackage} the macro - \Macro{RequiresPackage} ought be used, see \cite{latex:clsguide}. - The new lines have to be inserted directly after - \Macro{ProvidesFile} line, thus prior to the execution - of the options \Option{dvips} or \Option{pdftex}. -\end{Explain} - - -\section{Authors} -\label{sec:scrlfile.authors} -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item Markus Kohm \TextEMail{Markus.Kohm@gmx.de} -\item \textit{Jens-Uwe Morawski} -\end{itemize} - -\EndIndex{Package}{scrlfile} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/main.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/main.tex deleted file mode 100644 index ba3ebc630da..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/main.tex +++ /dev/null @@ -1,270 +0,0 @@ -\ProvidesFile{main.tex}[2004/09/22 KOMA-Script Manual] -% ============================================================================ -% scrguide2.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% scrclass2.tex -% Copyright (c) 2001 Markus Kohm und bei die weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: Language switch -% Authors: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Translation: Collin Marquart, Markus Kohm -% Contents: Setup of the language depencies of scrguide. Use this as -% main document. -% -% Languages: English -% Characterset of comments: -% US-ASCII -% - -% Set language -\newcommand\NameEnglish{english} -\let\UseLanguage\NameEnglish - -% Some names, if not already defined -\providecommand*{\LanguageShortcut}{en} -\providecommand{\AutoRefTextFarAway}{on } -\providecommand{\MyPrelimText}{% - This documentation is only a draft (\thisfilename: \docdate).} -\providecommand{\SubTitleName}{a versatile \LaTeXe{} package} -\providecommand{\ExampleName}{Example} -\providecommand{\ClassName}{class} -\providecommand{\PackageName}{package} -\providecommand{\EnvironmentName}{environment} -\providecommand{\OptionName}{option} -\providecommand{\MacroName}{command} -\providecommand{\CounterName}{counter} -\providecommand{\LengthName}{length} -\providecommand{\PseudoPrefix}{pseudo\ } -\providecommand{\PLengthName}{\PseudoPrefix\LengthName} -\providecommand{\VariableName}{variable} -\providecommand{\PagestyleName}{pagestyle} -\providecommand{\StyleName}{style} -\providecommand{\FloatstyleName}{float \StyleName} -\providecommand{\FileName}{file} -\providecommand{\TitleText}{The\ \KOMAScript\ bundle} -\providecommand{\ManualName}{Manual} -\providecommand{\ManualFromText}{Authors of the manual:} -\providecommand{\NoteName}{Note} -\providecommand{\FontElementName}{Element} -\providecommand{\genIndexName}{General Index} -\providecommand{\cmdIndexName}{Index of Commands, Environments and - Variables} -\providecommand{\cmdIndexShortName}{Index of Commands etc.} -\providecommand{\lenIndexName}{Index of Lengths and Counters} -\providecommand{\lenIndexShortName}{Index of Lengths etc.} -\providecommand{\elmIndexName}{Index of Elements with Capability of - Font Adjustment} -\providecommand{\elmIndexShortName}{Index of Elements} -\providecommand{\filIndexName}{Index of Files, Classes and Packages} -\providecommand{\filIndexShortName}{Index of Files etc.} -\providecommand{\optIndexName}{Index of Class and Package Options} -\providecommand{\optIndexShortName}{Index of Options} -\providecommand{\ChangeListName}{List of changes} -\providecommand{\LegalText}{% - No warranty:\\ - There is no warranty for \KOMAScript{} or any part of it. The - authors provide \KOMAScript{} \emph{as is}, without warranty of any - kind, either expressed or implied, including, but not limited to, - the implied warranties of merchantability and fitness for a - particular purposs. The entire risk as to the quality and - performance of \KOMAScript{} is with you. Should \KOMAScript{} or - any part of it prove defective, you assume the cost of all necessary - servicing, repair or correction.\\ - In no event unless agreed to in writing will the authors or any - other party who may distribute and/or modify \KOMAScript{} as - permitted in \File{LEGAL.TXT}, be liable to you for damages, - including any general, special, incidental or consequential damages - arising out of any use of \KOMAScript{} or out of inability to use - \KOMAScript{} (including, but not limited to, loss of data, data - being rendered inaccurate, or losses sustained by anyone as a result - of any failure of \KOMAScript{} to operate with any other programs), - even if a author or said other party has been advised of the - possibility of such damages.\\ - See \File{LEGAL.TXT} for more information. \File{LEGAL.TXT} is part - of \KOMAScript{} and must not be removed from any \KOMAScript{} - distribution.} -\providecommand{\LegalTextB}{% - Draft without page break optimization\par - \vspace{\baselineskip} - This manual is part of \KOMAScript{}, which is free under - the terms and conditions of LaTeX Project Public License Version - 1.0. A version of this license, which is valid to \KOMAScript{}, is - part of \KOMAScript{} (see \File{LEGAL.TXT}). Distribution of this - manual\,---\,even if it is printed\,---\,is allowed provided that - all parts of \KOMAScript{} are distributed.} -\providecommand{\WhoIsWho}{% - Following people took part on \KOMAScript{}: \textbf{Stefan Brill} - (proof-read), \textbf{Dr.~Engelbert Buxbaum} (translation), - \textbf{Christian Buss} (proof-read), \textbf{Jo\~ao Canas Ferreira} - (translation), \textbf{Michael Dewey} (language adaptation), - \textbf{Luzia Dietsche} (beta test), \textbf{Georg Grandke} - (translation, proof-read), \textbf{Ralph J. Hangleiter} (language - adaptation), \textbf{Henk Jongbloets} (language adaptation), - \textbf{Axel Kielhorn} (\Class{scrlettr}, \Package{addrconv}, - ideas), \textbf{Markus Kohm} (development, documentation, - translation, support, release), \textbf{Torsten Kr\"uger} (beta - test, proof-read, necessary questions, ideas, motor), \textbf{Enrico - Kunz} (documentation, proof-read), \textbf{Werner Lemberg} - (translation), \textbf{Branka Lon\v{c}arevi\'c} (language - adaptation), \textbf{Alejandro L\'opez-Valencia} (language - adaptation), \textbf{Colin Marquardt} (translation), \textbf{Peter - Marx} (release), \textbf{Jens-Uwe Morawski} (documentation, - translation, coordination, proof-read, ideas, motor), \textbf{Simone - Naldi} (language adaptation), \textbf{Frank Neukam} - (\textsc{Script} and \textsc{Script2.0}), \textbf{Thomas Neumann} - (documentation, proof-read), \textbf{Rolf Niepraschk} (proof-read), - \textbf{Carsten Schurig} (beta test), \textbf{Axel Sommerfeldt} - (documentation) and a lot of friendly peoply, sending bug reports, - nice emails, ideas and sometimes even implementations.} -\providecommand{\IndexPreambleText}{% - There are two kinds of page numbers at this index. The italic - printed numbers show the pages of declaration or explanation of the - topic. The normal printed numbers show the pages of using a topic.} -\providecommand{\ChangeListPreambleText}{% - At this list of changes you will find all significant changes of the - user interface of the \KOMAScript{} bundle at the last few - versions. The list was sorted about the names of the classes and - packages and their version. The numbers behind the versions are the - pages, where the changes are described. At the margins of these - pages you will find corresponding version marks.} -\providecommand{\CTANserver}{ftp.tex.ac.uk} -\providecommand{\BibPreambleText}{% - In the following you can find many references. All of them are - referenced from the main text. - In many cases the reference points to documents or directories - which can be accessed via Internet. - In these cases the reference includes a URL instead of a publisher. - If the reference points to a \LaTeX{} package then the URL - is written in the form ``\url{CTAN://}\emph{destination}''. - The prefix ``\url{CTAN://}'' means the \TeX{} archive - on a CTAN server or mirror. For example, you can - substitude the prefix with \url{ftp://\CTANserver/tex-archive/}. - - For \LaTeX{} packages it is also important to mention that - we have tried to give a version number appropriate to the - text that cites the reference. - But for some packages is is very difficult to find a consistent - version number and release date. - Additionally the given version is not always the current - version. - If you want install new packages take care that the package is the - most up-to-date version and check first whether the package is - already available on your system or not.} - -\newcommand*{\Ord}[1]{% - \ifcase #1\relax% - #1\textsuperscript{th}% - \or% - #1\textsuperscript{st}% - \or% - #1\textsuperscript{nd}% - \or% - #1\textsuperscript{rd}% - \else% - #1\textsuperscript{th}% - \fi} - -% BEGIN headfoot.tex TEXT SAMPLES -% CHANGES ONLY BY THE AUTHOR -% (1) example text command; the default definition (50) -% returns the whole text -\providecommand{\XmpText}[1][50]{% - \ifnum #1<51 - This f\/ill text is currently seized by 130 million receptors - in your retina. - \ifnum #1>1 - Thereby the nerve cells are put in a state of stimulation, - which spreads - \ifnum #1>2 - into the rear part of your brain originating from - \ifnum #1>3 - the optic nerve. - From there the stimulation is transmitted in a split second - also in other parts of your cerebrum. - Your frontal lobe becomes stimulated. - Intention-impulses spread from there, which your - central nervous - \fi\fi\fi - \fi - \ifnum #1>49 - system transforms in actual deeds. - Head and eyes already react. - They follow the text, taking the informations present there - and transmit them via the optic nerve. - \fi} -% (2) the next two commands are language-dependent, since -% in some languages additional commands may required -\providecommand{\XmpTopText}{\XmpText[3]} -\providecommand{\XmpBotText}{\XmpText[2]} -% (3) text in the example margin notes -\providecommand{\XmpMarginTextA}{Retina} -\providecommand{\XmpMarginTextB}{} -% (4) marks for the old scrpage package -\providecommand{\ScrpageMark}{\marginline{\small\sffamily\slshape - scrpage}} -\providecommand{\ScrpageNote}{\marginline{\small\sffamily\slshape - scrpage!}} -% -% <<< END headfoot.tex TEXT-SAMPLES - -\newcommand*{\autorefnametillsection}{% - \def\pageautorefname{page}% - \renewcommand*{\partautorefname}{part}% - \renewcommand*{\appendixautorefname}{appendix}% - \renewcommand*{\equationautorefname}{equation}% - \renewcommand*{\tableautorefname}{table}% - \renewcommand*{\figureautorefname}{figure}% - \let\subsectionautorefname=\sectionautorefname - \let\subsubsectionautorefname=\sectionautorefname - \let\paragraphautorefname=\sectionrefname - \let\subparagraphautorefname=\sectionrefname - % shouldn't be here, but it is easy this way: - \def\autoreftextfaraway##1{\AutoRefTextFarAway~\autopageref{##1}}% -} - -% Load chapters -\providecommand*{\LoadChapters}{% - \include{introduc} % introduction - \include{pglayout} % the type area with tyearea - \include{maincls} % the main classes scrbook, scrreprt, scrartcl - \include{headfoot} % head and foot with scrpage(2) - \include{datetime} % date and time with scrdate and scrtime - \include{letter} % letters with scrlttr2.cls - \include{addressf} % address files with scraddr - \include{addrconv} % converting addresses with addrconv - \include{loadfile} % manage package dependencies while loading -} - -% input the documentation -\input{scrguide2} - -\endinput -%%% Local Variables: -%%% mode: latex -%%% TeX-master: t -%%% End: - diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/maincls.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/maincls.tex deleted file mode 100644 index 5b7fb566be5..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/maincls.tex +++ /dev/null @@ -1,4825 +0,0 @@ -\ProvidesFile{maincls.tex}[2004/09/13 KOMA-Script Manual] -% ============================================================================ -% maincls.tex -% Copyright (c) 2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% maincls.tex -% Copyright (c) 2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: maincls -% Translation by: Jo\~{a}o Canas Ferreira -% Georg Grandke -% Markus Kohm (only some) -% Contents: the main KOMA-Script classes -% Language: English -% Charset of comments: US-ASCII -% Translation of german file: hauptcls.tex -% Date of translated german file: 2004-01-08 -% - -\chapter{The Main Classes \Class{scrbook}, \Class{scrrprt} and - \Class{scrartcl}} -\label{cha:maincls} - -\AddSeeIndex{macro}{gen}{\cmdIndexShortName}{cmd}% - -\begin{Explain} - The main classes of the {\KOMAScript} bundle are designed as - counterparts to the standard {\LaTeX} classes. This means that the - {\KOMAScript} bundle contains replacements for the three standard - classes \Class{book}\IndexClass{book}, - \Class{report}\IndexClass{report} and - \Class{article}\IndexClass{article}. There is also a replacement for - the standard class \Class{letter}\IndexClass{letter}. The - document class for letters is described in a separate chapter, - because it is fundamentally different from the three main classes - (see \autoref{cha:scrlttr2}).The names of the {\KOMAScript} - classes are composed of the prefix "\texttt{scr}" and the - abbreviated name of the corresponding standard class. In order to - restrict the length of the names to eight letters, the vowels, - starting with the last one, are left off if necessary. The - \autoref{tab:maincls.overview} shows an overview. The table also - includes the names of the \LaTeX2.09 style files that were used in - {\KOMAScript}. -\end{Explain} -\par - -The simplest way to use a \KOMAScript-class instead of a standard one -is to substitute the class name in the \verb|\documentclass| command -according to \autoref{tab:maincls.overview}. Normally the document -should be processed without errors by \LaTeX{}, just like before the -substitution. The look however should be different. Additionally, the -\KOMAScript{} classes provide new possibilities and options that are -described in the following sections. - -\begin{table}[htbp] - \centering - \begin{tabular}{lll} - Standard class & \KOMAScript{} class & \Script{} Style - (\LaTeX2.09)\\ - \hline\rule{0pt}{2.7ex}% - \Class{article} & \Class{scrartcl} & \File{script\textunderscore - s} \\ - \Class{report} & \Class{scrreprt} & \File{script} \\ - \Class{book} & \Class{scrbook} & \File{script} \\ - \Class{letter} & \Class{scrlettr} & \File{script\textunderscore - l} \\ - \end{tabular} - \caption[Class correspondence]{Correspondence between - standard classes, \KOMAScript{} classes and - \Script{} styles.} - \label{tab:maincls.overview} -\end{table} - - -\section{The Options} -\label{sec:maincls.options} - - -This section describes the global options of the three main classes. -The majority of the options can also be found in the standard classes. -Since experience shows that many options of the standard classes are -unknown, their description is included here. This is a departure from -the rule that the \File{scrguide} should only describe those aspects -whose implementation differs from the standard one. - -Table~\ref{tab:maincls.stdOptions} lists those options that are set by -default in at least one of the {\KOMAScript} classes. The table shows -for each {\KOMAScript} main class if the option is set by default and -if it is even defined for that class. An undefined option cannot be -set, either by default or by the user. - -\begin{table}[htbp] - \centering - \begin{tabular}{llll} - Option & - \Class{scrbook} & \Class{scrreprt} & \Class{scrartcl} \\ - \hline\rule{0pt}{2.7ex}% - \Option{11pt} & - default & default & default \\ - \Option{a4paper} & - default & default & default \\ - \Option{abstractoff} & - \emph{undefined} & default & default \\ - \Option{bigheadings} & - default & default & default \\ - \Option{final} & - default & default & default \\ - \Option{footnosepline} & - default & default & default \\ - \Option{headnosepline} & - default & default & default \\ - \Option{listsindent} & - default & default & default \\ - \Option{nochapterprefix} & - default & default & \emph{undefined} \\ - \Option{onelinecaption} & - default & default & default \\ - \Option{notitlepage} & - & & default \\ - \Option{onecolumn} & - default & default & default \\ - \Option{oneside} & - & default & default \\ - \Option{openany} & - & default & default \\ - \Option{openright} & - default & & \\ - \Option{parindent} & - default & default & default \\ - \Option{tablecaptionbelow} & - default & default & default \\ - \Option{titlepage} & - default & default \\ - \Option{tocindent} & - default & default & default \\ - \Option{twoside} & - default & & \\ - \end{tabular} - \caption{Default options of the \KOMAScript{} classes} - \label{tab:maincls.stdOptions} -\end{table} - -\begin{Explain} - Allow me an observation before proceeding with the descriptions of - the options. It is often the case that at the beginning of a - document one is often unsure which options to choose for that - specific document. Some options, for instance the choice of paper - size, may be fixed from the beginning. But already the question of - which \Var{DIV} value to use could be difficult to answer initially. - On the other hand, this kind of information should be initially - irrelevant for the main tasks of an author: design of the document - structure, text writing, preparation of figures, tables and index. - As an author you should concentrate initially on the contents. When - that is done, you can concentrate on the fine points of - presentation. Besides the choice of options, this means correcting - things like hyphenation, page breaks, and the distribution of tables - and figures. As an example consider the - \autoref{tab:maincls.stdOptions} that I have moved repeatedly - between the beginning and the end of this section. The choice of the - actual position will only be made during the final production of the - document. -\end{Explain} -\par - -\subsection{Options for Page Layout} -\label{sec:maincls.typeareaOptions} - -With the standard classes the page layout\Index{page layout} is -established by the option files \File{size10.clo}, \File{size11.clo}, -\File{size12.clo} (or \File{bk10.clo}, \File{bk11.clo}, -\File{bk12.clo} for the book class) and by fixed values in the class -definitions. The \KOMAScript{} classes, however, do not use a fixed -page layout, but one that depends on the paper format\Index{paper - format} and font size. For this task all three main classes use the -\Package{typearea} package\IndexPackage{typearea} (see -\autoref{cha:typearea}). The package is automatically loaded by -the \KOMAScript{} main classes. Therefore it is not necessary to use -the command \verb|\usepackage{typearea}| explicitly. - - -\begin{Declaration} - \Option{letterpaper} \\ - \Option{legalpaper} \\ - \Option{executivepaper} \\ - \Option{a\Var{X}paper} \\ - \Option{b\Var{X}paper} \\ - \Option{c\Var{X}paper} \\ - \Option{d\Var{X}paper} \\ - \Option{landscape} -\end{Declaration}% -\BeginIndex{Option}{letterpaper} \BeginIndex{Option}{legalpaper} -\BeginIndex{Option}{executivepaper} \BeginIndex{Option}{a0paper} -\BeginIndex{Option}{b0paper} \BeginIndex{Option}{c0paper} -\BeginIndex{Option}{d0paper} -\BeginIndex{Option}{landscape}% -The basic options for the choice of paper format are not processed -directly by the classes. They are automatically processed by the -\Package{typearea} package as global options (see -\autoref{sec:typearea.options}). The options \Option{a5paper}, -\Option{a4paper}, \Option{letterpaper}, \Option{legalpaper} and -\Option{executivepaper} correspond to the options of the standard -classes that have the same name and define the same paper format. The -page layout calculated for each is different, however. -% -\EndIndex{Option}{letterpaper} \EndIndex{Option}{legalpaper} -\EndIndex{Option}{executivepaper} \EndIndex{Option}{a0paper} -\EndIndex{Option}{b0paper} \EndIndex{Option}{c0paper} -\EndIndex{Option}{d0paper} \EndIndex{Option}{landscape} - -\begin{Explain} - The options for the A, B, C or D format are actually not processed - by the \Package{typearea}, because they are global options, but - because the \KOMAScript{} classes explicitly pass them to the - \Package{typearea} package. This is caused by the way option - processing is implemented in the \Package{typearea} package and by - the operation of the underlying option passing and processing - mechanism of \LaTeX. - - This is also valid for the options, described subsequently, that set - the binding correcting, the divisor and the number of header lines. -\end{Explain} - - -\begin{Declaration} - \Option{BCOR}\PName{correction}\\ - \Option{DIV}\PName{factor}\\ - \Option{DIVcalc}\\ - \Option{DIVclassic}\\ - \PName{Value}\Option{headlines} -\end{Declaration}% -\BeginIndex{Option}{BCOR}% -\BeginIndex{Option}{DIV}% -\BeginIndex{Option}{DIVcalc}% -\BeginIndex{Option}{DIVclassic}% -\BeginIndex{Option}{headlines}% -The options for the divisor and the binding correction\Index{binding - correction} are passed directly to the \Package{typearea} package -(see \autoref{sec:typearea.options}). This differs from the -standard classes, where there is no such transfer. This is also valid -for the option that sets the number of header lines. -% -\EndIndex{Option}{BCOR}% -\EndIndex{Option}{DIV}% -\EndIndex{Option}{DIVcalc}% -\EndIndex{Option}{DIVclassic}% -\EndIndex{Option}{headlines} - - -\subsection{Options for Document Layout} -\label{sec:maincls.layoutOptions} - -This subsection collects all the options that affect the document -layout, not only the page layout. Strictly speaking all page layout -options (see \autoref{sec:maincls.typeareaOptions}) are also -document layout options. The reverse is also partially true. - -\begin{Declaration} - \Option{oneside}\\ - \Option{twoside} -\end{Declaration}% -\BeginIndex{Option}{oneside} -\BeginIndex{Option}{twoside}% -These two options have the same effect as with the standard classes. -The option \Option{oneside} defines a one-sided document layout with a -one-sided page layout. This means in particular that normally a ragged -page bottom is used. - -The option \Option{twoside} defines a two-sided document layout with a -two-sided page layout. This means that the \LaTeX{} command -\Macro{flushbottom}\IndexCmd{flushbottom} is used to ensure that page -breaks don't leave a variable empty space at the bottom of the page. A -ragged page bottom can be obtained with the \LaTeX{} command -\Macro{raggedbottom}\IndexCmd{raggedbottom}. -% -\EndIndex{Option}{oneside}% -\EndIndex{Option}{twoside}% - - -\begin{Declaration} - \Option{onecolumn}\\ - \Option{twocolumn} -\end{Declaration}% -\BeginIndex{Option}{onecolumn} -\BeginIndex{Option}{twocolumn}% -These options have the same effect as the corresponding standard -options. They are used to switch between a one-column and a two-column -layout. The standard \LaTeX{} capabilities for multi-column layout are -only useful for very simple uses. The standard package -\Package{multicol} is much more versatile (see -\cite{package:multicol}).\Index{columns}\IndexPackage{multicol} -% -\EndIndex{Option}{onecolumn} \EndIndex{Option}{twocolumn} - - -\begin{Declaration} - \Option{openany}\\ - \Option{openright} -\end{Declaration}% -\BeginIndex{Option}{openany}% -\BeginIndex{Option}{openright}% -These\OnlyAt{\Class{scrbook}\and\Class{scrreprt}} options have the -same effect as the corresponding standard options. They affect the -choice of the page where a chapter\Index[indexmain]{chapter} can begin, -so they are not available with the \Class{scrartcl} class, since there -the main unit below ``part'' is the ``section''. The chapter level is -not available in \Class{scrartcl}. - -A chapter always begins with a new page. When the option -\Option{openany} is active, any page can be used. The option -\Option{openright} causes the chapter to begin with a new right page. -An empty left page may be inserted automatically in this case. The -empty pages are created by the implicit execution of the \LaTeX{} -command \Macro{cleardoublepage}\IndexCmd{cleardoublepage}. - -The option \Option{openright} has no effect with a one-sided layout, -because only the two-sided layout differentiates between left and -right pages. For this reason it should only be used together with the -\Option{twoside} option. -% -\EndIndex{Option}{openany} \EndIndex{Option}{openright} - - -\begin{Declaration} - \Option{cleardoublestandard}\\ - \Option{cleardoubleplain}\\ - \Option{cleardoubleempty} -\end{Declaration}% -\BeginIndex{Option}{cleardoublestandard}% -\BeginIndex{Option}{cleardoubleplain}% -\BeginIndex{Option}{cleardoubleempty}% -If one wishes the empty pages created by the \Macro{cleardoublepage} -command to have no headers or footers while using the standard -classes, the only possibility is to redefine the command -appropriately. {\KOMAScript} provides options that avoid this. The -option \Option{cleardoublestandard} enables the default -\Macro{cleardoublepage} behaviour. If the option -\Option{cleardoubleplain} is used, then the -\PValue{plain}\IndexPagestyle{plain} page style is applied to the -empty left page. The option \Option{cleardoubleempty} causes the -\PValue{empty}\IndexPagestyle{empty} page style to be used. The page -styles are described in \autoref{sec:maincls.pageStyle}. -% -\EndIndex{Option}{cleardoublestandard}% -\EndIndex{Option}{cleardoubleplain}% -\EndIndex{Option}{cleardoubleempty}% - - -\begin{Declaration} - \Option{headsepline}\\ - \Option{headnosepline}\\ - \Option{footsepline}\\ - \Option{footnosepline} -\end{Declaration}% -\BeginIndex{Option}{headsepline}% -\BeginIndex{Option}{headnosepline}% -\BeginIndex{Option}{footsepline}% -\BeginIndex{Option}{footnosepline}% -In order to have a line separating the header from the text body use -the option \Option{headsepline}. The option \Option{headnosepline} has -the reverse effect. These options have no effect with the page styles -\PValue{empty} and \PValue{plain}, because there is no header in this -case. Such a line always has the effect of visually approximating -header and text body. That doesn't mean that the header must be put -farther apart from the text body. Instead, the header should be -considered to belong to the text body for the purpose of page layout -calculations. {\KOMAScript} takes this into account by automatically -passing the option \Option{headinclude} to the \Package{typearea} -package whenever the \Option{headsepline} option is used. - -The presence of a line between text body and footer is controlled by -the options \Option{footsepline} and \Option{footnosepline}, that -behave like the corresponding header functions. Whenever a line is -requested by the \Option{footsepline} option, the \Option{footinclude} -option is automatically passed to the \Package{typearea} package. In -contrast to \Option{headsepline}, \Option{footsepline} takes effect -when used together with the page style \PValue{plain}, because the -\PValue{plain} style produces a page number in the footer. -% -\EndIndex{Option}{headsepline}% -\EndIndex{Option}{headnosepline}% -\EndIndex{Option}{footsepline}% -\EndIndex{Option}{footnosepline}% - - -\begin{Declaration} - \Option{titlepage}\\ - \Option{notitlepage} -\end{Declaration}% -\BeginIndex{Option}{titlepage}% -\BeginIndex{Option}{notitlepage}% -Both options have the same effect as the corresponding standard ones. -The \Option{titlepage} option makes {\LaTeX} use separate pages for -the titles. These pages are set inside a \Environment{titlepage} -environment and normally have neither header nor footer. In comparison -with standard \LaTeX, \KOMAScript{} expands the handling of the titles -significantly (see \autoref{sec:maincls.titles}). - -The option \Option{notitlepage} specifies that an \emph{in-page} title -is used. This means that the title is specially emphasized, but it may -be followed by more material on the same page, for instance by an -abstract or a section. -% -\EndIndex{Option}{titlepage}% -\EndIndex{Option}{notitlepage}% - - -\begin{Declaration} - \Option{chapterprefix}\\ - \Option{nochapterprefix} -\end{Declaration}% -\BeginIndex{Option}{chapterprefix}% -\BeginIndex{Option}{nochapterprefix}% -With\OnlyAt{\Class{scrbook}\and\Class{scrreprt}} the standard -classes \Class{book} and \Class{report} a chapter -title\Index[indexmain]{chapter title} consists of a line with the word -"Chapter"\footnote{When using another language the word - "Chapter" is naturally translated to the appropriate language.}% -followed by the chapter number. The title itself is set left-justified -on the following lines. The same effect is obtained in \KOMAScript{} -with the class option \Option{chapterprefix}. The default however is -\Option{nochapterprefix}. These options also affect the automatic -running titles in the headers (see -\autoref{sec:maincls.pageStyle}). -% -\EndIndex{Option}{chapterprefix}% -\EndIndex{Option}{nochapterprefix}% - - -\begin{Declaration} - \Option{appendixprefix}\\ - \Option{noappendixprefix} -\end{Declaration}% -\BeginIndex{Option}{appendixprefix}% -\BeginIndex{Option}{noappendixprefix}% -Sometimes\OnlyAt{\Class{scrbook}\and\Class{scrreprt}} one wishes to -have the chapter titles in simplified form according to -\Option{nochapterprefix}. But at the same time, one wishes a title of -an appendix\Index{appendix} to be preceded by a line with "Appendix" -followed by the appendix letter. This is achieved by using the -\Option{appendixprefix} option. Since this results in an inconsistent -document layout, I advise against using this option. - -The reverse option \Option{noappendixprefix} exists only for -completeness' sake. I don't know of any sensible use for it. -% -\EndIndex{Option}{appendixprefix}% -\EndIndex{Option}{noappendixprefix}% - -\begin{Declaration} - \Option{parskip}\\ - \Option{parskip*}\\ - \Option{parskip+}\\ - \Option{parskip-}\\ - \Option{halfparskip}\\ - \Option{halfparskip*}\\ - \Option{halfparskip+}\\ - \Option{halfparskip-}\\ - \Option{parindent} -\end{Declaration}% -\BeginIndex{Option}{parskip}% -\BeginIndex{Option}{parskip*}% -\BeginIndex{Option}{parskip+}% -\BeginIndex{Option}{parskip-}% -\BeginIndex{Option}{halfparskip}% -\BeginIndex{Option}{halfparskip*}% -\BeginIndex{Option}{halfparskip+}% -\BeginIndex{Option}{halfparskip-}% -\BeginIndex{Option}{parindent}% -\begin{Explain}% - The standard classes normally set - paragraphs\Index[indexmain]{paragraph} indented and without any - vertical inter-paragraph space. This is the best solution when - using a regular page layout, like the ones produced with the - \Package{typearea} package. If there where no indentation and no - vertical space, only the length of last line would give the reader a - reference point. In extreme cases, it is very difficult to detect if - a line is full or not. Furthermore, it is found that a marker at the - paragraph's end tends to be easily forgotten. A marker at the - paragraph's beginning is easily remembered. Inter-paragraph spacing - has the drawback of disappearing in some contexts. For instance, - after a displayed formula it would be impossible to detect if the - previous paragraph continues or if a new one begins. Also, when - starting to read at a new page it might be necessary to look at the - previous page in order determine if a new paragraph has been started - or not. All these problems disappear when using indentation. A - combination of indentation and vertical inter-paragraph spacing is - redundant and should be rejected. The - indentation\Index[indexmain]{indentation} is perfectly sufficient by - itself. The only drawback of indentation is the reduction of the - line length. The use of inter-paragraph spacing is therefore - justified when using short lines, for instance in a newspaper. -\end{Explain} - - -Independently of the explanation above, there are often requests for a -document layout with vertical inter-paragraph spacing instead of -indentation. \KOMAScript{} provides a large number of related -options: \Option{parskip}, \Option{parskip-}, \Option{parskip*}, -\Option{parskip+} and \Option{halfparskip}, \Option{halfparskip-}, -\Option{halfparskip*} and \Option{halfparskip+}. - -The four \Option{parskip} options define an inter-paragraph spacing of -one line. The four \Option{halfparskip} options use just a spacing of -half a line. In order to avoid a change of paragraph going unnoticed, -for instance after a page break, three of the options of each set -ensure that the last line of a paragraph is not full. The variants -without plus or star sign ensure a free space of 1\Unit{em}. The plus -variant ensures that at least a third of the line is free and the star -variant ensures that at least a fourth of the line is free. The minus -variants make no special provision for the last line of a paragraph. - -All eight options change the spacing before, after and inside list -environments. This avoids the problem of having these environments or -the paragraphs inside them with a larger separation than the -separation between the paragraphs of normal text. Additionally, these -options ensure that the table of contents and the lists of figures and -tables are set without any additional spacing. - -The default behaviour of \KOMAScript{} follows the \Option{parindent} -option. In this case, there is no spacing between paragraphs, only an -indentation of the first line by 1\Unit{em}. -% -\EndIndex{Option}{parskip}% -\EndIndex{Option}{parskip*}% -\EndIndex{Option}{parskip+}% -\EndIndex{Option}{parskip-}% -\EndIndex{Option}{halfparskip}% -\EndIndex{Option}{halfparskip*}% -\EndIndex{Option}{halfparskip+}% -\EndIndex{Option}{halfparskip-}% -\EndIndex{Option}{parindent}% - -\begin{Declaration} - \Option{onelinecaption}\\ - \Option{noonelinecaption} -\end{Declaration} -\BeginIndex{Option}{onelinecaption}% -The standard classes differentiate between one-line and multi-line -table or figure captions. One-line captions are centered while -multi-line captions are left-justified. This behavior, which is also -the default with \KOMAScript, corresponds to the option -\Option{onelinecaption}. There is no special handling of one-line -captions when the \Option{noonelinecaption} option is given. - -\begin{Explain} - The avoidance of a special treatment for the caption has an - additional effect that is sometimes greatly desired. Footnotes - that appear inside a \Macro{caption} command often have a wrong - number assigned to them. This happens because the footnote counter - is incremented once when the line is measured. When the - \Option{noonelinecaption} option is used no such measurement is - made. The footnote numbers are therefore correct. - - But since \KOMAScript{} version 2.9 you don't need the option - \Option{noonelinecaption} to avoid the above described - effect. \KOMAScript{} classes contain a workaround, so if you have - footnotes at captions you simply should put the contents of the - figure or table into a minipage and everything will be nice. -\end{Explain} -% -\EndIndex{Option}{onelinecaption}% -\EndIndex{Option}{noonelinecaption}% - -\subsection{Options for Font Selection} -\label{sec:maincls.fontOptions} - -Font options are those options that affect the font size of the -document or the fonts of individual elements. Options that affect the -font style are also theoretically font options. However {\KOMAScript} -currently has no such options. - -\begin{Declaration} - \Option{10pt}\\% - \Option{11pt}\\% - \Option{12pt}\\ - \Option{\Var{X}pt} -\end{Declaration}% -\BeginIndex{Option}{10pt}% -\BeginIndex{Option}{11pt}% -\BeginIndex{Option}{12pt}% -\BeginIndex{Option}{\Var{X}pt}% -The options \Option{10pt}, \Option{11pt} and \Option{12pt} have the -same effect as the corresponding standard options. In contrast to the -standard classes, {\KOMAScript} can be used to choose other font -sizes\Index[indexmain]{font size}. However {\LaTeX} provides the -necessary class option files only for 10\Unit{pt}, 11\Unit{pt} und -12\Unit{pt}, so that the user must provide any other class option -files. The package \Package{extsizes} (see -\cite{package:extsizes})\IndexPackage{extsizes} can be used for that -task. Very big font sizes may lead to arithmetic overflow inside the -page layout calculations of the \Package{typearea} package. -% -\EndIndex{Option}{10pt}% -\EndIndex{Option}{11pt}% -\EndIndex{Option}{12pt}% -\EndIndex{Option}{\Var{X}pt}% - - -\begin{Declaration} - \Option{smallheadings}\\ - \Option{normalheadings}\\ - \Option{bigheadings} -\end{Declaration}% -\BeginIndex{Option}{smallheadings}% -\BeginIndex{Option}{normalheadings}% -\BeginIndex{Option}{bigheadings}% -The font size used for the titles\index{title}\index{document - structure} is relatively big, both with the standard classes and -with {\KOMAScript}. Not everyone likes this choice; moreover it is -specially problematic for small paper sizes. Consequently -{\KOMAScript} provides, besides the large title font size defined by -the \Option{bigheadings} option, the two options -\Option{normalheadings} and \Option{smallheadings}, that allow for -smaller title font sizes. -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}The spacing before and -after chapter titles is also influenced by these options. Chapter -titles are also influenced by the options \Option{chapterprefix} and -\Option{nochapterprefix}, and appendix titles by the options -\Option{appendixprefix} and \Option{noappendixprefix}, all of them -are described in \autoref{sec:maincls.layoutOptions}. -% -\EndIndex{Option}{smallheadings}% -\EndIndex{Option}{normalheadings}% -\EndIndex{Option}{bigheadings}% - -\subsection{Options Affecting the Table of Contents} -\label{sec:maincls.tocOptions} - -{\KOMAScript} has several options that affect the entries in the table -of contents\Index[indexmain]{table of contents}. The form of the table -of contents is fixed but several variations of the contents can be -obtained with the options provided. - -\begin{Declaration} - \Option{liststotoc}\\ - \Option{idxtotoc}\\ - \Option{bibtotoc}\\ - \Option{bibtotocnumbered}\\ - \Option{liststotocnumbered} -\end{Declaration}% -\BeginIndex{Option}{liststotoc}% -\BeginIndex{Option}{idxtotoc}% -\BeginIndex{Option}{bibtotoc}% -\BeginIndex{Option}{bibtotocnumbered}% -\BeginIndex{Option}{liststotocnumbered}% -\begin{Explain}% - Lists of tables and figures, index and bibliography are not normally - included in the table of contents. These entries are omitted in - classical typography because it is silently assumed that, if at all, - lists of figures and tables come after the table of contents, the - index comes at the end and the bibliography comes before the index. - Books with all these parts often include ribbons that can be used to - mark the location of these parts in the book, so that the reader - only has to look for them once. -\end{Explain} - -It is becoming increasingly common to find entries in the table of -contents for the lists of tables and figures, for the bibliography, -and, sometimes, even for the index. This is certainly related to the -recent trend of putting lists of figures and tables at the end of the -document. Both lists are similiar to the table of contents in -structure and intention. I'm therefore sceptical of this evolution. -Since it makes no sense to include only one of the aforementioned lists -in the table of contents, there exists only one option -\Option{liststotoc} that causes entries for both types of lists to be -included. This also includes any lists produced with version 1.2e or -later of the \Package{float}\IndexPackage{float} package (see -\cite{package:float}). All these lists are unnumbered, since they -contain entries that reference other sections of the document. - -The option \Option{idxtotoc} causes an entry for the index to be -included in the table of contents. The index is also unnumbered since -it only includes references to the contents of the other sectional -units. - -The bibliography is a different kind of listing. It does not list the -contents of the present document but refers instead to external -documents. On these reasons it could be argued that it is a different -chapter (or section) and, as such, should be numbered. The option -\Option{bibtotocnumbered} has this effect, including the generation of -the corresponding entry in the table of contents. I think that a -similar reasoning would lead us to consider a classical list of -sources to be a separate chapter. Also, the bibliography is not -something that was written by the document's author. In view of this, -the bibliography merits nothing more than an unnumbered entry in the -table of contents, and that can be achieved with the \Option{bibtotoc} -option. - -The author of \KOMAScript{} doesn't like option -\Option{bibtotocnumbered}. He almost detests option -\Option{liststotocnumbered}. Because of this you won't find a detailed -description of this option. Nevertheless it exists. -% -\EndIndex{Option}{liststotoc}% -\EndIndex{Option}{idxtotoc}% -\EndIndex{Option}{bibtotoc}% -\EndIndex{Option}{bibtotocnumbered}% -\EndIndex{Option}{liststotocnumbered}% - - -\begin{Declaration} - \Option{tocindent}\\ - \Option{tocleft} -\end{Declaration}% -\BeginIndex{Option}{tocindent}% -\BeginIndex{Option}{tocleft}% -The table of contents is normally\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} setup so -that different sectional units have different indentations. The -section number is set left-justified in a fixed-width field. This -setup is selected with the option \Option{tocindent}. - -When there are many sections, the corresponding numbering tends to -become very wide, so that the reserved field overflows. The FAQ -\cite{DANTE:FAQ} suggests that the table of contents should be redefined -in such a case. \KOMAScript{} offers an alternative format that avoids -the problem completely. If the option \Option{tocleft} is selected, -then no variable indentation is applied to the titles of the sectional -units. Instead, a table-like organisation is used, where all unit -numbers and titles, respectively, are set in a left-justified column. -The space necessary for the unit numbers is determined automatically. - -\begin{Explain} - In order to calculate automatically the space taken by the unit - numbers when using the option \Option{tocleft} it is necessary to - redefine some macros. It is improbable but not impossible that this - leads to problems when using other packages. If you think this may - be causing problems, you should try the alternative option - \Option{tocindent}, since it does not make any redefinitions. When - using packages that affect the format of the table of contents, it - is possible that the use of options \Option{tocleft} and - \Option{tocindent} may lead to problems. In that case, one should - use neither of these global (class) option. - - If the \Option{tocleft} option is active, the width of the field for - unit numbering is determined when outputting the table of contents. - After a change that affects the table of contents, at most three - \LaTeX{} runs are necessary to obtain a correctly set table of - contents. -\end{Explain} -% -\EndIndex{Option}{tocindent}% -\EndIndex{Option}{tocleft}% - -\subsection{Options for Lists of Floats} -\label{sec:maincls.listsOptions} - -The best known lists of floats are the list of figures and the list of tables. -With help from the \Package{float}\IndexPackage{float} package, for instance, -it is possible to produce new float environments with the corresponding lists. - -\begin{Explain} - Whether \KOMAScript{} options have any effect on lists of floats - produced by other packages depends mainly on those packages. This is - generally the case with the lists of floats produced by the - \Package{float}\IndexPackage{float} package. - - Besides the options described here, there are others that affect the - lists of floats though not their formatting or contents. Instead - they affect what is included in the table of contents. The - corresponding descriptions can therefore be found in - \autoref{sec:maincls.tocOptions}. -\end{Explain} - -\begin{Declaration} - \Option{listsindent}\\ - \Option{listsleft} -\end{Declaration}% -\BeginIndex{Option}{listsindent}% -\BeginIndex{Option}{listsleft}% -Lists of figures and tables\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} are -generally setup so that their numbering uses a fixed space. This -corresponds to the use of option \Option{listsindent}. - -If the numbers get too large, for instance because many tables are -used, it may happen that the available space is exceeded. Therefore -\KOMAScript{} supplies an option called \Option{listsleft} that is -similar to the \Option{tocleft} option. The width of the numbers is -automatically determined and the space for them correspondingly -adjusted. Concerning the mode of operation and the side effects, the -observations made in \autoref{sec:maincls.tocOptions} for the -\Option{tocleft} option are equally valid in this case. Please note -that when using the \Option{listsleft} option several \LaTeX{} runs -are necessary before the lists of floats achieve their final form. -% -\EndIndex{Option}{listsindent}% -\EndIndex{Option}{listsleft}% - - - -\subsection{Options Affecting the Formatting} -\label{sec:maincls.formattingOptions} - -Formatting options are all those options that affect the form or -formatting of the document and are not assigned to other sections. -They are the \emph{remaining options}. - -\begin{Declaration} - \Option{abstracton}\\ - \Option{abstractoff} -\end{Declaration}% -\BeginIndex{Option}{abstracton}% -\BeginIndex{Option}{abstractoff}% -In\OnlyAt{\Class{scrreprt}\and\Class{scrartcl}} the standard classes -the \Environment{abstract} environment sets the text "\abstractname" -centered before the summary text\Index[indexmain]{summary}. This was the -normal procedure in the past. In the meantime, newspaper reading has -trained the readers to recognize a displayed text at the beginning of -an article or report as the abstract. This is even more so when the -abstract comes before the table of contents. It is also surprising -that precisely this title appears small and centered. {\KOMAScript} -provides the possibility of including or excluding the abstract's -title with the options \Option{abstracton} and \Option{abstractoff}. - -\begin{Explain} - Books typically use another type of summary. In that case there is - usually a dedicated summary chapter at the beginning or end of the - book. This chapter is often combined with the introduction or with a - description of further aspects. Therefore, the class \Class{scrbook} - has no \Environment{abstract} environment. A summary chapter is also - recommended for reports in a wider sense, like a Master's or Ph.D. - thesis. -\end{Explain} -% -\EndIndex{Option}{abstracton}% -\EndIndex{Option}{abstractoff}% - - -\begin{Declaration} - \Option{pointednumbers}\\ - \Option{pointlessnumbers} -\end{Declaration}% -\BeginIndex{Option}{pointednumbers}% -\BeginIndex{Option}{pointlessnumbers}% -\begin{Explain}% - According to {\small DUDEN}, the numbering of sectional units should - have no point at the end if only arabic numbers are used (see - \cite[R\,3]{DUDEN}). On the other hand, if roman numerals or letters - are used, then a point should appear at the end of the numbering (see - \cite[R\,4]{DUDEN}). {\KOMAScript} has an internal mechanisms that - tries to implement these rules. The resulting effect is that, - normally, after the sectional commands \Macro{part} and - \Macro{appendix} a switch is made to numbering with a point at the - end. The information is saved in the \File{aux} file and takes - effect on the next \LaTeX{} run. -\end{Explain} - -In some cases the mechanism that switches the end point may fail or -other languagues may have different rules. Therefore it is possible to -activate the use of the end point with the option -\Option{pointednumbers} or to deactivate it with -\Option{pointlessnumbers}. - -Please note that the mechanism only takes effect on the next \LaTeX{} -run. When trying to use these options to control the numbering -format, a run without changing any options should be made. - -Calling these options -\Option{dottednumbers}\IndexOption{dottednumbers} and -\Option{dotlessnumbers}\IndexOption{dotlessnumbers} or similar would -be more correct. It so happened that the meaning of the chosen names -was not clear to me a few years ago when the options were implemented. -% -\EndIndex{Option}{pointednumbers}% -\EndIndex{Option}{pointlessnumbers}% - -\begin{Declaration} - \Option{leqno} -\end{Declaration}% -\BeginIndex{Option}{leqno}% -Equations\Index{equation} are normally numbered on the right. The -standard option \Option{leqno} causes the standard option file -\File{leqno.clo} to be loaded. The equations are then numbered on the -left. -% -\EndIndex{Option}{leqno}% - - -\begin{Declaration} - \Option{fleqn} -\end{Declaration}% -\BeginIndex{Option}{fleqn}% -Displayed equations are normally centered. The standard option -\Option{fleqn} causes the standard option file \File{fleqn.clo} to be -loaded. Displayed equations are then left-justified. -% -\EndIndex{Option}{fleqn}% - -\begin{Declaration} - \Option{tablecaptionbelow}\\ - \Option{tablecaptionabove} -\end{Declaration}% -\BeginIndex{Option}{tablecaptionbelow}% -\BeginIndex{Option}{tablecaptionabove}% -As described in \autoref{sec:maincls.floats}, the -\Macro{caption}\IndexCmd{caption} command acts with figures like the -\Macro{captionbelow}\IndexCmd{captionbelow} command. The behaviour -with tables depends on two options. With the default -\Option{tablecaptionbelow} options, the \Macro{caption} macro acts -like the \Macro{captionbelow} command. With the -\Option{tablecaptionabove} option, \Macro{caption} acts like the -\Macro{captionabove}\IndexCmd{captionabove} command. - -Note\OnlyAt{\Package{float}}\IndexPackage{float} that when using -the \Package{float} package, the options \Option{tablecaptionbelow} -and \Option{tablecaptionabove} cease to act correctly when the -\Macro{refloatstyle} is applied to tables. More details of the -\Package{float} package's \Macro{refloatstyle} can be obtained from -\cite{package:float}. -% -\EndIndex{Option}{tablecaptionbelow}% -\EndIndex{Option}{tablecaptionabove}% - - -\begin{Declaration} - \Option{origlongtable} -\end{Declaration}% -\BeginIndex{Option}{origlongtable}% -\begin{Explain}% - The package\OnlyAt{\Package{longtable}} - \Package{longtable}\IndexPackage{longtable} (see - \cite{package:longtable}) sets table captions internally by calling - the command \Macro{LT@makecaption}. In order to ensure that these - table captions match the ones used with normal tables, the - \KOMAScript{} classes normally redefine that command. See - \autoref{sec:maincls.floats} for more details. The redefinition - is performed with help of the command \Macro{AfterPackage} - immediately after the loading of package \Package{longtable}. If - the package \Package{caption2}\IndexPackage{caption2} (see - \cite{package:caption2}) has been previously loaded, the - redefinition is not made in order not to interfere with the - \Package{caption2} package. -\end{Explain} -If the table captions produced by the \Package{longtable} package -should not be redefined by the \KOMAScript{}, activate the -\Option{origlongtable} option. -% -\EndIndex{Option}{origlongtable}% - - -\begin{Declaration} - \Option{openbib} -\end{Declaration}% -\BeginIndex{Option}{openbib}% -The standard option \Option{openbib} switches to an alternative -bibliography format. The effects are twofold: The first line of a -bibliography entry, normally containing the author's name, gets a -smaller indentation; and the command \Macro{newblock} is redefined to -produce a paragraph. Without this option, \Macro{newblock} introduces -only a stretchable horizontal space. -% -\EndIndex{Option}{openbib} - - -\begin{Declaration} - \Option{draft}\\ - \Option{final} -\end{Declaration}% -\BeginIndex{Option}{draft}% -\BeginIndex{Option}{final}% -The two standard options \Option{draft} and \Option{final} are -normally used to distinguish between the draft and final versions of a -document. The option \Option{draft} activates small black boxes that -are set at the end of overly long lines. The boxes help the untrained -eye to find paragraphs that have to be treated manually. With the -\Option{final} option no such boxes are shown. - -The two options are also processed by other packages and affect their -workings. For instance, the \Package{graphics}\IndexPackage{graphics} -and the \Package{graphicx}\IndexPackage{graphicx} packages don't -actually output the graphics when the option \Option{draft} is -specified. Instead they output a framed box of the appropriate size -containing only the graphic's filename (see \cite{package:graphics}). -% -\EndIndex{Option}{draft}% -\EndIndex{Option}{final}% - - -\section{General Document Characteristics} -\label{sec:maincls.general} - -Some document characteristics do not apply to a particular section of -the document like the titling, the text body or the bibliography, but -they affect the entire document. Some of these characteristics were -already described in \autoref{sec:maincls.options}. - -\subsection{Changing Fonts} -\label{sec:maincls.font} - -\BeginIndex{}{font}\BeginIndex{}{font size}% -\begin{Explain} - \KOMAScript{} does not use fixed fonts and attributes to emphasize - different elements of the text. Instead there are variables - that contain the commands used for changing fonts and other text - attributes. In previous versions of \KOMAScript{} the user had to - use \Macro{renewcommand} to redefine those variables. It was also - not easy to determine the name of the variable affecting an element - given the element's name. It was also often necessary to determine - the original definition before proceeding to redefine it. - - These difficulties were actually intended, since the interface was not - for users, but only for package authors building their - packages on top of \KOMAScript{}. The years have shown that the - interface was mainly used by document authors. So a new, simpler - interface was created. However, the author advises explicitly the - typographically inexperienced user against changing font sizes and - other graphical characteristics according to his taste. Knowledge - and feeling are basic conditions for the selection and mixture of - different font sizes, attributes and families. -\end{Explain} - -\begin{Declaration} - \Macro{setkomafont}\Parameter{element}\Parameter{commands}\\ - \Macro{addtokomafont}\Parameter{element}\Parameter{commands}\\ - \Macro{usekomafont}\Parameter{element} -\end{Declaration}% -\BeginIndex{Cmd}{setkomafont}% -\BeginIndex{Cmd}{addtokomafont}% -\BeginIndex{Cmd}{usekomafont}% -With\ChangedAt{v2.8p}{\Class{scrbook}\and \Class{scrreprt}\and - \Class{scrartcl}} the help of the two commands \Macro{setkomafont} -and \Macro{addtokomafont} it is possible to define the -\PName{commands} that change the characteristics of a given -\PName{element}. Theoretically all possible statements including -literal text could be used as \PName{commands}. You should however -absolutely limit yourself to those statements that really switch only -one font attribute. This are usually the commands \Macro{normalfont}, -\Macro{rmfamily}, \Macro{sffamily}, \Macro{ttfamily}, -\Macro{mdseries}, \Macro{bfseries}, \Macro{upshape}, \Macro{itshape}, -\Macro{slshape}, \Macro{scshape} and the font size commands -\Macro{Huge}, \Macro{huge}, \Macro{LARGE} etc. The description of -these commands can be found in \cite{lshort}, \cite{latex:usrguide} or -\cite{latex:fntguide}. Color switching commands like -\Macro{normalcolor} (see \cite{package:graphics}) are also acceptable. -The behavior when using other commands, specially those that make -redefinitions or generate output, is not defined. Strange behavior is -possible and does not represent a bug. - - -The command \Macro{setkomafont } provides a font switching command -with a completely new definition. In contrast to this the -\Macro{addtokomafont} commands extends the existing definition. - -It is not recommended to use both statements in the same -document. Usage examples can be found in the paragraphs on the -corresponding element. Names and meanings of the individual items are -listed in \autoref{tab:maincls.elementsWithoutText}. The default -values are shown in the corresponding paragraphs. -% -% Mit tabularx.sty oder array.sty waere folgende Tabelle viel -% einfacher zu loesen: -\begin{table} - \centering% - \begin{tabular}{lp{.6\linewidth}} - Element & Description \\\hline\\[-2ex] - \FontElement{caption}\IndexFontElement[indexmain]{caption} - & \raggedright Text of a table or figure caption\tabularnewline%[.75ex] - \FontElement{captionlabel}\IndexFontElement[indexmain]{captionlabel} - & \raggedright Label of a table or figure caption; used according - to the element \FontElement{caption}\tabularnewline%[.75ex] - \FontElement{chapter}\IndexFontElement[indexmain]{chapter} - & \raggedright Title of the sectional unit - \Macro{chapter} \tabularnewline%[.75ex] - \FontElement{descriptionlabel}% - \IndexFontElement[indexmain]{descriptionlabel} - & \raggedright Labels, i.e. the optional - argument of \Macro{item}, in the - \Environment{description} environment\tabularnewline%[.75ex] - \FontElement{dictumauthor}\IndexFontElement[indexmain]{dictumauthor} - & \raggedright Author of a smart saying; used according - to the element \FontElement{dictumtext}\tabularnewline%[.75ex] - \FontElement{dictumtext}\IndexFontElement[indexmain]{dictumtext} - & \raggedright Text of a smart saing (see command - \Macro{dictum}) \tabularnewline%[.75ex] - \FontElement{pagefoot}\IndexFontElement[indexmain]{pagefoot} - & \raggedright The foot of a page, but also the head of a page - \tabularnewline%[.75ex] - \FontElement{footnote}\IndexFontElement[indexmain]{footnote} - & \raggedright Footnote text and marker \tabularnewline%[.75ex] - \FontElement{footnotelabel}\IndexFontElement[indexmain]{footnotelabel} - & \raggedright Mark of a footnote; used according to the - element \FontElement{footnote}\tabularnewline%[.75ex] - \FontElement{footnotereference}% - \IndexFontElement[indexmain]{footnotereference} - & Footnote reference in the text \tabularnewline%[.75ex] - \FontElement{pagehead}\IndexFontElement[indexmain]{pagehead} - & \raggedright The head of a page, but also the foot of a page - \tabularnewline%[.75ex] - \FontElement{pagenumber}\IndexFontElement[indexmain]{pagenumber} - & \raggedright Page number in the header or footer - \tabularnewline%[.75ex] - \FontElement{paragraph}\IndexFontElement[indexmain]{paragraph} - & \raggedright Title of the sectional unit - \Macro{paragraph} \tabularnewline%[.75ex] - \FontElement{part}\IndexFontElement[indexmain]{part} - & \raggedright Title of the \Macro{part} sectional unit, without - the line with the part number\tabularnewline%[.75ex] - \FontElement{partnumber}\IndexFontElement[indexmain]{partnumber} - & \raggedright Line with the part number in a title of the - sectional unit \Macro{part} - \tabularnewline%[.75ex] - \FontElement{section}\IndexFontElement[indexmain]{section} - & \raggedright Title of the sectional unit - \Macro{section} \tabularnewline%[.75ex] - \FontElement{sectioning}\IndexFontElement[indexmain]{sectioning} - & \raggedright All sectional unit titles, i.e. the arguments of - \Macro{part} down to \Macro{subparagraph} and - \Macro{minisec}, including the title of the abstract; used before - the element of the corresponding unit - \tabularnewline%[.75ex] - \FontElement{subparagraph}\IndexFontElement[indexmain]{subparagraph} - & \raggedright Title of the sectional unit - \Macro{subparagraph} \tabularnewline%[.75ex] - \FontElement{subsection}\IndexFontElement[indexmain]{subsection} - & \raggedright Title of the sectional unit - \Macro{subsection} \tabularnewline%[.75ex] - \FontElement{subsubsection}\IndexFontElement[indexmain]{subsubsection} - & \raggedright Title of the sectional unit - \Macro{subsubsection} \tabularnewline%[.75ex] - \FontElement{title}\IndexFontElement[indexmain]{title} - & \raggedright Main title of the document, i.e. the argument - of \Macro{title} \tabularnewline%[.75ex] - \end{tabular} - \caption{Elements, whose type style can be - changed with the {\KOMAScript} command \Macro{setkomafont} or - \Macro{addtokomafont}} - \label{tab:maincls.elementsWithoutText} -\end{table} - -The command \Macro{usekomafont} can change the current font -specification to the one used with the specified \PName{element}. -\begin{Example} - Assume that you want to use for the element - \FontElement{captionlabel} the same font specification that is used - with \FontElement{descriptionlabel}. This can be easily done with: - \begin{small} -\begin{verbatim} - \setkomafont{captionlabel}{\usekomafont{descriptionlabel}} -\end{verbatim} - \end{small} - You can find other examples in the paragraphs on each element. -\end{Example} -% -\EndIndex{Cmd}{setkomafont}% -\EndIndex{Cmd}{addtokomafont}% -\EndIndex{Cmd}{usekomafont}% -\EndIndex{}{font}\EndIndex{}{font size}% - -\subsection{Page Style} -\label{sec:maincls.pageStyle} - -\begin{Declaration} - \Macro{pagestyle}\PParameter{empty}\\ - \Macro{pagestyle}\PParameter{plain}\\ - \Macro{pagestyle}\PParameter{headings}\\ - \Macro{pagestyle}\PParameter{myheadings}\\ - \Macro{thispagestyle}\Parameter{local page style} -\end{Declaration}% -\BeginIndex{Cmd}{pagestyle}% -\BeginIndex{Cmd}{thispagestyle}% -\BeginIndex{Pagestyle}{empty}% -\BeginIndex{Pagestyle}{plain}% -\BeginIndex{Pagestyle}{headings}% -\BeginIndex{Pagestyle}{myheadings}% -One of the general characteristics of a document is the page -style\Index[indexmain]{page style}. In {\LaTeX} this means mostly the -contents of headers and footers. Usually one distinguishes four -different page styles. -\begin{description} -\item[empty] is the page style with entirely empty headers and - footers. In {\KOMAScript} this is completely identical to the - standard classes. -\item [plain] is the page style with empty head and only a page number - in the foot. With the standard classes this page number is - always centered in the foot. With {\KOMAScript} the page number - appears on double-sided\Index {double-sided} layout on the outer - side of the foot. The one-sided page style behaves like the - standard setup. -\item[headings] is the page style with running titles in the head. - With the classes \Class{scrbook}\IndexClass{scrbook} and - \Class{scrreprt}\IndexClass{scrreprt} the titles of chapters and - sections are repeated in the head -- with {\KOMAScript} on the outer - side, with the standard classes on the inner side. The page number - comes with {\KOMAScript} on the outer side of the foot, with the - standard classes it comes on the inner side of the head. In - one-sided layouts only the headings of the chapters are used and - are, with {\KOMAScript}, centered in the head. The page numbers are - set with {\KOMAScript} centered in the foot. - \OnlyAt{\Class{scrartcl}}\Class{scrartcl}\IndexClass{scrartcl} - behaves similarly, but starting a level deeper in the section - hierarchy with sections and subsections, because the chapter level - does not exist in this case. - - While the standard classes automatically set running headings always - in capitals, {\KOMAScript} applies the style of the title. This has - several typographic reasons. Capitals as a decoration are actually - too strong. If one applies them nevertheless, they should be set - with a smaller type size and tighter spacing. The standard classes - don't take these points in consideration. -\item [myheadings] corresponds mostly to the page style - \PValue{headings}, but the running headings s are not automatically - produced, but have to be defined by the user. The commands \Macro - {markboth}\IndexCmd{markboth} and - \Macro{markright}\IndexCmd{markright} can be used for that purpose. -\end{description} -Besides, the form of the page styles \PValue{headings} and -\PValue{myheadings} is affected by each of the four class options -\Option{headsepline}, \Option{headnosepline}, \Option{footsepline} and -\Option {footnosepline} (see \autoref{sec:maincls.layoutOptions}). -The page style starting with the current page is changed by the -command \Macro{pagestyle}. On the other hand \Macro{thispagestyle} -changes only the style of the current page. - -The page style can be set at any time with the help of the -\Macro{pagestyle} command and takes effect with the next page that is -output. Usually one sets the page style only once at the beginning of the -document or in the preamble. To change the page style of the current -page one uses the \Macro{thispagestyle} command. This also happens at -some places in the document automatically. For example, the -instruction \Macro{thispagestyle}\PParameter{plain} is issued -implicitly on the first page of a chapter. - -Please note that the change between automatic and manual running -headings is not performed by page style changes when using the -\Package{scrpage2} package, but instead special instructions must be -used. The page styles \PValue{headings} and \PValue{myheadings} should -not be used together with this package (see -\autoref{cha:scrpage}). -% -\EndIndex{Cmd}{pagestyle}% -\EndIndex{Cmd}{thispagestyle}% -\EndIndex{Pagestyle}{empty}% -\EndIndex{Pagestyle}{plain}% -\EndIndex{Pagestyle}{headings}% -\EndIndex{Pagestyle}{myheadings}% - -\BeginIndex[indexother]{}{type style}% -In order to change the type style used in the head, foot or for the -page number\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}}% -, please use the interface described in -\autoref{sec:maincls.font}. The same element is used for head and -foot, which you can designate equivalently with -\FontElement{pagehead}\IndexFontElement{pagehead} or -\FontElement{pagefoot}\IndexFontElement{pagefoot}. The element for -the page number within the head or foot is called -\FontElement{pagenumber}\IndexFontElement{pagenumber}. The default -settings can be found in \autoref{tab:maincls.defaultFontsHeadFoot}. -% -% -\begin{table} - \centering% - \begin{tabular}{ll} - Element & Default value \\\hline\\[-1.75ex] - \FontElement{pagefoot}\IndexFontElement{pagefoot} & - \Macro{normalfont}\Macro{normalcolor}\Macro{slshape} \\ - \FontElement{pagehead}\IndexFontElement{pagehead} & - \Macro{normalfont}\Macro{normalcolor}\Macro{slshape} \\ - \FontElement{pagenumber}\IndexFontElement{pagenumber} & - \Macro{normalfont}\Macro{normalcolor}\\ - \end{tabular} - \caption{Default values for the elements of a page style} - \label{tab:maincls.defaultFontsHeadFoot} -\end{table} -% -\begin{Example} - Assume that you want to set head and foot in a smaller type size and - in italics. However, the page number should not be set in italics - but bold. Apart from the fact that the result will look horribly, - you can reach this as follows: - \begin{small} -\begin{verbatim} - \setkomafont{pagehead}{\normalfont\normalcolor\itshape% - \small} - \setkomafont{pagenumber}{\normalfont\bfseries} -\end{verbatim} - \end{small} - If you want only that in addition to the default slanted variant a - smaller type size is used, it is sufficient to use the following: - \begin{small} -\begin{verbatim} - \addtokomafont{pagefoot}{\small} -\end{verbatim} - \end{small} - As you can see, the last example uses the element - \FontElement{pagefoot}. You can achieve the same result using - \PValue{pagehead} instead (see - \autoref{tab:maincls.elementsWithoutText} on - \autopageref{tab:maincls.elementsWithoutText}). -\end{Example} -It is not possible to use these methods to force capitals to be used -automatically for the running headings. For that, please use the -\Package{scrpage2} package (see \autoref{cha:scrpage}). - -If you define your own page styles, the commands -\Macro{usekomafont}\PParameter{pagehead} and -\Macro{usekomafont}\PParameter {pagenumber} can find a meaningful use. -If you use for that not the \KOMAScript{} package \Package{scrpage2} -(see \autoref{cha:scrpage}), but, for example, the package -\Package{fancyhdr}\IndexPackage{fancyhdr} (see -\cite{package:fancyhdr}), you can use these commands in your -definitions. Thereby you can remain compatible with \KOMAScript. If -you do not use these commands in your own definitions, changes like -those shown in the previous examples have no effect. The packages -\Package{scrpage}\IndexPackage{scrpage} and -\Package{scrpage2}\IndexPackage {scrpage2} take care to keep the -maximum possible compatibility with other packages. -% -\EndIndex[indexother]{}{type style}% - - -\begin{Declaration} - \Macro{titlepagestyle}\\ - \Macro{partpagestyle}\\ - \Macro{chapterpagestyle}\\ - \Macro{indexpagestyle} -\end{Declaration}% -\BeginIndex{Cmd}{titlepagestyle}% -\BeginIndex{Cmd}{partpagestyle}% -\BeginIndex{Cmd}{chapterpagestyle}% -\BeginIndex{Cmd}{indexpagestyle}% -For some pages a different page style is chosen with the help of the -command \Macro{thispagestyle}. Which page style this actually is, is -defined by these four macros. The default values for all four cases is -\PValue{plain}. The meaning of these macros can be taken from the -following list: -\begin{labeling}[~--]{\Macro{chapterpagestyle}} -\item[\Macro{titlepagestyle}] Page style for a title page when using - \emph{in-page} titles. -\item[\Macro{partpagestyle}] Page style for the pages with - \Macro{part} titles. -\item[\Macro{chapterpagestyle}] - \OnlyAt{\Class{scrbook}\and\Class{scrreprt}} Page style for the - first page of a chapter. -\item[\Macro{indexpagestyle}] Page style for the first page of the index. -\end{labeling} - -The page styles can be redefined with the \Macro{renewcommand} macro. - -\begin{Example} - Assume that you want the pages with a \Macro{part} heading to have - no number. Then you can use the following command, for example in - the preamble of your document: - \begin{small} -\begin{verbatim} - \renewcommand*{\partpagestyle}{empty} -\end{verbatim} - \end{small} - As mentioned previously, the page style \PValue{empty} is exactly - what is required in this example. Naturally you can also use a - user-defined page style. - - Assume you have defined your own page style for initial chapter pages - with the package \Package{scrpage2} (see - \autoref{cha:scrpage}). You have given to this page style the - fitting name \PValue{chapter}. To actually use this style, you must - redefine the macro \Macro{chapterpagestyle} accordingly: - \begin{small} -\begin{verbatim} - \renewcommand*{\chapterpagestyle}{chapter} -\end{verbatim} - \end{small} - - Assume that you want that the table of contents of a book to - have no page numbers. However, everything after the table of - contents should work - again with the page style \PValue{headings}, as well as with - \PValue{plain} on every first page of a chapter. You can use the - following commands: - \begin{small} -\begin{verbatim} - \clearpage - \pagestyle{empty} - \renewcommand*{\chapterpagestyle}{empty} - \tableofcontents - \clearpage - \pagestyle{headings} - \renewcommand*{\chapterpagestyle}{plain} -\end{verbatim} - \end{small} - - The redefinition of the other page styles is done in the same way. -\end{Example} -\begin{Explain} - Whoever thinks that it is possible to put running headings on the - first page of a chapter by using the command -\begin{verbatim} - \renewcommand*{\chapterpagestyle}{headings} -\end{verbatim} - will be surprised at the results. - For sure, the page style \PValue{headings} is thereby applied to the - initial page of a chapter. But nevertheless no running headings appear - when using the \Option{openright} option. - The reason for this behaviour can be found in the \LaTeX{} - core. There, the command \Macro{rightmark}, that generates the marks - for right-hand pages, is defined with; -\begin{verbatim} - \let\@rightmark\@secondoftwo - \def\rightmark{\expandafter\@rightmark\firstmark\@empty\@empty} -\end{verbatim} - The right-hand mark is set with \Macro{firstmark}. \Macro{firstmark} - contains the left-hand and right-hand marks that were first set - for a page. Within \Macro{chapter}, \Macro{markboth} is used to set - the left mark to the chapter header and the right mark to empty. - Hence, the first right - mark on a chapter beginning with a right-hand page is empty. Therefore, - the running heading is also empty on those pages. - - You could redefine \Macro{rightmark} in the preamble so that the - last mark on the page is used instead of the first: -\begin{verbatim} - \makeatother - \renewcommand*{\rightmark}{% - \expandafter\@rightmark\botmark\@empty\@empty} - \makeatletter -\end{verbatim} - This would however cause the running heading of the first page of a - chapter to use the title of the last section in the page. This is - confusing and should be avoided. - - It is also confusing (and hence should be avoided) to have as - running heading of the first page of a chapter the chapter title - instead of the the section title. Therefore, the current behavior - should be considered to be correct. -\end{Explain} -% -\EndIndex{Cmd}{titlepagestyle}% -\EndIndex{Cmd}{partpagestyle}% -\EndIndex{Cmd}{chapterpagestyle}% -\EndIndex{Cmd}{indexpagestyle}% - - -\begin{Declaration} - \Macro{clearpage}\\ - \Macro{cleardoublepage}\\ - \Macro{cleardoublestandardpage}\\ - \Macro{cleardoubleplainpage}\\ - \Macro{cleardoubleemptypage} -\end{Declaration}% -\BeginIndex{Cmd}{clearpage}% -\BeginIndex{Cmd}{cleardoublepage}% -\BeginIndex{Cmd}{cleardoublestandardpage}% -\BeginIndex{Cmd}{cleardoubleplainpage}% -\BeginIndex{Cmd}{cleardoubleemptypage}% -The \LaTeX{} core contains the \Macro{clearpage} command, which takes -care of the fact that all floats that have not yet been output and -starts a new page. There exists the instruction -\Macro{cleardoublepage} which works like \Macro{clearpage} but that, -in the double-sided layouts (see layout option \Option{twoside} in -\autoref{sec:maincls.layoutOptions}) starts a new right-hand page. -An empty left page in the current page style is output if necessary. - -With \Macro{cleardoublestandardpage} \KOMAScript{} works as described -above. The \Macro{cleardoubleplainpage} command changes the page -style of the empty left page to \PValue{plain} in order to suppress -the running heading. Analogously, the page style \PValue{empty} is -applied to the empty page with \Macro{cleardoubleemptypage}, -suppressing the page number as well as the runnning title. The page is -thus entirely empty. However, the approach used by -\Macro{cleardoublepage} is dependent on the layout options -\Option{cleardoublestandard}, \Option{cleardoubleplain} and -\Option{cleardoubleempty} described in -\autoref{sec:maincls.layoutOptions} and acts according to the -active option. -% -\EndIndex{Cmd}{clearpage}% -\EndIndex{Cmd}{cleardoublepage}% -\EndIndex{Cmd}{cleardoublestandardpage}% -\EndIndex{Cmd}{cleardoubleplainpage}% -\EndIndex{Cmd}{cleardoubleemptypage}% - - -\begin{Declaration} - \Macro{ifthispageodd}\Parameter{true}\Parameter{false} -\end{Declaration}% -\BeginIndex{Cmd}{ifthispageodd}% -\begin{Explain}% - A peculiarity of \LaTeX{} consists in the fact that it is not - possible to determine on which page the current text will fall. It - is also difficult to say whether the current page has an odd or an - even page number. Now some will argue that there is, nevertheless, - the \TeX test macro \Macro{ifodd} which one needs only to apply to - the current page counter. However, this is an error. At the time of - the evaluation of such a test \LaTeX{} does not know at all whether - the text just processed will be typeset on the current page or only - on the next. The page breaks take place not while reading the paragraph, - but only in the \emph{output} routine of \LaTeX{}. However, at that - moment a command of the form \verb|\ifodd\value{page}| would already - have been completely evaluated. - - To find out reliably whether a text falls on an even or odd - page, one must usually work with a label and a page reference to - this label. One must also take special precautionary measures during - the first \LaTeX{} run, when the label is not yet known. -\end{Explain} -If one wants to find out with {\KOMAScript} whether a text falls on an -even or odd page, one can use the \Macro {ifthispageodd} command. The -\PName{true} argument is executed only if the command falls on an odd -page. Otherwise the \PName{false} argument is executed. - -\begin{Explain} - More precisely stated, the question is not where the text is, but - whether a page reference to a label placed in this location would - refer to an odd or an even page. -\end{Explain} -\begin{Example} - Assume that you want to indicate if an odd or even page is - output. This could be achieved with the command: - \begin{small} -\begin{verbatim} - This is a page with an \ifthispageodd{odd}{even} - page number. -\end{verbatim} - \end{small} - The output would then be: - \begin{quote} - This is a page with an \ifthispageodd{odd}{even} - page number. - \end{quote} -\end{Example} - -Because the \Macro{ifthispageodd} command uses a mechanism that is -very similar to a label and a reference to it, at least two \LaTeX{} -runs are required after every text modification. Only then the -decision is correct. In the first run a heuristic is used to make the -first choice. - - -\begin{Explain} - There are situations where the \Macro{ifthispageodd} command never - leads to the correct result. Suppose that the command is used within - a box. A box is set by \LaTeX{} always as a whole. No page breaks - take place inside. Assume further that the \PName{true} part is very - big, but the \PName{false} part is empty. If we suppose further that - the box with the \PName {false} part still fits on the current, even - page, but that with the \PName{true} part it does not. Further - assume that \KOMAScript{} heuristically decides for the first run - that the \PName{true} part applies. The decision is wrong and is - revised in the next run. The \PName{false} part is thereby - processed, instead of the \PName{true} part. The decision must again - be revised in the next run and so on. - - These cases are rare. Nevertheless it should not be said that I have - not pointed out that they are possible. -\end{Explain} -% -\EndIndex{Cmd}{ifthispageodd} - -\begin{Declaration} - \Macro{pagenumbering}\Parameter{numbering style} -\end{Declaration} -\BeginIndex{Cmd}{pagenumbering}% -This command works the same way in \KOMAScript{} as in the standard -classes. More precisely it is a command from the \LaTeX{} kernel. You -can specify with this command the \PName{numbering style} of page -numbers. The changes take effect immediately, hence starting with the -page that contains the command. The possible settings can be found in -\autoref{tab:numberKind}. Using the command \Macro{pagenumbering} -also resets the page counter\Index{page counter}\Index{page number}. -Thus the page number of the next page which \TeX{} outputs will have -the number 1 in the style \PName{numbering style}. -% -\begin{table} -\centering -\begin{tabular}{lll} -numbering style & example & description \\\hline\\[-2ex] -\PValue{arabic} & 8 & Arabic numbers \\ -\PValue{roman} & viii & lower-case Roman numbers \\ -\PValue{Roman} & VIII & upper-case Roman numbers \\ -\PValue{alph} & h & letters \\ -\PValue{Alph} & H & capital letters \\ -\end{tabular} -\caption{Available numbering styles of page numbers} -\label{tab:numberKind} -\end{table} -% -\EndIndex{Cmd}{pagenumbering} - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Titles} -\label{sec:maincls.titles} - -\begin{Explain} - After having described the options and some general issues, we begin - the document where it usually begins: with the titles. The titles - comprise everything that belongs in the widest sense to the title of - a document. Like already mentioned in - \autoref{sec:maincls.layoutOptions}, we can distinguish - between title pages and \emph{in-page} titles. Article classes like - \Class{article} or \Class{scrartcl} have by default \emph{in-page} - titles, while classes like \Class{report}, \Class{book}, - \Class{scrreprt} and \Class{scrbook} have title pages as default. - The defaults can be changed with the class options - \Option{titlepage} and \Option{notitlepage}. -\end{Explain} - - -\begin{Declaration} - \Environment{titlepage} -\end{Declaration}% -\BeginIndex{Env}{titlepage}% -With the standard classes and with {\KOMAScript} all title pages are -defined in a special environment, the \Environment{titlepage} -environment. This environment always starts a new page -- in the -two-sided layout a new right page. For this page, the style is changed -as by \Macro{thispagestyle}\PParameter{empty}, so that neither page -number nor running title are output. At the end of the environment the -page is automatically shipped out. Should you not be able to use the -automatic layout of the title page, it is advisable to design a new -one with the help of this environment. - - -\begin{Example} - Assume you want a title page on which only the word " ` Me " ' - stands at the top on the left, as large as possible and in bold -- - no author, no date, nothing else. The following document makes just - that: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \begin{titlepage} - \textbf{\Huge Me} - \end{titlepage} - \end{document} -\end{verbatim} - \end{small} - Simple? Right. -\end{Example} -% -\EndIndex{Env}{titlepage} - -\begin{Declaration} - \Macro{maketitle}\OParameter{page number} -\end{Declaration}% -\BeginIndex{Cmd}{maketitle}% -While the the standard classes produce a title page that may have the -three items title, author and date, with {\KOMAScript} the -\Macro{maketitle} command can produce up to six pages. - -In contrast to the standard classes, the \Macro{maketitle} macro in -{\KOMAScript} accepts an optional numeric argument. If it is used, the -number is made the page number of the first title page. However, this -page number is not output, but affects only the numbering. You should -choose an odd number, because otherwise the whole counting gets mixed -up. In my opinion there are only two meaningful applications for the -optional argument. On the one hand, one could give to the -half-title\Index[indexmain]{half-title} the logical page number \(-1\) -in order to give the full title page the number 1. On the other hand -it could be used to start at a higher page number, for instance, 3, 5, -or 7 to accommodate other title pages added by the publishing house. -The optional argument is ignored for \emph{in-page} titles. However -the page style of such a title page can be changed by redefining the -\Macro{titlepagestyle} macro. For that see -\autoref{sec:maincls.pageStyle}. - -The following commands do not lead necessarily to the production of -the titles. The typesetting of the title pages is always done by -\Macro{maketitle}. The commands explained below only define the -contents of the title pages. It is however not necessary, and when -using the \Package{babel} package\IndexPackage{babel} not recommended, -to use these in the preamble before \Macro{begin}\PParameter{document} -(see \cite{package:babel}). Examples can be found at the end of this -section. - -\begin{Declaration} - \Macro{extratitle}\Parameter{half-title} -\end{Declaration}% -\BeginIndex{Cmd}{extratitle}% -\begin{Explain}% - In earlier times the inner book was often not protected from dirt by a cover. - This task was then taken over by the first page of the book which - carried mostly a shortened title, precisely the \emph{half-title}. - Nowadays the extra page is often applied before the real full title - and contains information on the publisher, series number and similar - information. -\end{Explain} - -With {\KOMAScript} it is possible to include a page before the real -title page. The \PName{half-title} can be arbitrary text -- even -several paragraphs. The contents of the \PName {half-title} are output -by {\KOMAScript} without additional formatting. Their organisation is -completely left to the user. The back of the half-title remains empty. -The half-title has its own title page even when \emph{in-page} titles -are used. The output of the half-title defined with \Macro{extratitle} -takes place as part of the titles produced by \Macro{maketitle}. - - -\begin{Example} - Let's go back to the previous example and assume - that the spartan "Me" is the half-title. The full title should - still follow the half-title. One can proceed as follows: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \extratitle{\textbf{\Huge Me}} - \title{It's me} - \maketitle - \end{document} -\end{verbatim} - \end{small} - You can center the half-title and put it a little lower down the page: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \extratitle{\vspace*{4\baselineskip} - \begin{center}\textbf{\Huge Me}\end{center}} - \title{It's me} - \maketitle - \end{document} -\end{verbatim} - \end{small} - The command \Macro{title} is necessary in order to make the examples - above work correctly. It is explained next. -\end{Example} -% -\EndIndex{Cmd}{extratitle} - - -\begin{Declaration} - \Macro{titlehead}\Parameter{Titlehead}\\ - \Macro{subject}\Parameter{Subject}\\ - \Macro{title}\Parameter{Title}\\ - \Macro{author}\Parameter{Author}\\ - \Macro{date}\Parameter{Date}\\ - \Macro{publishers}\Parameter{Publisher}\\ - \Macro{and}\\ - \Macro{thanks}\Parameter{Footnote} -\end{Declaration}% -\BeginIndex{Cmd}{titlehead}% -\BeginIndex{Cmd}{subject}% -\BeginIndex{Cmd}{title}% -\BeginIndex{Cmd}{author}% -\BeginIndex{Cmd}{date}% -\BeginIndex{Cmd}{publishers}% -\BeginIndex{Cmd}{and}% -\BeginIndex{Cmd}{thanks}% -The contents of the full title page are defined by six elements. The -\PName{title head}\Index[indexmain]{title head} is defined with the -command \Macro {titlehead}. It is typeset in regular paragraph style -and full width at the top of the page. It can be freely designed by -the user. - -The \PName{Subject}\Index[indexmain]{subject} is output immediately -above the \PName{Title}. A slightly larger font size than the regular -one is used. - -The \PName{Title} is output with a very large font size. -Besides\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} the change -of size, the settings for the element -\FontElement{title}\IndexFontElement{title} also take effect. By -default these settings are identical to the settings for the element -\FontElement{sectioning}\IndexFontElement{sectioning} (see -\autoref{tab:maincls.elementsWithoutText}). The font size is however -not affected (see \autoref{tab:maincls.elementsWithoutText}). The -default settings can be changed with the commands of -\autoref{sec:maincls.font}. - -Below the \PName{Title} appears the -\PName{Author}\Index[indexmain]{author}. Several authors can be -specified in the argument of \Macro{author}. They should be separated -by \Macro{and}. - -Below the author or authors appears the date\Index{date}. The default -value is the present date, as produced by -\Macro{today}\IndexCmd{today}. The \Macro{date} command accepts -arbitrary information or even an empty argument. - -Finally comes the \PName{Publisher}\Index[indexmain]{publisher}. Of -course this command can also be used for any other information of -little importance. If necessary, the \Macro{parbox} command can be -used to typeset this information over the full page width like a -regular paragraph. Then it is to be considered equivalent to the -title head. However, note that this field is put above any existing -footnotes. - -Footnotes\Index{footnotes} on the title page are produced not with -\Macro{footnote}, but with \Macro{thanks}. They serve typically for -notes associated with the authors. Symbols are used as footnote -markers instead of numbers. - -With the exception of \PName{titlehead} and possible footnotes, all -the items are centered horizontally. The information is summarised in -\autoref{tab:maincls.mainTitle}. -\begin{table} - \centering - \begin{tabular}{llll} - Element & Command & Font - & Justification \\ - \hline\rule{0pt}{2.7ex}% - Title head & \Macro{titlehead} & \Macro{normalsize} - & Regular paragraph \\ - Subject & \Macro{subject} & \Macro{Large} - & centered \\ - Title & \Macro{title} & \Macro{huge} - & centered \\ - Authors & \Macro{author} & \Macro{Large} - & centered \\ - Date & \Macro{date} & \Macro{Large} - & centered \\ - Publishers & \Macro{publishers} & \Macro{Large} - & centered \\ - \end{tabular} - \caption[Main title]{Font size and horizontal positioning of the - elements in the main title page in the order of their vertical - position from top to bottom when typeset with \Macro{maketitle}} - \label{tab:maincls.mainTitle} -\end{table} - - -\begin{Example} - Assume you are writing a dissertation. The title page should have - the university's name and address at the top, flush left, and the - semester flush right. As usual a title is to be used, including - author and delivery date. - The advisor must also be indicated, together with the fact that the - document is a dissertation. This can be obtained as follows: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \titlehead{{\Large Unseen University - \hfill SS~2002\\} - Higher Analytical Institut\\ - Mythological Rd\\ - 34567 Etherworld} - \subject{Dissertation} - \title{Digital space simulation with the DSP\,56004} - \author{Fuzzy George} - \date{30. February 2002} - \publishers{Advisor Prof. John Excentric Doe} - \maketitle - \end{document} -\end{verbatim} - \end{small} -\end{Example} - - -\begin{Explain} -A frequent misunderstanding concerns the role of the full title side. -It is often erroneous assumed that the cover (or dust cover) is meant. -Therefore, it is frequently expected that the title page does not follow -the normal page layout, but have equally large left and right margins. - -However if one takes a book and opens it, one hits very quickly on at -least one title page under the cover within the so-called inner book. -Precisely these title pages are produced by \Macro{maketitle}. Like it -happens with the half-title, the full title page belongs to the inner -book, and therefore should have the same page layout as the rest of -the document. A cover is actually something that should be created in -a separate document. The cover often has a very individual format. It -can also be designed with the help of a graphics or DTP program. A -separate document should also be used because the cover will be -printed on a different medium, possibly cardboard, and possibly with -another printer. -\end{Explain} -% -\EndIndex{Cmd}{titlehead}% -\EndIndex{Cmd}{subject}% -\EndIndex{Cmd}{title}% -\EndIndex{Cmd}{author}% -\EndIndex{Cmd}{date}% -\EndIndex{Cmd}{publishers}% -\EndIndex{Cmd}{and}% -\EndIndex{Cmd}{thanks}% - - - -\begin{Declaration} - \Macro{uppertitleback}\Parameter{titlebackhead}\\ - \Macro{lowertitleback}\Parameter{titlebackfoot} -\end{Declaration}% -\BeginIndex{Cmd}{uppertitleback}% -\BeginIndex{Cmd}{lowertitleback}% -% -With the standard classes, the back of the title page is left empty. -However, with {\KOMAScript} the back of the full title page can be -used for other information. Exactly two elements which the user can -freely format are recognized: \PName {titlebackhead} and \PName -{titlebackfoot}. The head can reach up to the foot and vice versa. If -one takes this manual as an example, the exclusion of liability was -set with the help of the \Macro{uppertitleback} command. -\EndIndex{Cmd}{uppertitleback}% -\EndIndex{Cmd}{lowertitleback}% - - -\begin{Declaration} - \Macro{dedication}\Parameter{dedication} -\end{Declaration}% -\BeginIndex{Cmd}{dedication}% -{\KOMAScript} provides a page for dedications. The -dedication\Index{dedication} is centered and uses a slightly larger -type size. The back is empty like the back page of the half-title. -The dedication page is produced by \Macro{maketitle} and must -therefore be defined before this command is issued. - -\begin{Example} - This time assume that you have written a poetry book and you want to - dedicate it to your wife. A solution would look like this: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \extratitle{\textbf{\Huge In Love}} - \title{In Love} - \author{Prince Ironheart} - \date{1412} - \lowertitleback{This poem book was set with% - the help of {\KOMAScript} and {\LaTeX}} - \uppertitleback{Selfmockery Publishers} - \dedication{To my treasure\\ - in eternal love.} - \maketitle - \end{document} -\end{verbatim} - \end{small} -\end{Example} -% -\EndIndex{Cmd}{dedication} -% -\EndIndex{Cmd}{maketitle} - - -\begin{Declaration} - \Environment{abstract} -\end{Declaration}% -\BeginIndex{Env}{abstract}% -Particularly\OnlyAt{\Class{scrartcl}\and\Class{scrreprt}} with -articles, more rarely with reports, there is a summary\Index{summary} -directly under the title and before the table of contents. Therefore, -this is often considered a part of the titles. Some {\LaTeX} classes -offer a special environment for this summary, the -\Environment{abstract} environment. This is output directly, at it is -not a component of the titles set by \Macro{maketitle}. Please note -that \Environment{abstract} is an environment, not a command. Whether -the summary has a heading or not is determined by the options -\Option{abstracton} and \Option{abstractoff} (see -\autoref{sec:maincls.formattingOptions}) - -With books (\Class{scrbook}) the summary is frequently a component of -the introduction or a separate chapter at the end of the document. -Therefore no \Environment{abstract} environment is provided. When -using the class \Class{scrreprt} it is surely worth considering -whether one should not proceed likewise. -% -\EndIndex{Env}{abstract} - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{The Table of Contents} -\label{sec:maincls.toc} - -The titles are normally followed by the table of contents\Index{table -of contents}. -Often the table of contents is followed by lists of floats, e.g. lists -of tables and figures, see \autoref{sec:maincls.floats}). - -\begin{Declaration} - \Macro{tableofcontents}\\ - \Macro{contentsname} -\end{Declaration}% -\BeginIndex{Cmd}{tableofcontents}% -\BeginIndex{Cmd}{contentsname}% - The production of the table of contents is done by the -\Macro{tableofcontents} command. -To get a correct table of contents, at least two \LaTeX{} runs are -necessary after every change. The option \Option{liststotoc} causes -the lists of figures and tables to be included in the table of -contents. \Option{idxtotoc} is the corresponding option for the index. -This is rather uncommon in classical typography. One finds the -bibliography included in the table of contents a little bit more -frequently. This can be obtained with the options \Option{bibtotoc} -and \Option{bibtotocnumbered}. These options are explained in -\autoref{sec:maincls.tocOptions}. - -The table of contents is not set as a numbered chapter and is -therefore subjected to the side effects of the standard -\Macro{chapter*} command, which are described in -\autoref{sec:maincls.structure}. However, the running -titles\Index {running title} for left and right pages are correctly -filled with the heading of the table of contents. The text of the -heading is given by the macro \Macro{contentsname}. -% -\EndIndex{Cmd}{tableofcontents}% -\EndIndex{Cmd}{contentsname}% - - -There is only one variant for the construction of the table of -contents. The titles of the sectional units are indented so that the -unit number is flush left to the edge of the title of the next upper -unit. However, the place for the numbers is thereby limited and is -only sufficient for a little bit more than 1.5 places per level. -Should this become a problem, help can be found in \cite{DANTE:FAQ}. - -The entry for the highest sectional unit below \Macro{part}, i.e., -\Macro{chapter} with \Class{scrbook}\IndexClass{scrbook} and -\Class{scrreprt}\IndexClass{scrreprt} or \Macro{section} with -\Class{scrartcl}\IndexClass {scrartcl} is not indented. It is however -affected by the settings of the element -\FontElement{sectioning}\IndexFontElement{sectioning} (see -\autoref{tab:maincls.elementsWithoutText}). There is no point -between the text of the sectional unit heading and the page number. The -typographic reasons for this are that the font is usually different -and the desire for appropriate emphasis. The table of contents of this -manual is a good example of these considerations. - - -\begin{Declaration} - \Counter{tocdepth} -\end{Declaration}% -\BeginIndex{Counter}{tocdepth}% -Normally, the units included in the table of contents are all the -units from \Macro{part} to \Macro{subsection} (for the classes -\Class{scrbook} and \Class{scrreprt}) or from \Macro{part} to -\Macro{subsubsection} (for the class \Class{scrartcl}). The inclusion -of a sectional unit in the table of contents is controlled by the -counter \Counter{tocdepth}. It has the value \(-1\) for \Macro{part}, -\(0\) for \Macro{chapter} and so on. Since the class \Class{scrartcl} has -no \Macro{chapter}, the counter starts with 0 for the \Macro{part}. By -setting, incrementing or decrementing the counter, one can choose the -lowest sectional unit level to be included in the table of contents. -The same happens with the standard classes. - -The user of the \Package{scrpage2}\IndexPackage{scrpage2} package (see -\autoref{cha:scrpage}) does not need to remember the numerical -values of each sectional unit. They are given by the values of the -macros \Macro{chapterlevel}, \Macro{sectionlevel} and so on down to -\Macro{subparagraphlevel}. -\begin{Example} - Assume that you are preparing an article that uses the sectional - unit \Macro{subsubsection}. However, you don't want this sectional - unit to appear in the table of contents. The preamble of your - document might contain the following: - \begin{small} -\begin{verbatim} - \documentclass{scrartcl} - \setcounter{tocdepth}{2} -\end{verbatim} -\end{small} -You set the counter \Counter{tocdepth} to 2, because you know that -this is the value for \Macro{subsection}. If you know that -\Class{scrartcl} normally includes all levels up to -\Macro{subsubsection} in the table of contents, you can simply -decrement the counter \Counter{tocdepth} by one: -\begin{small} -\begin{verbatim} - \documentclass{scrartcl} - \addtocounter{tocdepth}{-1} -\end{verbatim} -\end{small} -How much you should add to or take from the \Counter{tocdepth} counter -can also be found by looking at the table of contents after the first -\LaTeX{} run. -\end{Example} -% -\EndIndex{Counter}{tocdepth}% - -\section{Lists of Floats} - -As a rule, the lists of floats\index{float environments}, -e.g. list of tables\index{list of tables} and -list of figures\index{list of figures}, can be found directly -after the table of contents. -In some documents, they even can be found in the appendix. -However, the author of this manual prefers the location -after the table of contents, therefore it is discussed here. - -\begin{Declaration} - \Macro{listoftables}\\ - \Macro{listoffigures} -\end{Declaration} -\BeginIndex{Cmd}{listoftables}% -\BeginIndex{Cmd}{listoffigures}% -These commands generate a list of tables or figures. -Changes in the document, that modify these lists will -require two \LaTeX{} runs in order to take effect. -The layout of the lists can be influenced by the options -\Option{listsindent} and \Option{listsleft}, see -\autoref{sec:maincls.listsOptions}. -Moreover, the options \Option{liststotoc} and -\Option{liststotocnumbered} have indirect influence, -see \autoref{sec:maincls.tocOptions}). -% -\EndIndex{Cmd}{listoftables}% -\EndIndex{Cmd}{listoffigures}% - - -\section{Main Text} -\label{sec:maincls.mainText} - -This section explains everything provided by \KOMAScript{} -in order to write the main text. The main text is the -part that the author should focus on first. -Of course this includes tables, figures and comparable -information as well. - -\subsection{Separation} -\label{sec:maincls.separation} - -\begin{Declaration} - \Macro{frontmatter}\\ - \Macro{mainmatter}\\ - \Macro{backmatter} -\end{Declaration}% -\BeginIndex{Cmd}{frontmatter}% -\BeginIndex{Cmd}{mainmatter}% -\BeginIndex{Cmd}{backmatter}% -Before\OnlyAt{\Class{scrbook}} getting to the main text eventually -we will have a short look at three commands which exist both in the -standard class \Class{book} and the {\KOMAScript} class -\Class{scrbook}. They are used for separation of the -\emph{prefix}\Index{prefix}, the \emph{main text}\Index{main text} and -the \emph{appendix}\Index{appendix} in a book. - -The macro \Macro{frontmatter} introduces the prefix in which roman -numbers are used for the page numbers. Chapter headings in a prefix -don't have any numbers. The foreword can be set as a normal chapter. -A foreword should never be divided into sections but kept short. -Therefore there is no need for a deeper structuring than chapter. - -\Macro{mainmatter} introduces the main text. If there is no prefix -this command can be omitted. The default in the main text is arabic -page numbering (re)starting with 1. - -The appendix is introduced with \Macro{backmatter}. Opinions differ in -what should be part of the prefix. So in some cases you will only find -the bibliography\Index{bibliography}, in some cases only the -index\Index{index} and in other cases both of it in the appendix. -Besides, the appendix is similar to the prefix. -% -\EndIndex{Cmd}{frontmatter}% -\EndIndex{Cmd}{mainmatter}% -\EndIndex{Cmd}{backmatter}% - - -\subsection{Structuring the Document}\Index[indexmain]{structuring} -\label{sec:maincls.structure} - -\begin{Declaration} - \Macro{part}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{chapter}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{section}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{subsection}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{subsubsection}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{paragraph}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{subparagraph}\OParameter{Short version}\Parameter{Heading} -\end{Declaration}% -\BeginIndex{Cmd}{part}% -\BeginIndex{Cmd}{chapter}% -\BeginIndex{Cmd}{section}% -\BeginIndex{Cmd}{subsection}% -\BeginIndex{Cmd}{subsubsection}% -\BeginIndex{Cmd}{paragraph}% -\BeginIndex{Cmd}{subparagraph}% -The standard sectioning commands in {\KOMAScript} work quite similar -to the standard classes. Normally the section headings show up in the -table of contents exactly as they are entered in the text. The entry -for the table of contents can be specified as an optional argument in -front of the actual heading. -\OnlyAt{\Class{scrartcl}}\Macro{chapter} only exists in book or -report classes but not in article classes. In addition to this, the -command \Macro{chapter} in {\KOMAScript} differs substantially from -the version in the standard class. While in the standard classes every -chapter number is used together with the prefix ``Chapter'' on a -separate line above the heading, {\KOMAScript} only places the chapter -number in front of the heading. - -Please note that \Macro{part} and \Macro{chapter} change the page -style for one page. The applied page style in \KOMAScript{} is defined -in \Macro{partpagestyle} and \Macro{chapterpagestyle} (see -\autoref{sec:maincls.pageStyle}). - -\BeginIndex[indexother]{}{font}% -\BeginIndex[indexother]{}{font size}% -The font of all headings\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -can be changed with the commands -\Macro{setkomafont}\IndexCmd{setkomafont} and -\Macro{addtokomafont}\IndexCmd{addtokomafont} described in -\autoref{sec:maincls.font}. First of all the element -\FontElement{sectioning}\IndexFontElement{sectioning} is used, which -is followed by a specific element for every section level (see -\autoref{tab:maincls.elementsWithoutText}). The font for the element -\FontElement{sectioning}\IndexFontElement{sectioning} is predefined as -\Macro{normalfont}\Macro{normalcolor}\Macro{sffamily}% -\Macro{bfseries}. The default font size for the specific elements depends -on the options \Option{bigheadings}, \Option{normalheadings} and -\Option{smallheadings} (see \autoref{sec:maincls.fontOptions}). The -defaults are listed in \autoref{tab:maincls.structureElementsFont} -% -\begin{table} - \centering% - \begin{tabular}{lll} - class option & element & default\\\hline\\[-1.6ex] - \Option{bigheadings} - & \FontElement{part}\IndexFontElement{part} - & \Macro{Huge} \\ - & \FontElement{partnumber}\IndexFontElement{partnumber} - & \Macro{huge} \\ - & \FontElement{chapter}\IndexFontElement{chapter} - & \Macro{huge} \\ - & \FontElement{section}\IndexFontElement{section} - & \Macro{Large} \\ - & \FontElement{subsection}\IndexFontElement{subsection} - & \Macro{large} \\ - & \FontElement{subsubsection}% - \IndexFontElement{subsubsection} - & \Macro{normalsize} \\ - & \FontElement{paragraph}\IndexFontElement{paragraph} - & \Macro{normalsize} \\ - & \FontElement{subparagraph}\IndexFontElement{subparagraph} - & \Macro{normalsize} \\[1ex] - \Option{normalheadings} - & \FontElement{part} & \Macro{huge} \\ - & \FontElement{partnumber} & \Macro{huge} \\ - & \FontElement{chapter} & \Macro{LARGE} \\ - & \FontElement{section} & \Macro{Large} \\ - & \FontElement{subsection} & \Macro{large} \\ - & \FontElement{subsubsection} & \Macro{normalsize} \\ - & \FontElement{paragraph} & \Macro{normalsize} \\ - & \FontElement{subparagraph} & \Macro{normalsize} \\[1ex] - \Option{smallheadings} - & \FontElement{part} & \Macro{LARGE} \\ - & \FontElement{partnumber} & \Macro{LARGE} \\ - & \FontElement{chapter} & \Macro{Large} \\ - & \FontElement{section} & \Macro{large} \\ - & \FontElement{subsection} & \Macro{normalsize} \\ - & \FontElement{subsubsection} & \Macro{normalsize} \\ - & \FontElement{paragraph} & \Macro{normalsize} \\ - & \FontElement{subparagraph} & \Macro{normalsize} - \end{tabular} - \caption{Default font sizes for different levels of document structuring} - \label{tab:maincls.structureElementsFont} -\end{table} - -\begin{Example} - Suppose you are using the class option \Option{bigheadings} and notice - that the very big headings of document parts are to bold. You could change - this as follows: - \begin{small} -\begin{verbatim} - \setkomafont{sectioning}{\normalcolor\sffamily} - \part{Appendices} - \addtokomafont{sectioning}{\bfseries} -\end{verbatim} - \end{small} - Using the command above you only switch off the font attribute - \textbf{bold} for the heading ``Appendices''. A much more comfortable - and elegant solution is to change all \Macro{part} headings in one go. - This is done either by: - \begin{small} -\begin{verbatim} - \addtokomafont{part}{\normalfont\sffamily} - \addtokomafont{partnumber}{\normalfont\sffamily} -\end{verbatim} - \end{small} - or using: - \begin{small} -\begin{verbatim} - \addtokomafont{part}{\mdseries} - \addtokomafont{partnumber}{\mdseries} -\end{verbatim} - \end{small} - The last version is to be preferred because it gives you the correct - result even when you change the \FontElement{sectioning} - element\IndexFontElement{sectioning} as follows: - \begin{small} -\begin{verbatim} - \setkomafont{sectioning}{\normalcolor\bfseries} -\end{verbatim} - \end{small} - With this change it is possible to set all section levels at once to not - longer use sans serif fonts. -\end{Example} - -Please be warned of using the possibilities of font switching to mix -fonts, font sizes and font attributes excessively. Picking the most -suitable font for a given task is a hard thing even for professionals -and has nothing to do with personal taste of beginners. Please refer -to the citation at the end of \autoref{sec:typearea.tips} and the -following explanation. - -\begin{Explain} - It is possible to use different font types for different section levels - in {\KOMAScript}. As a typographical beginner you should refrain from - using these possibilities for typographical reasons. There is a rule - which states that you should mix fonts only as few as possible. Using - sans serif for headings seems already a breach of this rule. However, - you should know that bold, huge and serif letters are much to heavy for - headings. In general you would have to use a normal instead of a bold - or semi bold font. However, in deeper levels of the structuring a normal - font appears rather leight weighted. On the other hand sans serif fonts - in headings have a very pleasant appearance and are to be used only in - headings. That's why sans serif is the default in {\KOMAScript}. More - variety should be avoided. Font mixing is only for professionals. In - case you want to use other fonts than the standard \TeX-Fonts -- no - matter whether using CM \Index{CM fonts} or EC fonts\Index{EC fonts} -- - you should consult an expert or redefine the font for the element - \FontElement{sectioning}\IndexFontElement{sectioning} as seen in - the example above. You often find the combinations Times and Helvetica - or Palatino with Helvetica. The author of this documentation does not - favour these combinations. -\end{Explain} -\EndIndex[indexother]{}{font}% -\EndIndex[indexother]{}{font size}% -% -\EndIndex{Cmd}{part}% -\EndIndex{Cmd}{chapter}% -\EndIndex{Cmd}{section}% -\EndIndex{Cmd}{subsection}% -\EndIndex{Cmd}{subsubsection}% -\EndIndex{Cmd}{paragraph}% -\EndIndex{Cmd}{subparagraph}% - - -\begin{Declaration} - \Macro{part*}\Parameter{Heading}\\ - \Macro{chapter*}\Parameter{Heading}\\ - \Macro{section*}\Parameter{Heading}\\ - \Macro{subsection*}\Parameter{Heading}\\ - \Macro{subsubsection*}\Parameter{Heading}\\ - \Macro{paragraph*}\Parameter{Heading}\\ - \Macro{subparagraph*}\Parameter{Heading} -\end{Declaration}% -\BeginIndex{Cmd}{part*}% -\BeginIndex{Cmd}{chapter*}% -\BeginIndex{Cmd}{section*}% -\BeginIndex{Cmd}{subsection*}% -\BeginIndex{Cmd}{subsubsection*}% -\BeginIndex{Cmd}{paragraph*}% -\BeginIndex{Cmd}{subparagraph*}% -All sectioning commands exist as ``starred'' versions. They produce -section headings which do not show up in the table of -contents\Index{table of contents}, in the page header\Index{header} -and which are not numbered\Index{numbering}. Not using a headline -often has an unwanted side effect. For example, if a chapter which is -set using \Macro{chapter*} spans over several pages the headline of -the chapter before comes up again. {\KOMAScript} offers a solution -which is described below. -\OnlyAt{\Class{scrartcl}}\Macro{chapter*} only exists in book and -report classes which includes \Class{book}, \Class{scrbook}, -\Class{report} and \Class{scrreport}, but not the article classes -\Class{article} and \Class{scrartcl}. - -Please note that \Macro{part} and \Macro{chapter} change the page -style for one page. The applied style is defined in -\Macro{partpagestyle} and \Macro{chapterpagestyle} in \KOMAScript{} -(see \autoref{sec:maincls.pageStyle}). - -As for the possibilities of font switching\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -the same explanations apply which were given above with the normal -sectioning commands. The elements of structuring are named in the same -way as the ``unstarred'' versions. -% -\EndIndex{Cmd}{part*}% -\EndIndex{Cmd}{chapter*}% -\EndIndex{Cmd}{section*}% -\EndIndex{Cmd}{subsection*}% -\EndIndex{Cmd}{subsubsection*}% -\EndIndex{Cmd}{paragraph*}% -\EndIndex{Cmd}{subparagraph*}% - -\iffalse In the standard classes there are no further sectioning commands. In -particular, there are no commands which produce unnumbered chapters or -sections which show up in the table of contents or in the page header. \fi - -\begin{Declaration} - \Macro{addpart}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{addpart*}\Parameter{Heading}\\ - \Macro{addchap}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{addchap*}\Parameter{Heading}\\ - \Macro{addsec}\OParameter{Short version}\Parameter{Heading}\\ - \Macro{addsec*}\Parameter{Heading} -\end{Declaration}% -\BeginIndex{Cmd}{addpart}% -\BeginIndex{Cmd}{addpart*}% -\BeginIndex{Cmd}{addchap}% -\BeginIndex{Cmd}{addchap*}% -\BeginIndex{Cmd}{addsec}% -\BeginIndex{Cmd}{addsec*}% -In addition to the standard classes {\KOMAScript} offers the new -commands \Macro{addsec} and \Macro{addchap}. They are similar to the -standard commands \Macro{chapter} und \Macro{section} except the -missing numbering. The produce both a running headline and an entry in -the table of contents. The starred versions \Macro{addchap*} and -\Macro{addsec*} are similar to the standard commands \Macro{chapter*} -and \Macro{section*} apart from a tiny but important difference: The -headlines are deleted. This eliminates the side effect of obsolete -headers mentioned above. \OnlyAt{\Class{scrartcl}}\Macro{addchap} -and \Macro{addchap*} of course only exist in book and report classes, -namely \Class{book}, \Class{scrbook}, \Class{report} and -\Class{scrreport}, but not in the article classes \Class{article} and -\Class{scrartcl}. - -Similar to this, the command \Macro{addpart} produces an unnumbered -document part with an entry in the table of contents. Since the -headers are already deleted by \Macro{part} and \Macro{part*} the -problem of obsolete headers doesn't exist. The starred version -\Macro{addpart*} is identical to \Macro{part*} and is only defined for -consistency reasons. - -Please note that \Macro{addpart} and \Macro{addchap} including their -starred versions change the page style for one page. The particular -page style is defined in the macros \Macro{partpagestyle} and -\Macro{chapterpagestyle} (see \autoref{sec:maincls.pageStyle}). - -As for the possibilities of font switching\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -the same explanations apply which were given above with the normal -sectioning commands. The elements of structuring are named in the same -way as the ``unstarred'' versions. -% -\EndIndex{Cmd}{addpart}% -\EndIndex{Cmd}{addpart*}% -\EndIndex{Cmd}{addchap}% -\EndIndex{Cmd}{addchap*}% -\EndIndex{Cmd}{addsec}% -\EndIndex{Cmd}{addsec*}% - - -\begin{Declaration} - \Macro{minisec}\Parameter{Heading} -\end{Declaration}% -\BeginIndex{Cmd}{minisec}% -Sometimes a heading\Index{heading} is wanted which is highlighted but -closely linked to the following text. Such a heading shouldn't be -separated by a vertical skip. - -The command \Macro{minisec} is designed for this situation. This heading -isn't linked to a level of structuring. Such a \emph{Mini-section} -does not produce an entry in the table of contents nor does it receive -any numbering. -\begin{Example} - You have developed a kit for building a mouse trap and want the - documentation separated into the things needed and an assembly - description. Using \Macro{minisec} you could write the following: - \begin{small} -\begin{verbatim} - \minisec{Items needed} - - \begin{flushleft} - 1 plank ($100\times 50 \times 12$)\\ - 1 spring-plug of a beer-bottle\\ - 1 spring of a ball-point pen\\ - 1 drawing pin\\ - 2 screws\\ - 1 hammer\\ - 1 knife - \end{flushleft} - - \minisec{Assembly} - At first one searches the mouse-hole and puts the - drawing pin directly behind the hole. - Thus the mouse cannot escape meanwhile the following - actions. - - Afterwards one knocks in the spring-plug with the hammer - in the mouse-hole. - If the spring-plug's size is not big enough in order to - shut the mouse-hole entirely, then one can utilize - the plank instead and fasten it with the two screws - employing the knife on the mouse-hole. - Instead of the knife one can use a screw-driver as well. -\end{verbatim} - \end{small} - Which gives: - \begin{ShowOutput}[\baselineskip]\setlength{\parindent}{1em} - \minisec{Items needed} - - \begin{flushleft} - 1 plank ($100\times 50 \times 12$)\\ - 1 spring-plug of a beer-bottle\\ - 1 spring of a ball-point pen\\ - 1 drawing pin\\ - 2 screws\\ - 1 hammer\\ - 1 knife - \end{flushleft} - - \minisec{Assembly} - At first one searches the mouse-hole and puts the drawing pin - directly behind the hole. Thus the mouse cannot escape - meanwhile the following actions. - - Afterwards one knocks in the spring-plug with the hammer - in the mouse-hole. - If the spring-plug's size is not big enough in order to - shut the mouse-hole entirely, then one can utilize - the plank instead and fasten it with the two screws - employing the knife on the mouse-hole. - Instead of the knife one can use a screw-driver as well. - - \end{ShowOutput} -\end{Example} - -The font type of the sectioning command \Macro{minisec} can only be -changed using the element -\FontElement{sectioning}\IndexFontElement{sectioning} (see -\autoref{tab:maincls.elementsWithoutText}). There is no specific -element for \Macro{minisec}. This means you can't change the font size -manually. -% -\EndIndex{Cmd}{minisec}% - - -\begin{Declaration} - \Macro{raggedsection} -\end{Declaration}% -\BeginIndex{Cmd}{raggedsection}% -In the standard classes headings are set as justified text. That means -that hyphenated words can occur and headings with more than one line -are stretched up to the text border. This is a rather uncommon -approach in typography. {\KOMAScript} formats the headings left -aligned with hanging indentation using \Macro{raggedsection} with the -definition: -\begin{verbatim} - \newcommand*{\raggedsection}{\raggedright} -\end{verbatim} -This command can be redefined with \Macro{renewcommand}. -\begin{Example} - You prefer justified headings. You write in the preamble of your document: - \begin{small} -\begin{verbatim} - \renewcommand*{\raggedsection}{} -\end{verbatim} - \end{small} - or short: - \begin{small} -\begin{verbatim} - \let\raggedsection\relax -\end{verbatim} - \end{small} - You will get a formatting of the headings which is very close to the - standard classes. Even closer it will get when you combine this change - with the change of the element - \FontElement{sectioning}\IndexFontElement{sectioning} mentioned - above. -\end{Example} -% -\EndIndex{Cmd}{raggedsection}% - - -\begin{Declaration} - \Macro{partformat}\\ - \Macro{chapterformat}\\ - \Macro{othersectionlevelsformat}\Parameter{section name}\\ - \Macro{autodot} -\end{Declaration}% -\BeginIndex{Cmd}{partformat}% -\BeginIndex{Cmd}{chapterformat}% -\BeginIndex{Cmd}{othersectionlevelsformat}% -\BeginIndex{Cmd}{autodot}% -\begin{Explain}% - As you might know, for every counter in {\LaTeX} there is a command - \Macro{the}\PName{counter name}, which gives you the value of the - counter. Depending on the class the counter for a particular level - starting from \Macro{section} (\Class{book}, \Class{scrbook}, - \Class{report}, \Class{scrreprt}) or \Macro{subsection} - (\Class{article}, \Class{scrartcl}) is composed of the counter for the - higher level followed by a dot and the arabic number of the - \PName{counter name} of the respective level.\par -\end{Explain} - -\KOMAScript{} has added to the output of the section number a further -logical level. The counter for the respective heading are formatted -using \Macro{partformat}, \Macro{chapterformat} and -\Macro{othersectionlevelsformat}. -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}Of course the command -\Macro{chapterformat} doesn't exist in the class \Class{scrartcl}. - -As described in \autoref{sec:maincls.formattingOptions} -{\KOMAScript} handles dots in section numbers according to -\cite{DUDEN}. The command \Macro{autodot} makes sure that these rules -are being followed. Except from \Macro{part} in all levels a dot is -followed by a \Macro{enskip}. This is similar to a horizontal skip of -\(0.5\Unit{em}\). - -The command \Macro{othersectionlevelsformat} takes the name of the -section level, such as ``\PName{section}'', ``\PName{subsection}'' -\dots{}, as parameter. As default, only the levels \Macro{part} and -\Macro{chapter} have formatting commands on their own, while all other -section levels are covered by one formatting command only. This has -historical reasons. At the time Werner Lemberg suggested a suitable -extension of {\KOMAScript} for his \Package{CJK} package, only this -differentiation was needed. - -The formatting commands can be redefined using \Macro{renewcommand} to -fit them to your personal needs. The following original definitions -are used by the {\KOMAScript} classes: -\begin{verbatim} - \newcommand*{\partformat}{\partname~\thepart\autodot} - \newcommand*{\chapterformat}{% - \chapappifchapterprefix{\ }\thechapter\autodot\enskip} - \newcommand*{\othersectionlevelsformat}[1]{% - \csname the#1\endcsname\autodot\enskip} -\end{verbatim} - -\begin{Example} - Assume you don't want the word ``Part'' written in front of the part number. - You could use the following command in the preamble of your document: - \begin{small} -\begin{verbatim} - \renewcommand*{\partformat}{\thepart\autodot} -\end{verbatim} - \end{small} - In fact, you could do without \Macro{autodot} at this point and insert - a fixed point instead. As \Macro{part} is numbered with roman numbers, - according to \cite{DUDEN} a dot has to be applied. However, you would - give up the possibility to use one of the options - \Option{pointednumbers} und \Option{pointlessnumbers} then. More - details concerning class options you can find in - \autoref{sec:maincls.formattingOptions}). - - An additional possibility could be to place the section numbers - in the left margin. That can be done in a way that the heading - text is left aligned with the surrounding text. - This can be accomplished with: - \begin{small} -\begin{verbatim} - \renewcommand*{\othersectionlevelsformat}[1]{% - \llap{\csname the#1\endcsname\autodot\enskip}} -\end{verbatim} - \end{small} - The almost unknown command \Macro{llap} in the definition above, - puts its argument left to the current possition without changing the - position. -\end{Example} -% -\EndIndex{Cmd}{partformat}% -\EndIndex{Cmd}{chapterformat}% -\EndIndex{Cmd}{othersectionlevelsformat}% -\EndIndex{Cmd}{autodot}% - - -\begin{Declaration} - \Macro{chapappifchapterprefix}\Parameter{additional text}\\ - \Macro{chapapp} -\end{Declaration}% -\BeginIndex{Cmd}{chapappifchapterprefix}% -\BeginIndex{Cmd}{chapapp}% -These\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}% -\ChangedAt{v2.8o}{\Class{scrbook}\and\Class{scrreprt}} two commands -are used internally by {\KOMAScript} and are also provided at the user -interface. Using the layout option \Option{chapterprefix} (see -\autoref{sec:maincls.layoutOptions}) -\Macro{chapappifchapterprefix} issues the word -``Chapter''\Index{chapter} in the main part of your document in the -current language followed by \PName{additional text}. In the -appendix\Index{appendix} instead, the word ``Appendix'' in the current -language followed by \PName{additional text} is issued. Having set the -option \Option{nochapterprefix} there is no additional output. - -The command \Macro{chapapp} always issues the word ``Chapter'' or -``Appendix''. In this case the options \Option{chapterprefix} and -\Option{nochapterprefix} have no effect. - -Since chapters only exist in the classes \Class{scrbook} and -\Class{scrreprt} these commands only exist in these classes. -% -\EndIndex{Cmd}{chapappifchapterprefix}% -\EndIndex{Cmd}{chapapp}% - - -\begin{Declaration} - \Macro{chaptermark}\Parameter{Running head}\\ - \Macro{sectionmark}\Parameter{Running head}\\ - \Macro{subsectionmark}\Parameter{Running head}\\ - \Macro{chaptermarkformat}\\ - \Macro{sectionmarkformat}\\ - \Macro{subsectionmarkformat} -\end{Declaration}% -\BeginIndex{Cmd}{chaptermark}% -\BeginIndex{Cmd}{sectionmark}% -\BeginIndex{Cmd}{subsectionmark}% -\BeginIndex{Cmd}{chaptermarkformat}% -\BeginIndex{Cmd}{sectionmarkformat}% -\BeginIndex{Cmd}{subsectionmarkformat}% -\begin{Explain}% - As mentioned in \autoref{sec:maincls.pageStyle} the page style - \PValue{headings} works with running heads\Index{running - head}. For this, the commands \Macro{chaptermark} and - \Macro{sectionmark} as well as \Macro{sectionmark} and - \Macro{subsectionmark} respectively are defined. Every sectioning - command (\Macro{chapter}, \Macro{section}, \Macro{subsection} \dots) - automatically carries out the respective \Macro{\dots mark} command. - The parameter handed over takes the text of the section - heading\Index{heading}. The respective section number is added - automatically to the \Macro{\dots mark} command. The formatting is done - according to the section level with the command - \Macro{chaptermarkformat}, \Macro{sectionmarkformat} or - \Macro{subsectionmarkformat}. - \OnlyAt{\Class{scrbook}\and\Class{scrreprt}}Of course there is no - command \Macro{chaptermark} or \Macro{chaptermarkformat} in - \Class{scrartcl}. \OnlyAt{\Class{scrartcl}}Accordingly - \Macro{subsectionmark} and the command \Macro{subsectionmarkformat} - only exist in \Class{scrartcl}. This changes when you use the - \Package{scrpage2} package (see \autoref{cha:scrpage}).\par -\end{Explain} -Similar to \Macro{chapterformat} and \Macro{othersectionlevelsformat} the -commands \Macro{chaptermarkformat} (not at \Class{scrartcl}), -\Macro{sectionmarkformat} and the command \Macro{subsectionmarkformat} -(only at \Class{scrartcl}) define the formatting of the section numbers -in running heads. They can be adapted to your personal needs with -\Macro{renewcommand}. The original definitions from the {\KOMAScript} -classes are: -\begin{verbatim} - \newcommand*{\chaptermarkformat}{% - \chapappifchapterprefix{\ }\thechapter\autodot\enskip} - \newcommand*{\sectionmarkformat}{\thesection\autodot\enskip} - \newcommand*{\subsectionmarkformat}{% - \thesubsection\autodot\enskip} -\end{verbatim} -\begin{Example} - Suppose you want to combine the chapter number in the header with the word - ``Chapter''. For example you could insert in the preamble of your - document the following definition: - \begin{small} -\begin{verbatim} - \renewcommand*{\chaptermarkformat}{% - \chapapp~\thechapter\autodot\enskip} -\end{verbatim} - \end{small} -\end{Example} -As you can see both the commands \Macro{chapappifchapterprefix} and -\Macro{chapapp} explained above are used. -% -\EndIndex{Cmd}{chaptermark}% -\EndIndex{Cmd}{sectionmark}% -\EndIndex{Cmd}{subsectionmark}% -\EndIndex{Cmd}{chaptermarkformat}% -\EndIndex{Cmd}{sectionmarkformat}% -\EndIndex{Cmd}{subsectionmarkformat}% - - -\begin{Declaration} - \Counter{secnumdepth} -\end{Declaration}% -\BeginIndex{Counter}{secnumdepth}\BeginIndex{}{numbering}% -As default in the classes \Class{scrbook}\IndexClass{scrbook} and -\Class{scrreprt}\IndexClass{scrreprt} the section levels from -\Macro{part}\IndexCmd{part}\IndexCmd{chapter}\IndexCmd{section} down -to \Macro{subsection}\IndexCmd{subsection} and in the class -\Class{scrartcl}\IndexClass{scrartcl} the levels from \Macro{part} -down to \Macro{subsubsection}\IndexCmd{subsubsection} are numbered. -This is controlled by the \LaTeX\ counter \Counter{secnumdepth}. The -value \(-1\) represents \Macro{part}, \(0\) the level \Macro{chapter} -and so on. Since in \Class{scrartcl} there is no \Macro{chapter} the -counting in this class starts with \(0\) at the level \Macro{part}. By -way of defining, decrementing or incrementing this counter you can -determine down to which level the headings are numbered. The same -applies in the standard classes. Please refer also to the explanations -concerning the counter \Counter{tocdepth} in -\autoref{sec:maincls.toc}. -% -\EndIndex{Counter}{secnumdepth}\EndIndex{}{numbering} - - -\begin{Declaration} - \Macro{setpartpreamble}% - \OParameter{position}\OParameter{width}\Parameter{preamble}\\ - \Macro{setchapterpreamble}% - \OParameter{position}\OParameter{width}\Parameter{preamble} -\end{Declaration}% -\BeginIndex{Cmd}{setpartpreamble}% -\BeginIndex{Cmd}{setchapterpreamble}% -Parts\OnlyAt{\Class{scrbook}\and\Class{scrreprt}} and chapters in -{\KOMAScript} can be started with a \PName{preamble}. This is -particularily useful when you are using a two column layout with the -class option \Option{twocolumn}\IndexOption{twocolumn}. Together with -the heading the \PName{preamble} is always set in a one column layout. -The \PName{preamble} can comprise more than one paragraph. The command -for issuing the \PName{preamble} has to be put in front of the -respective \Macro{part}, \Macro{addpart}, \Macro{chapter} or -\Macro{addchap} command. -\begin{Example} - You are writing a report on the situation of a company. You organize - the report in such a way that every department gets its own partial report. - Every one of these parts should be introduced by a short abstract on the - title page. You could write the following: - \begin{small} -\begin{verbatim} - \setpartpreamble{% - \begin{abstract} - This is a blind text. This text should show, how a - printed text will look like at this place. If you - read this text, you will get no information. - \end{abstract} - } - \part{Department for Word Processing} -\end{verbatim} - \end{small} - Depending on the settings for the heading\Index{heading} (see - \autoref{sec:maincls.fontOptions}) size and the \Environment{abstract} - environment\IndexEnv{abstract} (see - \autoref{sec:maincls.formattingOptions}), the result would look similar - to: - \begin{ShowOutput}\centering - {\LARGE\usekomafont{sectioning} Part III.\par\vspace{20pt}} - {\LARGE\usekomafont{sectioning} Department for Word Processing\strut\par} - \begin{quote}\small - \vspace{3ex} - \begin{center} - \usekomafont{sectioning}\abstractname - \end{center} - \vspace{2ex} This is a blind text. This text should show, how a - printed text will look like at this place. If you read this text, - you will get no information. - \end{quote} - \end{ShowOutput} -\end{Example} -Please note that it is \emph{you} who is responsible for the spaces -between the heading, preamble and the following text. Please note also -that there is no \Environment{abstract} environment in the class -\Class{scrbook} (see \autoref{sec:maincls.titles}). - -The\ChangedAt{v2.8p}{\Class{scrbook}\and\Class{scrreprt}} first -optional argument \PName{position} determines the position at which -the preamble is placed with the help of one or two letters. For the -vertical placement there are two possibilities at present: -\begin{description} -\item [\quad\texttt{o}:] above the heading -\item [\quad\texttt{u}:] below the heading -\end{description} -You can insert a preamble both above and below a heading. For the -horizontal placement you have the choice between three alignments: -\begin{description} -\item [\quad\texttt{l}:] left-aligned -\item [\quad\texttt{r}:] right-aligned -\item [\quad\texttt{c}:] centered -\end{description} -However, this does not issue the text of the \PName{preamble} but -inserts a box whose width is determined by the second optional -argument \PName{width}. If you leave out this second argument the -whole text width is used. In this case the option for horizontal -positioning will have no effect. You can combine one letter from the -vertical with one letter from the horizontal positioning. -% -\EndIndex{Cmd}{setpartpreamble}% -\EndIndex{Cmd}{setchapterpreamble}% - - -\begin{Declaration} - \Macro{dictum}\OParameter{author}\Parameter{dictum}\\ - \Macro{dictumwidth}\\ - \Macro{dictumauthorformat}\Parameter{author}\\ - \Macro{raggeddictum}\\ - \Macro{raggeddictumtext}\\ - \Macro{raggeddictumauthor} -\end{Declaration}% -\BeginIndex{Cmd}{dictum}% -\BeginIndex{Cmd}{dictumwidth}% -\BeginIndex{Cmd}{dictumauthorformat}% -\BeginIndex{Cmd}{raggeddictum}% -\BeginIndex{Cmd}{raggeddictumtext}% -\BeginIndex{Cmd}{raggeddictumauthor}% -Apart\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}% -\ChangedAt{v2.8q}{\Class{scrbook}\and\Class{scrreprt}} from an -introducing paragraph you can use \Macro{setpartpreamble} or -\Macro{setchapterpreamble} for a kind of -\PName{aphorism}\Index{aphorism} (also known as ``dictum'') at the -beginning of a chapter or section. The command \Macro{dictum} inserts -such an aphorism. This macro can be used as obligatory argument of -either the command \Macro{setchapterpreamble} or -\Macro{setpartpreamble}. However, this is not obligatory. - -The dictum together with an optional \PName{author} is inserted in a -\Macro{parbox}\IndexCmd{parbox} (see \cite{latex:usrguide}) of the -width \Macro{dictumwidth}. Yet \Macro{dictumwidth} is not a length -which is set with \Macro{setlength}. It is a macro that can be -redefined using \Macro{renewcommand}. Default setting is -\verb;0.3333\textwidth;, which is a third of the textwidth. The box -itself is positioned with the command \Macro{raggeddictum}. Default -here is \Macro{raggedleft}\IndexCmd{raggedleft}. The command -\Macro{raggeddictum} can be redefined using \Macro{renewcommand}. - -Within the box the \PName{dictum} is set using -\Macro{raggeddictumtext}. Default setting is -\Macro{raggedright}\IndexCmd{raggedright}. Similar to -\Macro{raggeddictum} it can be redefined with \Macro{renewcommand}. -The output uses the default font which is set for the element -\FontElement{dictumtext}. It can be changed with the commands from -\autoref{sec:maincls.font}. Default settings are listed in -\autoref{tab:maincls.dictumfont}. - -If there is an \PName{author} it is separated from the \PName{dictum} -by a line with the width of the \Macro{parbox}. This is defined by the -macro \Macro{raggeddictumauthor}. Default is \Macro{raggedleft}. This -command can also be redefined using \Macro{renewcommand}. The format -of the output is defined with \Macro{dictumauthorformat}. This macro -expects the \Macro{author} as argument. As default -\Macro{dictumauthorformat} is defined as: -\begin{small} -\begin{verbatim} - \newcommand*{\dictumauthorformat}[1]{(#1)} -\end{verbatim} -\end{small} -Thus the \PName{author} is set in in round parenthesis. For the -element \FontElement{dictumauthor} a different font as for the element -\FontElement{dictumtext} can be defined. Default settings are listed -in \autoref{tab:maincls.dictumfont}. Changes can be made using the -commands from \autoref{sec:maincls.font}. -% -\begin{table} - \centering% - \begin{tabular}{ll} - Element & Default \\\hline\\[-1.6ex] - \FontElement{dictumtext} & - \Macro{normalfont}\Macro{normalcolor}\Macro{sffamily}\Macro{small}\\ - \FontElement{dictumauthor} & - \Macro{itshape}\\ - \end{tabular} - \caption{Default settings for the elements of a dictum} - \label{tab:maincls.dictumfont} -\end{table} -% -If \Macro{dictum} is used within the macro \Macro{setchapterpreamble} -or \Macro{setpartpreamble} you have to take care of the following: The -horizontal positioning is always done with \Macro{raggeddictum}. -Therefore, the optional argument for horizontal positioning, which is -implemented for these two commands, has no effect. \Macro{textwidth} -is not the width of the whole text corpus but the actually used text -width. If \Macro{dictumwidth} is set to \verb;.5\textwidth; and -\Macro{setchapterpreamble} has an optional width of -\verb;.5\textwidth; too, you will get a box with a width of a quarter -of the text width. Therefore, if you use \Macro{dictum} it is -recommended to refrain from setting the optional width for -\Macro{setchapterpreamble} or \Macro{setpartpreamble}. - -If you have more than one dictum you should separate them by an -additional vertical space. You could easely use the command -\Macro{bigskip}\IndexCmd{bigskip} for that. - -\begin{Example} - You are writing a chapter on an aspect of weather forecasting. You - have come across an aphorism which you would like to place at the - beginning of the chapter beneath the heading. You could write: - \begin{small} -\begin{verbatim} - \setchapterpreamble[u]{% - \dictum[Anonymous]{Forecasting is the art of saying - what is going to happen and then to explain - why it didn't.}} - \chapter{Weather forecasting} -\end{verbatim} - \end{small} - The output would look as follows: - \begin{ShowOutput} - {\usekomafont{sectioning}\usekomafont{chapter}% - 17\enskip Weather forecasting\par} \vspace{\baselineskip} - \dictum[Anonymous]{Forecasting is the art of saying what is going to - happen and then to explain why it didn't.} - \end{ShowOutput} - - If you would rather prefer the dictum to span over only a quarter of - the text width you can redefine \Macro{dictumwidth}: - \begin{small} -\begin{verbatim} - \renewcommand*{\dictumwidth}{.25\textwidth} -\end{verbatim} - \end{small} -\end{Example} - -For a somewhat more sophisticated formatting of left- or right-aligned -paragraphs including hyphenation you can use the -package~\Package{ragged2e}~\cite{package:ragged2e}. -\EndIndex{Cmd}{dictum}% -\EndIndex{Cmd}{dictumwidth}% -\EndIndex{Cmd}{dictumauthorformat}% -\EndIndex{Cmd}{raggeddictum}% -\EndIndex{Cmd}{raggeddictumtext}% -\EndIndex{Cmd}{raggeddictumauthor}% - - -\subsection{Footnotes} -\label{sec:maincls.footnotes} - -Footnotes are not limited to the main part of the document. Since -footnotes\Index{footnotes} are mainly used in the main text they are -being covered in this section. - -\begin{Declaration} - \Macro{footnote}\OParameter{number}\Parameter{text}\\ - \Macro{footnotemark}\OParameter{number}\\ - \Macro{footnotetext}\OParameter{number}\Parameter{text} -\end{Declaration}% -\BeginIndex{Cmd}{footnote}% -\BeginIndex{Cmd}{footnotemark}% -\BeginIndex{Cmd}{footnotetext}% -Similar to the standard classes footnotes in {\KOMAScript} are -produced with the \Macro{footnote} command. -An alternative is the usage in pairs of the commands -\Macro{footnotemark} and \Macro{footnotetext}. -As in the standard classes it is possible that a page break occurs -within a footnote. Normally this happens if the footnote mark is -placed near the bottom of a page thus leaving \LaTeX\ no choice as to -break the page at this point. -% -\EndIndex{Cmd}{footnote}% -\EndIndex{Cmd}{footnotemark}% -\EndIndex{Cmd}{footnotetext}% - - -\begin{Declaration} - \Macro{deffootnote}\OParameter{mark width}% - \Parameter{indent}% - \Parameter{parindent}\Parameter{definition}\\ - \Macro{deffootnotemark}\Parameter{definition}\\ - \Macro{thefootnotemark}\\ - \Macro{textsuperscript}\Parameter{text} -\end{Declaration}% -\BeginIndex{Cmd}{deffootnote}% -\BeginIndex{Cmd}{deffootnotemark}% -\BeginIndex{Cmd}{thefootnotemark}% -\BeginIndex{Cmd}{textsuperscript}% -Formatting footnotes in {\KOMAScript} is slightly different to the -standard classes. As in the standard classes the footnote mark in the -text is formed as a small number in superscript. The same formatting -is used in the footnote itself. - -The mark in the footnote is type-set right-aligned in a box -with width \PName{mark width}. The first line of the footnote -follows directly. - -All following lines will be indented by the length of -\PName{indent}. If the optional parameter \PName{mark width} -was not specified, then it defaults to \PName{indent}. -If the footnote consists of more than one paragraph, then the -first line of a paragraph is indented in addition to \PName{indent} -by the value of \PName{parindent}. -\begin{figure} -\centering\setlength{\unitlength}{1mm} -\begin{picture}(100,22) - \thinlines - % frame of following paragraph - \put(5,0){\line(1,0){90}} - \put(5,0){\line(0,1){5}} - \put(10,5){\line(0,1){5}}\put(5,5){\line(1,0){5}} - \put(95,0){\line(0,1){10}} - \put(10,10){\line(1,0){85}} - % frame of first paragraph - \put(5,11){\line(1,0){90}} - \put(5,11){\line(0,1){5}} - \put(15,16){\line(0,1){5}}\put(5,16){\line(1,0){10}} - \put(95,11){\line(0,1){10}} - \put(15,21){\line(1,0){80}} - % box of the footnote mark - \put(0,16.5){\framebox(14.5,4.5){\mbox{}}} - % description of paragraphs - \put(45,16){\makebox(0,0)[l]{\textsf{first paragraph of a footnote}}} - \put(45,5){\makebox(0,0)[l]{\textsf{next paragraph of a footnote}}} - % help lines - \thicklines - \multiput(0,0)(0,3){7}{\line(0,1){2}} - \multiput(5,0)(0,3){3}{\line(0,1){2}} - % parameters - \put(2,7){\vector(1,0){3}} - \put(5,7){\line(1,0){5}} - \put(15,7){\vector(-1,0){5}} - \put(15,7){\makebox(0,0)[l]{\small\PName{parindent}}} - % - \put(-3,13){\vector(1,0){3}} - \put(0,13){\line(1,0){5}} - \put(10,13){\vector(-1,0){5}} - \put(10,13){\makebox(0,0)[l]{\small\PName{indent}}} - % - \put(-3,19){\vector(1,0){3}} - \put(0,19){\line(1,0){14.5}} - \put(19.5,19){\vector(-1,0){5}} - \put(19.5,19){\makebox(0,0)[l]{\small\PName{mark width}}} -\end{picture} -\caption{Parameters that control the footnote layout} -\label{fig:maincls.deffootnote} -\end{figure} - -Figure \ref{fig:maincls.deffootnote} illustrates the layout parameters -ones more. The default configuration of \KOMAScript{} is: -\begin{verbatim} - \deffootnote[1em]{1.5em}{1em} - {\textsuperscript{\thefootnotemark}} -\end{verbatim} -\Macro{textsuperscript} causes both the superscript and the smaller -font size. \Macro{thefootnotemark} is the current footnote mark -without any formatting. - -The\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} font element -\FontElement{footnote}\IndexFontElement{footnote} determines the font -of the footnote including the footnote mark. Using the element -\FontElement{footnotelabel}\IndexFontElement{footnotelabel} the font -of the footnote mark can be changed separately with the commands -mentioned in \autoref{sec:maincls.font} Please refer also to the -\autoref{tab:maincls.elementsWithoutText}. Default setting is no -changing of the font. - -The footnote mark in the text is defined separately with -\Macro{deffootnotemark}. Default setting is: -\begin{verbatim} - \deffootnotemark{% - \textsuperscript{\thefootnotemark}} -\end{verbatim} -Above\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} the font -for the element -\FontElement{footnotereference}\IndexFontElement{footnotereference} is -applied (see \autoref{tab:maincls.elementsWithoutText}). Thus the -footnote marks in the text and the footnote itself are identical. The -font can be changed with the commands described in -\autoref{sec:maincls.font}. - -\begin{Example} - A feature often asked for are footnote marks which are neither in - superscript nor in a smaller font size. They should not touch the - footnote text but have a small space in between. This can be - accomplished as follows: - \begin{small} -\begin{verbatim} - \deffootnote{1.5em}{1em}{\thefootnotemark\ } -\end{verbatim} - \end{small} - The footnote mark and the space is set right-aligned into a - box of the width 1\Unit{em}. The following lines of the footnote - text is also indented by 1\Unit{em} from the left margin. - - Another often requested footnote layout are left-aligned - footnote marks. These can be reached with: - \begin{small} -\begin{verbatim} - \deffootnote{1.5em}{1em}{% - \makebox[1.5em][l]{\thefootnotemark}} -\end{verbatim} - \end{small} - - If you want however change the font for all footnotes, for example - to sans serif, you can simply solve this problem using the commands - from \autoref{sec:maincls.fontOptions}: - \begin{small} -\begin{verbatim} - \setkomafont{footnote}{\sffamily} -\end{verbatim} - \end{small} -\end{Example} -As demonstrated with the examples above the simple user interface of -{\KOMAScript} provides a great variety of different footnote -formattings. -% -\EndIndex{Cmd}{deffootnote}% -\EndIndex{Cmd}{deffootnotemark}% -\EndIndex{Cmd}{thefootnotemark}% -\EndIndex{Cmd}{textsuperscript}% - - -\subsection{Lists} -\label{sec:maincls.lists} \BeginIndex[indexother]{}{lists} - -Both {\LaTeX} and the standard classes offer different environments -for lists. Though slightly changed or extended all these list are of -course offered in {\KOMAScript} as well. In general all lists -- even -of different kind -- can be nested up to four levels. From a -typographical view, anything more would make no sense. Even more than -three levels are hard to perceive. Recommendation in these cases is to -split your huge list in several small ones. - -\begin{Declaration} - \Environment{itemize}\\ - \Macro{item}\\ - \Macro{labelitemi}\\ - \Macro{labelitemii}\\ - \Macro{labelitemiii}\\ - \Macro{labelitemiv} -\end{Declaration}% -\BeginIndex{Env}{itemize}% -\BeginIndex{Cmd}{item}% -\BeginIndex{Cmd}{labelitemi}% -\BeginIndex{Cmd}{labelitemii}% -\BeginIndex{Cmd}{labelitemiii}% -\BeginIndex{Cmd}{labelitemiv}% -The most simple form of a list is an \Environment{itemize} list. -Depending on the level {\KOMAScript} uses the following marks: -"`{\labelitemi}"', "`{\labelitemii}"', "`{\labelitemiii}"' and -"`{\labelitemiv}"'. The definition of these symbols is specified in -the macros \Macro{labelitemi}, \Macro{labelitemii}, -\Macro{labelitemiii} and \Macro{labelitemiv}. All of this macros can -be redefined using \Macro{renewcommand}. Every item is introduced with -\Macro{item}. -\begin{Example} - You have a simple list which is nested in several levels. You write - for example: - \begin{small} -\begin{verbatim} - \minisec{Vehicles} - \begin{itemize} - \item aeroplans - \begin{itemize} - \item biplane - \item jets - \item transport planes - \begin{itemize} - \item single-engined - \begin{itemize} - \item{jet-driven} - \item{propeller-driven} - \end{itemize} - \item multi-engined - \end{itemize} - \item helicopter - \end{itemize} - \item automobiles - \begin{itemize} - \item racing car - \item private car - \item lorry - \end{itemize} - \item bicycles - \end{itemize} -\end{verbatim} - \end{small} - As output you get: - \begin{ShowOutput}[\baselineskip] - \minisec{Vehicles} - \begin{itemize} - \item aeroplans - \begin{itemize} - \item biplane - \item jets - \item transport planes - \begin{itemize} - \item single-engined - \begin{itemize} - \item{jet-driven} - \item{propeller-driven} - \end{itemize} - \item multi-engined - \end{itemize} - \item helicopter - \end{itemize} - \item automobiles - \begin{itemize} - \item racing car - \item private car - \item lorry - \end{itemize} - \item bicycles - \end{itemize} - \end{ShowOutput} -\end{Example} -% -\EndIndex{Env}{itemize}% -\EndIndex{Cmd}{item}% -\EndIndex{Cmd}{labelitemi}% -\EndIndex{Cmd}{labelitemii}% -\EndIndex{Cmd}{labelitemiii}% -\EndIndex{Cmd}{labelitemiv}% - - -\begin{Declaration} - \Environment{enumerate}\\ - \Macro{item}\\ - \Macro{theenumi}\\ - \Macro{theenumii}\\ - \Macro{theenumiii}\\ - \Macro{theenumiv}\\ - \Macro{labelenumi}\\ - \Macro{labelenumii}\\ - \Macro{labelenumiii}\\ - \Macro{labelenumiv} -\end{Declaration}% -\BeginIndex{Env}{enumerate}% -\BeginIndex{Cmd}{item}% -\BeginIndex{Cmd}{theenumi}% -\BeginIndex{Cmd}{theenumii}% -\BeginIndex{Cmd}{theenumiii}% -\BeginIndex{Cmd}{theenumiv}% -\BeginIndex{Cmd}{labelenumi}% -\BeginIndex{Cmd}{labelenumii}% -\BeginIndex{Cmd}{labelenumiii}% -\BeginIndex{Cmd}{labelenumiv}% -Another form of a list often used is a numbered list which is already -implemented by the {\LaTeX} kernel. Depending on the level the -numbering\Index{numbering} uses the following characters: arabic -numbers, small letters, small roman numerals and capital letters. The -kind of numbering is defined with the macros \Macro{theenumi} down to -\Macro{theenumiv}. The output format is determined by the macros -\Macro{labelenumi} to \Macro{labelenumiv}. While the small letter of -the second level is followed by a round parenthesis, the values of all -other levels are followed by a dot. Every item is introduced with -\Macro{item}. -\begin{Example} - Replacing every occurence of an \Environment{itemize} environment - with an \Environment{enumerate} environment in the example above we - get the following result: - \begin{ShowOutput}[\baselineskip] - \minisec{Vehicles} - \begin{enumerate} - \item aeroplans - \begin{enumerate} - \item biplane - \item jets - \item transport planes - \begin{enumerate} - \item single-engined - \begin{enumerate} - \item{jet-driven}\label{xmp:maincls.jets} - \item{propeller-driven} - \end{enumerate} - \item multi-engined - \end{enumerate} - \item helicopter - \end{enumerate} - \item automobiles - \begin{enumerate} - \item racing car - \item private car - \item lorry - \end{enumerate} - \item bicycles - \end{enumerate} - \end{ShowOutput} - Using \Macro{label} within a list you can set labels which are - referenced with \Macro{ref}. In the example above a label - was set after the jet-driven, single-engined transport plane with - \Macro{label}\PParameter{xmp:jets}. The \Macro{ref} value is then - \ref{xmp:maincls.jets}. -\end{Example} -% -\EndIndex{Env}{enumerate}% -\EndIndex{Cmd}{item}% -\EndIndex{Cmd}{theenumi}% -\EndIndex{Cmd}{theenumii}% -\EndIndex{Cmd}{theenumiii}% -\EndIndex{Cmd}{theenumiv}% -\EndIndex{Cmd}{labelenumi}% -\EndIndex{Cmd}{labelenumii}% -\EndIndex{Cmd}{labelenumiii}% -\EndIndex{Cmd}{labelenumiv}% - - -\begin{Declaration} - \Environment{description}\\ - \Macro{item}\OParameter{item} -\end{Declaration}% -\BeginIndex{Env}{description}% -\BeginIndex{Cmd}{item}% -Another list form is the description list. Its main use is the -description of several items. The item itself is an optional parameter -in \Macro{item}. The font\Index{font}\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}}% -, which is responsible for emphasizing the item can be changed with -the commands for the element -\FontElement{descriptionlabel}\IndexFontElement{descriptionlabel} (see -\autoref{tab:maincls.elementsWithoutText}) described in -\autoref{sec:maincls.font}. Default setting is -\Macro{sffamily}\Macro{bfseries}. -\begin{Example} - Instead of items in sans serif and bold you want them printed in the - standard font in bold. Using - \begin{small} -\begin{verbatim} - \setkomafont{descriptionlabel}{\normalfont\bfseries} -\end{verbatim} - \end{small} - you redefine the font accordingly. - - An example for a description list is the output of the page styles - listed in \autoref{sec:maincls.pageStyle}. The heavily - abbreviated source code is: - \begin{small} -\begin{verbatim} - \begin{description} - \item[empty] is the page style without - any header or footer - \item[plain] is the page style without running headline. - \item[headings] is the page style with running headline. - \item[myheadings] is the page style for manual headline. - \end{description} -\end{verbatim} - \end{small} - This abbreviated version gives: - \begin{ShowOutput} - \begin{description} - \item[empty] is the page style without any header or footer - \item[plain] is the page style without running headline. - \item[headings] is the page style with running headline. - \item[myheadings] is the page style for manual headline. - \end{description} - \end{ShowOutput} -\end{Example} -% -\EndIndex{Env}{description}% -\EndIndex{Cmd}{item}% - - -\begin{Declaration} - \Environment{labeling}\OParameter{delimiter}\Parameter{widest pattern}\\ - \Macro{item}\OParameter{key word} -\end{Declaration}% -\BeginIndex{Env}{labeling}% -\BeginIndex{Cmd}{item}% -An additional form of a description list in {\KOMAScript} is the -\Environment{labeling} environment. In difference to the -\Environment{description} environment you can provide a pattern, which -determines the indentation of all items. Furthermore you can put an -optional \PName{delimiter} between item and description. -\begin{Example} - Slightly changing the example from the \Environment{description} - environment we could write: - \begin{small} -\begin{verbatim} - \begin{labeling}[~--]{% - \usekomafont{descriptionlabel}myheadings} - \item[\usekomafont{descriptionlabel}empty] - Page style without header and footer - \item[\usekomafont{descriptionlabel}plain] - Page style for chapter beginnings without headline - \item[\usekomafont{descriptionlabel}headings] - Page style for running headline - \item[\usekomafont{descriptionlabel}myheadings] - Page style for manual headline - \end{labeling} -\end{verbatim} - \end{small} - As result we get: - \begin{ShowOutput} - \begin{labeling}[~--]{\usekomafont{descriptionlabel}myheadings} - \item[\usekomafont{descriptionlabel}empty] - Page style without header and footer - \item[\usekomafont{descriptionlabel}plain] - Page style for chapter beginnings without headline - \item[\usekomafont{descriptionlabel}headings] - Page style for running headline - \item[\usekomafont{descriptionlabel}myheadings] - Page style for manual headline - \end{labeling} - \end{ShowOutput} - As can be seen in this example a font changing command has to be - repeated both in the pattern and in the optional parameter in every - \Macro{item} command in this environment. -\end{Example} -Originally this environment was implemented for things like ``Given -is\dots, Asked is\dots, Solution'' that are often used in hand-outs. -By now this environment has found many different applications. For -example the environment for examples in this guide was defined with -the \Environment{labeling} environment. -% -\EndIndex{Env}{labeling}% -\EndIndex{Cmd}{item}% - - -\begin{Declaration} - \Environment{verse} -\end{Declaration}% -\BeginIndex{Env}{verse}% -Normally the \Environment{verse} environment isn't perceived as a list -environment because you don't work with \Macro{item} commands. Instead -fixed line breaks are used like within the \Environment{flushleft} -environment. Yet internally in both the standard classes as well -as {\KOMAScript} it is a list environment. - -In general the \Environment{verse} environment is used for -poems\Index{poems}. Lines are indented both left and right. Single -verses are ended by a fixed line break \verb|\\|. Verses are set as a -paragraph, thus separated by an empty line. Often also -\Macro{medskip}\IndexCmd{medskip} or \Macro{bigskip}\IndexCmd{bigskip} -is used instead. To avoid a page break at the end of a line you insert -\verb|\\*| instead of \verb|\\|. -\begin{Example} - As example the first lines of ``Little Red Riding Hood and the - Wolf'' by Roald Dahl: - \begin{small} -\begin{verbatim} - \begin{verse} - As soon as Wolf began to feel\\* - that he would like a decent meal,\\* - He went and knocked on Grandma's door.\\* - When Grandma opened it, she saw\\* - The sharp white teeth, the horrid grin,\\* - And Wolfie said, 'May I come in?' - \end{verse} -\end{verbatim} - \end{small} - The result would like as follows: - \begin{ShowOutput} - \begin{verse} - As soon as Wolf began to feel\\* - That he would like a decent meal,\\* - He went and knocked on Grandma's door.\\* - When Grandma opened it, she saw\\* - The sharp white teeth, the horrid grin,\\* - And Wolfie said, 'May I come in?' - \end{verse} - \end{ShowOutput} - Yet if you have very long lines \verb|\\*| can not prevent a page - break within a verse. That would be possible here for example: - \begin{ShowOutput} - \begin{verse} - Both the philosoph and the house-owner have always - something to repair\\ - \bigskip - Don't trust a men, my son, who tells you that he has never lain. - \end{verse} - \end{ShowOutput} - - These two verses were separated by a \Macro{bigskip}. -\end{Example} -% -\EndIndex{Env}{verse}% - - -\begin{Declaration} - \Environment{quote}\\ - \Environment{quotation} -\end{Declaration}% -\BeginIndex{Env}{quote}% -\BeginIndex{Env}{quotation}% -These two environments are also list environments and can be found -both in the standard and the {\KOMAScript} classes. Both environments -use justified text which is indented both on the left and right side. -Usually they are used to separate long citations\Index{citations} from -the main text. The difference between these two lies in the matter how -paragraphs are typeset. While \Environment{quote} paragraphs are -highlighted by vertical space, in \Environment{quotation} paragraphs -the first line is indented. This is also true for the first line of a -\Environment{quotation} environment. To get around this behaviour you -have to insert a \Macro{noindent} command\IndexCmd{noindent} in front. -\begin{Example} - You want to highlight a short anecdote. You write the following - \Environment{quotation} environment for this: - % - \begin{small} -\begin{verbatim} - A small example for a short anecdote: - \begin{quotation} - The old year was turning brown; the West Wind was - calling; - - Tom caught the beechen leaf in the forest falling. - ``I've caught the happy day blown me by the breezes! - Why wait till morrow-year? I'll take it when me pleases. - This I'll mend my boat and journey as it chances - west down the withy-stream, following my fancies!'' - - Little Bird sat on twig. ``Whillo, Tom! I heed you. - I've a guess, I've a guess where your fancies lead you. - Shall I go, shall I go, bring him word to meet you?'' - \end{quotation} -\end{verbatim} - \end{small} - The result is: - \begin{ShowOutput} - A small example for a short anecdote: - \begin{quotation} - The old year was turning brown; the West Wind was - calling; - - Tom caught the beechen leaf in the forest falling. - ``I've caught the happy day blown me by the breezes! - Why wait till morrow-year? I'll take it when me pleases. - This I'll mend my boat and journey as it chances - west down the withy-stream, following my fancies!'' - - Little Bird sat on twig. ``Whillo, Tom! I heed you. - I've a guess, I've a guess where your fancies lead you. - Shall I go, shall I go, bring him word to meet you?'' - \end{quotation} - \end{ShowOutput} - % - Using a \Environment{quote} environment instead you get: - % - \begin{ShowOutput} - A small example for a short anecdote: - \begin{quote}\setlength{\parskip}{4pt plus 2pt minus 2pt} - The old year was turning brown; the West Wind was - calling; - - Tom caught the beechen leaf in the forest falling. - ``I've caught the happy day blown me by the breezes! - Why wait till morrow-year? I'll take it when me pleases. - This I'll mend my boat and journey as it chances - west down the withy-stream, following my fancies!'' - - Little Bird sat on twig. ``Whillo, Tom! I heed you. - I've a guess, I've a guess where your fancies lead you. - Shall I go, shall I go, bring him word to meet you?'' - \end{quote} - \end{ShowOutput} - % -\end{Example} -% -\EndIndex{Env}{quote}% -\EndIndex{Env}{quotation}% - - - -\begin{Declaration} - \Environment{addmargin}\OParameter{left indentation}\Parameter{indentation}\\ - \Environment{addmargin*}\OParameter{inner indentation}\Parameter{indentation} -\end{Declaration} -\BeginIndex{Env}{addmargin}% -Similar to \Environment{quote} and \Environment{quotation} the -\Environment{addmargin} environment changes the margin\Index{margin}. -Different to the first two environments using \Environment{addmargin} -the user can influence the width of the indentation. Furthermore this -environment doesn't change the indentation of the first line and the -vertical spacing between paragraphs. - -If only the obligatory argument \PName{indentation} is given, both the -left and right margin are expanded by this value. If the optional -argument \PName{indentation} is given the value \PName{left - indentation} is added to \PName{indentation} at the left margin. - -The starred \Environment{addmargin*} only differs from the normal -version in a twoside layout. In addition the difference only occurs if -the optional argument \PName{inner indentation} is used. In this case -this value is added to the normal inner indentation. Then the value of -\PName{indentation} determines the width of the opposite margin. - -Both versions of this environment take also negative values for all -parameters. This has the effect of expanding the environment into the -margin. -\begin{Example} - Suppose you write a documentation which includes short source code - examples. To highlight these you want them separated from the text - by a horizontal line and slightly spanning into the outer - margin. First you define the environment: - \begin{small} -\begin{verbatim} - \newenvironment{SourceCodeFrame}{% - \begin{addmargin*}[1em]{-1em}% - \begin{minipage}{\linewidth}% - \rule{\linewidth}{2pt}% - }{% - \rule[.25\baselineskip]{\linewidth}{2pt}% - \end{minipage}% - \end{addmargin*}% - } -\end{verbatim} - \end{small} - If you now put your source code in such an environment it will show - up as: - \begin{ShowOutput} - \newenvironment{SourceCodeFrame}{% - \begin{addmargin*}[1em]{-1em}% - \begin{minipage}{\linewidth}% - \rule{\linewidth}{2pt}% - }{% - \rule[.25\baselineskip]{\linewidth}{2pt}% - \end{minipage}% - \end{addmargin*}% - } - You define yourself the following environment: - \begin{SourceCodeFrame} -\begin{verbatim} -\newenvironment{\SourceCodeFrame}{% - \begin{addmargin*}[1em]{-1em}% - \begin{minipage}{\linewidth}% - \rule{\linewidth}{2pt}% -}{% - \rule[.25\baselineskip]{\linewidth}{2pt}% - \end{minipage}% - \end{addmargin*}% -} -\end{verbatim} - \end{SourceCodeFrame} - This may be feasible or not. In any way it shows the usage of this - environment. - \end{ShowOutput} - The optional argument of the \Environment{addmargin*} environment - makes sure that the inner margin is extended by 1\Unit{em}. In turn - the outer margin is decreased by 1\Unit{em}. The result is a shift - by 1\Unit{em} to the outside. Instead of \PValue{1em} you can use a - length of, for example, \PValue{2\Macro{parindent}} of course. -\end{Example} -There is one problem with the \Environment{addmargin*} which you -should be aware of. If a page break occurs within an -\Environment{addmargin*} environment the indentation on the following -page is on the wrong side. This means that suddenly the \PName{inner - indentation} is applied on the outside of the page. Therefore it is -recommended to prevent page breaks within this environment. This can -be achieved by using an additional \Macro{parbox} or, as in the -example above, a \Environment{minipage}. This makes use of the fact -that neither the argument of a \Macro{parbox} nor the content of a -\Environment{minipage} is broken at the end of a page. Unfortunately -this is not without disadvantages: In some cases pages can't be filled -correctly which has the effect of several warnings. - -By the way, whether a page is going to be on the left or right side of -the book can't be determined in the first \LaTeX\ compiling for sure. -For details please refer to the explanation for the command -\Macro{ifthispageodd}. -% -\EndIndex{Env}{addmargin}% - - -\begin{Explain} - One concluding note to the list environments: In the internet and - support it is often asked why such an environment is followed by a - indented\Index{indentation} paragraph. In fact this is the result of - demanding a new paragraph. In \LaTeX\ empty lines are interpreted as - a new paragraph. This is also the case before and after list - environments. Thus, if you want a list environment to be set within - a paragraph you have to omit empty lines before and after. To - separate this environment from the rest of your text nevertheless, - you can insert a comment line which only consists of a percent - character in the {\LaTeX} source. -\end{Explain} -\EndIndex[indexother]{}{lists} - -\subsection{Margin Notes} -\label{sec:maincls.marginNotes} - -\begin{Declaration} - \Macro{marginpar}\OParameter{margin note left}\Parameter{margin note}\\ - \Macro{marginline}\Parameter{margin note} -\end{Declaration}% -\BeginIndex{Cmd}{marginpar}% -\BeginIndex{Cmd}{marginline}% -Usually margin notes\Index[indexmain]{margin notes} in {\LaTeX} are -inserted with the command \Macro{marginpar}. They are placed in the -outer margin. In documents with oneside layout the right border is -used. Though \Macro{marginpar} optionally can take a different margin -note in case the output is on the left margin, margin notes are always -in justified layout. But many users prefer left- or right-aligned -margin notes instead. {\KOMAScript} offers the command -\Macro{marginline} for that. -\begin{Example} - At several places in this documentation you find the classes mentioned - written in the margin. This can be produced\footnote{In fact, instead - of \Macro{texttt}, a semantic highlighting was used. To avoid confusion - this was replaced in the example.} with: - \begin{small} -\begin{verbatim} - \marginline{\texttt{scrartcl}} -\end{verbatim} - \end{small} - - Instead of \Macro{marginline} you could have used \Macro{marginpar} - too. In fact the first command is implemented internally as: -\begin{verbatim} - \marginpar[\raggedleft\texttt{scrartcl}] - {\raggedright\texttt{scrartcl}} -\end{verbatim} - Eventually \Macro{marginline} is only an abbreviating writing of the - code above. -\end{Example} -% -\begin{Explain} - Unfortunately \Macro{marginpar} doesn't always work correctly in the - twoside\Index{twoside} layout. Whether a margin note is going to show - up on the left or right is already decided while evaluating the command - \Macro{marginpar}. If the output routine now shifts the margin note - onto the next page the alignment isn't correct anymore. This behaviour - is deeply founded within {\LaTeX} and was therefore declared a feature - by the \LaTeX3 team. \Macro{marginline} suffers from this ``feature'' - too.\par -\end{Explain} -% -\EndIndex{Cmd}{marginpar}% -\EndIndex{Cmd}{marginline}% - - -\subsection{Tables and Figures} -\label{sec:maincls.floats} - -\begin{Explain} - With the floating environments {\LaTeX} offers a very capable and - comfortable mechanism for automatic placement of - figures\Index{figures} and tables\Index{tables}. But often these - floating environments\Index[indexmain] {floating environments} are - slightly misunderstood by beginners. They often ask for a fixed - position of a table or figure within the text. As these floating - environments are being referenced in the text this is not necessary - in most cases. It is not sensible too because such an object can - only be set on the page if there is enough space left. If this is - not the case the object would have to be shifted onto the next page - leaving a huge space on the page before. - - Often in many documents the same optional argument for positioning - an object is found with every floating object. This also makes no - sense. In such cases you should change the standard parameters - globally. For more details refer to \cite{DANTE:FAQ}.\par -\end{Explain} - -One last important note before starting this section: The most -mechanisms described here which extend the capabilities of the -standard classes do not work correctly when used together with -packages which interfere with the typesetting of captions of figures -and tables. This should be without saying but is often neglected. - -\begin{Declaration} - \Macro{caption}\OParameter{entry}\Parameter{title}\\ - \Macro{captionbelow}\OParameter{entry}\Parameter{title}\\ - \Macro{captionabove}\OParameter{entry}\Parameter{title} -\end{Declaration}% -\BeginIndex{Cmd}{caption}% -\BeginIndex{Cmd}{captionabove}% -\BeginIndex{Cmd}{captionbelow}% -In the standard classes captions of tables and figures are inserted -with the \Macro{caption} command below the table or figure. In general -this is correct with figures. Opinions differ as to whether captions -of tables are to be placed above or together with captions of -figures\Index{captions of figures} below the table\Index{captions of - tables}. That's the reason why \KOMAScript{}, unlike the standard -classes, offers \Macro{captionbelow} for captions below and -\Macro{captionabove} for captions above tables or figures. Using -\Macro{caption} together with figures always produces captions below -the figure whereas the behaviour of \Macro{captionbelow} can be -modified using the options -\Option{tablecaptionabove}\IndexOption{tablecaptionabove} and -\Option{tablecaptionbelow}\IndexOption{tablecaptionbelow} (see -\autoref{sec:maincls.formattingOptions}). For compatibility -reasons the default behaviour of \Macro{caption} together with tables -is similar to \Macro{captionbelow}. -% -\begin{Example} - Instead of using captions below the table you want to place your - captions above it\Index{table caption}, because you have tables - which span over more then one page. In the standard classes you - could only write: - \begin{small} -\begin{verbatim} - \begin{table} - \caption{This is an example table} - \begin{tabular}{llll} - This & is & an & example.\\\hline - This & is & an & example.\\ - This & is & an & example. - \end{tabular} - \end{table} -\end{verbatim} - \end{small} - Then you would get the unsatisfying result: - \begin{ShowOutput}\centering - {\usekomafont{caption}{\usekomafont{captionlabel}\tablename~30.2:} - This is an example table.}\\ - \begin{tabular}{llll} - This & is & an & example.\\\hline - This & is & an & example.\\ - This & is & an & example. - \end{tabular} -\end{ShowOutput} - Using \KOMAScript{} you write instead: - \begin{small} -\begin{verbatim} - \begin{table} - \captionabove{This is just an example table} - \begin{tabular}{llll} - This & is & an & example.\\\hline - This & is & an & example.\\ - This & is & an & example. - \end{tabular} - \end{table} -\end{verbatim} - \end{small} - Then you get: - \begin{ShowOutput}\centering - {\usekomafont{caption}{\usekomafont{captionlabel}\tablename~30.2:} - This is just an example table}\\\vskip\abovecaptionskip - \begin{tabular}{llll} - This & is & an & example.\\\hline - This & is & an & example.\\ - This & is & an & example. - \end{tabular} - \end{ShowOutput} - - Since you want all your tables typeset with captions above you could - of course use the option \Option{tablecaptionabove} instead (see - \autoref{sec:maincls.formattingOptions}). Then you can use - \Macro{caption} as you would in the standard classes. You will get - the same result as with \Macro{captionabove}. -\end{Example} - -\begin{Explain} - Some would argue that you could achieve the same result using the - \Macro{topcaption} from the \Package{topcapt} - package\IndexPackage{topcapt} (see \cite{package:topcapt}). But that - is not the case. The command \Macro{topcaption} is neglected by - packages which directly redefine the \Macro{caption} macro. The - \Package{hyperref} package (see \cite{package:hyperref}) is one example - for this. In \KOMAScript{} \Macro{captionabove} and - \Macro{captionbelow} are implemented so, that the changes have an - effect on both of these commands. - - If the \Package{longtable} package\IndexPackage{longtable} is used - \KOMAScript{} makes sure that captions above tables which are placed - within a \Environment{longtable} environment have the same - appearance as in a normal \Environment{table} environment. This also - means that you can apply the same settings as in a - \Environment{table} environment. Please note that in the - \Package{longtable} package the maximum width of a table caption can - be limited and the default is set to 4\Unit{in} (see - \cite{package:longtable}). Using \KOMAScript{} this mechanism in - \Package{longtable} only works when the class option - \Option{origlongtable} is set (see - \autoref{sec:maincls.formattingOptions}). If - \Package{caption2}\IndexPackage{caption2} (see - \cite{package:caption2}) is loaded, table captions are handled by - this package. - - Please note that \Macro{captionabove} and \Macro{captionbelow} if placed - within a \Environment{float} environment which was defined using the - \Package{float}\IndexPackage{float} package have the same behaviour as - described in \cite{package:float} for the \Macro{caption} command. In this - case, only the float style determines whether it is a caption below or above - the figure or table. -\end{Explain} - - -\begin{Declaration} - \Environment{captionbeside}\OParameter{entry}% - \Parameter{title}\OParameter{placement}\OParameter{width}% - \OParameter{offset}\\% - \Environment{captionbeside}\OParameter{entry}% - \Parameter{title}\OParameter{placement}\OParameter{width}% - \OParameter{offset}\PValue{*} -\end{Declaration} -\BeginIndex{Env}{captionbeside}% -Apart\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} from -captions above and below the figure you often find captions, in -particular with small figures, which are placed beside the figure. In -general in this case both the baseline of the figure and the caption -are aligned at the bottom. With some fiddling and the use of two -\Macro{parbox} commands this could be achieved in the standard -classes. But \KOMAScript{} offers a special environment for this -problem. This environment can be used within the floating environment. -The first optional parameter \PName{entry} and the obligatory -parameter \PName{title} are similar to the parameters of -\Macro{caption}, \Macro{captionabove} or \Macro{captionbelow}. The -\PName{title} is placed beside the content of the environment in this -case. - -Whether the \PName{title} is placed left or right can be determined by -the parameter \PName{placement}. One of the following letters is -accepted: -\begin{quote} -\begin{labeling}[--~]{\PValue[o]} -\item[\PValue{l}] left -\item[\PValue{r}] right -\item[\PValue{i}] inner margin in twoside layout -\item[\PValue{o}] outer margin in twoside layout -\end{labeling} -\end{quote} -Default setting is at the right side of the content of the -environment. If either \PValue{o} or \PValue{i} are used you have to -run {\LaTeX} twice to get the correct placement. - -As default the content of the environment and the \PName{title} fill -the whole available text width. However, using the optional parameter -\PName{width} it is possible to adjust the used width. This width -could even be more than the current text width. - -When supplying a \PName{width} the used width is centered with respect -to the text width. Using the optional parameter \PName{offset} you can -shift the environment relative to the left margin. A positive value -corresponds to a shift to the right whereas a negative value -corresponds to a shift to the left. An \PName{offset} of 0\Unit{pt} -gives you a left-aligned output. - -Adding a star to the optional parameter \PName{offset} the value means -a shift relative to the right margin on left pages in double sided -layout. A positive value corresponds to a shift towards the outer -margin whereas a negative value corresponds to a shift towards the -inner margin. An \PName{offset} of 0\Unit{pt} means alignment with the -inner margin. As mentioned before, in some cases it takes two \LaTeX{} -runs for this to work correctly. - -\begin{Example} - An example for the usage of the \Environment{captionbeside} environment - can be found in \autoref{fig:maincls.captionbeside}. - This figure was typeset with: - \begin{small} -\begin{verbatim} - \begin{figure} - \begin{captionbeside}[Example for a figure description]% - {A figure description which is neither above nor - below, but beside the figure}[i][\linewidth][2em]* - \fbox{% - \parbox[b][5\baselineskip][c]{.25\textwidth}{% - \hspace*{\fill}\KOMAScript\hspace*{\fill}\par}} - \end{captionbeside} - \label{fig:maincls.captionbeside} - \end{figure} -\end{verbatim} - \end{small} - \begin{figure} - \begin{captionbeside}[Example for a figure description]% - {A figure description which is neither above nor - below, but beside the figure}[i][\linewidth][2em]* - \fbox{% - \parbox[b][5\baselineskip][c]{.25\textwidth}{% - \hspace*{\fill}\KOMAScript\hspace*{\fill}\par}} - \end{captionbeside} - \label{fig:maincls.captionbeside} - \end{figure} - Thus, the width is the current available width - \PValue{\Macro{linewidth}}. However, this width is shifted - \PValue{2em} to the outside. The title or the description is placed - inside beside the figure. Therefore, the figure itself is shifted - 2\Unit{em} into the margin. -\end{Example} -% -\EndIndex{Env}{captionbeside} - - -\BeginIndex[indexother]{}{font style} -The font style\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} for the -description and the label~-- ``Figure'' or ``Table'' followed by the -number and the delimiter -- can be changed with the commands mentioned -in \autoref{sec:maincls.font}. The respective elements for this -are \FontElement{caption}\IndexFontElement{caption} and -\FontElement{captionlabel}\IndexFontElement{captionlabel} (see -\autoref{tab:maincls.elementsWithoutText}). First the font style -for the element \FontElement{caption} is applied on the element -\FontElement{captionlabel} too. After this the font style of -\FontElement{captionlabel} is applied on the respective element. The -default settings are listed in \autoref{tab:maincls.captionFont}. -% -\begin{table} - \centering% - \begin{tabular}{ll} - element & default \\\hline\\[-1.75ex] - \FontElement{caption} & \Macro{normalfont} \\ - \FontElement{captionlabel} & \Macro{normalfont} - \end{tabular} - \caption{Font defaults for the elements of figure or table captions} - \label{tab:maincls.captionFont} -\end{table} -% -\begin{Example} - You want the table and figure descriptions typeset in a smaller font - size. Thus you could write the following in the preamble of your - document: - \begin{small} -\begin{verbatim} - \addtokomafont{caption}{\small} -\end{verbatim} - \end{small} - Furthermore, you would like the labels to be printed in sans serif and - bold. You add: - \begin{small} -\begin{verbatim} - \setkomafont{captionlabel}{\sffamily\bfseries} -\end{verbatim} - \end{small} - As you can see, simple extensions of the default definitions are - possible. -\end{Example} -\EndIndex[indexother]{}{font style} -% -\EndIndex{Cmd}{caption}% -\EndIndex{Cmd}{captionabove}% -\EndIndex{Cmd}{captionbelow}% - - -\begin{Explain} -\begin{Declaration} - \PValue{komaabove}\\ - \PValue{komabelow} -\end{Declaration}% -\BeginIndex{Floatstyle}{komaabove}% -\BeginIndex{Floatstyle}{komabelow}% -Using\OnlyAt{\Package{float}} the \Package{float}\IndexPackage{float} package -the appearance of the float environments is solely defined by the \emph{float} -style. This includes the fact whether captions above or below are used. In the -\Package{float} package there is no predefined style which gives you the same -output and offers the same setting options (see below) as \KOMAScript{}. -Therefore \KOMAScript{} defines the two additional styles \PValue{komaabove} -and \PValue{komabelow}. When using the \Package{float} package both these -styles can be activated as the styles \PValue{plain}\IndexFloatstyle{plain}, -\PValue{boxed}\IndexFloatstyle{boxed} or \PValue{ruled}\IndexFloatstyle{ruled} -in \Package{float} are defined. For details refer to \cite{package:float}. -The style \PValue{komaabove} inserts \Macro{caption}, \Macro{captionabove} and -\Macro{captionbelow} above whereas \PValue{komabelow} inserts them below the -float content. -% -\EndIndex{Floatstyle}{komaabove}% -\EndIndex{Floatstyle}{komabelow}% -\end{Explain} - - -\begin{Declaration} - \Macro{captionformat} -\end{Declaration}% -\BeginIndex{Cmd}{captionformat}% -In {\KOMAScript} there are different ways to change the formatting of -the description. The definition of different font styles was already -explained above. This or the caption delimiter between the label and -the label text itself is specified in the macro \Macro{captionformat}. -In difference to all other \Macro{\dots}format commands in this case -it doesn't contain the counter but the items which follow it. The -original definition is: -\begin{verbatim} - \newcommand*{\captionformat}{:\ } -\end{verbatim} -This too can be changed with \Macro{renewcommand}. -\begin{Example} - For some inexplicable reasons you want a dash with spaces before and - after instead of a colon followed by a space as label delimiter. You - define: - \begin{small} -\begin{verbatim} - \renewcommand*{\captionformat}{~--~} -\end{verbatim} - \end{small} - This definition you should put in the preamble of your document. -\end{Example} -% -\EndIndex{Cmd}{captionformat}% - - -\begin{Declaration} - \Macro{figureformat}\\ - \Macro{tableformat} -\end{Declaration}% -\BeginIndex{Cmd}{figureformat}% -\BeginIndex{Cmd}{tableformat}% -It was already mentioned that \Macro{captionformat} doesn't contain a -formatting for the label itself. But this label shouldn't in any case -be changed using redefinitions of the commands for the output of -counters, \Macro{thefigure} or \Macro{thetable}. Such a redefinition -would have unwanted side effects on the output of \Macro{ref} or, for -example, of the list of figures. For this case {\KOMAScript} offers -two \Macro{\dots format} commands instead. These are predefined as -follows: -\begin{verbatim} - \newcommand*{\figureformat}{\figurename~\thefigure\autodot} - \newcommand*{\tableformat}{\tablename~\thetable\autodot} -\end{verbatim} -They also can be adapted to your personal preferences with -\Macro{renewcommand}. -\begin{Example} - From time to time label texts without any label and delimiter are - wanted. In {\KOMAScript} it takes only the following definitions to - achieve this: - \begin{small} -\begin{verbatim} - \renewcommand*{\figureformat}{} - \renewcommand*{\tableformat}{} - \renewcommand*{\captionformat}{} -\end{verbatim} - \end{small} -\end{Example} -% -\EndIndex{Cmd}{figureformat}% -\EndIndex{Cmd}{tableformat}% - -\begin{Declaration} - \Macro{setcapindent}\Parameter{indent}\\ - \Macro{setcapindent*}\Parameter{xindent}\\ - \Macro{setcaphanging} -\end{Declaration}% -\BeginIndex{Cmd}{setcapindent}% -\BeginIndex{Cmd}{setcapindent*}% -\BeginIndex{Cmd}{setcaphanging}% -As mentioned previously, in the standard classes the captions are set -in a not-hanging style. That means that in descriptions with more than -one line the second and subsequent lines start directly beneath the -label. There is no straight way in the standard classes to change -this behaviour. In {\KOMAScript}, on the contrary, beginning at the -second line all lines are indented by the width of the label. - -This behaviour which corresponds to the usage of \Macro{setcaphanging} -can easily be changed by using the command \Macro{setcapindent} or -\Macro{setcapindent*}. Here the parameter \PName{Einzug} determines -the indentation of the second and subsequent lines. - -If you want a line break before the label and the description you -define the indentation \PName{xindent} of the description with the -starred version of the command instead: \Macro{setcapindent*}. - -Using a negative value of \PName{indent} instead, a page break is -inserted and only the first line but not the subsequent lines are -indented by \(-\PName{indent}\). - -Whether one-line captions are set as captions with more than one line -or are treated separately is specified with the class options -\Option{onelinecaption} and \Option{noonelinecaption}. For details -please refer to the explanations of this options in -\autoref{sec:maincls.layoutOptions}. - -\begin{Example} - As examples please refer to the - figures~\ref{fig:maincls.caption.first} to - \ref{fig:maincls.caption.last}. As you can see the usage of a - complete hanging indentation is not preferable together with a small - column width: - \begin{small} -\begin{verbatim} - \begin{figure} - \setcapindent{1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption{Examples with slightly indented caption - starting at the second line} - \end{figure} -\end{verbatim} - \end{small} - As can be seen the formatting can also be changed locally within the - \Environment{figure} environment\IndexEnv{figure}. - \begin{figure} - \typeout{^^J--- Ignore underfull and overfull \string\hbox:} - \addtokomafont{caption}{\small} - \addtokomafont{captionlabel}{\bfseries} - \centering% - \begin{minipage}{.9\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Example for figure caption]% - {\sloppy Equivalent to the standard setting, similar to the - usage of \Macro{setcaphanging}} - \label{fig:maincls.caption.first} - \end{minipage} - \hspace{.02\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \setcapindent{1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Example for figure caption]% - {With slightly hanging indentation starting at the second line - using \Macro{setcapindent}\PParameter{1em}} - \end{minipage} - \end{minipage} - - \vspace*{2ex}\noindent% - \begin{minipage}{.9\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \setcapindent*{1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Example for a figure caption]% - {With hanging indentation starting at the second line and line - break before the description using - \Macro{setcapindent*}\PParameter{1em}} - \end{minipage} - \hspace{.02\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \setcapindent{-1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Example for a figure caption]% - {With indentation in the second line only and line break - before the description using - \Macro{setcapindent}\PParameter{-1em}} - \label{fig:maincls.caption.last} - \end{minipage} - \end{minipage} - \typeout{^^J--- Don't ignore underfull and overfull - \string\hbox:^^J} - \end{figure} -\end{Example} -% -\EndIndex{Cmd}{setcapindent}% -\EndIndex{Cmd}{setcapindent*}% -\EndIndex{Cmd}{setcaphanging}% - - -\begin{Declaration} - \Macro{setcapwidth}\OParameter{justification}\Parameter{width}\\ - \Macro{setcapmargin}\OParameter{margin left}\Parameter{margin}\\ - \Macro{setcapmargin*}\OParameter{margin inside}\Parameter{margin} -\end{Declaration} -\BeginIndex{Cmd}{setcapwidth}% -\BeginIndex{Cmd}{setcapmargin}% -\BeginIndex{Cmd}{setcapmargin*}% -Using\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} these three -commands you can specify the width and justification of the label -text. In general the whole text or column width is available for the -description. - -With the command \Macro{setcapwidth} you can decrease this -\PName{width}. The obligatory argument determines the \PName{with} of -the description. As an optional argument you can supply one letter -which specifies the horizontal justification. The possible -justifications are given in the following list. -\begin{quote} -\begin{labeling}[--~]{\PValue[o]} -\item[\PValue{l}] left-aligned -\item[\PValue{c}] centered -\item[\PValue{r}] right-aligned -\item[\PValue{i}] alignment at the inner margin in a double sided output -\item[\PValue{o}] alignment at the outer margin in a double sided output -\end{labeling} -\end{quote} -The justification inside and outside corresponds to left-aligned and -right-aligned respectively in single sided output. Within -\Package{longtable}\IndexPackage{longtable} tables the justification -inside or outside doesn't work correctly. In particular the captions -of tables of subsequent pages are aligned corresponding to the first -part of the table. This is a problem which has its roots in the -implementation of \Package{longtable}. - -With the command \Macro{setcapmargin} you can specify a \PName{margin} -which is to be left free next to the description in addition to the -normal text margin. If you want margins with different widths at the -left and right side you can specify these using the optional argument -\PName{margin left}. The starred version \Macro{setcapmargin*} defines -instead of a \PName{margin left} a \PName{margin inside} in a double -sided layout. In case of \Package{longtable}\IndexPackage{longtable} -tables you have to deal with the same problem with justification -inside or outside as mentioned with the macro \Macro{setcapwidth}. -Furthermore the usage of \Macro{setcapmargin} or \Macro{setcapmargin*} -switches the option \Option{noonelinecaption} (see -\autoref{sec:maincls.layoutOptions}) for the descriptions which -are typeset with this margin setting. - -\begin{Explain} - \Package{longtable} places the description in a box, which is issued - again at the subsequent pages if needed. While treating a box the - macros needed for the creation of it aren't run through - again. That's why it is not possible for \KOMAScript{} to swop - margin settings in double sided layout on even pages. This would be - necessary to produce a justification which is shifted towards the - outside or inside. - - You can also submit negative values for \PName{margin} and - \PName{margin right} or \PName{margin outside}. This has the effect - of the description spanning into the margin. -\end{Explain} - -\begin{Example} - A rather odd problem is a figure caption which is both centered and - of the same width as the figure itself. If the width of the figure - is known the solution with \KOMAScript{} is quite easy. Suppose the - figure has a width of 8\Unit{cm}, it only takes: - \begin{small} -\begin{verbatim} - \setcapwidth[c]{8cm} -\end{verbatim} - \end{small} - directly in front of \Macro{caption} or \Macro{captionbelow}. If it - is unknown first you have to define a length in the preamble of your - document: - \begin{small} -\begin{verbatim} - \newlength{\figurewidth} -\end{verbatim} - \end{small} - Having done this you can calculate the width directly with the - \LaTeX{} command \Macro{settowidth} (see \cite{latex:usrguide}) - in many cases. A possible solution would look as follows: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \settowidth{\figurewidth}{% - \fbox{\hspace{1em}\KOMAScript\hspace{1em}}% - }% - \fbox{\hspace{1em}\KOMAScript\hspace{1em}}% - \setcapwidth[c]{\figurewidth} - \caption{Example of a centered caption below the figure} - \end{figure} -\end{verbatim} - \end{small} - However, it is awkward to write the content twice and to use - \Macro{setcapwidth} with every figure. But nothing is easier than - defining a new command in the preamble of your document which - hides the three steps: - \begin{enumerate} - \item Defining the width of the argument - \item Specifying the width of the caption - \item Output of the argument - \end{enumerate} - in: - \begin{small} -\begin{verbatim} - \newcommand{\figure2}[1]{% - \settowidth{\figurewidth}{#1}% - \setcapwidth[c]{\figurewidth}% - #1} -\end{verbatim} - \end{small} - Using this command the example abbreviates to: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \figure2{\fbox{\hspace{1em}\KOMAScript\hspace{1em}}}% - \caption{Example of a centered caption below the figure} - \end{figure} -\end{verbatim} - \end{small} - - But a command has the disadvantage that errors in the macros of the - argument in case of arguments with more than one line aren't - reported with the very correct line number by \LaTeX{}. In these - cases the usage of an environment has advantages. But then the - question is raised how the width of the content of the environment - can be determined. The solution offers the \Environment{lrbox} - environment, which is described in \cite{latex:usrguide}: - \begin{small} -\begin{verbatim} - \newsavebox{\figurebox} - \newenvironment{FigureDefinesCaptionWidth}{% - \begin{lrbox}{\figurebox}% - }{% - \end{lrbox}% - \global\setbox\figurebox=\box\figurebox% - \aftergroup\setfigurebox% - } - \newcommand{\setfigurebox}{% - \figure2{\usebox{\figurebox}}} -\end{verbatim} - \end{small} - This definition uses the macro \Macro{figure2} defined above. In - the main text you write: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \begin{FigureDefinesCaptionWidth} - \fbox{\hspace{1em}\KOMAScript\hspace{1em}} - \end{FigureDefinesCaptionWidth} - \caption{Example of a centered caption below the figure} - \end{figure} -\end{verbatim} - \end{small} - Admittingly, the environment in this example is not necessary. But - its definition using \Macro{global} is quite clever. Most users - wouldn't be able to define such an environment without help. But as - this can be very useful, it was introduced in the example above. - - If the \Environment{captionbeside} environment wouldn't exist you - could nevertheless place the figure caption beside the figure in a - quite simple way. For this \Macro{setfigurebox} from the example - above would have to be redefined first: - \begin{small} -\begin{verbatim} - \renewcommand{\setfigurebox}{% - \settowidth{\captionwidth}{\usebox{\figurebox}}% - \parbox[b]{\captionwidth}{\usebox{\figurebox}}% - \hfill% - \addtolength{\captionwidth}{1em}% - \addtolength{\captionwidth}{-\hsize}% - \setlength{\captionwidth}{-\captionwidth}% - \setcapwidth[c]{\captionwidth}% - } -\end{verbatim} - \end{small} - As the next step you only have to put the \Macro{caption} command in - a \Macro{parbox} too: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \begin{FigureSetsCaptionWidth} - \fbox{\rule{0pt}{5\baselineskip}% - \hspace{1em}\KOMAScript\hspace{1em}} - \end{FigureSetsCaptionWidth} - \parbox[b]{\figurewidth}{% - \caption{Example of a centered caption - below the figure} - } - \end{figure} -\end{verbatim} - \end{small} - The \Macro{rule} command in this example only serves as an unvisible - support to produce an example figure with a greater vertical height. -\end{Example} -% -\EndIndex{Cmd}{setcapwidth}% -\EndIndex{Cmd}{setcapmargin}% -\EndIndex{Cmd}{setcapmargin*}% - - -\subsection{Logical Markup of Text} -\label{sec:maincls.emphasis} - -\begin{Explain} - \LaTeX{} offers different possibilities for logical - markup\Index{logical markup}\Index{markup} of text. In a sense, a - heading is a kind of markup too. However, in this section we are - only concerned with direct markup, i.e. markup which doesn't have an - additional meaning and which can be used for different - purposes. More details to the normally defined possibilities you can - find in \cite{lshort}, \cite{latex:usrguide} and - \cite{latex:fntguide}. -\end{Explain} - -\begin{Declaration} - \Macro{textsubscript}\Parameter{text} -\end{Declaration} -\BeginIndex{Cmd}{textsubscript}% -In \autoref{sec:maincls.footnotes} the command -\Macro{textsuperscript}\IndexCmd{textsuperscript} was already -introduced which is a part of the \LaTeX{} kernel. Unfortunately -\LaTeX{} itself doesn't offer a command to produce a text in -subscript\Index{text, subscript}\Index{subscript} instead of -superscript\Index{text, superscript}\Index{superscript}. \KOMAScript{} -defines \Macro{textsubscript} for this. -% -\begin{Example} - You are writing a text on the human metabolism. From time to time - you have to mention some simple sum formulas in which the - numbers are in subscript. Being convinced from logical markup you - first define in the document preamble or in a separate package: - \begin{small} -\begin{verbatim} - \newcommand*{\Molek}[2]{#1\textsubscript{#2}} -\end{verbatim} - \end{small} - \newcommand*{\Molek}[2]{#1\textsubscript{#2}} - Using this you then write: - \begin{small} -\begin{verbatim} - The cell produces its energy from reaction of - \Molek C6\Molek H{12}\Molek O6 and \Molek O2 to - \Molek H2\Molek O{} and \Molek C{}\Molek O2. - However, Arsenic (\Molek{As}{}) has a detrimental - effect on the metabolism. -\end{verbatim} - \end{small} - The output looks as follows: - \begin{ShowOutput} - The cell produces its energy from reaction of \Molek C6\Molek - H{12}\Molek O6 and \Molek O2 to \Molek H2\Molek O{} and \Molek - C{}\Molek O2. However, Arsenic (\Molek{As}{}) has a detrimental - effect on the metabolism. - \end{ShowOutput} - Some time later you decide that the sum formulas should be - typeset in sans serif. Now you can see the advantages of a - consequent logical markup. You only have the redefine the - \Macro{Molek} command: - \begin{small} -\begin{verbatim} - \newcommand*{\Molek}[2]{\textsf{#1\textsubscript{#2}}} -\end{verbatim} - \end{small} - \renewcommand*{\Molek}[2]{\textsf{#1\textsubscript{#2}}} - Now the output in the whole document changes to: - \begin{ShowOutput} - The cell produces its energy from reaction of \Molek C6\Molek - H{12}\Molek O6 and \Molek O2 to \Molek H2\Molek O{} and \Molek - C{}\Molek O2. However, Arsenic (\Molek{As}{}) has a detrimental - effect on the metabolism. - \end{ShowOutput} -\end{Example} -\begin{Explain} - In the example above the writing ``\verb|\Molek C6|'' is used. This - makes use of the fact that arguments which consist of only one - character doesn't have to be enclosed in parenthesis. That's why - ``\verb|\Molek C6|'' is similar to ``\verb|\Molek{C}{6}|''. You - might already know this from indices or powers in mathematical - environments, such as ``\verb|$x^2$|'' instead of ``\verb|$x^{2}$|'' - for ``$x^2$''. -\end{Explain} -% -\EndIndex{Cmd}{textsubscript}% - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Appendix} -\label{sec:maincls.appendix} - -The last part of a document usually contains the -appendix\Index{appendix}, the bibliography\Index{bibliography} and, if -necessary, the index\Index{index}. - -\begin{Declaration} - \Macro{appendix} -\end{Declaration}% -\BeginIndex{Cmd}{appendix}% -The appendix in the standard as well as the {\KOMAScript} classes is -introduced with \Macro{appendix}. This command switches, among other -things, the chapter numbering to upper case letters thus making sure -that the rules according to \cite{DUDEN} are being followed. These -rules are explained in more detail in the description of the class -options \Option{pointednumbers} and \Option{pointlessnumbers} in -\autoref{sec:maincls.formattingOptions}. - -Please note that \Macro{appendix} is a command, \emph{not} an -environment! This command does not need an argument. The sectioning -commands in the appendix are used in the same way as in the main part. - -% -\EndIndex{Cmd}{appendix} - - -\begin{Declaration} - \Macro{appendixmore} -\end{Declaration}% -\BeginIndex{Cmd}{appendixmore}% -There is a peculiarity within the \Macro{appendix} command in the -{\KOMAScript} classes. In case the command \Macro{appendixmore} is -defined, \Macro{appendix} is executed too. Internally the -{\KOMAScript} classes \Class{scrbook} and \Class{scrreprt} take -advantage of this behaviour for implementing the options -\Option{appendixprefix} and \Option{noappendixprefix} (see -\autoref{sec:maincls.layoutOptions}). You should take care of this -in case you are going to define or redefine the \Macro{appendixmore} -by yourself. In case one of these options is set, you will receive an -error message when using -\verb|\newcommand{\appendixmore}{|\dots\verb|}|. This is thought to -prevent you from changing options without noticing. - -\begin{Example} - You do not want the chapters in the main part of the classes - \Class{scrbook} or \Class{scrreprt} to be introduced by a prefix line - (see layout options \Option{chapterprefix} and \Option{nochapterprefix} - in \autoref{sec:maincls.layoutOptions}). For being consistent you - do not want such a line in the appendix either. Instead you would like - to see the word "`Chapter"' in the language of your choice written in - front of the chapter letter and, simultaneously, in the page headings. - Instead of using the layout options \Option{appendixprefix} or - \Option{noappendixprefix}, you would define in the document preamble: -% - \begin{small} -\begin{verbatim} - \newcommand*{\appendixmore}{% - \renewcommand*{\chapterformat}{% - \appendixname~\thechapter\autodot\enskip} - \renewcommand*{\chaptermarkformat}{% - \appendixname~\thechapter\autodot\enskip} - } -\end{verbatim} - \end{small} -% - In case you are going to change your mind and want to use the option - \Option{appendixprefix} at a later state, you will get an error - message because of the already defined \Macro{appendixmore} command. - This prevents the definition mentioned above from changing the - settings already set using \Option{chapterprefix} and - \Option{nochapterprefix}. - - It is also possible to get a similar behaviour of the appendix for - the class \Class{scrartcl}. You would write in the preamble of your - document: - \begin{small} -\begin{verbatim} - \newcommand*{\appendixmore}{% - \renewcommand*{\othersectionlevelsformat}[1]{% - \ifthenelse{\equal{##1}{section}}{\appendixname~}{}% - \csname the##1\endcsname\autodot\enskip} - \renewcommand*{\sectionmarkformat}{% - \appendixname~\thesection\autodot\enskip} - } -\end{verbatim} - \end{small} - In addition the package \Package{ifthen}\IndexPackage{ifthen} (see - \cite{package:ifthen}) is required. - - Redefined commands are explained in more detail in - \autoref{sec:maincls.structure}. -\end{Example} -% -\EndIndex{Cmd}{appendixmore}% - - -\begin{Declaration} - \Macro{setbibpreamble}\Parameter{Pr\"{a}ambel} -\end{Declaration}% -\BeginIndex{Cmd}{setbibpreamble}% -The command \Macro{setbibpreamble} can be used for setting a preamble -for the bibliography\Index{bibliography}. This can be achieved by -placing the preamble before the command for issuing the bibliography. -However, it doesn't have to be directly in front of it. For example it -could be placed at the beginning of the document. Similar to the class -options \Option{bibtotoc} and \Option{bibtotocnumbered} this command -can only be successful if you haven't loaded a package which prevents -this by redefining the \Environment{thebibliography} environment. -Though the \Package{natbib} package \IndexPackage{natbib} unauthorized -uses internal macros of {\KOMAScript} it could be made sure that -\Macro{setbibpreamble} works with the current version of -\Package{natbib} (see \cite{package:natbib}). - -\begin{Example} - You want to point out that the sorting of the references in the - bibliography is not according to their occuring in the text but in - alphabetical order. You use the following command: - \begin{small} -\begin{verbatim} - \setbibpreamble{References are in alphabetical order. - References with more than one author are sorted - according to the first author.} -\end{verbatim} - \end{small} - The \Macro{bigskip}\IndexCmd{bigskip} command makes sure that the - preamble and the first reference are separated by a big skip. - - Another usage of the preamble in the bibliography would be setting - the references ragged right. Just put the preamble as follows: - \begin{small} -\begin{verbatim} - \setbibpreamble{\raggedright} -\end{verbatim} - \end{small} - You can have a look at the result in the bibliography of this guide. -\end{Example} -% -\EndIndex{Cmd}{setbibpreamble} - - -\begin{Declaration} - \Macro{setindexpreamble} -\end{Declaration}% -\BeginIndex{Cmd}{setindexpreamble}% -Similar to the bibliography you can use a preamble in the index. This -is often the case if you have more than one index or if you use -different kinds of referencing by highlighting the page numbers in -different ways. - -\begin{Example} - You have a document in which terms are both defined an used. The - page numbers of definitions are in bold. Of course you want to make - your reader aware of this fact. Thus you insert a preamble in the - index: - \begin{small} -\begin{verbatim} - \setindexpreamble{In \textbf{bold} printed page numbers - are references to the definition of terms.\par\bigskip} -\end{verbatim} - \end{small} -\end{Example} -% -Please note that the page style of the first page of the index is -changed. The applied page style is defined in the macro -\Macro{indexpagestyle}(see \autoref{sec:maincls.pageStyle}). -The production, sorting and output of the index is done by the -standard \LaTeX{} packages and additional programs. Similar to the -standard classes {\KOMAScript} only provides the basic macros and -environments. -% -\EndIndex{Cmd}{setindexpreamble}% - - -\section{Obsolete Commands} -\label{sec:maincls.obsolete} - -\begin{Explain} - In this section you will find commands, which should not be used any - more. They are part of older \KOMAScript{} versions. For compatibility - reasons they can still be used in the new \KOMAScript{} release. There - are new mechanisms and user interfaces however, which you should use - instead. The reason for listing the obsolete macros in this - documentation is to aid users with understanding old documents. - Furthermore, package authors are free to use these macros in the future. - - \begin{Declaration} - \Macro{capfont} \\ - \Macro{caplabelfont} - \end{Declaration} - \BeginIndex{Cmd}{capfont}% - \BeginIndex{Cmd}{caplabelfont}% - The macro \Macro{capfont} sets the font which is used for captions - in tables and figures. The macro \Macro{caplabelfont} sets the font - which is used for the label and numbering of tables and pictures. - Please use element \FontElement{caption} and - \FontElement{captionlabel} of the current \KOMAScript{} instead - which are described in \autoref{sec:maincls.font}. -% - \EndIndex{Cmd}{capfont}% - \EndIndex{Cmd}{caplabelfont}% - - \begin{Declaration} - \Macro{descfont} - \end{Declaration} - \BeginIndex{Cmd}{descfont}% - This macro sets the font for the optional item arguments of an - \Environment{description} environment. Please use element - \FontElement{descriptionlabel} instead, which are described in - section ~\ref{sec:maincls.font}. -% - \EndIndex{Cmd}{descfont}% - - \begin{Declaration} - \Macro{sectfont} - \end{Declaration} - \BeginIndex{Cmd}{sectfont}% - This macro sets the font which is used for all section headings, the - main title an the highest level below \Macro{part} in the table of - contents. Use element \FontElement{sectioning} instead, which is - described in more detail in \autoref{sec:maincls.font}. -% - \EndIndex{Cmd}{sectfont}% - -\end{Explain} - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Authors} -\label{sec:maincls.authors} - -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% In folgender Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item Frank Neukam -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\item Axel Sommerfeldt -\item \textit{Jo\~{a}o Canas Ferreira} -\item \textit{Georg Grandke} -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/pglayout.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/pglayout.tex deleted file mode 100644 index db8df258b43..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/pglayout.tex +++ /dev/null @@ -1,1178 +0,0 @@ -\ProvidesFile{pglayout.tex}[2004/09/13 KOMA-Script manual,english] -% ============================================================================ -% pglayout.tex (Original German document: satzspgl.tex) -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written especially for use in German language -% documents, so the main documentation is in German. This is the -% English documentation. See readme.txt for other translated -% documents. -% ---------------------------------------------------------------------------- -% satzspgl.tex -% Copyright (c) 2001 Markus Kohm und bei die weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: pglayout.tex -% Translation by: Colin Marquardt (CM) -% <colin@marquardt-home.de> -% Contents: Construction of the page layout with -% \Package{typearea.sty} -% Language: English -% Charset of comments: US-ASCII -% Translation of german file: satzspgl.tex -% Date of translated german file: 2003-05-13 -% - -\chapter{Construction of the Page Layout with \Package{typearea}} -\label{cha:typearea} - -\section{Fundamentals of Page Layout} - -\begin{Explain} - If you look at a single page of a book or other prints, you will see - that it consists of top, foot, left and right margins, a (running) - head area, the text block and a (running) foot area. Looking - closer, there is space between the head area and the text block - and between the text block and the foot area. The relations - between these areas are called \emph{page layout}. - - The literature offers and discusses different algorithms and - heuristic approaches for constructing a good page layout. Often, - they are mentioning an approach which involves diagonals and their - intersections. The result is a page where the text block - proportions relate to the proportions of the \emph{page}. In a - single-sided document, the left and the right margin should have - equal widths. - The relation of the upper margin to the lower margin should - be 1\(:\)2. In a double-sided document (e.\,g. a book) however, - the inner margin (the margin at the spine) should be the same as - each of the two outer margins. - - In the previous paragraph, we mentioned and emphasized the - \emph{page}. Erroneously, often it is thought that the format of - the page would be the format of the paper. However, if you look at - a bound document, it is obvious that part of the paper vanishes in - the binding and is not part of the visible page. But the format of - the paper is not important for the layout of a page, it is the - impression of the visible page to the reader. Therefore, it is - clear that the calculation if the page layout must account for the - ``lost'' paper in the binding and add this amount to the width of - the inner margin. This is called \emph{binding correction}. - - The binding correction depends on the process of actually - producing the document and thus can not be calculated in general. - Every production process needs its own parameter. In professional - binding, this parameter is not too important since the printing is - done on oversized paper which is then cropped to the right size. - The cropping is done in a way so that the relations for the - visible double-sided page are as explained above. - - Now we know about the relation of the individual parts of a page. - However, we do not know about the width and the height of the - text block yet. Once we know one of these values, we can calculate - all the other values from the paper format and the page format or - the binding correction. - \begin{eqnarray*} - \Var{textblock~heigth} : \Var{textblock~width} &=& - \Var{page~height} : \Var{page~width}\\ -% - \Var{page~width} &=& \Var{paper~width} - \Var{binding~correction}\\ -% - \Var{top~margin} + \Var{foot~margin} &=& - \Var{page~height} - \Var{textblock~height} \\ -% - \Var{top~margin} : \Var{foot~margin} &=& 1 : 2 \\ -% - \Var{left~margin} : \Var{right~margin} &=& 1 : 1 \\ -% - \Var{half~inner~margin} &=& - \frac{1}{2}\Var{outer~margin} + \Var{binding~correction} \\ - \end{eqnarray*} - The values \Var{left~margin} and \Var{right~margin} are only - existent in a single-sided document while \Var{inner~margin} and - \Var{outer~margin} are only existent in a double-sided document. In - these equations, we work with \Var{half~inner~margin} since the full - inner margin belongs to a double-page. Thus, one page has half of - the inner margin. - - The question of the width of the textblock is also discussed in - the literature. The optimum width depends on several factors: - \begin{itemize} - \item size, width, type of the used font % !!! - \item line spacing % !!! - \item word length - \item available room - \end{itemize} - The importance of the font becomes clear once you think about - serifs. Serifs are fine lines % !!! - finishing off the letters. Letters whose main strokes are running - orthogonal to the text line are disturbing the flow more than they - are leading the eye along the line. These letters have serifs at - the end of the vertical strokes, however, so the horizontal serifs - lead the eye horizontally too. In addition, it helps the eye to - find the beginning of the next line. Thus, the line length for a - serif font can be slightly longer than for a non-serif font. - - In \LaTeX{}, the line spacing is about 20\% of the font - size. With commands like \Macro{linespread} or, better, packages like - \Package{setspace} the line spacing can be changed. A wider line - spacing helps the eye to follow the line. A very wide line - spacing, on the other hand, disturbs reading because the eye has - to move a wide distance between lines. Also, the reader gets - uncomfortable because of the visible stripe effect. The uniform - gray value of the page gets spoiled. Still, with a wider line - spacing, the lines can be longer. - - Literature gives different values for good line lengths, depending - on the author. To some extent, this is due to the native language - of the author. Since the eye jumps from word to word, short words - make this task easier. Not considering language and font, a line - length of 60 to 70 letters including spaces and - punctuation is a usable compromise. This requires well-chosen line - spacing, but \LaTeX{}'s default is usually good enough. - - Before looking at the actual construction of the page layout, - there are some minor things to know. \LaTeX{} doesn't start the - first line of the text block at the upper edge of the text block, - but with a defined distance. Also, \LaTeX{} knows the commands - \Macro{raggedbottom} and \Macro{flushbottom}. \Macro{raggedbottom} - specifies that the last line of a page should be positioned - wherever it was calculated. This means that the position of this - line can be different on each page, up to the height of one line. - In double-sided documents this is usually unwanted. - \Macro{flushbottom} makes sure that the last line is always at the - lower edge of the text block. To achieve this, \LaTeX{} sometimes - needs to stretch vertical glue more than allowed. Paragraph skip - is such a stretchable, vertical glue, even when set to zero. In - order not to stretch the paragraph skip on normal pages where it - is the only stretchable glue, the height of the text block should - be a multiple of the height of the text line, including the - distance from the upper edge of the text block to the first line. - - This concludes the introduction to page layout as handled by - \KOMAScript. Now, we can begin with the actual construction.\par -\end{Explain} - - -\section{Page Layout Construction by Dividing} -\label{sec:typearea.divConstruction} - -\begin{Explain} - - The easiest way to make sure that the text area has the same - ratios as the page is as follows: First, you subtract the - binding correction \Var{BCOR} from the inner edge of the paper. - Then you divide the rest of the page vertically into - \Var{DIV} rows of equal height. Next, you divide the page - horizontally into the same number (\Var{DIV}) of columns. Then you - take the uppermost row as the upper margin and the two lowermost - rows as the lower margin. If you print double-sided, you also take - the innermost column as the inner margin and the two outermost - columns as the outer margin. Then, you add the binding correction - \Var{BCOR} to the inner margin. The remainder of - the page is the text area. The width and the height of the text area result - automatically from the number of rows and columns \Var{DIV}. Since - the margins always need three rows/columns, \Var{DIV} must - be necessarily greater than three. - - In \KOMAScript, this kind of construction is implemented in the - \Package{typearea} package. For A4 paper, \Var{DIV} is predefined - according to the font size (see \autoref{tab:typearea.div}). If there is - no binding correction (\(\Var{BCOR} = 0\Unit{pt}\)), the results - roughly match the values of \autoref{tab:typearea.typearea}. - - In addition to the predefined values, you can specify \Var{BCOR} - and \Var{DIV} as options when loading the package (see - \autoref{sec:typearea.options}). There is also a command to - explicitly calculate the type area by providing these values as - parameters (also see \autoref{sec:typearea.options}). - - The \Package{typearea} package can determine the optimal value - of \Var{DIV} for the font used automatically. Again, see - \autoref{sec:typearea.options}.\par -\end{Explain} - - -\section{Page Layout Construction by Drawing a Circle} -\label{sec:typearea.circleConstruction} - -\begin{Explain} - In addition to the construction method previously described, a somewhat - more classical method can be found in the literature. Aim of this method is - not only identical ratios in the page proportions, but it is considered - optimal when the height of the text block is the same a the width of the - page. The exact method is described in \cite{JTsch87}. - - A disadvantage of this late dark age method is that the width of - the text area is not dependent on the font anymore. Thus, one - doesn't choose the text area to match the font, but the author or - typesetter has to choose the font according to the text area. This - can be considered a ``must''. - - In the \Package{typearea} package this construction is changed - slightly. By using a special (normally senseless) \Var{DIV} value - or a special package option, a \Var{DIV} value is chosen to match - the perfect values as closely as possible. See also - \autoref{sec:typearea.options}.\par -\end{Explain} - - -\section{Options and Macros to Influence the Page Layout} -\label{sec:typearea.options} - -The package \Package{typearea} offers two different user interfaces to -influence type area construction. The first method is to load the -package with options. For information on how to load packages and to -give package options, please refer to the \LaTeX{} literature, e.g. -\cite{lshort} and \cite{latex:usrguide}, or the examples given here. -Since the \Package{typearea} package is loaded automatically when -using the \KOMAScript{} main classes, the package options can be given -as class options (see \autoref{sec:maincls.options}). - -\begin{Declaration} - \Option{BCOR}\PName{Correction} -\end{Declaration}% -\BeginIndex{Option}{BCOR}% -With the \Option{BCOR}\PName{Correction} option you specify the -absolute value of the binding correction, i.e., the width of the area -that is used for the binding, thus ``lost'' from the paper width. - -This value will be used in the layout calculation automatically and -will be added to the inner or left margin respectively. You can use -any valid \TeX{} unit for \PName{Correction}. - -\begin{Example} -Assume you want to produce a financial report, which is to be -printed on A4 paper and bound in a folder. The rim of the folder -covers \(7{,}5\Unit{mm}\). Since the report is thin, only an -additional \(0{,}75\Unit{mm}\) are lost by folding when leafing -through the pages. You would use the following commands: -\begin{verbatim} - \documentclass[a4paper]{report} - \usepackage[BCOR8.25mm]{typearea} -\end{verbatim} -or, using a \KOMAScript-class: -\begin{verbatim} - \documentclass[a4paper,BCOR8.25mm]{scrreprt} -\end{verbatim} -\end{Example} - -Please note: if you use one of the \KOMAScript{} classes, this option -must be given as a class option. If you use another class, this only -works if the class has explicit support for typearea. So when using -the standard classes, you need to give the option when you load -\Package{typearea}. You can also use \Macro{PassOptionsToPackage} -(see \cite{latex:clsguide}) before you are loading -\Package{typearea}, this always works. -% -\EndIndex{Option}{BCOR} - - -\begin{Declaration} - \Option{DIV}\PName{Factor} -\end{Declaration}% -\BeginIndex{Option}{DIV}% -\Option{DIV}\PName{Factor} defines the number of stripes the page -is split into when the page layout is constructed. The exact -method can be found in \autoref{sec:typearea.divConstruction}, -but the most important thing is: the higher \PName{Factor}, the -bigger the resulting text area, and the smaller the margins. For -\PName{Factor}, you can use any integer value larger than 4. -Please note that depending on your other options a very high value -for \PName{Factor} can result in problems: For instance, in -extreme cases, the running title might be outside the actual page -area. So if you use \Option{DIV}\PName{Factor}, it is your own -responsibility to choose a typographically acceptable line length -and to pay attention to the other parameters. - -In \autoref{tab:typearea.typearea} you'll find some page layout -values for the page format A4 without binding correction, with -varying \Var{DIV} factors. Font size is not taken into account. - -\begin{table} - \centering - \begin{tabular}{c|cc|cc} - & \multicolumn{2}{c|}{Text area} & \multicolumn{2}{c}{Margins}\\ - \emph{DIV}& Width [mm] & Height [mm] & upper [mm] & inner [mm] \\ - \hline\rule{0pt}{2.7ex}% - 6 & 105,00 & 148,50 & 49,50 & 35,00 \\ - 7 & 120,00 & 169,71 & 42,43 & 30,00 \\ - 8 & 131,25 & 185,63 & 37,13 & 26,25 \\ - 9 & 140,00 & 198,00 & 33,00 & 23,33 \\ - 10 & 147,00 & 207,90 & 29,70 & 21,00 \\ - 11 & 152,73 & 216,00 & 27,00 & 19,09 \\ - 12 & 157,50 & 222,75 & 24,75 & 17,50 \\ - 13 & 161,54 & 228,46 & 22,85 & 16,15 \\ - 14 & 165,00 & 233,36 & 21,21 & 15,00 \\ - 15 & 168,00 & 237,60 & 19,80 & 14,00 \\ - \end{tabular} - \caption{Page layout values depending on \Var{DIV} for A4} - \label{tab:typearea.typearea} -\end{table} - -\begin{Example} - Imagine you are writing meeting minutes with the - \Class{protocol}\footnote{The class \Class{protocol} is - hypothetical. This manual considers the ideal case where you have - a special class for every use.}-class. The whole thing is supposed to - be double sided. In your company, the Bookman font in 12\Unit{pt} - is used. This standard PostScript font is activated in {\LaTeX} - with the command \Macro{usepackage}\Parameter{bookman}. Bookman runs very - wide, that means, the characters are wide in relation to its - height. Because of that, the default for the \Var{DIV} value in - \Package{typearea} is too small for you. Instead of 12, you want 15. - The minutes will not be bound but punched and filed into a folder, - so you don't need any binding correction. Thus, you write: - \begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{protocol} - \usepackage{bookman} - \usepackage[DIV15]{typearea} -\end{verbatim} - \end{small} - After you are done you get told that the minutes are collected and - bound as a book by the end of the year. The binding is done as a - simple glue binding in a copy shop, since it is done just for ISO\,9000 - anyway and nobody will ever bother to look at the minutes again. For - binding you need \(12\Unit{mm}\) in average. So you change the options - for \Package{typearea} accordingly and use the ISO\,9000 document class: - \begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{iso9000p} - \usepackage{bookman} - \usepackage[DIV15,BCOR12mm]{typearea} -\end{verbatim} - \end{small} - Of course, you can also use a \KOMAScript{} class here: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside,DIV15,BCOR12mm]{scrartcl} - \usepackage{bookman} -\end{verbatim} -\end{small} -\end{Example} -% -Please note: if you use one of the \KOMAScript{} classes, -\Option{BCOR} must -be given as a class option. If you use another class, this only -works if the class has explicit support for typearea. So when -using the standard classes, you need to give \Option{BCOR} when you load -\Package{typearea}. You can use \Macro{PassOptionsToPackage} -(see \cite{latex:clsguide}) too before you are loading -\Package{typearea}, this always works. -% -\EndIndex{Option}{DIV} - -\begin{Declaration} - \Option{DIVcalc}\\ - \Option{DIVclassic} -\end{Declaration}% -\BeginIndex{Option}{DIVcalc}% -\BeginIndex{Option}{DIVclassic}% -As mentioned in \autoref{sec:typearea.divConstruction}, only -paper format A4 has fixed defaults for the \Var{DIV} value. These -are listed in \autoref{tab:typearea.div}. If you choose a -different paper format, \Package{typearea} calculates a good -\Var{DIV} value itself. Of course, you can also have it calculate -that for A4: use \Option{DIVcalc} instead of -\Option{DIV}\PName{Factor}. This works for all other paper formats -as well. If you want to use the automatic calculation, this is -even very useful, since you can then override the defaults that -are given in a configuration file (see -\autoref{sec:typearea.cfg}) with this option. - -\begin{table} - \centering - \begin{tabular}{lccc} - Base font size: & 10\Unit{pt} & 11\Unit{pt} & 12\Unit{pt} \\ - \Var{DIV}: & 8 & 10 & 12 \\ - \end{tabular} - \caption{\label{tab:typearea.div}\PName{DIV} defaults for A4} -\end{table} - -The classic construction method as described in -\autoref{sec:typearea.circleConstruction} can also be selected -(with the difference that a good \Var{DIV} value is chosen). In -this case, instead of \Option{DIV}\PName{Factor} or -\Option{DIVcalc}, use the option \Option{DIVclassic}. - -\begin{Example} - In the example for \Option{DIV}\PName{Factor} which used the - Bookman font, there was the problem that we needed a \Var{DIV} - value which suited the font better. As a modification of the first - example, this calculation can be left to \Package{typearea}: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{protocol} - \usepackage{bookman} - \usepackage[DIVcalc]{typearea} -\end{verbatim} -\end{small} -\end{Example} - - -\begin{Declaration} - \Macro{typearea}\OParameter{BCOR}\Parameter{DIV} -\end{Declaration}% -\BeginIndex{Cmd}{typearea}% -If you followed the examples till here, you'll ask yourself how -one can make the calculation of \Var{DIV} depend on the selected -font when one uses one of the \KOMAScript{} classes. Then the -options to \Package{typearea} would have to be made before loading -the e.g. \Package{bookman} package. In this case, -\Package{typearea} could only calculate the page layout for the -standard font, but not for the Bookman font which is really -used. After evaluating the options, \Package{typearea} -calculates the page layout by using the -\Macro{typearea}\OParameter{BCOR}\Parameter{DIV} command. Here, -the chosen \Var{BCOR} value is given as an optional parameter and -\Var{DIV} as a parameter. With the option \Option{DIVcalc}, the -(normally invalid) value~\(1\) is given; with the option -\Option{DIVclassic} the (normally invalid) value~\(3\). You can -also call \Macro{typearea} explicitly in the preamble. - -\begin{Example} -Let us assume again that we want to calculate a good page layout -for the Bookman font. We also want to use a \KOMAScript{} class. -This is possible using the \Macro{typearea}-command with -\Option{DIVcalc} = 1 as \PName{DIV}-parameter: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,BCOR12mm,DIVcalc,twoside]{scrartcl} - \usepackage{bookman} - \typearea[12mm]{1}% same as class options above -\end{verbatim} -\end{small} -\end{Example} - -It would be ridiculous if one had to use the -\Macro{typearea}-command with some pseudo-values, while the -\Option{DIV}-Option allows the use of \Option{DIVcalc} and -\Option{DIVclassic}. Thus the \Macro{typearea} also accepts -symbolic values for the parameter \PName{DIV}: -\begin{labeling}[\ --]{\PValue{classic}} -\item [\PValue{calc}] re-calculate page layout and determine - \Var{DIV}. -\item [\PValue{classic}] re-calculate page layout using the classical - method (circle) . -\item [\PValue{current}] re-calculate page layout with current value - of \Var{DIV}. -\item [\PValue{default}] re-calculate page layout with default values - for the current page- and font size. If no default values exist, - apply \PValue{calc}. -\item [\PValue{last}] re-calculate page layout using the same - \PName{DIV}-argument, which was set last time. -\end{labeling} -The \Macro{typearea} also understands the following symbolic values for -the parameter \PName{BCOR}. Thus it is not neccesary to re-enter -the current value. -\begin{labeling}[\ --]{\PValue{classic}} - \item [\PValue{current}] Re-calculate page layout using the current - value for \Var{BCOR}. -\end{labeling} - -\begin{Example} -Thus calculating a good page layout for the Bookman font and a -\KOMAScript-class is easy when we use symbolic parameter values -for \PName{BCOR} and \PName{DIV}: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,BCOR12mm,DIVcalc,twoside]{scrartcl} - \usepackage{bookman} - \typearea[current]{calc} -\end{verbatim} -\end{small} -If we want to use a fixed value for \Var{DIV} we can use either: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,BCOR12mm,DIV11,twoside]{scrartcl} - \usepackage{bookman} - \typearea[current]{current} -\end{verbatim} -\end{small} -or the old method: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{scrartcl} - \usepackage{bookman} - \typearea[12mm]{11} -\end{verbatim} -\end{small} -In the end it is a matter of personal taste which of these solution you -want to use. -\end{Example} - -Frequently the re-calculation of the page layout is necessary -because the line spacing was changed. Since it is essential that -an integer number of lines fit into the text area, any change in -line spacing requires a re-calculation of page layout. - -\begin{Example} -Assume you want to write a thesis and university regulations -require a font size of 10\Unit{pt} and a line spacing of -2\Unit{pt}. Thus a stretch-factor of 1.25 is required. Let us -also assume that \PName{BCOR} = 12\Unit{mm}. Then you might use: -\begin{small} -\begin{verbatim} - \documentclass[10pt,BCOR12mm,DIVcalc,twoside]{scrreprt} - \linespread{1.25}\selectfont - \typearea[current]{calc} -\end{verbatim} -\end{small}\IndexCmd{linespread} -The command \Macro{selectfont} is required here in order to -activate the new line spacing before the page layout is -calculated. - -The same example again, using the \Package{setspace}-package: -\begin{small} -\begin{verbatim} - \documentclass[10pt,BCOR12mm,DIVcalc,twoside]{scrreprt} - \usepackage{setspace} - \onehalfspacing - \typearea[current]{calc} -\end{verbatim} -\end{small} -Using the \Package{setspace}-package simplifies things, because -you no longer need to calculate the correct stretch-factor, and -you no longer need the \Macro{selectfont}-macro. - -In this context it is appropriate to point out that the line -spacing should be reset for the title page. A complete example -therefore would look like this: -\begin{small} -\begin{verbatim} - \documentclass[10pt,BCOR12mm,DIVcalc,twoside]{scrreprt} - \usepackage{setspace} - \onehalfspacing - \typearea[current]{calc} - \begin{document} - \title{Title} - \author{Markus Kohm} - \begin{spacing}{1} - \maketitle - \tableofcontents - \end{spacing} - \chapter{Ok} - \end{document} -\end{verbatim} -\end{small} -See also the notes in \autoref{sec:typearea.tips}. -\end{Example} - -\begin{Explain} -The command \Macro{typearea} is currently defined in such a way -that it is possible to change the page layout in the middle of a -text. This however makes assumptions about the inner workings of -the \LaTeX-kernel and changes some internal values and -definitions of that kernel. There is some probability, but no -guarantee that this will also work in future versions of \LaTeX. -It must be assumed that this method will not give correct results -in \LaTeX3. However, as author of \KOMAScript{} I expect -considerable incompatibilities when we change to \LaTeX3.\par -\end{Explain} -\EndIndex{Cmd}{typearea} -\EndIndex{Option}{DIVclassic}% -\EndIndex{Option}{DIVcalc} - -\begin{Declaration} - \Option{headinclude}\\ - \Option{headexclude}\\ - \Option{footinclude}\\ - \Option{footexclude} -\end{Declaration}% -\BeginIndex{Option}{headinclude}% -\BeginIndex{Option}{headexclude}% -\BeginIndex{Option}{footinclude}% -\BeginIndex{Option}{footexclude}% -\begin{Explain}% - -So far we have discussed how the page layout is calculated and -what the ratios are between the borders and between borders and -text area. However, one important question has not been answered: -What constitutes the borders? This question appears trivial: -Borders are those parts on the right, left, top and bottom which -remain empty. But this is only half of it. Borders are not always -empty. There could be marginals, for example (for the -\Macro{marginpar}-command refer to \cite{l2kurz} or -\autoref{sec:maincls.marginNotes}). - -One could also ask, whether headers and footers belong to the upper -and lower borders or to the text. This can not be answered -unambiguously. Of course an empty footer or header belong to the -borders, since they can not be distinguished from the rest of the -border. A header or footer, that contains only a page number, will -optically appear more like border. For the optical appearance it is -not important whether headers or footers are easily recognised as such -during reading. Important is only, how a well filled page appears -when viewed out of focus. You could use the glasses of your -far-sighted grand parents, or, lacking those, adjust your vision to -infinity and look at the page with one eye only. Those wearing -spectacles will find this much easier, of course. If the footer -contains not only the page number, but other material like a copyright -notice, it will optically appear more like a part of the text body. -This needs to be taken into account when calculating text layout. - -For the header this is even more complicated. The header frequently -contains running heads \Index[indexmain]{running head}. In case of -running heads with long chapter and section titles the header lines -will be very long and appear to be part of the text body. This effect -becomes even more significant when the header contains not only the -chapter or section title but also the page number. With material on -the right and left side, the header will no longer appear as empty -border. If the length of the titles varies, the header may appear as -border on one page and as text on another. However, this pages should -not be treated differently under any circumstances, as this would lead -to jumping headers. In this case it is probably best to count the -header with the text. - -The decision is easy when text and header or footer are separated -from the text body by a line. This will give a ``closed'' -appearance and header or footer become part of the text body. -Remember: It is irrelevant that the line improves the optical -separation of text and header or footer, important is only the -appearance when viewed out of focus. -\end{Explain} - -The \Package{typearea}-package can not make the decision whether -or not to count headers and footers to the text body or the -border. Options \Option{headinclude} and \Option{footinclude} -cause the header or footer to be counted as text, options -\Option{headexclude} and \Option{footexclude} cause them to be -counted as border. If you are unsure about the correct setting, -re-read above explanations. Default is usually -\Option{headexclude} and \Option{footexclude}., but this can -change depending on \KOMAScript-class and \KOMAScript-packages used -(see \autoref{sec:maincls.options} and \ref{cha:scrpage}). -% -\EndIndex{Option}{headinclude}% -\EndIndex{Option}{headexclude}% -\EndIndex{Option}{footinclude}% -\EndIndex{Option}{footexclude}% - -\begin{Declaration} - \Option{mpinclude}\\ - \Option{mpexclude} -\end{Declaration} -\BeginIndex{Option}{mpinclude}% -\BeginIndex{Option}{mpexclude}% -Besides\ChangedAt{v2.8q}{\Class{scrbook}\and \Class{scrreprt}\and - \Class{scrartcl}} documents where the head and foot is part - of the text area, there are also documents where the margin-note - area must be counted to the text body as well. - The option \Option{mpinclude} does exactly this. - The effect is that one width-unit of the text-body is taken for - the margin-note area. - Using option \Option{mpexclude}, the default setting, - then the normal margin is used for the margin-note area. - The width of that area is one or one and a half width-unit, - depending on whether one-side or two-side page layout - has been chosen. - The option \Option{mpinclude} is mainly for experts and so - not recommended. - -\begin{Explain} -In the cases where the option \Option{mpinclude} is used -often a wider margin-note area is required. -In many cases not the whole margin-note width should be part -of the text area, for example if the margin is used for quotations. -Such quotations are typeset as ragged text with the flushed -side where the text body is. -Since ragged text gives no homogeneous optical impression -the long lines can reach right into the normal margin. -This can be done using option \Option{mpinclude} and -by an enlargement of length \Length{marginparwidth} after -the type-area has been setup. -The length can be easily enlarged with the command -\Macro{addtolength}. -How much the the length has to be enlarged depends on the -special situation and it requires some flair. -Therefore the option is primarily for experts. -Of course one can setup the margin-width to reach -a third right into the normal margin, for example -using \Macro{setlength}\PParameter{\Length{marginparwidth}}% -\PParameter{1.5\Length{marginparwidth}} gives the desired result. - -Currently there is no option to enlarge the margin by a -given amount. -The only solution is that the option \Option{mpinclude} -is not used, but after the type-area has been calculated -one reduces the width of the text-body \Length{textwidth} -and enlarges the margin width \Length{marginparwidth} -by the same amount. -Unfortunately, this can not be attended when automatic -calculation of the \PName{DIV} value is used. -In contrast \Option{DIVcalc}\IndexOption{DIVcalc} heeds -\Option{mpinclude}. -\end{Explain} -% -\EndIndex{Option}{mpinclude}% -\EndIndex{Option}{mpexclude}% - - -\begin{Declaration} - \PName{Value}\Option{headlines} -\end{Declaration}% -\BeginIndex{Option}{headlines}% -We have seen how to calculate the text layout and how to specify -whether header and footer are part of the text body or the -borders. However, we still have to specify the height in -particular of the header. This is achieved with the option -\Option{headlines}, which is preceded by the number of lines in -the header. \Package{typearea} uses a default of 1.25. This is a -compromise, large enough for underlined headers (see -\autoref{sec:maincls.options}) and small enough that the -relative weight of the top border is not affected to much when -the header is not underlined. Thus in most cases you may leave -\Option{headlines} at its default value and adapt it only in -special cases. - -\begin{Example} - Assume that you want to use a 2-line header. Normally this would - result in a "`\texttt{overfull} \Macro{vbox}"' warning for each - page. To prevent this from hapening, the - \Package{typearea}-package is told to calculate an appropriate - page layout: -\begin{small} -\begin{verbatim} - \documentclass[a4paper]{article} - \usepackage[2.1headlines]{typearea} -\end{verbatim} -\end{small} -If you use a \KOMAScript-class this must be given as a class-option: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,2.1headlines]{scrartcl} -\end{verbatim} -\end{small} -A tool that can be used to define the contents of a header with 2 -lines is described in \autoref{cha:scrpage}. -\end{Example} - -If you use a \KOMAScript-class, this option must be given as -class-option. With other classes this works only, if these -classes explicitly supports \Package{typearea}. If you use the -standard classes, the option must be given when loading -\Package{typearea}. \Macro{PassOptionsToPackage} will work in -both cases (see also \cite{latex:clsguide}). -% -\EndIndex{Option}{headlines} - -\begin{Declaration} - \Macro{areaset}\OParameter{BCOR}\Parameter{Width}\Parameter{Height} -\end{Declaration}% -\BeginIndex{Cmd}{areaset}% -So far we have seen how a good or even very good page layout is -calculated and how the \Package{typearea}-package can support these -calculations, giving you at the same time the freedom to adapt the -layout to your needs. However, there are cases where the text body -has to fit exactly into specified dimensions. At the same time the -borders should be well spaced and a binding correction should be -possible. The \Package{typearea}-package offers the command -\Macro{areaset} for this purpose. As parameters this command accepts -the binding correction and the width and height of the text body. -Width and position of the borders will then be calculated -automatically, taking account of the options \Option{headinclude}, -\Option{headexclude}, \Option{footinclude} and \Option{footexclude} -where needed. - -\begin{Example} -Assume a text, printed on A4 paper, should have a width of -exactly 60 characters of typewriter-font and a height of exactly -30 lines. This could be achieved as follows: -\begin{verbatim} - \documentclass[a4paper,11pt]{article} - \usepackage{typearea} - \newlength{\CharsLX}% Width of 60 characters - \newlength{\LinesXXX}% Height of 30 lines - \settowidth{\CharsLX}{\texttt{1234567890}} - \setlength{\CharsLX}{6\CharsLX} - \setlength{\LinesXXX}{\topskip} - \addtolength{\LinesXXX}{30\baselineskip} - \areaset{\CharsLX}{\LinesXXX} -\end{verbatim} - -\item A poetry book with a square text body with a page length of - \(15\Unit{cm}\) and a binding correction of \(1\Unit{cm}\) could be - achieved like this: -\begin{verbatim} - \documentclass{gedichte} - \usepackage{typearea} - \areaset[1cm]{15cm}{15cm} -\end{verbatim} -\end{Example} -\EndIndex{Cmd}{areaset} - - -\section{Options and Macros for Paper Format Selection} -\label{sec:typearea.paperTypes} - -\Index{paper format}% -The \LaTeX standard classes support the options \Option{a4paper}, -\Option{a5paper}, \Option{b5paper}, \Option{letterpaper}, -\Option{legalpaper} and \Option{executivepaper}. -\begin{Declaration} - \Option{letterpaper} \\ - \Option{legalpaper} \\ - \Option{executivepaper} \\ - \Option{a\Var{X}paper} \\ - \Option{b\Var{X}paper} \\ - \Option{c\Var{X}paper} \\ - \Option{d\Var{X}paper} \\ - \Option{landscape} \\ - \Macro{isopaper}\OParameter{series}\Parameter{number} -\end{Declaration}% -\BeginIndex{Option}{letterpaper} -\BeginIndex{Option}{legalpaper} -\BeginIndex{Option}{executivepaper} -\BeginIndex{Option}{a0paper} -\BeginIndex{Option}{b0paper} -\BeginIndex{Option}{c0paper} -\BeginIndex{Option}{d0paper} -\BeginIndex{Option}{landscape} -\BeginIndex{Cmd}{isopaper}% -The three American formats are supported by \Package{typearea} -in the same way. In addition, all ISO-A-, ISO-B-, ISO-C- and -ISO-D-formats are supported and derived from their basic sizes A0, B0, -C0 and D0. They may be selected directly with options -\Option{a0paper}, \Option{a1paper} and so on. Landscape orientation is -selected with the \Option{landscape}-option just as in the standard -classes. - -Alternatively the paper size can be adjusted with the macro -\Macro{isopaper}. This however required re-calculation of the -text layout with \Macro{typearea} or \Macro{areaset}. I do not -recommend the use of \Macro{isopaper}. - -\begin{Example} - Assume you want to print on ISO-A8 file cards in landscape - orientation. Borders should be very small, no header or footer - will be used. -\begin{verbatim} - \documentclass{article} - \usepackage[headexclude,footexclude, - a8paper,landscape]{typearea} - \areaset{7cm}{5cm} - \pagestyle{empty} - \begin{document} - \section*{Paper Size Options} - letterpaper, legalpaper, executivepaper, a0paper, - a1paper \dots\ b0paper, b1paper \dots\ c0paper, - c1paper \dots\ d0paper, d1paper \dots - \end{document} -\end{verbatim} -\end{Example} - -All \Option{a\Var{X}paper}-, \Option{b\Var{X}paper}-, -\Option{c\Var{X}paper}- and \Option{d\Var{X}paper}-options need -to be given as class options when \KOMAScript{} classes are used. -For other classes this works only if they support -\Package{typearea}. For the standard \LaTeX-classes these options -need to be declared when \Package{typearea} is loaded. -\Macro{PassOptionsToPackage} (see \cite{latex:clsguide}) works in -both cases. -% -\EndIndex{Option}{letterpaper} -\EndIndex{Option}{legalpaper} -\EndIndex{Option}{executivepaper} -\EndIndex{Option}{a0paper} -\EndIndex{Option}{b0paper} -\EndIndex{Option}{c0paper} -\EndIndex{Option}{d0paper} -\EndIndex{Option}{landscape} -\EndIndex{Cmd}{isopaper} - -\begin{Declaration} - \Macro{paperwidth}\\ - \Macro{paperheight} -\end{Declaration}% -\BeginIndex{Cmd}{paperwidth}% -\BeginIndex{Cmd}{paperheight}% -Particularly exotic paper sizes can be defined using the lengths -\Macro{paperwidth} and \Macro{paperheight}. -This requires the re-calculation of the text layout using the -commands \Macro{typearea} or \Macro{areaset}. -% -\begin{Example} -Assume you want to print on endless paper with the dimensions -\(8\frac{1}{4}\Unit{inch} \times 12\Unit{inch}\). This format is -not directly supported by \Package{typearea}. Thus you have to -define it befor calculating the text layout: -\begin{verbatim} - \documentclass{article} - \usepackage{typearea} - \setlength{\paperwidth}{8.25in} - \setlength{\paperheight}{12in} - \typearea{1} -\end{verbatim} -\end{Example} -\EndIndex{Cmd}{paperheight} -\EndIndex{Cmd}{paperwidth} - -\begin{Declaration} - \Option{dvips}\\ - \Option{pdftex}\\ - \Option{pagesize} -\end{Declaration}% -\BeginIndex{Option}{dvips}% -\BeginIndex{Option}{pdftex}% -\BeginIndex{Option}{pagesize}% -\begin{Explain}% - These mechanisms will set internal \LaTeX{} dimensions to values that - header, text body and footer can be printed on paper of the given - size. However, the specifications of the DVI-format\index{DVI} do - not allow the paper format to be specified. If DVI is translated - directly into a low level printer language like PCL (Hewlett-Packard - printers) or Esc-P (Epson), this is usually not important, because - in all these cases the origin is the upper left corner. If however - the DVI-source is translated into languages like - PostScript\Index{PostScript} or PDF\Index{PDF}, that have an origin - in a different position and also contain the paper size explicitly, - the required information is not available in the DVI-file. To solve - this problem the DVI-driver will use the default paper size, which - the user may set per option or in the \TeX-source. In case of the - DVI-driver \File{dvips} this can be done with a - \Macro{special}-command. For {pdf\TeX} two dimensions are set - instead. -\end{Explain} -The option \Option{dvips} writes the paper size as a \Macro{special} -into the DVI-file. This macro is then evaluated by \File{dvips}. -\Option{pdftex} on the other hand writes the paper size into the -pdf\TeX{} page register at the beginning of the document, so that the -correct paper size is used when the resulting PDF-file is viewed or -printed. The option \Option{pagesize} is more flexible and uses the -correct mechanism if either a PDF- or DVI-file is produced. -% -\begin{Example} - Assume you want to create a DVI-file from a document and an - online version in PDF. Then the preamble could look like this: - \begin{small} -\begin{verbatim} - \documentclass{article} - \usepackage[a4paper,pagesize]{typearea} -\end{verbatim} - \end{small} - If the file is run through {pdf\TeX} then the lengths - \Macro{pdfpagewidth} and \Macro{pdfpageheight} will be set to - appropriate values. If on the other hand you create a DVI-file -- - either with {\LaTeX} or {pdf\LaTeX} -- a \Macro{special} will be - written to the beginning of the file. -\end{Example}\IndexCmd{pdfpagewidth}\IndexCmd{pdfpagehight} -\EndIndex{Option}{dvips}% -\EndIndex{Option}{pdftex}% -\EndIndex{Option}{pagesize}% - -\section{Odd Bits without Direct Relevance to Text Layout} -\label{sec:typearea.else} - -\begin{Declaration} - \Macro{ifpdfoutput}\Parameter{then}\Parameter{else} -\end{Declaration}% -\BeginIndex{Cmd}{ifpdfoutput}% -Sometimes it would be nice if certain things would be done -differently in a file, depending on output format. \TeX{} normally -uses DVI as output format. With {pdf\TeX} however we now have the -option to create PDF-files directly. The command -\Macro{ifpdfoutput} is a branching command. If PDF-output is -active, the \PName{then} branch will be executed, if PDF-output -is inactive or {pdf\TeX} is not used at all, the -\PName{else} branch. -\begin{Example} - As you may know {pdf\LaTeX} will produce a DVI-file instead of a - PDF-file, if the counter \Macro{pdfoutput} is assigned the value 0. - Only is the counter is assigned a value different from 0 output is - switched to PDF. Since \Macro{pdfoutput} is unknown when {\LaTeX} is - used instead of {pdf\LaTeX}, \Macro{pdfoutput} can not be set to 0 - generally, if you want DVI-output. A simple solution to this problem - is to execute following command: - \begin{small} -\begin{verbatim} - \ifpdfoutput{\pdfoutput=0}{} -\end{verbatim} - \end{small} - This only works after loading \Package{typearea} package. If you - want the line above to be executed after af package, which set's - \Macro{pdfoutput} to 1 whenever the counter exist, you may combine - it with the \Macro{AfterPackage}\IndexCmd{AfterPackage} command - from \Package{scrlfile} package (see \autoref{cha:scrlfile}). -\end{Example}\IndexCmd{pdfoutput} -\EndIndex{Cmd}{ifpdfoutput} - -\section{Local Defaults in the File \File{typearea.cfg}} -\label{sec:typearea.cfg} -Even before the packet options are used, \Package{typearea} will check -for the presence of the file -\File{typearea.cfg}\IndexFile{typearea.cfg} and, if found, load it. -Thus it is possble to define in this file the parameters for -additional paper sizes. - -\begin{Declaration} - \Macro{SetDIVList}\Parameter{List} -\end{Declaration}% -\BeginIndex{Cmd}{SetDIVList}% -\begin{Explain}% - The \Macro{SetDIVList}-parameter was also intended for use in this - file. Befor the option \Option{DIVcalc} was introduced this was the - only possibility to define \Var{DIV}-values for different paper and - font sizes. This list consists of a number of values in curly - parenthesis. The leftmost value is the font size, \(10\Unit{pt}\), - the next for \(11\Unit{pt}\), the third for \(12\Unit{pt}\) and so - on. If you don't use \Macro{SetDIVList} the predefined - \Macro{SetDIVList}% - \PParameter{\PParameter{8}\PParameter{10}\PParameter{12}} will be - used. If no default value is given for a particular font size, - \(10\) will be used. -\end{Explain} - -This command should no longer be used, automatic calculation of text -layout is recommended instead (see -\autoref{sec:typearea.options}). -% -\EndIndex{Cmd}{SetDIVList} - -\section{Hints} -\label{sec:typearea.tips} -\begin{Explain} -In particular for thesis many rules exist that violate even the -most elementary rules of typography. The reasons for such rules -include typographical incompetence of those making them, but also -the fact that they were originally meant for mechanical -typewriters. With a typewriter or a primitive text processor -dating back to the early ´80s it is not possible to produce -typographically correct output without extreme effort. -Thus rules were created that appeared to be achievable and still -allowed easy correction. To avoid short lines made worse by -ragged margins the borders were kept narrow, and the line spacing -increased to 1.5 for corrections. In a single spaced document -even correction signs would have been difficult to add. -When computers became widely available for text processing, some -students tried to use a particularly ``nice'' font to make their -work look better than it really was. They forgot however that -such fonts are often more difficult to read and therefore -unsuitable for this purpose. Thus two bread-and-butter fonts -became widely used which neither fit together nor are -particularly suitable for the job. In particular Times is a -relatively narrow font which was developed at the beginning of -the 20$^{th}$ century for the narrow columns of British -newspapers. Modern versions usually are somewhat improved. But -still the Times font required in many rules does not really fit -to the border sizes prescribed. - -{\LaTeX} already uses sufficient line spacing, and the borders -are wide enough for corrections. Thus a page will look generous, -even when quite full of text. With \Package{typearea} this is -even more true, especially if the calculation of line length is -left to \Package{typearea} too. For fonts that are sensitive to -long lines the line length can easily be reduced. - -To some extend the questionable rules are difficult to implement -in {\LaTeX}. A fixed number of characters per line can be kept -only when a non-proportional font is used. There are very few -good non-proportional fonts around. Hardly a text typeset in this -way looks really good. In many cases font designers try to -increase the serifes on the `i' or `l' to compensate for the -different character width. This can not work and results in a -fragmented and agitated looking text. If you use {\LaTeX} for -your paper, some of these rules have to be either ignored or at -least interpreted generously. For example you may interpret ``60 -characters per line'' not as a fixed, but average or maximal -value. -\end{Explain} - -As executed, record regulations are usually meant to obtaining an -useful result even if the author does not know, what to be consider -thereby. Usefully means frequently: readable and correctable. In my -opinion the type-area of a text set with \LaTeX{} and the -\Package{typearea} package becomes well done from the beginning fair. -Thus if you are confronted with regulations, which deviate obviously -substantially from it, then I recommend to submit a text single dump -to the responsible person and inquire whether it is permitted to -supply the work despite the deviations in this form. If necessary the -type-area can be moderately adapted by modification of option -\Option{DIV}. I advise against use of \Macro{areaset} for this -purpose however. At worst you may use geometry package (see -\cite{package:geometry}), which is not part of \KOMAScript{}, or -change the type-area parameters of \LaTeX. You may find the values -determined by \Package{typearea} at the log file of your document. -Thus moderate adjustments should be possible. However absolutely make -sure that the proportions of the text area correspond approximate with -those the page with consideration of the binding correction. - -If it should be absolutely necessary to set the text -one-and-a-half-lined then you should not redefine -\Macro{baselinestretch} under any circumstances. Although this -procedure is recommended very frequently, it is however obsolet since -the introduction of \LaTeXe{} in 1994. Use at least the instruction -\Macro{linespread}. I recommend package \Package{setspace} (see -\cite{package:setspace}), which is not part of \KOMAScript. Also you -should use \Package{typearea} to calculate a new type-area after the -conversion of the line space. However you should switch back to the -normal line space for the title, better also for the -directories\,---\,as well as the bibliography and the index. The -\Package{setspace} package offers for this a special environment and -own instructions. - -The \Package{typearea} package even with option \Option{DIVcalc} -calculates a very generous text area. Many conservative typographers -will state that the resulting line length is still excessive. The -calculated \Var{DIV}-value may be found in the \File{log} file to the -respective document. Thus you can select a smaller value easily after -the first \LaTeX{} run. - -The question is asked to me not rarely, why I actually talk section by -section about a type-area calculation, while it would be very many -simpler, only to give you a package, with which one can adjust the -edges as during a text processing. Often also one states, such a -package would be anyway the better solution, since everyone knew, how -good edges are to be selected, and the edges from {\KOMAScript} anyway -would not be well. I take the liberty of translating a suitable -quotation from \cite{TYPO:ErsteHilfe}. You may find the original -german words at the german scrguide. - -\begin{quote} - \textsl{The making by oneself is long usually, the results are often - doubtful, because layman typographers do not see, what is correct - and cannot not know, on what it important. Thus one gets - accustomed to false and bad typography.} [\dots] \textsl{Now the - objection could come, typography is nevertheless taste thing. If - it concerned decoration, perhaps one could let apply the argument, - since it concerns however primarily information with typography, - errors cannot only disturb, but even cause damage.} -\end{quote} - -\section{Authors} -\label{sec:typearea.authors} -The authors listed below are responsible for this chapter or have -contributed to this chapter in different ways. -% Please use \textit{} for the name of the translator add all the -% names of the untranslated german file. If the translator is the -% main author, simply use \textbf. -\begin{itemize} -\item Frank Neukam -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\item Axel Sommerfeldt -\item \textit{Colin Marquardt} -\item \textit{Dr. Engelbert Buxbaum} -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "main.tex" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide-en.bst b/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide-en.bst deleted file mode 100644 index 0faff68faec..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide-en.bst +++ /dev/null @@ -1,1700 +0,0 @@ -%% -%% This is file `scrguide-en.bst', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% merlin.mbs (with options: `head,exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% english.mbs (with options: `exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% scrguide.mbs (with options: `exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% merlin.mbs (with options: `tail,exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% ---------------------------------------- -%% *** This file was made for creating KOMA-Script scrguide bibliography *** -%% -%% Copyright 1994-2000 Patrick W Daly - % =============================================================== - % IMPORTANT NOTICE: - % This bibliographic style (bst) file has been generated from one or - % more master bibliographic style (mbs) files, listed above. - % - % This generated file can be redistributed and/or modified under the terms - % of the LaTeX Project Public License Distributed from CTAN - % archives in directory macros/latex/base/lppl.txt; either - % version 1 of the License, or any later version. - % =============================================================== - % Name and version information of the main mbs file: - % \ProvidesFile{merlin.mbs}[2000/05/04 4.01 (PWD, AO, DPC)] - % For use with BibTeX version 0.99a or later - %------------------------------------------------------------------- - % This bibliography style file is intended for texts in - % GERMAN - % This is a labelled citation style similar to the standard alpha.bst, - % where labels are of the form Dal90 or DBK89. - % It requires no extra package to interface to the main text. - % The form of the \bibitem entries is - % \bibitem[label]{key}... - % Usage of \cite is as follows: - % \cite{key} ==>> [label] - % \cite[chap. 2]{key} ==>> [label, chap. 2] - % The order in the reference list is by label. - %--------------------------------------------------------------------- - -ENTRY - { address - author - booktitle - chapter - edition - editor - howpublished - institution - isbn - issn - journal - key - month - note - number - organization - pages - publisher - school - series - title - type - url - volume - year - } - {} - { label extra.label sort.label } -INTEGERS { output.state before.all mid.sentence after.sentence after.block } -FUNCTION {init.state.consts} -{ #0 'before.all := - #1 'mid.sentence := - #2 'after.sentence := - #3 'after.block := -} -STRINGS { s t} -FUNCTION {output.nonnull} -{ 's := - output.state mid.sentence = - { ", " * write$ } - { output.state after.block = - { add.period$ write$ - newline$ - "\newblock " write$ - } - { output.state before.all = - 'write$ - { add.period$ " " * write$ } - if$ - } - if$ - mid.sentence 'output.state := - } - if$ - s -} -FUNCTION {output} -{ duplicate$ empty$ - 'pop$ - 'output.nonnull - if$ -} -FUNCTION {output.check} -{ 't := - duplicate$ empty$ - { pop$ "empty " t * " in " * cite$ * warning$ } - 'output.nonnull - if$ -} -FUNCTION {fin.entry} -{ add.period$ - write$ - newline$ -} - -FUNCTION {new.block} -{ output.state before.all = - 'skip$ - { after.block 'output.state := } - if$ -} -FUNCTION {new.sentence} -{ output.state after.block = - 'skip$ - { output.state before.all = - 'skip$ - { after.sentence 'output.state := } - if$ - } - if$ -} -FUNCTION {add.blank} -{ " " * before.all 'output.state := -} - -FUNCTION {add.colon} -{ duplicate$ empty$ - 'skip$ - { ":" * add.blank } - if$ -} - -FUNCTION {date.block} -{ - skip$ -} - -FUNCTION {not} -{ { #0 } - { #1 } - if$ -} -FUNCTION {and} -{ 'skip$ - { pop$ #0 } - if$ -} -FUNCTION {or} -{ { pop$ #1 } - 'skip$ - if$ -} -FUNCTION {new.block.checka} -{ empty$ - 'skip$ - 'new.block - if$ -} -FUNCTION {new.block.checkb} -{ empty$ - swap$ empty$ - and - 'skip$ - 'new.block - if$ -} -FUNCTION {new.sentence.checka} -{ empty$ - 'skip$ - 'new.sentence - if$ -} -FUNCTION {new.sentence.checkb} -{ empty$ - swap$ empty$ - and - 'skip$ - 'new.sentence - if$ -} -FUNCTION {field.or.null} -{ duplicate$ empty$ - { pop$ "" } - 'skip$ - if$ -} -FUNCTION {emphasize} -{ duplicate$ empty$ - { pop$ "" } - { "\emph{" swap$ * "}" * } - if$ -} -FUNCTION {scaps} -{ duplicate$ empty$ - { pop$ "" } - { "\textsc{" swap$ * "}" * } - if$ -} -FUNCTION {bib.name.font} -{ scaps } -FUNCTION {bib.fname.font} -{ bib.name.font } -FUNCTION {tie.or.space.prefix} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ -} - -FUNCTION {capitalize} -{ "u" change.case$ "t" change.case$ } - -FUNCTION {space.word} -{ " " swap$ * " " * } - % Here are the language-specific definitions for explicit words. - % Each function has a name bbl.xxx where xxx is the English word. - %------------------------------------------------------------------- - % Begin module: - % \ProvidesFile{english.mbs}[2000/03/15 4.0 (PWD)] - - % The language selected here is ENGLISH -FUNCTION {bbl.and} -{ "and"} - -FUNCTION {bbl.etal} -{ "et~al." } - -FUNCTION {bbl.editors} -{ "editors" } - -FUNCTION {bbl.editor} -{ "editor" } - -FUNCTION {bbl.edby} -{ "edited by" } - -FUNCTION {bbl.edition} -{ "edition" } - -FUNCTION {bbl.volume} -{ "volume" } - -FUNCTION {bbl.of} -{ "of" } - -FUNCTION {bbl.number} -{ "number" } - -FUNCTION {bbl.nr} -{ "no." } - -FUNCTION {bbl.in} -{ "in" } - -FUNCTION {bbl.pages} -{ "pages" } - -FUNCTION {bbl.page} -{ "page" } - -FUNCTION {bbl.chapter} -{ "chapter" } - -FUNCTION {bbl.techrep} -{ "Technical Report" } - -FUNCTION {bbl.mthesis} -{ "Master's thesis" } - -FUNCTION {bbl.phdthesis} -{ "Ph.D. thesis" } - -FUNCTION {bbl.first} -{ "1st" } - -FUNCTION {bbl.second} -{ "2nd" } - -FUNCTION {bbl.third} -{ "3rd" } - -FUNCTION {bbl.fourth} -{ "4th" } - -FUNCTION {bbl.fifth} -{ "5th" } - -FUNCTION {bbl.st} -{ "st" } - -FUNCTION {bbl.nd} -{ "nd" } - -FUNCTION {bbl.rd} -{ "rd" } - -FUNCTION {bbl.th} -{ "th" } -FUNCTION {eng.ord} -{ duplicate$ "1" swap$ * - #-2 #1 substring$ "1" = - { bbl.th * } - { duplicate$ #-1 #1 substring$ - duplicate$ "1" = - { pop$ bbl.st * } - { duplicate$ "2" = - { pop$ bbl.nd * } - { "3" = - { bbl.rd * } - { bbl.th * } - if$ - } - if$ - } - if$ - } - if$ -} - -MACRO {jan} {"January"} - -MACRO {feb} {"February"} - -MACRO {mar} {"March"} - -MACRO {apr} {"April"} - -MACRO {may} {"May"} - -MACRO {jun} {"June"} - -MACRO {jul} {"July"} - -MACRO {aug} {"August"} - -MACRO {sep} {"September"} - -MACRO {oct} {"October"} - -MACRO {nov} {"November"} - -MACRO {dec} {"December"} - - % End module: english.mbs - %------------------------------------------------------------------- - % Begin module: - % \ProvidesFile{scrguide.mbs}[2001/03/22 0.1] - % End module: scrguide.mbs -%% Copyright 1994-2000 Patrick W Daly -MACRO {acmcs} {"ACM Computing Surveys"} - -MACRO {acta} {"Acta Informatica"} - -MACRO {cacm} {"Communications of the ACM"} - -MACRO {ibmjrd} {"IBM Journal of Research and Development"} - -MACRO {ibmsj} {"IBM Systems Journal"} - -MACRO {ieeese} {"IEEE Transactions on Software Engineering"} - -MACRO {ieeetc} {"IEEE Transactions on Computers"} - -MACRO {ieeetcad} - {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} - -MACRO {ipl} {"Information Processing Letters"} - -MACRO {jacm} {"Journal of the ACM"} - -MACRO {jcss} {"Journal of Computer and System Sciences"} - -MACRO {scp} {"Science of Computer Programming"} - -MACRO {sicomp} {"SIAM Journal on Computing"} - -MACRO {tocs} {"ACM Transactions on Computer Systems"} - -MACRO {tods} {"ACM Transactions on Database Systems"} - -MACRO {tog} {"ACM Transactions on Graphics"} - -MACRO {toms} {"ACM Transactions on Mathematical Software"} - -MACRO {toois} {"ACM Transactions on Office Information Systems"} - -MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} - -MACRO {tcs} {"Theoretical Computer Science"} -FUNCTION {bibinfo.check} -{ swap$ - duplicate$ missing$ - { - pop$ pop$ - "" - } - { duplicate$ empty$ - { - swap$ pop$ - } - { swap$ - pop$ - } - if$ - } - if$ -} -FUNCTION {bibinfo.warn} -{ swap$ - duplicate$ missing$ - { - swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ - "" - } - { duplicate$ empty$ - { - swap$ "empty " swap$ * " in " * cite$ * warning$ - } - { swap$ - pop$ - } - if$ - } - if$ -} -FUNCTION {write.url} -{ url empty$ - { skip$ } - { "\newline\urlprefix\url{" url * "}" * write$ newline$ } - if$ -} - -STRINGS { bibinfo} -INTEGERS { nameptr namesleft numnames } - -FUNCTION {format.names} -{ 'bibinfo := - duplicate$ empty$ 'skip$ { - 's := - "" 't := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr - "{ff~}{vv~}{ll}{, jj}" - format.name$ - bib.name.font - bibinfo bibinfo.check - 't := - nameptr #1 > - { - nameptr #2 - #1 + = - numnames #2 - > and - { "others" 't := - #1 'namesleft := } - 'skip$ - if$ - namesleft #1 > - { ", " * t * } - { - s nameptr "{ll}" format.name$ duplicate$ "others" = - { 't := } - { pop$ } - if$ - t "others" = - { - " " * bbl.etal * - } - { - bbl.and - space.word * t * - } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ - } if$ -} -FUNCTION {format.names.ed} -{ - format.names -} -FUNCTION {format.authors} -{ author "author" format.names -} -FUNCTION {get.bbl.editor} -{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } - -FUNCTION {format.editors} -{ editor "editor" format.names duplicate$ empty$ 'skip$ - { - " " * - get.bbl.editor - capitalize - "(" swap$ * ")" * - * - } - if$ -} -FUNCTION {format.isbn} -{ isbn "isbn" bibinfo.check - duplicate$ empty$ 'skip$ - { - "ISBN " swap$ * - } - if$ -} - -FUNCTION {format.issn} -{ issn "issn" bibinfo.check - duplicate$ empty$ 'skip$ - { - "ISSN " swap$ * - } - if$ -} - -FUNCTION {format.note} -{ - note empty$ - { "" } - { note #1 #1 substring$ - duplicate$ "{" = - 'skip$ - { output.state mid.sentence = - { "l" } - { "u" } - if$ - change.case$ - } - if$ - note #2 global.max$ substring$ * "note" bibinfo.check - } - if$ -} - -FUNCTION {format.title} -{ title - "title" bibinfo.check - duplicate$ empty$ 'skip$ - { - emphasize - } - if$ -} -FUNCTION {output.bibitem} -{ newline$ - "\bibitem[" label * "]{" * write$ - cite$ write$ - "}" write$ - newline$ - "" - before.all 'output.state := -} - -FUNCTION {if.digit} -{ duplicate$ "0" = - swap$ duplicate$ "1" = - swap$ duplicate$ "2" = - swap$ duplicate$ "3" = - swap$ duplicate$ "4" = - swap$ duplicate$ "5" = - swap$ duplicate$ "6" = - swap$ duplicate$ "7" = - swap$ duplicate$ "8" = - swap$ "9" = or or or or or or or or or -} -FUNCTION {n.separate} -{ 't := - "" - #0 'numnames := - { t empty$ not } - { t #-1 #1 substring$ if.digit - { numnames #1 + 'numnames := } - { #0 'numnames := } - if$ - t #-1 #1 substring$ swap$ * - t #-2 global.max$ substring$ 't := - numnames #5 = - { duplicate$ #1 #2 substring$ swap$ - #3 global.max$ substring$ - "\," swap$ * * - } - 'skip$ - if$ - } - while$ -} -FUNCTION {n.dashify} -{ - n.separate - 't := - "" - { t empty$ not } - { t #1 #1 substring$ "-" = - { t #1 #2 substring$ "--" = not - { "--" * - t #2 global.max$ substring$ 't := - } - { { t #1 #1 substring$ "-" = } - { "-" * - t #2 global.max$ substring$ 't := - } - while$ - } - if$ - } - { t #1 #1 substring$ * - t #2 global.max$ substring$ 't := - } - if$ - } - while$ -} - -FUNCTION {word.in} -{ bbl.in - " " * } - -FUNCTION {format.date} -{ - month "month" bibinfo.check - duplicate$ empty$ - year "year" bibinfo.check duplicate$ empty$ - { swap$ 'skip$ - { "there's a month but no year in " cite$ * warning$ } - if$ - * - } - { swap$ 'skip$ - { - swap$ - " " * swap$ - } - if$ - * - } - if$ -} -FUNCTION{format.year} -{ year "year" bibinfo.check duplicate$ empty$ - { "empty year in " cite$ * - warning$ - } - { - " (" swap$ * ")" * - } - if$ -} -FUNCTION {format.btitle} -{ title "title" bibinfo.check - duplicate$ empty$ 'skip$ - { - emphasize - } - if$ -} -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { bbl.volume volume tie.or.space.prefix - "volume" bibinfo.check * * - series "series" bibinfo.check - duplicate$ empty$ 'pop$ - { swap$ bbl.of space.word * swap$ - emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - { series field.or.null } - { output.state mid.sentence = - { bbl.number } - { bbl.number capitalize } - if$ - number tie.or.space.prefix "number" bibinfo.check * * - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { bbl.in space.word * - series "series" bibinfo.check * - } - if$ - } - if$ - } - { "" } - if$ -} -FUNCTION {is.num} -{ chr.to.int$ - duplicate$ "0" chr.to.int$ < not - swap$ "9" chr.to.int$ > not and -} - -FUNCTION {extract.num} -{ duplicate$ 't := - "" 's := - { t empty$ not } - { t #1 #1 substring$ - t #2 global.max$ substring$ 't := - duplicate$ is.num - { s swap$ * 's := } - { pop$ "" 't := } - if$ - } - while$ - s empty$ - 'skip$ - { pop$ s } - if$ -} - -FUNCTION {convert.edition} -{ extract.num "l" change.case$ 's := - s "first" = s "1" = or - { bbl.first 't := } - { s "second" = s "2" = or - { bbl.second 't := } - { s "third" = s "3" = or - { bbl.third 't := } - { s "fourth" = s "4" = or - { bbl.fourth 't := } - { s "fifth" = s "5" = or - { bbl.fifth 't := } - { s #1 #1 substring$ is.num - { s bbl.th * 't := } - { edition 't := } - if$ - } - if$ - } - if$ - } - if$ - } - if$ - } - if$ - t -} - -FUNCTION {format.edition} -{ edition duplicate$ empty$ 'skip$ - { - convert.edition - output.state mid.sentence = - { "l" } - { "t" } - if$ change.case$ - "edition" bibinfo.check - " " * bbl.edition * - } - if$ -} -INTEGERS { multiresult } -FUNCTION {multi.page.check} -{ 't := - #0 'multiresult := - { multiresult not - t empty$ not - and - } - { t #1 #1 substring$ - duplicate$ "-" = - swap$ duplicate$ "," = - swap$ "+" = - or or - { #1 'multiresult := } - { t #2 global.max$ substring$ 't := } - if$ - } - while$ - multiresult -} -FUNCTION {format.pages} -{ pages duplicate$ empty$ 'skip$ - { duplicate$ multi.page.check - { - bbl.pages swap$ - n.dashify - } - { - bbl.page swap$ - } - if$ - tie.or.space.prefix - "pages" bibinfo.check - * * - } - if$ -} -FUNCTION {format.journal.pages} -{ pages duplicate$ empty$ 'pop$ - { swap$ duplicate$ empty$ - { pop$ pop$ format.pages } - { - ": " * - swap$ - n.dashify - pages multi.page.check - 'bbl.pages - 'bbl.page - if$ - swap$ tie.or.space.prefix - "pages" bibinfo.check - * * - * - } - if$ - } - if$ -} -FUNCTION {format.vol.num.pages} -{ volume field.or.null - duplicate$ empty$ 'skip$ - { - bbl.volume swap$ tie.or.space.prefix - "volume" bibinfo.check - * * - } - if$ - format.year * - number "number" bibinfo.check duplicate$ empty$ 'skip$ - { - swap$ duplicate$ empty$ - { "there's a number but no volume in " cite$ * warning$ } - 'skip$ - if$ - swap$ - "(" swap$ * ")" * - } - if$ * - format.journal.pages -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { bbl.chapter } - { type "l" change.case$ - "type" bibinfo.check - } - if$ - chapter tie.or.space.prefix - "chapter" bibinfo.check - * * - pages empty$ - 'skip$ - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {format.booktitle} -{ - booktitle "booktitle" bibinfo.check - emphasize -} -FUNCTION {format.in.ed.booktitle} -{ format.booktitle duplicate$ empty$ 'skip$ - { - editor "editor" format.names.ed duplicate$ empty$ 'pop$ - { - " " * - get.bbl.editor - capitalize - "(" swap$ * "), " * - * swap$ - * } - if$ - word.in swap$ * - } - if$ -} -FUNCTION {empty.misc.check} -{ author empty$ title empty$ howpublished empty$ - month empty$ year empty$ note empty$ - and and and and and - key empty$ not and - { "all relevant fields are empty in " cite$ * warning$ } - 'skip$ - if$ -} -FUNCTION {format.thesis.type} -{ type duplicate$ empty$ - 'pop$ - { swap$ pop$ - "t" change.case$ "type" bibinfo.check - } - if$ -} -FUNCTION {format.tr.number} -{ number "number" bibinfo.check - type duplicate$ empty$ - { pop$ bbl.techrep } - 'skip$ - if$ - "type" bibinfo.check - swap$ duplicate$ empty$ - { pop$ "t" change.case$ } - { tie.or.space.prefix * * } - if$ -} -FUNCTION {format.article.crossref} -{ - key duplicate$ empty$ - { pop$ - journal duplicate$ empty$ - { "need key or journal for " cite$ * " to crossref " * crossref * warning$ } - { "journal" bibinfo.check emphasize word.in swap$ * } - if$ - } - { word.in swap$ * " " *} - if$ - " \cite{" * crossref * "}" * -} -FUNCTION {format.crossref.editor} -{ editor #1 "{vv~}{ll}" format.name$ - bib.name.font - "editor" bibinfo.check - editor num.names$ duplicate$ - #2 > - { pop$ - "editor" bibinfo.check - " " * bbl.etal - * - } - { #2 < - 'skip$ - { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { - "editor" bibinfo.check - " " * bbl.etal - * - } - { - bbl.and space.word - * editor #2 "{vv~}{ll}" format.name$ - bib.name.font - "editor" bibinfo.check - * - } - if$ - } - if$ - } - if$ -} -FUNCTION {format.book.crossref} -{ volume duplicate$ empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - pop$ word.in - } - { bbl.volume - swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * - } - if$ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { series empty$ - { "need editor, key, or series for " cite$ * " to crossref " * - crossref * warning$ - "" * - } - { series emphasize * } - if$ - } - { key * } - if$ - } - { format.crossref.editor * } - if$ - " \cite{" * crossref * "}" * -} -FUNCTION {format.incoll.inproc.crossref} -{ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { format.booktitle duplicate$ empty$ - { "need editor, key, or booktitle for " cite$ * " to crossref " * - crossref * warning$ - } - { word.in swap$ * } - if$ - } - { word.in key * " " *} - if$ - } - { word.in format.crossref.editor * " " *} - if$ - " \cite{" * crossref * "}" * -} -FUNCTION {format.org.or.pub} -{ 't := - "" - address empty$ t empty$ and - 'skip$ - { - t empty$ - { address "address" bibinfo.check * - } - { t * - address empty$ - 'skip$ - { ", " * address "address" bibinfo.check * } - if$ - } - if$ - } - if$ -} -FUNCTION {format.publisher.address} -{ publisher "publisher" bibinfo.warn format.org.or.pub -} - -FUNCTION {format.organization.address} -{ organization "organization" bibinfo.check format.org.or.pub -} - -FUNCTION {article} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - crossref missing$ - { - journal - "journal" bibinfo.check - emphasize - "journal" output.check - format.vol.num.pages output - } - { format.article.crossref output.nonnull - format.pages output - } - if$ - format.issn output - format.note output - fin.entry - write.url -} -FUNCTION {book} -{ output.bibitem - author empty$ - { format.editors "author and editor" output.check - add.colon - } - { format.authors output.nonnull - add.colon - crossref missing$ - { "author and editor" editor either.or.check } - 'skip$ - if$ - } - if$ - format.btitle "title" output.check - crossref missing$ - { format.bvolume output - format.number.series output - format.publisher.address output - } - { - format.book.crossref output.nonnull - } - if$ - format.edition output - format.date "year" output.check - format.isbn output - format.note output - fin.entry - write.url -} -FUNCTION {booklet} -{ output.bibitem - format.authors output - add.colon - format.title "title" output.check - howpublished "howpublished" bibinfo.check output - address "address" bibinfo.check output - format.date output - format.isbn output - format.note output - fin.entry - write.url -} - -FUNCTION {inbook} -{ output.bibitem - author empty$ - { format.editors "author and editor" output.check - add.colon - } - { format.authors output.nonnull - add.colon - crossref missing$ - { "author and editor" editor either.or.check } - 'skip$ - if$ - } - if$ - format.btitle "title" output.check - crossref missing$ - { - format.bvolume output - format.number.series output - format.publisher.address output - } - { - format.book.crossref output.nonnull - } - if$ - format.edition output - crossref missing$ - { format.isbn output } - 'skip$ - if$ - format.date "year" output.check - date.block - add.blank - format.pages "pages" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {incollection} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.bvolume output - format.number.series output - format.publisher.address output - format.edition output - format.isbn output - } - { format.incoll.inproc.crossref output.nonnull - } - if$ - format.date "year" output.check - date.block - add.blank - format.pages "pages" output.check - format.note output - fin.entry - write.url -} -FUNCTION {inproceedings} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.bvolume output - format.number.series output - publisher empty$ - { format.organization.address output } - { organization "organization" bibinfo.check output - format.publisher.address output - } - if$ - format.isbn output - format.issn output - } - { format.incoll.inproc.crossref output.nonnull - format.pages output - } - if$ - format.date "year" output.check - date.block - add.blank - format.pages "pages" output.check - format.note output - fin.entry - write.url -} -FUNCTION {conference} { inproceedings } -FUNCTION {manual} -{ output.bibitem - author empty$ - { organization "organization" bibinfo.check - duplicate$ empty$ 'pop$ - { output - address "address" bibinfo.check output - } - if$ - } - { format.authors output.nonnull } - if$ - add.colon - format.btitle "title" output.check - author empty$ - { organization empty$ - { - address "address" bibinfo.check output - } - 'skip$ - if$ - } - { - organization "organization" bibinfo.check output - address "address" bibinfo.check output - } - if$ - format.edition output - format.date output - format.note output - fin.entry - write.url -} - -FUNCTION {mastersthesis} -{ output.bibitem - format.authors "author" output.check - add.colon - format.btitle - "title" output.check - bbl.mthesis format.thesis.type output.nonnull - school "school" bibinfo.warn output - address "address" bibinfo.check output - format.date "year" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {misc} -{ output.bibitem - format.authors output - add.colon - format.title output - howpublished "howpublished" bibinfo.check output - format.date output - format.note output - fin.entry - write.url - empty.misc.check -} -FUNCTION {phdthesis} -{ output.bibitem - format.authors "author" output.check - add.colon - format.btitle - "title" output.check - bbl.phdthesis format.thesis.type output.nonnull - school "school" bibinfo.warn output - address "address" bibinfo.check output - format.date "year" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {proceedings} -{ output.bibitem - editor empty$ - { organization "organization" bibinfo.check output - } - { format.editors output.nonnull } - if$ - add.colon - format.btitle "title" output.check - format.bvolume output - format.number.series output - editor empty$ - { publisher empty$ - 'skip$ - { - format.publisher.address output - } - if$ - } - { publisher empty$ - { - format.organization.address output } - { - organization "organization" bibinfo.check output - format.publisher.address output - } - if$ - } - if$ - format.date "year" output.check - format.isbn output - format.issn output - format.note output - fin.entry - write.url -} - -FUNCTION {techreport} -{ output.bibitem - format.authors "author" output.check - add.colon - format.btitle - "title" output.check - format.tr.number output.nonnull - institution "institution" bibinfo.warn output - address "address" bibinfo.check output - format.date "year" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {unpublished} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - format.date output - format.note "note" output.check - fin.entry - write.url -} - -FUNCTION {default.type} { misc } -READ -FUNCTION {sortify} -{ purify$ - "l" change.case$ -} -INTEGERS { len } -FUNCTION {chop.word} -{ 's := - 'len := - s #1 len substring$ = - { s len #1 + global.max$ substring$ } - 's - if$ -} -INTEGERS { et.al.char.used } -FUNCTION {initialize.et.al.char.used} -{ #0 'et.al.char.used := -} -EXECUTE {initialize.et.al.char.used} -FUNCTION {format.lab.names} -{ 's := - s num.names$ 'numnames := - numnames #1 > - { numnames #4 > - { #3 'namesleft := } - { numnames 'namesleft := } - if$ - #1 'nameptr := - "" - { namesleft #0 > } - { nameptr numnames = - { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { "{\etalchar{+}}" * - #1 'et.al.char.used := - } - { s nameptr "{l{}}" format.name$ * } - if$ - } - { s nameptr "{l{}}" format.name$ * } - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ - numnames #4 > - { "{\etalchar{+}}" * - #1 'et.al.char.used := - } - 'skip$ - if$ - } - { s #1 "{l{}}" format.name$ - duplicate$ text.length$ #2 < - { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ } - 'skip$ - if$ - } - if$ -} -FUNCTION {author.key.label} -{ author empty$ - { key empty$ - { cite$ #1 #3 substring$ } - { key #3 text.prefix$ } - if$ - } - { author format.lab.names } - if$ -} - -FUNCTION {author.editor.key.label} -{ author empty$ - { editor empty$ - { key empty$ - { cite$ #1 #3 substring$ } - { key #3 text.prefix$ } - if$ - } - { editor format.lab.names } - if$ - } - { author format.lab.names } - if$ -} - -FUNCTION {author.key.organization.label} -{ author empty$ - { key empty$ - { organization empty$ - { cite$ #1 #3 substring$ } - { "The " #4 organization chop.word #3 text.prefix$ } - if$ - } - { key #3 text.prefix$ } - if$ - } - { author format.lab.names } - if$ -} - -FUNCTION {editor.key.organization.label} -{ editor empty$ - { key empty$ - { organization empty$ - { cite$ #1 #3 substring$ } - { "The " #4 organization chop.word #3 text.prefix$ } - if$ - } - { key #3 text.prefix$ } - if$ - } - { editor format.lab.names } - if$ -} - -FUNCTION {calc.label} -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.organization.label - { type$ "manual" = - 'author.key.organization.label - 'author.key.label - if$ - } - if$ - } - if$ - duplicate$ - year field.or.null purify$ #-1 #2 substring$ - * - 'label := - year field.or.null purify$ #-1 #4 substring$ - * - sortify 'sort.label := -} -FUNCTION {sort.format.names} -{ 's := - #1 'nameptr := - "" - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr - "{ll{ }}{ ff{ }}{ jj{ }}" - format.name$ 't := - nameptr #1 > - { - nameptr #2 - #1 + = - numnames #2 - > and - { "others" 't := - #1 'namesleft := } - 'skip$ - if$ - " " * - namesleft #1 = t "others" = and - { "zzzzz" * } - { t sortify * } - if$ - } - { t sortify * } - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {sort.format.title} -{ 't := - "A " #2 - "An " #3 - "The " #4 t chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} -FUNCTION {author.sort} -{ author empty$ - { key empty$ - { "to sort, need author or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { author sort.format.names } - if$ -} -FUNCTION {author.editor.sort} -{ author empty$ - { editor empty$ - { key empty$ - { "to sort, need author, editor, or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { editor sort.format.names } - if$ - } - { author sort.format.names } - if$ -} -FUNCTION {author.organization.sort} -{ author empty$ - { organization empty$ - { key empty$ - { "to sort, need author, organization, or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { "The " #4 organization chop.word sortify } - if$ - } - { author sort.format.names } - if$ -} -FUNCTION {editor.organization.sort} -{ editor empty$ - { organization empty$ - { key empty$ - { "to sort, need editor, organization, or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { "The " #4 organization chop.word sortify } - if$ - } - { editor sort.format.names } - if$ -} -FUNCTION {presort} -{ calc.label - sort.label - " " - * - type$ "book" = - type$ "inbook" = - or - 'author.editor.sort - { type$ "proceedings" = - 'editor.organization.sort - { type$ "manual" = - 'author.organization.sort - 'author.sort - if$ - } - if$ - } - if$ - * - " " - * - year field.or.null sortify - * - " " - * - title field.or.null - sort.format.title - * - #1 entry.max$ substring$ - 'sort.key$ := -} -ITERATE {presort} -SORT -STRINGS { longest.label last.sort.label next.extra } -INTEGERS { longest.label.width last.extra.num } -FUNCTION {initialize.longest.label} -{ "" 'longest.label := - #0 int.to.chr$ 'last.sort.label := - "" 'next.extra := - #0 'longest.label.width := - #0 'last.extra.num := -} -FUNCTION {forward.pass} -{ last.sort.label sort.label = - { last.extra.num #1 + 'last.extra.num := - last.extra.num int.to.chr$ 'extra.label := - } - { "a" chr.to.int$ 'last.extra.num := - "" 'extra.label := - sort.label 'last.sort.label := - } - if$ -} -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - 'skip$ - if$ - label extra.label * 'label := - label width$ longest.label.width > - { label 'longest.label := - label width$ 'longest.label.width := - } - 'skip$ - if$ - extra.label 'next.extra := -} -EXECUTE {initialize.longest.label} -ITERATE {forward.pass} -REVERSE {reverse.pass} -FUNCTION {begin.bib} -{ et.al.char.used - { "\newcommand{\etalchar}[1]{$^{#1}$}" write$ newline$ } - 'skip$ - if$ - preamble$ empty$ - 'skip$ - { preamble$ write$ newline$ } - if$ - "\begin{thebibliography}{" longest.label * "}" * - write$ newline$ - "\expandafter\ifx\csname url\endcsname\relax" - write$ newline$ - " \def\url#1{\texttt{#1}}\fi" - write$ newline$ - "\expandafter\ifx\csname urlprefix\endcsname\relax\def\urlprefix{URL }\fi" - write$ newline$ -} -EXECUTE {begin.bib} -EXECUTE {init.state.consts} -ITERATE {call.type$} -FUNCTION {end.bib} -{ newline$ - "\end{thebibliography}" write$ newline$ -} -EXECUTE {end.bib} -%% End of customized bst file -%% -%% End of file `scrguide-en.bst'. diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide-en.dbj b/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide-en.dbj deleted file mode 100644 index c5aad98905b..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide-en.dbj +++ /dev/null @@ -1,319 +0,0 @@ -%% Driver file to produce scrguide-en.bst from merlin.mbs -%% Generated with makebst, version 3.2 (1999/02/24) -%% Produced on 2001/03/22 at 14:46 -%% -\input docstrip - -\preamble ----------------------------------------- -*** This file was made for creating KOMA-Script scrguide bibliography *** - -\endpreamble - -\postamble -End of customized bst file -\endpostamble - -\keepsilent - -\askforoverwritefalse -\def\MBopts{\from{merlin.mbs}{% - head,\MBopta} -\from{english.mbs}{\MBopta} -\from{scrguide.mbs}{\MBopta} -\from{merlin.mbs}{tail,\MBopta}} -\def\MBopta{% - exlang%: External language file -% ,cite%: Cite key -% ,alfph,alf-f%: Alpha style, Jones90 -% ,alph,alf-1%: Alpha style, Jon90 - ,alph%: Alpha style, Jon90 or JWB90 -% ,ay%: Author-year -% %(def) Numerical -%-------------------- -% ,html,htdes%: Hypertext with keys -% ,html,htlist%: Hypertext list -% ,html%: Hypertext - %: (def) Normal LaTeX -%-------------------- -% ,lang%: Add language field - %: (def) No language field -%-------------------- -% ,annote%: Annotations - %: (def) No annotations -%-------------------- - ,vonx%: Sort without von part -% %(def) Sort on von part -%-------------------- -% ,nm-revv1%: First name reversed, with full names -% ,nm-rev1%: Only first name reversed, initials -% ,nm-rvv%: Surname + spaceless initials -% ,nm-rvx%: Surname + pure initials -% ,nm-rv%: Surname + dotless initials -% ,nm-rev%: Surname + initials -% ,nm-init,ed-au%: Initials + surname -% ,nm-revf%: Full, surname first - ,ed-au%: Full, surname last -%-------------------- -% ,aunm-sl%: Names separated by slash -% ,aunm-semi%: Names separated by semi-colon - %: (def) Author names separated by commas -%-------------------- -% ,nmdash%: Repeated author/editor names replaced by dash - %: (def) Author/editor names always present -%-------------------- - ,nmlm%: Limited authors -% %(def) All authors -%-------------------- - ,x2%: Maximum of 2 authors - ,m2%: Minimum of 2 authors -% ,nmft,nmft-def%: User defined author font -% ,nmft,nmft-bf%: Bold authors -% ,nmft,nmft-it%: Italic authors - ,nmft,nmft-sc%: Small caps authors -% %(def) Normal font for author names -%-------------------- -% ,fnm-def%: First names in user defined font -% ,fnm-rm%: First names in normal font - %: (def) First names same font as surnames -%-------------------- - ,nmfted%: Editors incollection like authors -% %(def) Editors incollection normal font -%-------------------- - ,nmand-rm%: `And' in normal font -% %(def) `And' in author font -%-------------------- -% ,dt-end%: Date at very end - ,dt-jnl%: Date part of journal spec. -% ,dt-beg%: Date after authors -% %(def) Date at end -%-------------------- -% ,yr-blk%: Date preceded by space -% ,yr-com%: Date preceded by comma -% ,yr-per%: Date preceded by period -% ,yr-col%: Date preceded by colon -% ,yr-brk%: Date in brackets -% ,yr-par%: Date in parentheses - %: (def) Plain month and year -%-------------------- -% ,xmth%: Date is year only - %: (def) Date is month and year -%-------------------- -% ,dtrev%: Date as year month - %: (def) Date as month year -%-------------------- -% ,yrp-x%: No punct. after date -% ,yrp-per%: Period after date -% ,yrp-semi%: Semi-colon after date -% ,yrp-col%: Colon after date - %: (def) Date with standard block punctuation -%-------------------- -% ,yrpp-xsp%: No space after date - %: (def) Space after date -%-------------------- -% ,dtbf%: Date in bold face - %: (def) Date in normal font -%-------------------- -% ,tit-qq,qt-g,qx%: Title in guillemets -% ,tit-qq,qx%: Title in double quotes -% ,tit-qq,qt-s,qx%: Title in single quotes -% ,tit-qq,qt-g%: Title and punctuation in guillemets -% ,tit-qq%: Title and punctuation in double quotes -% ,tit-qq,qt-s%: Title and punctuation in single quotes - ,tit-it%: Title italic -% %(def) Title plain -%-------------------- - ,atit-u%: Title style -% %(def) Sentence style -%-------------------- -% ,jtit-x%: No article title - %: (def) Article title present -%-------------------- -% ,jxper%: Dotless journal names - %: (def) Periods in journal names -%-------------------- -% ,jttl-rm%: Journal title normal - %: (def) Journal title italics -%-------------------- -% ,thtit-a%: Thesis title like article - %: (def) Thesis titles like books -%-------------------- - ,trtit-b%: Tech. report title like books -% %(def) Tech. report title like articles -%-------------------- -% ,trnum-it%: Tech. report and number italic - %: (def) Tech. report and number plain -%-------------------- -% ,vol-2bf%: Volume and number bold -% ,vol-bf%: Volume bold -% ,vol-it%: Volume italic - %: (def) Volume plain -%-------------------- -% ,vnum-x%: Journal vol, without number -% ,vnum-b%: Journal vol number -% ,vnum-h%: Journal vol, \# number -% ,vnum-nr%: Journal vol, no. num -% ,vnum-cm%: Journal vol, num -% ,vnum-sp%: Journal vol (num) - %: (def) Journal vol(num) -%-------------------- -% ,volp-blk%: Volume with blank -% ,volp-com%: Volume with comma -% ,volp-semi%: Volume with semi-colon - ,volp-sp%: Volume with colon and space -% %(def) Volume with colon -%-------------------- -% ,jdt-pc%: Year, comma, pages -% ,jdt-p%: Year with pages - ,jdt-vs%: Journal vol (year) -% ,jdt-v%: Journal vol(year) -% %(def) Journal year like others -%-------------------- -% ,jpg-1%: Only start page number - %: (def) Start and stop page numbers -%-------------------- -% ,pgsep-p%: Period inserted over 9999 - ,pgsep-s%: Thin space inserted over 9999 -% ,pgsep-c%: Comma inserted over 9999 -% %(def) No separators for large page numbers -%-------------------- - ,jwdpg%: Include `page' in articles -% %(def) Article pages numbers only -%-------------------- -% ,pp-last%: Pages at end - %: (def) Pages given mid text -%-------------------- - ,jwdvol%: Include `volume' in articles -% %(def) Article volume as number only -%-------------------- -% ,num-xser%: Allows number without series - %: (def) Standard BibTeX -%-------------------- -% ,numser%: Just before publisher - %: (def) After chapter and pages -%-------------------- -% ,jnm-x%: Space after journal - %: (def) Comma after journal -%-------------------- -% ,btit-rm,bt-rm%: Book title plain - %: (def) Book title italic -%-------------------- -% ,bkpg-x%: Pages in book bare -% ,bkpg-par%: Pages in book in parentheses - %: (def) Pages in book plain -%-------------------- -% ,pg-bk%: For book: 345 pages - %: (def) Total book pages not printed -%-------------------- -% ,add-pub%: Address: Publisher - %: (def) Publisher, address -%-------------------- -% ,pub-date,pub-xpar,pub-xc%: Publisher and date, no parentheses, no comma -% ,pub-date,pub-xpar%: Publisher and date without parentheses -% ,pub-date,pub-xc%: Publisher and date in parentheses, no comma -% ,pub-date%: Publisher and date in parentheses -% ,pub-par%: Publisher in parentheses - %: (def) Publisher as normal block -%-------------------- -% ,pre-edn%: Publisher after edition -% ,pre-pub%: Publisher before chapter, pages - %: (def) Publisher after chapter, pages -%-------------------- -% %(def) No ISBN - ,isbn%: Include ISBN -%-------------------- -% %(def) No ISSN - ,issn%: Include ISSN -%-------------------- -% ,url,url-nl%: URL on new line -% ,url,url-nt%: URL as note -% ,url,url-blk%: Include URL - ,url,url-nl%: (def) URL on new line -%-------------------- -% ,edparc,bkedcap%: `Name, (Editor)' -% ,edparc%: `Name, (editor)' - ,edpar,bkedcap%: `Name (Editor),' -% ,edpar%: `Name (editor),' -% %(def) Word `editor' after name -%-------------------- -% ,edby-par,edbyy%: Booktitle (.., editor) -% ,edby,edbyy%: Booktitle, .., editor -% ,edby-parc,edbyx%: Booktitle, (editor..) -% ,edby-par,edbyx%: Booktitle (editor..) -% ,edby,edbyw%: Booktitle, (editor) .. -% ,edby,edbyx%: Booktitle, editor .. -% ,edby-parc%: Booktitle, (edited by ..) -% ,edby-par%: Booktitle (edited by ..) -% ,edby%: Booktitle, edited by .. - %: (def) .., editor, booktitle -%-------------------- -% ,blk-tita%: Period after titles of articles -% ,blk-tit%: Period after titles of articles, books, etc -% ,blk-com,com-blank%: Blanks between blocks -% ,blk-com,com-semi%: Semi-colon between blocks - ,blk-com%: Comma between blocks -% %(def) \newblock after blocks -%-------------------- -% ,blknt%: Notes preceded by period - %: (def) Notes have regular punctuation -%-------------------- - ,au-col%: Author block with colon -% %: (def) Author block normal -%-------------------- -% ,in-x%: No word `in' -% ,in-col%: Colon after `in' - %: (def) Space after `in' -%-------------------- -% ,injnl%: Add `in' before journal name - %: (def) No `in' before journal name -%-------------------- -% ,fin-bare%: No period at end - %: (def) Period at very end -%-------------------- - ,german%: German language -% ,pp%: `Seite' abbreviated - %: (def) `Seite(n)' -%-------------------- -% ,ed%: `Herausgeber' abbreviated - %: (def) `Herausgeber' -%-------------------- -% ,abr%: Abbreviations - %: (def) No abbreviations -%-------------------- - ,ord%: Numerical editions -% %(def) Write out editions -% ,xedn%: Editions as in database -%-------------------- - %: (def) PhD as `Dissertation' -% ,ger-phd%: PhD as `Doktorarbeit -%-------------------- -% ,jabr%: Abbreviated journal names - %: (def) Full journal names -%-------------------- -% ,varand%: Use \BIBand -% ,amper%: Use ampersand - %: (def) Use word `and' -%-------------------- -% ,and-com%: Comma even with 2 authors - ,and-xcom%: No comma before `and' -% %(def) Comma before `and' -%-------------------- -% ,xand%: No `and' - %: (def) With `and' -%-------------------- - ,etal-rm%: Roman et al -% ,etal-it%: Italic et al -% %(def) Plain et al -%-------------------- -% ,em-ul%: Underlining -% ,em-x%: No italics -% ,em-it%: Use true italics - %: (def) Use emphasis -%-------------------- - ,nfss%: NFSS -% %(def) No NFSS -%-------------------- -,{% - }} -\generate{\file{scrguide-en.bst}{\MBopts}} -\endbatchfile diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.bib b/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.bib deleted file mode 100644 index 9a022fb01de..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.bib +++ /dev/null @@ -1,362 +0,0 @@ -% -% Bibliographie fuer den scrguide -% - -@Article{ DANTE:TK0297:MJK1, - author = {Markus Kohm}, - title = {{\KOMAScript} -- Eine Alternative zu den - Standardklassen?}, - journal = {Die \TeX nische Kom\"odie}, - year = 1996, - volume = {2}, - pages = {14--33}, - note = {{DANTE} e.\,V.} -} - -@Article{ DANTE:TK0402:MJK, - author = {Markus Kohm}, - title = {Satzspiegelkonstruktionen im Vergleich}, - journal = {Die \TeX nische Kom\"odie}, - volume = {4}, - year = 2002, - pages = {28--48}, - note = {{DANTE} e.\,V.} -} - -@Article{ DANTE:TK0203:MJK, - author = {Markus Kohm}, - title = {Moderne Briefe mit {\KOMAScript}}, - journal = {Die \TeX nische Kom\"odie}, - volume = {2}, - year = 2003, - pages = {32--51}, - note = {{DANTE} e.\,V.} -} - -@Book{ DUDEN, - author = {DUDEN}, - title = {Die deutsche Rechtschreibung}, - publisher = {DUDENVERLAG}, - year = 1996, - address = {Mannheim}, - edition = 21 -} - -@Book{ knuth:mfbook, - author = {Donald E. Knuth}, - title = {The {\MF book}}, - publisher = {Addison-Wesley Publishing Company}, - year = 1991, - address = {Reading, Mass.}, - edition = 6, - volume = {C}, - series = {Computers and Typesetting} -} - -@Book{ knuth:texbook, - author = {Donald E. Knuth}, - title = {The {\TeX book}}, - publisher = {Addison-Wesley Publishing Company}, - address = {Reading, Mass.}, - year = 1990, - edition = {19}, - volume = {A}, - series = {Computers and Typesetting} -} - -@Book{ JTsch87, - author = {Jan Tschichold}, - title = {Ausgew{\"a}hlte Aufs{\"a}tze {\"u}ber Fragen der Gestalt des Buches und der Typographie}, - publisher = {Birkh{\"a}user Verlag}, - year = 1987, - address = {Basel}, - edition = 2 -} - -@Book{ TYPO:ErsteHilfe, - author = {Hans Peter Willberg and Friedrich Forssman}, - title = {Erste Hilfe in Typografie}, - subtitle = {Ratgeber f{\"u}r Gestaltung mit Schrift}, - publisher = {Verlag Hermann Schmidt}, - year = 2000, - address = {Mainz} -} - -@Manual{ l2kurz, - author = {Walter Schmidt and J{\"o}rg Knappen and Hubert Partl and Irene -Hyna}, - title = {{\LaTeXe}-Kurzbeschreibung}, - year = 1999, - month = apr, - url = {CTAN://info/lshort/german/} -} - -@Manual{ lshort, - author = {Tobias Oetker and Hubert Partl and Irene Hyna and Elisabeth -Schlegl}, - title = {The Not So Short Introduction to {\LaTeXe}}, - year = 1999, - month = apr, - version = {3.7}, - url = {CTAN://info/lshort/} -} - -@Book{ latexbook, - author = {Leslie Lamport}, - title = {Das {\LaTeX -Handbuch}}, - publisher = {Addison-Wesley Publishing Company}, - address = {Bonn, Paris {u.\,a.}}, - year = 1995 -} - -@Manual{ btxdoc, - author = {Oren Patashnik}, - title = {{Bib\TeX ing}}, - year = 1988, - month = feb, - url = {CTAN://biblio/bibtex/distribs/doc/btxdoc.tex} -} - -@Manual{ btxhak, - author = {Oren Patashnik}, - title = {Designing {Bib\TeX} Styles}, - year = 1988, - month = feb, - url = {CTAN://biblio/bibtex/distribs/doc/btxhak.tex} -} - -@Misc{ DANTE:FAQ, - author = {Bernd Raichle and Rolf Niepraschk and Thomas Hafner}, - title = {DE-{\TeX}-/DANTE-FAQ}, - year = 2002, - month = may, - edition = {71}, - url = {http://www.dante.de/faq/de-tex-faq/} -} - -@Misc{ UK:FAQ, - editor = {Robin Fairbairns}, - title = {TeX Frequently Asked Questions on the Web}, - year = 2002, - month = may, - edition = {3.0b}, - url = {http://www.tex.ac.uk/faq/} -} - -@Misc{ latex:classes, - author = {Leslie Lamport and Frank Mittelbach and Johannes Braams}, - title = {Standard Document Classes for {\LaTeX} version 2e}, - year = 2000, - month = may, - edition = {1.4b}, - url = {CTAN://macros/latex/base/classes.dtx} -} - -@Misc{ package:adrconv, - author = {Axel Kielhorn}, - title = {adrconv}, - year = 1999, - month = nov, - edition = {1.2}, - url = {CTAN://macros/latex/contrib/adrconv/} -} - -@Misc{ url:aka, - author = {Axel Kielhorn}, - title = {{\LaTeX} page}, - url = {http://www-public.tu-bs.de:8080/~i0080108/latex.html} -} - -@Misc{ latex:clsguide, - author = {{\LaTeX3} Project Team}, - title = {{\LaTeXe} for class and package writers}, - year = 1999, - month = sep, - url = {CTAN://macros/latex/doc/clsguide.pdf} -} - -@Misc{ latex:usrguide, - author = {{\LaTeX3} Project Team}, - title = {{\LaTeXe} for authors}, - year = 1999, - month = sep, - url = {CTAN://macros/latex/doc/usrguide.pdf} -} - -@Misc{ latex:fntguide, - author = {{\LaTeX3} Project Team}, - title = {{\LaTeXe} font selection}, - year = 2000, - month = jan, - url = {CTAN://macros/latex/doc/fntguide.pdf} -} - -@Misc{ package:setspace, - author = {Geoffrey Tobin}, - title = {{\Package{setspace}} {\LaTeX} package}, - year = 2000, - month = dec, - edition = {6.7}, - url = {CTAN://macros/latex/contrib/setspace/} -} - -@Misc{ package:geometry, - author = {Hideo Umeki}, - title = {The {\Package{geometry}} package}, - year = 2000, - month = jun, - edition = {2.3}, - url = {CTAN://macros/latex/contrib/geometry/} -} - -@Misc{ package:german, - author = {Bernd Raichle}, - title = {{\Package{german}} package}, - year = 1998, - month = jul, - edition = {2.5e}, - url = {CTAN://language/german/} -} - -@Misc{ package:ngerman, - author = {Bernd Raichle}, - title = {{\Package{ngerman}} package}, - year = 1998, - month = jul, - edition = {2.5e}, - url = {CTAN://language/german/} -} - -@Misc{ package:graphics, - author = {David P. Carlisle}, - title = {Packages in the `graphics' bundle}, - year = 1999, - month = feb, - url = {CTAN://macros/latex/required/graphics/} -} - -@Misc{ package:multicol, - author = {Frank Mittelbach}, - title = {An environment for multicolumn output}, - year = 2000, - month = jul, - edition = {1.5z}, - url = {CTAN://macros/latex/required/tools/} -} - -@Misc{ package:ifthen, - author = {David Carlisle}, - title = {The \textsf{ifthen} package}, - year = 1999, - month = sep, - edition = {1.1b}, - url = {CTAN://macros/latex/base/} -} - -@Misc{ package:french, - author = {Bernard Gaulle}, - title = {Les distributions de fichiers de francisation pour LaTeX}, - year = 2003, - month = dec, - edition = {5,80}, - url = {CTAN://language/french/} -} - -@Misc{ package:babel, - author = {Johannes Braams}, - title = {Babel, a multilangual package for use with \LaTeX's standard -document classes}, - year = 2001, - month = feb, - edition = {3.7}, - url = {CTAN://macros/latex/required/babel/} -} - -@Misc{ package:extsizes, - author = {James Kilfiger}, - title = {{\Package{extsizes}}, a non standard \LaTeX-package}, - year = 1999, - month = nov, - edition = {1.4a}, - url = {CTAN://macros/latex/contrib/extsizes/} -} - -@Misc{ package:natbib, - author = {Patrick W. Daly}, - title = {Natural Sciences Citations an References}, - year = 1999, - month = may, - edition = {7.0}, - url = {CTAN://macros/latex/contrib/natbib/} -} - -@Misc{ package:fancyhdr, - author = {Piet van Oostrum}, - title = {Page layout in \LaTeX}, - year = 2000, - month = oct, - edition = {2.0}, - url = {CTAN://macros/latex/contrib/fancyhdr/} -} - -@Misc{ package:topcapt, - author = {Robin Fairbairns}, - title = {topcapt.sty}, - year = 1999, - month = mar, - edition = {1.1a}, - url = {CTAN://macros/latex/contrib/misc/topcapt.sty} -} - -@Misc{ package:caption2, - author = {Harald Axel Sommerfeldt}, - title = {caption package}, - year = 1995, - month = oct, - edition = {2.0(BETA)}, - url = {CTAN://macros/latex/contrib/caption/} -} - -@Misc{ package:hyperref, - author = {Sebastian Rahtz}, - title = {Hypertext marks in {\LaTeX}: the \textsf{hyperref} package}, - year = 2001, - month = feb, - edition = {6.71c}, - url = {CTAN://macros/latex/contrib/hyperref/} -} - -@Misc{ package:float, - author = {Anselm Lingnau}, - title = {An Improved Environment for Floats}, - year = 2001, - month = jul, - edition = {1.2e}, - url = {CTAN://macros/latex/contrib/float/} -} - -@Misc{ package:longtable, - author = {David Carlise}, - title = {The \textsf{longtable} package}, - year = 1998, - month = may, - edition = {4.09}, - url = {CTAN://macros/latex/required/tools/} -} - -@Misc{ package:ragged2e, - author = {Martin Schr{\"o}der}, - title = {The \textsf{Ragged2e}-package}, - year = 2003, - month = jan, - edition = {2.00}, - url = {CTAN://macros/latex/contrib/ms/} -} - -@Misc{ homepage, - key = {KDP}, - title = {The \KOMAScript{} Documentation Project}, - url = {http://koma-script.net.tf} -} - -% end of file `scrguide.bib' diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.gst b/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.gst deleted file mode 100644 index d00586a733c..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.gst +++ /dev/null @@ -1,33 +0,0 @@ -% MakeIndex-Style fuer die Aenderungsliste der KOMA-Script-Anleitung -% Dies basiert auf "scrguide.ist" -% Aenderungen: -% 2000-06-10 MK: encap wieder auf '|' geaendert, damit hyperref -% problemlos funktioniert. -% 2001-08-11 MK: die Ueberschrift "Symbols" wird unterdrueckt. -% -% Aufruf: -% makeind(e)x -g -r -s scrguide.gst scrguide.glo -oscrguide.chn -% - -level '>' -actual '=' -encap '|' -quote '~' -% -% ein 'small'er Index macht sich irgendwie besser und spart Papier -preamble "\\begin{thechangelist}\n" -postamble "\n\\end{thechangelist}\n" -% -% und Punkte sind sowieso immer gut (es sei denn, sie liegen in Flensburg) -delim_0 "~\\dotfill~" -delim_1 "~\\dotfill~" -delim_2 "~\\dotfill~" -% -% Bitte keine Indexbuchstaben -headings_flag 0 -% -% Wir verwenden ein anderes Schluesselwort -keyword "\\glossaryentry" -% -% Ende der Datei `scrguide.gst' - diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.ist b/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.ist deleted file mode 100644 index 2a415626b24..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.ist +++ /dev/null @@ -1,32 +0,0 @@ -% MakeIndex-Style fuer die KOMA-Script-Anleitung -% Dies ist auf meinen Mist gewachsen (Harald Sommerfeldt) -% Aenderungen: -% 2000-06-10 MK: encap wieder auf '|' geaendert, damit hyperref -% problemlos funktioniert. -% 2001-08-11 MK: die Ueberschrift "Symbols" wird unterdrueckt. -% -% Aufruf: -% makeind(e)x -g -r -s scrguide.ist scrguide.idx -% - -level '>' -actual '=' -encap '|' -quote '~' -% -% ein 'small'er Index macht sich irgendwie besser und spart Papier -preamble "\\begin{theindex}\\small\n" -postamble "\n\\end{theindex}\n" -% -% und Punkte sind sowieso immer gut (es sei denn, sie liegen in Flensburg) -delim_0 "\\ \\hspace{0pt plus 1fil}\\penalty0\\null\\nobreak\\dotfill~" -delim_1 "~\\dotfill\\penalty0\\ " -delim_2 "~\\dotfill\\penalty0\\ " -% -% fehlen nur noch die Indexbuchstaben zu unserem Gl"uck -heading_prefix "\\indexsection{" -heading_suffix "}\n" -headings_flag 1 -symhead_positive "" -% -% Ende der Datei `scrguide.ist' diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.mbs b/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.mbs deleted file mode 100644 index a9041ed07c0..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide.mbs +++ /dev/null @@ -1,145 +0,0 @@ -%\iffalse THIS IS A META COMMENT -% File: scrguide.mbs -% Copyright 2001 Markus Kohm -% E-mail: markus.kohm@gmx.de -% -% This program can be redistributed and/or modified under the terms -% of the LaTeX Project Public License Distributed from CTAN -% archives in directory macros/latex/base/lppl.txt; either -% version 1 of the License, or any later version. -% -% It is part of the KOMA-Script bundle, -%==================================================================== -% A Journal Definition File for extra journals -% to be included with other master bibliography style files -%-------------------------------------------------------------------- -% (See version and date in the \ProvidesFile command below) -%-------------------------------------------------------------------- -% This file is self-documenting: simply LaTeX it! -%==================================================================== -% - %------------------------------------------------------------------- - % Begin module: -%\fi - % \ProvidesFile{scrguide.mbs}[2001/03/22 0.1] -%\iffalse -%<*a&!a> -% The following ensures that the driver part is not seen by makebst -% The driver part must not contain any \end other than \end{document} ! -\ifx\endoptions\undefined\let\tempx=\relax\else - \long\def\tempx#1\end#2{}\fi\tempx -%</a&!a> -%<*driver> - \NeedsTeXFormat{LaTeX2e}% - \documentclass[a4paper,10pt,twoside]{article}% - \usepackage{doc}% - \raggedbottom - \CodelineNumbered - \RecordChanges - % Comment out next line to print coding - \OnlyDescription - \setlength{\oddsidemargin}{0.5\paperwidth} - \addtolength{\oddsidemargin}{-0.5\textwidth} - \addtolength{\oddsidemargin}{-1in} - \setlength{\evensidemargin}{\oddsidemargin} - -\begin{document} - \DocInput{scrguide.mbs} -\end{document} -%</driver> -% END OF META COMMENT \fi -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% -% \setcounter{StandardModuleDepth}{1} -% \setcounter{IndexColumns}{2} -% \setlength{\IndexMin}{10cm} -% -% \changes{0.1}{2001/03/22}{Initial contributed version} -% -% \pagestyle{myheadings} -% \markboth{Markus Kohm}{Extra Journal Names} -% -% \title{{\bfseries Extra Journal Definition File}\\ -% for master bibliographic style files} -% -% \author{Markus Kohm} -% -% \GetFileInfo{scrguide.mbs} -% \date{This paper describes file \texttt{\filename},\\ -% version \fileversion{} from \filedate} -% -% \maketitle -% -% \MakeShortVerb{\|} -% -% \parskip=1ex \parindent=0pt -% -% \newcommand{\btx}{{\sc Bib}\TeX} -% \newcommand{\dtx}{\textsf{docstrip}} -% -% \section{Introduction} -% -% This file adds a list of preprogrammed extra journal names to -% bibliographic style files, in both full and abbreviated versions. -% These defined journal names will be added to those in the main master -% bibliography style file. -% -% This is not a self-sufficient \texttt{.mbs} file, but rather may -% be used together with one that contains support for -% external definition files. -% % -% See the documentation for \texttt{makebst} for formatting details. -% -% \section{The Menu Information} -% -% All the menu information is nested between \dtx{} guard options -% |%<*options>| \dots\ |%</options>|, and the last command is -% |\endoptions|. The rest of the file is nested between |%<*!options>| -% \dots\ |%</!options>| in order to exclude it if \dtx{} is used to -% extract only the menu information. -% -% A journal-names files should contain at most only one option, \texttt{jabr}. -% This is because \texttt{merlin} version~3.5 can now handle several -% journal-name files, but does not look into them for the options, but -% rather asks for \texttt{jabr} from the main file. For compatibility with -% older versions, the option menu must be kept here. -% -% \begin{macrocode} -%<*options> -\mes{^^JEXTRA JOURNAL NAMES:} -\optdef{*}{}{Full extra journal names}{} -\optdef{a}{jabr}{Abbreviate extra names}{for journals} -\getans -\endoptions -%</options> -% \end{macrocode} -% -% \StopEventually{\PrintChanges} -% -% \section{The Coding} -% \begin{macrocode} -%<*!options> -%<*jabr> -MACRO{DTK}{"Die \TeX\-nische Ko\-m\^^b{o}\-die"} -MACRO{TUGboat}{"TUGboat"} -MACRO{TTN}{"\TeX{} and TUG News"} -MACRO{KOMAScript}{\KOMAScript} -%</jabr> -%</!options> - % End module: scrguide.mbs -% \end{macrocode} -% \Finale diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide2.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide2.tex deleted file mode 100644 index 3c65a16c78c..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/english/scrguide2.tex +++ /dev/null @@ -1,1081 +0,0 @@ -\ProvidesFile{scrguide2.tex}[2004/09/22 KOMA-Script Anleitung/Manual] -\newcommand*{\mainfilename}{scrguide2.tex} -% ============================================================================ -% scrguide2.tex -% Copyright (c) 2001-2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% scrclass2.tex -% Copyright (c) 2001-2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: Hauptdokument -% Authors: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Contents: Alle Definitionen sowie das Grundgeruest des Dokuments. -% Languages: English, Deutsch -% Characterset of comments: -% US-ASCII -% - -% ---------------------------------------------------------------------------- -% Predefinition -% Vorabdefinition -% ---------------------------------------------------------------------------- -\newcommand*{\thisfilename}{\mainfilename} - -% Date of the newest file will become docdate. -\newcommand{\OrigProvidesFile}{} -\let\OrigProvidesFile\ProvidesFile -\makeatletter -\newcommand*{\@SplitDate}{} -\def\@SplitDate#1/#2/#3 #4\eol{% - \def\thisisodate{#1-#2-#3}% - \count0=#1#2#3\relax - \ifnum \count0>\maxdate\relax - \xdef\maxdate{\the\count0}% - \xdef\docdate{\thisisodate} - \fi - \immediate\write\@auxout{% - \string\gdef\string\maxdate{\maxdate}% - \string\gdef\string\docdate{\docdate} - }% -} -\renewcommand*{\ProvidesFile}[1]{% - \renewcommand*{\thisfilename}{#1}% - \OrigProvidesFile{#1}% -} -\newcommand*{\SplitFileName}{} -\def\SplitFileName#1.#2\eol{\def\@tempa{#1}\def\@tempb{#2}}% -\def\@providesfile#1[#2]{% - \wlog{File: #1 #2}% - \edef\@tempa{#1}% - \expandafter\xdef\csname ver@\@tempa\endcsname{#2}% - \expandafter\SplitFileName\@tempa\eol - \def\@tempa{tex}\ifx\@tempa\@tempb - \edef\@tempa{\csname ver@\thisfilename\endcsname}% - \expandafter\@SplitDate\@tempa\eol - \fi - \endgroup -} -\AtBeginDocument{% - \renewcommand*{\thisfilename}{\mainfilename}% - {% - \edef\@tempa{\csname ver@\thisfilename\endcsname}% - \expandafter\@SplitDate\@tempa\eol - }% -} -\makeatother -\newcommand*{\docdate}{\AtEndDocument{% - \typeout{Document Warning: Rerun to get \string\docdate\space right!}}} -\newcommand*{\maxdate}{0} - -% ---------------------------------------------------------------------------- -% Language dependencies -% Sprachabhaengigkeiten - -% The LaTeX names of the supported languages -% Die LaTeX namen der unterstuetzen Sprachen -\providecommand{\NameGerman}{ngerman}% Neue Deutsche Rechtschreibung -\providecommand{\NameEnglish}{english} - -% Primary language is german -% Die Primaere Dokumentation wird auf deutsch erstellt -\ifx\UseLanguage\undefined\let\UseLanguage\NameGerman\fi - -% Some names, if not already defined -\providecommand*{\LanguageShortcut}{} -\providecommand{\AutoRefTextFarAway}{auf } -\providecommand{\MyPrelimText}{% - Diese Dokumentation ist im Entwurfsstadium (\thisfilename: - \docdate).} -\providecommand{\SubTitleName}{ein wandelbares \LaTeXe{}-Paket} -\providecommand{\ExampleName}{Beispiel} -\providecommand{\ClassName}{Klasse} -\providecommand{\PackageName}{Paket} -\providecommand{\EnvironmentName}{Umgebung} -\providecommand{\OptionName}{Option} -\providecommand{\MacroName}{Befehl} -\providecommand{\CounterName}{Z\"ahler} -\providecommand{\LengthName}{L\"ange} -\providecommand{\PseudoPrefix}{Pseudo-} -\providecommand{\PLengthName}{\PseudoPrefix\LengthName} -\providecommand{\VariableName}{Variable} -\providecommand{\PagestyleName}{Seitenstil} -\providecommand{\StyleName}{Stil} -\providecommand{\FloatstyleName}{float-\StyleName} -\providecommand{\FileName}{Datei} -\providecommand{\TitleText}{Das\ \KOMAScript-Paket} -\providecommand{\ManualName}{Anleitung} -\providecommand{\ManualFromText}{Autoren der Anleitung:} -\providecommand{\NoteName}{Notizen} -\providecommand{\FontElementName}{Element} -\providecommand{\genIndexName}{Allgemeiner Index} -\providecommand{\cmdIndexName}{Index der Befehle, Umgebungen und - Variablen} -\providecommand{\cmdIndexShortName}{Index der Befehle etc.} -\providecommand{\lenIndexName}{Index der L\"angen und Z\"ahler} -\providecommand{\lenIndexShortName}{Index der L\"angen etc.} -\providecommand{\elmIndexName}{Index der Elemente mit - M\"oglichkeit zur Schriftumschaltung} -\providecommand{\elmIndexShortName}{Index der Elemente} -\providecommand{\filIndexName}{Index der Dateien, Klassen und Pakete} -\providecommand{\filIndexShortName}{Index der Dateien etc.} -\providecommand{\optIndexName}{Index der Klassen- und - Paketoptionen} -\providecommand{\optIndexShortName}{Index der Optionen} -\providecommand{\ChangeListName}{\"Anderungsliste} -\providecommand{\LegalText}{% - Haftungsauschluss:\\ - Es wird keinerlei Haftung \"ubernommen f\"ur irgendwelche Sch\"aden, - die aus der Benutzung der Bestandteile des hier beschriebenen - Paketes resultieren. Siehe hierzu auch den Text der Datei - \File{LEGALDE.TXT}, die zwingender Bestandteil des Paketes ist.} -\providecommand{\LegalTextB}{% - Vorabversion ohne Optimierung des Seitenumbruchs\par - \vspace{\baselineskip} - Diese Anleitung ist als Bestandteil von \KOMAScript{} frei - im Sinne der \LaTeX{} Project Public License Version 1.0. Eine f\"ur - \KOMAScript{} g\"ultige deutsche \"Ubersetzung liegt \KOMAScript{} in - der Datei \File{LEGALDE.TXT} bei. Diese Anleitung -- auch in - gedruckter Form -- darf nur zusammen mit den \"ubrigen Bestandteilen - von \KOMAScript{} weitergegeben und verteilt werden. Eine Verteilung - der Anleitung unabh\"angig von den \"ubrigen Bestandteilen von - \KOMAScript{} bedarf der ausdr\"ucklichen Genehmigung der Autoren.} -\providecommand{\WhoIsWho}{% - Die folgenden Personen waren an \KOMAScript{} auf die eine oder - andere Art beteiligt: \textbf{Stefan Brill} (Korrektur), - \textbf{Christian Buss} (Korrektur), \textbf{Dr.~Engelbert Buxbaum} - (\"Ubersetzung), \textbf{Jo\~ao Canas Ferreira} (\"Ubersetzung), - \textbf{Michael Dewey} (Sprachanpassung), \textbf{Luzia Dietsche} - (Beta-Test), \textbf{Georg Grandke} (\"Ubersetzung, Korrektur), - \textbf{Ralph J. Hangleiter} (Sprachanpassung), \textbf{Henk - Jongbloets} (Sprachanpassung), \textbf{Axel Kielhorn} - (\Class{scrlettr}, \Package{addrconv}, Ideen), \textbf{Markus Kohm} - (Entwicklung, Dokumentation, Übersetzung, Support, Release), - \textbf{Torsten Kr\"uger} (Beta-Test, Korrektur, kritische Fragen, - Ideen, Motor), \textbf{Enrico Kunz} (Dokumentation, Korrektur), - \textbf{Werner Lemberg} (\"Ubersetzung), \textbf{Branka - Lon\v{c}arevi\'c} (Sprachanpassung), \textbf{Alejandro - L\'opez-Valencia} (Sprachanpassung), \textbf{Colin Marquardt} - (\"Ubersetzung), \textbf{Peter Marx} (Release), \textbf{Jens-Uwe - Morawski} (Dokumentation, \"Ubersetzung, Koordination, Korrektur, - Ideen, Motor), \textbf{Simone Naldi} (Sprachanpassung), - \textbf{Frank Neukam} (\textsc{Script} und \textsc{Script2.0}), - \textbf{Thomas Neumann} (Dokumentation, Korrektur), \textbf{Rolf - Niepraschk} (Korrektur), \textbf{Carsten Schurig} (Beta-Test), - \textbf{Axel Sommerfeldt} (Dokumentation) sowie diverse nette - Menschen, die Bugreports oder aufmunternde Mails geschrieben, - Verbesserungen und Erweiterungen gew\"unscht, beschrieben und - teilweise auch angeboten haben. Wer auch immer meint, ich habe ihn - oder sie vergessen, m\"oge sich auf der Stelle bei mir melden.} -\providecommand{\IndexPreambleText}{% - Fett hervorgehobene Zahlen geben die Seiten der Erkl\"arung zu einem - Stichwort wieder. Normal gedruckte Zahlen verweisen hingegen auf - Seiten mit zus\"atzlichen Informationen zum jeweiligen Stichwort.} -\providecommand{\ChangeListPreambleText}{% - Sie finden im Folgenden eine Auf\/listung aller wesentlichen - \"Anderungen der Benutzerschnittstelle im \KOMAScript-Paket der - neueren Zeit. Die Liste ist sortiert nach Klassen beziehungsweise - Paketen und Versionen. Zu jeder Version ist dann jeweils angegeben, - auf welchen Seiten dieser Dokumentation die \"Anderungen zu finden - sind. Auf den entsprechenden Seiten finden Sie dazu passende - Randmarkierungen.} -\providecommand{\CTANserver}{ftp.dante.de} -\providecommand{\BibPreambleText}{% - Sie finden im Folgenden eine ganze Reihe von Literaturangaben. Auf - all diese wird im Text verwiesen. In vielen F\"allen handelt es sich - um Dokumente oder ganze Verzeichnisse, die im Internet verf\"ugbar - sind. In diesen F\"allen ist statt eines Verlages eine URL angegeben. - Wird auf ein \LaTeX-Paket verwiesen, so findet der Verweis in der - Regel in der Form \glqq \url{CTAN://}\emph{Verweis}\grqq{} statt. - Der Pr\"afix \glqq \url{CTAN://}\grqq{} steht dabei f\"ur das - \TeX-Archiv eines jeden CTAN-Servers oder -Spiegels. Sie k\"onnen - den Pr\"afix beispielsweise durch - \url{ftp://\CTANserver/tex-archive/} ersetzen. Bei - \LaTeX-Paketen ist au\ss erdem zu beachten, dass versucht wurde, - die Version anzugeben, auf die im Text Bezug genommen wurde. Bei - einigen Paketen war es mehr ein Ratespiel, eine einheitliche - Versionsnummer und ein Erscheinungsdatum zu finden. Auch muss die - angegebene Version nicht immer die neueste verf\"ugbare Version sein. - Wenn Sie sich ein Paket neu besorgen und installieren, sollten Sie - jedoch zun\"achst immer die aktuelle Version ausprobieren. Bevor Sie - ein Dokument oder Paket von einem Server herunterladen, sollten Sie - au\ss erdem \"uberpr\"ufen, ob es sich nicht bereits auf Ihrem - Rechner befindet.} -% >>> BEGIN layout.tex TEXT-SAMPLES, german -% CHANGES ONLY BY THE AUTHOR OF layout.tex -% (1) example text command; the default definition (50) returns -% the whole text. -\providecommand{\XmpText}[1][50]{% - \ifnum #1<51 - Dieser Blindtext wird gerade von 130 Millionen Rezeptoren - Ihrer Netzhaut erfasst. - \ifnum #1>1 - Die Zellen werden dadurch in einen Erregungszustand versetzt, - \ifnum #1>2 - der sich vom Sehnerv in den hinteren Teil Ihres - \ifnum #1>3 - Gehirns ausbreitet. - Von dort aus \"ubertr\"agt sich die Erregung in - Sekundenbruchteilen auch in andere Bereiche Ihres - Gro\ss hirns. - Ihr Stirnlappen wird stimuliert. - Von dort aus gehen jetzt Willensimpulse aus, die - \fi\fi\fi - \fi - \ifnum #1>49 - Ihr zentrales Nervensystem in konkrete Handlungen umsetzt. - Kopf und Augen reagieren bereits. - Sie folgen dem Text, nehmen die darin enthaltenen Informationen - auf und leiten diese \"uber den Sehnerv weiter. - \fi} -% -% (2) the next two commands are language-dependent, since -% in some languages additional commands may required -\providecommand{\XmpTopText}{\XmpText[3]} -\providecommand{\XmpBotText}{\XmpText[2]} -% (3) Randnotizen/margin notes -\providecommand{\XmpMarginTextA}{Netzhaut} -\providecommand{\XmpMarginTextB}{(\textit{Retina})} -% (4) scrpage Markierungen/marks -\providecommand{\ScrpageMark}{\marginline{\small\sffamily\slshape scrpage}} -\providecommand{\ScrpageNote}{\marginline{\small\sffamily\slshape scrpage!}} -% -% <<< END layout.tex TEXT-SAMPLES - -% Laden der Kapitel -% Load chapters -\providecommand*{\LoadChapters}{% - \include{einleit} % Einleitung - \include{satzspgl} % Der Satzspiegel mit typearea - \include{hauptcls} % Die Hauptklassen scrbook, scrreprt, scrartcl - \include{layout} % Kopf- und Fusszeilen mit scrpage(2) - \include{datmzeit} % scrdate und scrtime - \include{brief} % Die scrlettr Klasse - \include{adressen} % scraddr - \include{adrkonv} % Adresskonvertierung mit addrconv - \include{datladen} % Paketabh"angigkeiten mit scrlfile beherrschen -} - -% End of language dependencies -% Ende der Sprachabhaengigkeiten -% ---------------------------------------------------------------------------- - -% ---------------------------------------------------------------------------- -% Class and packages / Klasse und Pakete -% You should only use classes and packages from KOMA-Script or base or tools. -% Everything else should be done writing your own macros (see below). -% Nach Moeglichkeit sollten nur solche Klassen und Pakete verwendet werden, -% die entweder zu KOMA-Script oder zu base oder tools gehoeren. Alles andere -% sollte notfalls durch eigene Makrodefinitionen (s. u.) abgedeckt werden. - -\documentclass[% - \UseLanguage,% language setting, used by many packages - pagesize,% write pagesize to DVI or PDF - 10pt,% use this font size - a5paper,% use ISO A5 - headinclude,% head is par of type area - 1headlines,% need only one line for the head - DIV15,% same value as with headexclude -% DIVcalc,% typearea has to calculate DIV for good linewidth - bibtotoc,% write bibliography-chapter to table of contents - idxtotoc,% write index-chapter to table of contents - cleardoubleplain,% \cleardoublepage generates pages with pagestyle plain - smallheadings,% use small version of headings (better at A5) - listsleft,% improved list of tables - final% final version -% draft% draft version -]{scrbook} - -\usepackage[latin1]{inputenc} -\usepackage{% - scrdate,scrtime,% need by the chapter about them - varioref,% posibility of better references - ae,% hope we can change this soon - babel,% we use different languages - graphicx,% -% array,% -% longtable,% - makeidx% must be to create the index -} - -\begingroup - \def\KOMAScript{KOMA-Script} - \xdef\PDFTitleText{\TitleText} -\endgroup -\ifx\BUCH\undefined\else\InputIfFileExists{scrbook}{}{}\fi -\ifpdfoutput{% - \usepackage[pdftex,bookmarks,% - pdfcreator={LaTeX2e, KOMA-Script (scrbook), hyperref},% - pdfkeywords={TeX LaTeX KOMA-Script scrbook scrreprt - scrartcl scrlttr2 typearea scrtime scrdate - scraddr scrpage scrpage2 scrlfile},% - pdftitle=\PDFTitleText]{hyperref} -}{% Make shure, we're using hypertex not dvips - \usepackage[hypertex,bookmarks]{hyperref} -} - -\providecommand*{\eTeX}{\ensuremath{\varepsilon}-\TeX} - -% Add \autopageref to hyperref: -\makeatletter -\DeclareRobustCommand{\autopageref}[1]{% - \expandafter\auto@setpageref\csname r@#1\endcsname - \@secondoffive - {#1}% -} - -\newcommand*{\auto@setpageref}[3]{% - \@safe@activestrue - \ifx#1\relax - \protect\G@refundefinedtrue - \nfss@text{\reset@font\bfseries ??}% - \@latex@warning{% - Reference `#3' on page \thepage \space undefined% - }% - \else - \def\@currentHtag{\pageautorefname~}% - \hyper@@link - {\expandafter\@fifthoffive#1}% - {\expandafter\@fourthoffive#1\@empty\@empty}% -% {\@currentHtag\expandafter#2#1\@empty\@empty\null}% -% {\expandafter\@fifthoffive#1}% -% {page.\expandafter\@secondoffive#1\@empty\@empty}% - {\@currentHtag\expandafter#2#1\@empty\@empty\null}% - \fi - \@safe@activesfalse -} - -\AtBeginDocument{\providecommand*{\pageautorefname}{\pagename}} - -\def\test@reftype#1.#2\\{% - \test@@reftype#1*\\% -} -\def\test@@reftype#1*#2\\{% - \@ifundefined{#1autorefname}{% - \@ifundefined{#1name}{% - \def\@currentHtag{}% - \@latex@warning{no tag name for #1 at \the\inputlineno}% - }{% - \def\@currentHtag{\csname#1name\endcsname~}% - }% - }{% - \def\@currentHtag{\csname#1autorefname\endcsname~}% - }% -} -\makeatother - -% autoname \subsection, \subsubsection ... same like \section -\providecommand*{\autorefnametillsection}{% - \let\subsectionautorefname=\sectionautorefname - \let\subsubsectionautorefname=\sectionautorefname - \let\paragraphautorefname=\sectionrefname - \let\subparagraphautorefname=\sectionrefname - % shouldn't be here, but it is easy this way: - \def\autoreftextfaraway##1{\AutoRefTextFarAway~\autopageref{##1}}% -} -\makeatletter -\addto\captionsenglish{\autorefnametillsection} -\addto\captionsngerman{\autorefnametillsection} -\AtBeginDocument{\autorefnametillsection} -\makeatother - -% Add \autovref to varioref: -\makeatletter -\DeclareRobustCommand\autovref{\@ifstar - {\let\vref@space\relax\autovr@f}% - {\let\vref@space\nobreakspace\autovr@f}} -\def\autovr@f#1{{% - \let\reftextfaraway\autoreftextfaraway - \leavevmode\unskip\vref@space - \autoref{#1}% - \@vpageref[\unskip]{#1}% -}} -\makeatother - -% Make CTAN:// be an alias of ftp://\CTANserver/tex-archive/ -\makeatletter -\def\url@#1{\expandafter\url@@#1\@nil} -\def\url@@#1://#2\@nil{% - \def\@tempa{#1}\def\@tempb{CTAN}\ifx\@tempa\@tempb - \hyper@linkurl{\Hurl{#1://#2}}{ftp://\CTANserver/tex-archive/#2}% - \else - \hyper@linkurl{\Hurl{#1://#2}}{#1://#2}% - \fi -} -\makeatother - -\ifx\UseLanguage\NameGerman -% hyphenation -% Trennung - \hyphenation{% - Stan-dard-an-wei-sung Stan-dard-an-wei-sung-en - Da-tei-na-me Da-tei-na-men Da-tei-na-mens - Pa-pier-rand Pa-pier-ran-des - } -\fi - -\ifdim\overfullrule>0pt - \usepackage{showkeys,prelim2e}% Draft only / nur im Entwurfsstadium - % Hinweis: Mit showkeys funktioniert - % der haengende Einzug (z. B. - % in Bildunterschriften) nicht! - - \renewcommand{\PrelimText}{% - \textnormal{% - \footnotesize% - \PrelimTextStyle% - \PrelimWords{}}% - } - \renewcommand{\PrelimTextStyle}{\sffamily\itshape} - \renewcommand{\PrelimWords}{\MyPrelimText} -% -\fi - -\usepackage{mparhack} -% End of class and packages. -% Ende der Klasse und Pakete. -% ---------------------------------------------------------------------------- - -% ---------------------------------------------------------------------------- -% The markup commands of the hole document. -% Die im Gesamtdokument verwendeten Markup-Anweisungen. -% -% REMARK: Normaly you should not pack as much markup commands and -% definitions into the preamble. And you never should -% redefine or use internal macros of LaTeX kernel, classes or -% packages. It would be better to write your own package or -% class instead of. -% There is only one reason not to do so at this manual: We -% wanted to avoid disappointment of the usual user, having -% one more class or package at the bundle only used by this -% manual. -% Many of the following macros are stolen from other -% packages or classes, which where made to document packages -% and classes -% -% HINWEIS: Normalerweise sollte man die Preambel eines Dokuments nicht derart -% Markup-Anweisungen und Definitionen vollstopfen. Schon gar nicht -% sollte man interne Makros definieren oder verwenden. Stattdessen -% ist es sinnvoller, ein eigenes Paket (engl. package) oder eine -% eigene Klasse (engl. class) hierfuer zu erstellen. -% Im Falle dieser Anleitung wurde dies nur aus einem einzigen Grund -% nicht getan: Der reine Anwender sollte nicht dadurch verwirrt -% werden, dass eine weitere Klasse oder ein weiteres Paket existiert, -% das jedoch nicht dokumentiert ist. -% Diverse Makros, die im folgenden definiert sind, entstammen anderen -% Paketen und Klassen, die speziell fuer die Dokumentation von -% Paketen und Klassen erstellt wurden. - -% New, only defined for scrguide: -% Neu, fuer den scrguide: - -\newcommand*{\textsfrm}[1]{% - \begingroup - \edef\@tempa{\sfdefault}% - \ifx\@tempa\f@family\textrm{#1}\else\textsf{#1}\fi - \endgroup -} - -\DeclareRobustCommand*{\Class}[1]{\textsfrm{#1}} -\DeclareRobustCommand*{\Package}[1]{\textsfrm{#1}} -\DeclareRobustCommand*{\File}[1]{\texttt{#1}} - -\DeclareRobustCommand{\Script}{\textsc{Script}} -\DeclareRobustCommand{\ScriptII}{\textsc{Script-2}} -\ifx\KOMAScript\undefined% - \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% - M\kern.05em A\kern.1em-\kern.1em Script}} -\fi - -\makeatletter -\DeclareRobustCommand{\BibTeX}{B\kern-.05em% - % Der folgende Hack stammt aus der Definition des - % Makros \LaTeX, siehe Datei `ltlogos.dtx' der - % LaTeX2e-Verteilung. - \hbox{$\m@th$% %% force math size calculations - \csname S@\f@size\endcsname \fontsize\sf@size\z@ - \math@fontsfalse\selectfont - I\kern-.025emB}% - \kern-.08em% - \-\TeX% -} -\makeatother - -\newcommand*{\Var}[1]{\ensuremath{\textit{#1}}} -\newcommand*{\Const}[1]{\ensuremath{\textrm{#1}}} -\newcommand*{\Unit}[1]{\ensuremath{\,\textrm{#1}}} - -\DeclareRobustCommand*{\Macro}[1]{\mbox{\texttt{\char`\\#1}}} -\DeclareRobustCommand*{\Option}[1]{\mbox{\texttt{#1}}} -\DeclareRobustCommand*{\Environment}[1]{\mbox{\texttt{#1}}} -\DeclareRobustCommand*{\Counter}[1]{\mbox{\texttt{#1}}} -\DeclareRobustCommand*{\Length}[1]{\mbox{\texttt{\char`\\#1}}} -\DeclareRobustCommand*{\PLength}[1]{\mbox{\PValue{#1}}} -\DeclareRobustCommand*{\Variable}[1]{\mbox{\PValue{#1}}} -\DeclareRobustCommand*{\FontElement}[1]{\PValue{#1}}% use \mbox? - -\DeclareRobustCommand*{\EMail}[1]{\textless #1\textgreater} -\DeclareRobustCommand*{\TextEMail}[1]{{\small\EMail{#1}}} - -% - parameter and argument in different cases: -% - Verschiedene Auftreten von Parametern/Argumenten: -\DeclareRobustCommand*{\PName}[1]{\mbox{\textit{#1}}}% Parametername -\DeclareRobustCommand*{\PValue}[1]{\texttt{#1}}% Parameterwert - -\DeclareRobustCommand*{\Parameter}[1]{% Parameter/Argument - \texttt{\{}\PName{#1}\texttt{\}}} -\DeclareRobustCommand*{\OParameter}[1]{% Parameter/Argument optional - \texttt{[%] - }\PName{#1}\texttt{%[ - ]}} -\DeclareRobustCommand*{\AParameter}[1]{% Parameter/Argument alternative - \texttt{(%) - }\PName{#1}\texttt{%( - )}} -\DeclareRobustCommand*{\PParameter}[1]{% Parameter/Argument as/als - % part of commands / Befehlsbestandteil - \texttt{\{#1\}}} - -\newenvironment{Example}{% - \begin{labeling}{{\sectfont\ExampleName:\ }} - \item[{\sectfont\ExampleName:\ }]} - {\end{labeling}} - -\makeatletter -\newsavebox\ShowOutputBox -\newenvironment{ShowOutput}[1][0pt]{\par - \begin{lrbox}{\ShowOutputBox}% - \begin{minipage}{.9\linewidth}% - \vspace*{\baselineskip}\vspace{-#1}% -}{% - \end{minipage} - \end{lrbox}% - \setlength{\unitlength}{1pt}% - \setlength{\@tempdima}{\ht\ShowOutputBox}% - \addtolength{\@tempdima}{\dp\ShowOutputBox}% - \setlength{\@tempdima}{.75\@tempdima}% - \edef\MidY{\strip@pt\@tempdima}% - \addtolength{\@tempdima}{5pt}% - \edef\HighY{\strip@pt\@tempdima}% - \addtolength{\@tempdima}{-10pt}% - \edef\LowY{\strip@pt\@tempdima}% - \addtolength{\@tempdima}{5pt}% - \setlength{\@tempdima}{.9\linewidth}\edef\QuadIV{\strip@pt\@tempdima}% - \setlength{\@tempdima}{.675\linewidth}\edef\QuadIII{\strip@pt\@tempdima}% - \setlength{\@tempdima}{.45\linewidth}\edef\QuadII{\strip@pt\@tempdima}% - \setlength{\@tempdima}{.225\linewidth}\edef\QuadI{\strip@pt\@tempdima}% - \centering - \begin{picture}(\QuadIV,\MidY) - \qbezier(0,\MidY)(\QuadI,\HighY)(\QuadII,\MidY)% - \qbezier(\QuadII,\MidY)(\QuadIII,\LowY)(\QuadIV,\MidY) - \put(0,0){\makebox(\QuadIV,\MidY)[c]{% - \scalebox{.75}{\usebox{\ShowOutputBox}}% - }% - }% - \put(0,-5){\line(0,1){\HighY}}% - \put(\QuadIV,-5){\line(0,1){\HighY}}% - \qbezier(0,-5)(\QuadI,0)(\QuadII,-5)% - \qbezier(\QuadII,-5)(\QuadIII,-10)(\QuadIV,-5) - \end{picture}\par - \vspace{1ex plus 1ex minus .5ex}% -} -\makeatother - -\newenvironment{Explain}{% - \small\sffamily -}{\normalcolor\par} - - -% Aenderungsmarkierungen f"ur Dinge, die ab einer bestimmten Version -% neu sind oder geaendert wurden. Rein textuelle "Anderungen werden -% hier nicht erfasst. -\providecommand*{\ChangedAt}[2]{% - \marginline{\footnotesize\fbox{\strut#1}}% - \glossary{#2>#1|indexrm}% -} -\newcommand*{\OnlyAt}[1]{% - \marginline{\def\and{,\\}\footnotesize #1}% -} -\makeglossary -\makeatletter -\newcommand\printchangelist{\@input@{\jobname.chn}} -\newenvironment{thechangelist} - {\setchapterpreamble{\ChangeListPreambleText\par\bigskip} - \addchap{\ChangeListName} - \markboth{\ChangeListName}{\ChangeListName} - \setlength{\parindent}{0pt} - \setlength{\parskip}{0pt plus .3pt} - \def\and{,\ } - \let\item\@idxitem} - {\clearpage} -\makeatother - -% >>> BEGIN layout.tex EXAMPLE-COMMANDS -% The commands can also be used in other parts of the guide, -% in order make some examples better readable. -% CHANGES ONLY BY THE AUTHOR OF layout.tex -% -\newenvironment{XmpTopPage} - {\begin{center}\setlength{\unitlength}{1mm}\begin{picture}(100,35)% - \thinlines - \qbezier(0,5)(25,7)(50,5)\qbezier(50,5)(75,3)(100,5) - \put(0,5){\line(0,1){30}} - \thicklines - \put(100,5){\line(0,1){30}}\put(0,35){\line(1,0){100}} - \small}{\end{picture}\end{center}\vspace{-1.5\baselineskip}} -% -\newenvironment{XmpBotPage} - {\begin{center}\setlength{\unitlength}{1mm}\begin{picture}(100,37)% - \thinlines - \qbezier(0,35)(25,37)(50,35)\qbezier(50,35)(75,33)(100,35) - \put(0,5){\line(0,1){30}} - \thicklines - \put(100,5){\line(0,1){30}}\put(0,5){\line(1,0){100}} - \small}{\end{picture}\end{center}\vspace{-1.5\baselineskip}} -% -\newcommand{\XmpSetText}[2][\XmpText]{% - \put(#2){\makebox(0,0)[tl]{\parbox{70mm}{#1}}}} -% -\newcommand{\XmpMarginNote}[1]{% - \put(#1){\makebox(0,5)[tl]{\scriptsize\XmpMarginTextA}} - \put(#1){\makebox(0,5)[bl]{\scriptsize\XmpMarginTextB}}} -% -\newcommand{\XmpRule}[2]{\put(#1){\line(1,0){#2}}} -% -\newcommand{\XmpHeading}[3][\KOMAScript\hfill 3]{% - \put(#2){\makebox(#3,0)[l]{#1}}} -% -% <<< END layout.tex EXAMPLE-COMMANDS - - -% Change defaults of KOMA-Script -% Voreinstellungen von KOMA-Script aendern: -\renewcommand*{\sectfont}{\normalfont\normalcolor\sffamily\bfseries} -\renewcommand*{\capfont}{\normalfont\normalcolor\small} -\renewcommand*{\caplabelfont}{\normalfont\normalcolor\sffamily\bfseries} - -% Bibliography -\newcommand*{\urlprefix}{} - -% From ltxguide.cls with some modifications: -% - Load config file, if found. This is some early, but must be to -% avoid problems with redefinitions at ltxguide.cfg. -% Aus ltxguide.cls uebernommen und teilweise modifiziert: -% - Konfigurationsdatei laden, falls vorhanden. Dies geschieht genaugenommen -% wesentlich zu frueh. Allerdings koennte es sonst zu erheblichen Problemen -% kommen, falls in ltxguide.cfg kritische Redefinitionen vorgenommen werden. -\InputIfFileExists{ltxguide.cfg}{\typeout{``ltxguide.cfg'' loaded.}}{} - -% - macros to declare macros, environments and options. -% - Makros zur Deklaration von Makros, Umgebungen, Optionen. -\newenvironment{Declaration}% - {\par\small\addvspace{2\baselineskip plus .5\baselineskip}% - \vspace{-\baselineskip}% - \noindent\hspace{-1em}% - \begin{tabular}{|l|}\hline\ignorespaces}% - {\\\hline\end{tabular}\nobreak\par\nobreak - \vspace{1.5\baselineskip}\vspace{-\baselineskip}% - \noindent\ignorespacesafterend} - -\iffalse% experimental (needs array-package) -\renewenvironment{Declaration}% - {\par\small\addvspace{2\baselineskip plus .5\baselineskip}% - \vspace{-\baselineskip}% - \noindent -% \ifthispageodd{% -% \hspace*{\fill}% -% \begin{tabular}{@{}r!{\vrule width 1.2pt}} -% \multicolumn{1}{@{}r@{\vrule width 1.2pt}} -% {\rule[2ex]{1em}{1.2pt}}\\[-2ex]\ignorespaces% -% }{% - \hspace{-1em}% - \begin{tabular}{!{\vrule width 1.2pt}l@{}} - \multicolumn{1}{@{\vrule width 1.2pt}l@{}} - {\rule[2ex]{1em}{1.2pt}}\\[-2ex]\ignorespaces% -% }% - } - {\\\end{tabular}% -% \ifthispageodd{\hspace{-1em}}{}% - \nobreak\par\nobreak - \vspace{1.5\baselineskip}\vspace{-\baselineskip}% - \noindent\ignorespacesafterend} -\fi - -% - Index: -\makeindex % Oh, yes, we want one ... -% ... or maybe more -\newif\ifusemultiindex -\IfFileExists{\jobname-gen.ind}{\usemultiindextrue}{\usemultiindexfalse} -\ifusemultiindex -\makeatletter -\usepackage{multicol} - -\newcommand*{\printmultiindex}[3][]{% - \def\indexname{#2}% - \ifx\relax#1\relax\let\index@preamble=\relax - \else\def\index@preamble{#1}% - \fi - \label{idx:#3}% - \@input@{\jobname-#3.ind}% -} -\renewenvironment{theindex}{% - \setchapterpreamble{\index@preamble} - \begin{multicols}{2}[\idx@heading\vspace{-1\baselineskip}]% - \parindent\z@ - \setlength{\parskip}{\z@ \@plus .3\p@}% - \setlength{\parfillskip}{\z@ \@plus 1fil}% - \let\item\@idxitem -}{% - \end{multicols}% -} - -\newcommand*{\CrossIndex}[3]{% - \Index{#1=\UseIndex{#2}\protect#1>#3=\UseIndex{#2}\SeeSign\protect#3}% -} - -\renewcommand*{\printindex}{% - \setchapterpreamble{\index@preamble}% - \addchap{\indexname}% - \let\index@preamble=\relax - \renewcommand*\idx@heading{% - \addsec{\indexname}% - \markright{\indexname}% - \ifx\index@preamble\relax - \else\index@preamble\let\index@preamble=\relax\fi - }% - \printmultiindex{\genIndexName}{gen}% - \printmultiindex[% - \CrossIndex{\MacroName}{gen}{\cmdIndexShortName}% - \CrossIndex{\EnvironmentName}{gen}{\cmdIndexShortName}% - \CrossIndex{\CounterName}{gen}{\cmdIndexShortName}% - \CrossIndex{\LengthName}{gen}{\cmdIndexShortName}% - ]{\cmdIndexName}{cmd}% - \printmultiindex[% - \CrossIndex{\LengthName}{gen}{\lenIndexShortName}% - \CrossIndex{\PLengthName}{gen}{\lenIndexShortName}% - \CrossIndex{\CounterName}{gen}{\lenIndexShortName}% - ]{\lenIndexName}{len}% - \printmultiindex[% - \CrossIndex{\FontElementName}{gen}{\elmIndexShortName}% - ]{\elmIndexName}{elm}% - \printmultiindex[% - \CrossIndex{\FileName}{gen}{\filIndexShortName}% - \CrossIndex{\PackageName}{gen}{\filIndexShortName}% - \CrossIndex{\ClassName}{gen}{\filIndexShortName}% - ]{\filIndexName}{fil}% - \printmultiindex[% - \CrossIndex{\OptionName}{gen}{\optIndexShortName}% - ]{\optIndexName}{opt}% -} -\makeatother -\fi - -\DeclareRobustCommand*{\SeeSign}{\ensuremath{\protect\rightarrow}~} -\newcommand*{\seeindex}[2]{\pageref{idx:#1}} - -\newcommand*{\AddSeeIndex}[4]{% -\ifusemultiindex - \Index[seeindex{#4}]{#1=\UseIndex{#2}#1>#3=\UseIndex{#2}\SeeSign#3}% -\fi -} - -\newcommand*{\indexsection}[1]{% - \ifx\empty#1\empty\else - \hspace{0pt plus 2fil}{{\sectfont #1}}\hspace{0pt plus - 1fil}\nopagebreak - \fi -} - -\makeatletter -\newcommand*{\IndexSeeAt}[6][\relax]{% - % #1 = optional entry note (\PagestyleName) - % #2 = Entry - % #3 = see-from-index to be used (cmd) - % #4 = see-to-index (gen) - % #5 = see-to-index name (\genIndexShortName) - % #6 = output command (\Macro) - \ifusemultiindex -% \edef\@tempa{idx@f@\string#1.\string#2.#3.#4}% - \edef\@tempa{idx@f@\string#2.#3.#4}% - \expandafter\ifx\csname \@tempa\endcsname\relax - \expandafter\gdef\csname \@tempa\endcsname{}% -% \ifx\relax#1\relax - \Index[seeindex{#4}]{% - #2=\UseIndex{#3}#6{#2}>#5=\UseIndex{#3}\SeeSign\protect#5}% -% \else -% \Index[seeindex{#4}]{% -% #2 (#1)=\UseIndex{#3}#6{#2} (\protect#1)>% -% #5=\UseIndex{#3}\SeeSign\protect#5}% -% \fi - \fi - \fi -} -\makeatother - -\newcommand*{\Index}[2][indexother]{\index{#2|#1}} -\newcommand*{\BeginIndex}[3][indexmain]{% - \expandafter\ifx\csname Index#2\endcsname\relax - \GenericError{(scrguide)\@spaces\@spaces\@spaces\@spaces}{% - Document scrguide Error: \string\BeginIndex\space with unknown - index% - }{Check the \string\BeginIndex-command or add a new index type - ``#2''.}{% - See scrguide2.tex for more information.}% - \else - \csname Index#2\endcsname[(%) - #1]{#3}% - \fi - \ignorespaces} -\newcommand*{\EndIndex}[3][indexmain]{% - \expandafter\ifx\csname Index#2\endcsname\relax - \GenericError{(scrguide)\@spaces\@spaces\@spaces\@spaces}{% - Document scrguide Error: \string\EndIndex\space with unknown - index% - }{Check the \string\BeginIndex-command or add a new index type - ``#2''.}{% - See scrguide2.tex for more information.}% - \else - \csname Index#2\endcsname[%( - )#1]{#3}% - \fi} - -\DeclareRobustCommand*{\UseIndex}[1]{\ignorespaces} - -\newcommand*{\DefineSingleIndex}[4][\relax]{% - % #1 = optional entry note (\MacroName) - % #2 = index macro postfix (Cmd) - % #3 = index to be used (cmd) - % #4 = output command (\Macro) - \ifx\relax#1\relax - % n - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2=\UseIndex{#3}#4{##2}}% - }% - \else - % ne - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2 (#1)=\UseIndex{#3}#4{##2} (\protect #1)}% - }% - \fi -} - -\newcommand*{\DefineDoubleIndex}[4][\relax]{% - % #1 = optional entry note (\PagestyleName) - % #2 = index macro postfix (Pagestyle) - % #3 = see-from-index to be used (cmd) - % #4 = output command (\Macro) - \ifx\relax#1\relax - % n,v - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2=\UseIndex{gen}#4{##2}}% - \IndexSeeAt{##2}{#3}{gen}{\genIndexName}{#4}% - }% - \else - % ne+nu,v - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2 (#1)=\UseIndex{gen}#4{##2} (\protect #1)}% - \Index[##1]{#1=\UseIndex{gen}\protect#1>##2=\UseIndex{gen}#4{##2}}% - \IndexSeeAt[#1]{##2}{#3}{gen}{\genIndexName}{#4}% - }% - \fi -} - -\newcommand*{\DefineTripleIndex}[6][\relax]{% - % #1 = optional entry note (\LengthName) - % #2 = index macro postfix (Length) - % #3 = index to be used (len) - % #4 = index name (\lenIndexShortName) - % #5 = also-from-index to be used (cmd) - % #6 = output command (\Macro) - \ifx\relax#1\relax - % v,v,n - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \IndexSeeAt{##2}{gen}{#3}{#4}{#6}% - \IndexSeeAt{##2}{#5}{#3}{#4}{#6}% - \Index[##1]{##2=\UseIndex{len}#6{##2}}% - \IndexSeeAt{##2}{#3}{gen}{\genIndexName}{#4}% - }% - \else - % v+nu,v,ne - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \IndexSeeAt[#1]{##2}{gen}{#3}{#4}{#6}% - \Index[##1]{#1=\UseIndex{gen}\protect#1>##2=\UseIndex{gen}#6{##2}}% - \IndexSeeAt[#1]{##2}{#5}{#3}{#4}{#6}% - \Index[##1]{##2 (#1)=\UseIndex{len}#6{##2} (\protect #1)}% - }% - \fi -} - -\DefineSingleIndex{Cmd}{cmd}{\Macro} -\DefineDoubleIndex[\PagestyleName]{Pagestyle}{cmd}{\PValue} -\DefineDoubleIndex[\FloatstyleName]{Floatstyle}{cmd}{\PValue} -\DefineTripleIndex[\CounterName]{Counter} - {len}{\lenIndexShortName}{cmd}{\Counter} -\DefineTripleIndex[\LengthName]{Length} - {len}{\lenIndexShortName}{cmd}{\Length} -\ifusemultiindex - \DefineSingleIndex[\EnvironmentName]{Env}{cmd}{\Environment} - \DefineSingleIndex{Option}{opt}{\Option} - \DefineSingleIndex[\PackageName]{Package}{fil}{\Package} - \DefineSingleIndex[\ClassName]{Class}{fil}{\Class} - \DefineSingleIndex{File}{fil}{\File} - \DefineSingleIndex[\VariableName]{Variable}{cmd}{\Variable} - \DefineSingleIndex{FontElement}{elm}{\FontElement} - \DefineSingleIndex{PLength}{len}{\PLength} -\else - \DefineDoubleIndex[\EnvironmentName]{Env}{cmd}{\Environment} - \DefineDoubleIndex{Option}{opt}{\Option} - \DefineDoubleIndex[\PackageName]{Package}{fil}{\Package} - \DefineDoubleIndex[\ClassName]{Class}{fil}{\Class} - \DefineDoubleIndex{File}{fil}{\File} - \DefineDoubleIndex[\VariableName]{Variable}{cmd}{\Variable} - \DefineDoubleIndex{FontElement}{elm}{\FontElement} - \DefineDoubleIndex{PLength}{len}{\PLength} - \iffalse - \newcommand*{\IndexPLength}[2][indexother]{% - \Index[#1]{% - \PLengthName=\protect\PLengthName>% - #2=\PLength{#2}}% - \Index[#1]{% - #2 (\PLengthName)=% - \PLength{#2}\hspace{0pt plus .1fil} \penalty100 - \protect\mbox{(\protect\PLengthName)}}} - \fi -\fi - -\newcommand*{\indexrm}[1]{\textrm{\hyperpage{#1}}} -\newcommand*{\indexother}{}\let\indexother\indexrm -\newcommand*{\indexit}[1]{\textit{\hyperpage{#1}}} -\newcommand*{\indexbf}[1]{\textbf{\hyperpage{#1}}} -\newcommand*{\indexmain}{}\let\indexmain\indexbf -\newcommand*{\indexsl}[1]{\textsl{\hyperpage{#1}}} -\newcommand*{\indexsf}[1]{\textsf{\hyperpage{#1}}} -\newcommand*{\indexsc}[1]{\textsc{\hyperpage{#1}}} -\providecommand*{\hyperpage}[1]{#1} - -% End of markup commands -% Ende der Markup Anweisungen. -% ---------------------------------------------------------------------------- - -% ---------------------------------------------------------------------------- -% We want a flushleft bibliography -% Das Literaturverzeichnis soll linksbuendig werden -% ---------------------------------------------------------------------------- -\makeatletter -\g@addto@macro\@openbib@code\raggedright -\makeatother -\setbibpreamble{\BibPreambleText\bigskip} - -\setindexpreamble{\IndexPreambleText\bigskip} - -\InputIfFileExists{koma.scrguide.overload}{}{} - -% ---------------------------------------------------------------------------- -% ??? -% Das Rahmendokument: -\begin{document} - -% - The title -% - Der Titel -\ifpdfoutput{% - \hypersetup{pdfauthor={Markus Kohm, Jens-Uwe Morawski},% - pdfsubject=\ManualName}}{} -\ifx\booktitle\undefined -\title{\TitleText} -\uppertitleback{\LegalText} -\lowertitleback{\LegalTextB} -\dedication{\sffamily\raggedright{\huge\KOMAScript\\} - \SubTitleName\\ - \vspace{5\baselineskip plus 1filll}% - \parbox{\textwidth}{\normalsize\WhoIsWho}} -\author{Frank Neukam\and Markus Kohm\and Axel Kielhorn} -\subject{\ManualName} -\publishers{\textbf{\ManualFromText}\\[1ex] - Markus Kohm\hfil% - \hfil Jens-Uwe Morawski} -\date{\docdate} -\maketitle -\else -\booktitle -\fi - -% - The lists -% - Die Verzeichnisse -\tableofcontents -%\listoffigures -\listoftables - -% - die Kapitel -% - chapters -\LoadChapters - -% - Correction after include -% - Korrektur nach include -\renewcommand*{\thisfilename}{\mainfilename} - -% - bibliography -% - Literaturverzeichnis -\bibliographystyle{scrguide% - \ifx\LanguageShortcut\empty\else-\LanguageShortcut\fi} -\bibliography{scrguide} - -% - index -% - Index -\makeatletter -\ifx\nochangelist\undefined\printchangelist\fi -\printindex -\makeatother - -% This has to be the last thing, so wie do it at \end{document} and -% set this just before \end{document}. The use of the subparagraph -% counter is just a hack. -\AtEndDocument{% - \newcommand\QuadPages{% - \setcounter{subparagraph}{\value{page}}% - \divide\value{subparagraph} by 2\relax% - \multiply\value{subparagraph} by 2\relax% - \ifnum\value{subparagraph}=\value{page}\let\QuadPages=\relax - \null\thispagestyle{empty}\clearpage - \else\null\newpage\fi - \QuadPages} - \clearpage - \markboth{\NoteName}{\NoteName}\QuadPages -} - -\end{document} -% End of ??? -% Ende des Rahmendokuments. -% ---------------------------------------------------------------------------- - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: t -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/hauptcls.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/hauptcls.tex deleted file mode 100644 index 5b17861c9ee..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/hauptcls.tex +++ /dev/null @@ -1,5308 +0,0 @@ -\ProvidesFile{hauptcls.tex}[2004/09/16 KOMA-Script Anleitung] -% ============================================================================ -% hauptcls.tex -% Copyright (c) 2001-2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% hauptcls.tex -% Copyright (c) 2001-2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: Hauptklassen -% Autoren: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Inhalt: Die Anleitung zu den Hauptklassen scrbook, scrreprt, scrartcl. -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% Korrektur: -% Thomas Neumann (2001-06-21 bis 2001-06-30) -% Enrico Kunz -% - -\chapter{Die Hauptklassen \Class{scrbook}, \Class{scrreprt}, \Class{scrartcl}} -\label{cha:maincls} - -\AddSeeIndex{Anweisung}{gen}{\cmdIndexShortName}{cmd}% -\AddSeeIndex{Makro}{gen}{\cmdIndexShortName}{cmd}% - -\begin{Explain} - Die Hauptklassen des \KOMAScript-Pakets sind als Äquivalent zu den - \LaTeX-Standard"-klassen angelegt. Das bedeutet, dass zu den drei - Standardklassen \Class{book}\IndexClass{book}, \Class{report}% - \IndexClass{report} und \Class{article}\IndexClass{article} im - \KOMAScript-Paket Entsprechungen zu finden sind. Daneben ist auch - für die Standardklasse \Class{letter}\IndexClass{letter} eine - Entsprechung vorhanden. - Der Briefklasse in {\KOMAScript} ist jedoch ein eigenes Kapitel - gewidmet, da sie sich von den drei Hauptklassen grundsätzlich - unterscheidet (siehe \autoref{cha:scrlttr2}). Die Namen der - {\KOMAScript}-Klassen sind aus dem Präfix "`\texttt{scr}"' - und den gekürzten Namen der Standardklassen zusammengesetzt. - Um die Länge des Namens auf acht Buchstaben zu beschränken, werden - dabei notfalls von hinten her die Vokale weggelassen. Eine - Gegenüberstellung zeigt \autoref{tab:maincls.overview}. Dort - sind auch die \Script-Stile für \LaTeX2.09 aufgeführt, die Eingang - in {\KOMAScript} gefunden haben.\par -\end{Explain} - -Die einfachste Möglichkeit, an Stelle einer Standardklasse eine -\KOMAScript-Klasse zu verwenden, ist die Ersetzung des Klassennamens -in der Anweisung \verb|\documentclass| entsprechend -\autoref{tab:maincls.overview}. Normalerweise sollte das Dokument -danach ebenso fehlerfrei mit \LaTeX{} bearbeitbar sein, wie dies vor -der Ersetzung der Fall war. Das Aussehen ändert sich allerdings. -Außerdem gibt es mit den \KOMAScript-Klassen weitere Möglichkeiten und -Optionen, die in den nachfolgenden Abschnitten beschrieben sind. - -\begin{table}[htbp] - \centering - \begin{tabular}{lll} - Standard-Klasse & \KOMAScript-Klasse & \Script-Stil - (\LaTeX2.09)\\ - \hline\rule{0pt}{2.7ex}% - \Class{article} & \Class{scrartcl} & \File{script\textunderscore - s} \\ - \Class{report} & \Class{scrreprt} & \File{script} \\ - \Class{book} & \Class{scrbook} & \File{script} \\ - \Class{letter} & \Class{scrlettr} & \File{script\textunderscore - l} \\ - \end{tabular} - \caption[Klassengegenüberstellung]{Gegenüberstellung der - Standardklassen, der \KOMAScript-Klassen und der veralteten - \Script-Stile} - \label{tab:maincls.overview} -\end{table} - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Die Optionen} -\label{sec:maincls.options} - -Dieser Abschnitt behandelt alle Klassenoptionen der drei Hauptklassen. -Die Mehrzahl der Optionen ist in genau der gleichen Form auch in den -Standardklassen zu finden. Da die Erfahrung jedoch zeigt, dass viele -Optionen der Standardklassen unbekannt sind, wurde deren Beschreibung -hier aufgenommen. Dies stellt eine Abweichung von dem Grundsatz dar, -im \File{scrguide} nur die Dinge zu beschreiben, die abweichend von -den Standardklassen implementiert sind. - -In \autoref{tab:maincls.stdOptions} finden Sie diejenigen -Optionen aufgeführt, die bei mindestens einer {\KOMAScript}-Klasse -voreingestellt sind. Dabei ist für jede der drei -\KOMAScript-Hauptklassen angegeben, ob die Option voreingestellt -ist oder nicht, oder ob sie für die jeweilige Klasse überhaupt -nicht definiert ist. Eine nicht definierte Option kann natürlich -weder voreingestellt sein, noch vom Anwender gewählt werden. - -\begin{table}[htbp] - \centering - \begin{tabular}{llll} - Option & - \Class{scrbook} & \Class{scrreprt} & \Class{scrartcl} \\ - \hline\rule{0pt}{2.7ex}% - \Option{11pt} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{a4paper} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{abstractoff} & - \emph{nicht definiert} & Voreinstellung & Voreinstellung \\ - \Option{bigheadings} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{final} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{footnosepline} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{headnosepline} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{listsindent} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{nochapterprefix} & - Voreinstellung & Voreinstellung & \emph{nicht definiert} \\ - \Option{onelinecaption} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{notitlepage} & - & & Voreinstellung \\ - \Option{onecolumn} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{oneside} & - & Voreinstellung & Voreinstellung \\ - \Option{openany} & - & Voreinstellung & Voreinstellung \\ - \Option{openright} & - Voreinstellung & & \\ - \Option{parindent} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{tablecaptionbelow} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{titlepage} & - Voreinstellung & Voreinstellung \\ - \Option{tocindent} & - Voreinstellung & Voreinstellung & Voreinstellung \\ - \Option{twoside} & - Voreinstellung & & \\ - \end{tabular} - \caption{Voreingestellte Optionen der \KOMAScript-Klassen} - \label{tab:maincls.stdOptions} -\end{table} - -\begin{Explain} - Lassen Sie mich der Erläuterung der Optionen noch eine Bemerkung - vorausschicken. Oft ist man sich am Anfang eines Dokuments unsicher, - welche Einstellungen konkret zu wählen sind. Bei einigen - Optionen, wie der Auswahl des Papierformats, mögen sie bereits vorab - feststehen. Aber schon die Frage nach dem \Var{DIV}-Wert für den - Satzspiegel könnte im Voraus schwer zu beantworten sein. - Andererseits sollten diese Angaben für die Haupttätigkeiten des - Autors: Entwurf der Gliederung, Schreiben des Textes, - Zusammenstellen von Abbildungen, Tabellen und Verzeichnissen - zunächst auch unerheblich sein. Konzentrieren Sie sich als Autor - erst einmal auf den Inhalt. Wenn der dann steht, können Sie sich um - die Feinheiten der Form kümmern. Neben der Auswahl der Optionen - gehören dazu dann auch Dinge wie die Korrektur der Trennung und - möglicherweise dezente Eingriffe in den Seitenumbruch oder die - Verteilung von Abbildungen und Tabellen. Als Beispiel hierfür sei - \autoref{tab:maincls.stdOptions} genannt, die ich mehrfach vom - Anfang des Abschnitts an das Ende verschoben habe und umgekehrt. Die - Wahl der tatsächlichen Position wird erst bei Fertigstellung des - Dokuments feststehen.\par -\end{Explain} - - -\subsection{Optionen für den Satzspiegel} -\label{sec:maincls.typeareaOptions} - -Während bei den Standardklassen der Satzspiegel\Index{Satzspiegel} -allein durch das Laden der Optionendateien \File{size10.clo}, -\File{size11.clo}, \File{size12.clo} beziehungsweise -\File{bk10.clo}, \File{bk11.clo}, \File{bk12.clo} und festen, in -den Klassen definierten Werten bestimmt wird, verwenden die -\KOMAScript-Klassen keinen festen Satzspiegel, sondern einen, der -von Papierformat\Index{Papierformat} und Schriftgröße abhängt. -Dazu stützen sich alle drei Hauptklassen auf das -\Package{typearea}-Paket\IndexPackage{typearea} (siehe -\autoref{cha:typearea}). Das Paket wird von den Klassen -automatisch geladen. Es ist also nicht notwendig, es mit -\verb|\usepackage{typearea}| selbst einzuladen. - -\begin{Declaration} - \Option{letterpaper} \\ - \Option{legalpaper} \\ - \Option{executivepaper} \\ - \Option{a\Var{X}paper} \\ - \Option{b\Var{X}paper} \\ - \Option{c\Var{X}paper} \\ - \Option{d\Var{X}paper} \\ - \Option{landscape} -\end{Declaration}% -\BeginIndex{Option}{letterpaper} -\BeginIndex{Option}{legalpaper} -\BeginIndex{Option}{executivepaper} -\BeginIndex{Option}{a0paper} -\BeginIndex{Option}{b0paper} -\BeginIndex{Option}{c0paper} -\BeginIndex{Option}{d0paper} -\BeginIndex{Option}{landscape}% -Die grundlegenden Optionen zur Auswahl des Papierformats werden nicht -direkt von den Klassen ausgeführt. Stattdessen werden diese als -globale Optionen automatisch vom \Package{typearea}-Paket behandelt -(siehe \autoref{sec:typearea.options}). Die Optionen -\Option{a5paper}, \Option{a4paper}, \Option{letterpaper}, -\Option{legalpaper} und \Option{executivepaper} entsprechen den -gleichnamigen Optionen der Standardklassen und ergeben die gleichen -Papierformate. Der aus dem jeweiligen Format berechnete Satzspiegel -ist dann jedoch ein anderer. -% -\EndIndex{Option}{letterpaper} -\EndIndex{Option}{legalpaper} -\EndIndex{Option}{executivepaper} -\EndIndex{Option}{a0paper} -\EndIndex{Option}{b0paper} -\EndIndex{Option}{c0paper} -\EndIndex{Option}{d0paper} -\EndIndex{Option}{landscape} - -\begin{Explain} - Tatsächlich werden die Optionen für das A-, B-, C- oder D-Format vom - \Package{typearea}-Paket nicht deshalb ausgewertet, weil es sich um - globale Optionen handelt, sondern nur weil die \KOMAScript-Klassen - sie explizit an das \Package{typearea}-Paket weiterreichen. Dies hat - seine Gründe in der Implementierung der Optionen im - \Package{typearea}-Paket beziehungsweise in der Funktion des - Mechanismus zur Weiterleitung und Auswertung von Optionen, der von - \LaTeX{} zur Verfügung gestellt wird. - - Dies gilt in gleicher Weise für die nachfolgend aufgeführten - Optionen zur Einstellung der Bindekorrektur, des Divisors und der - Anzahl der Kopfzeilen. -\end{Explain} - - -\begin{Declaration} - \Option{BCOR}\PName{Korrektur}\\ - \Option{DIV}\PName{Faktor}\\ - \Option{DIVcalc}\\ - \Option{DIVclassic}\\ - \PName{Wert}\Option{headlines} -\end{Declaration}% -\BeginIndex{Option}{BCOR}% -\BeginIndex{Option}{DIV}% -\BeginIndex{Option}{DIVcalc}% -\BeginIndex{Option}{DIVclassic}% -\BeginIndex{Option}{headlines}% -Die Optionen für den Divisor und die -Bindekorrektur\Index{Bindekorrektur} werden direkt an das -\Package{typearea}-Paket weitergeleitet (siehe -\autoref{sec:typearea.options}). Dies geschieht in Abweichung zu -den Standardklassen, bei denen eine entsprechende Weiterleitung nicht -stattfindet. Das gilt ebenfalls für die Option zur Einstellung der -Anzahl der Kopfzeilen. -% -\EndIndex{Option}{BCOR}% -\EndIndex{Option}{DIV}% -\EndIndex{Option}{DIVcalc}% -\EndIndex{Option}{DIVclassic}% -\EndIndex{Option}{headlines} - - -\subsection{Optionen für das Layout} -\label{sec:maincls.layoutOptions} - -In diesem Unterabschnitt werden alle Optionen zusammengefasst, die -sich im erweiterten Sinne auf das Layout und nicht nur auf den -Satzspiegel auswirken. Genaugenommen sind natürlich alle -Satzspiegeloptionen (siehe -\autoref{sec:maincls.typeareaOptions}) Layoutoptionen. -Teilweise gilt dies auch umgekehrt. - -\begin{Declaration} - \Option{oneside}\\ - \Option{twoside} -\end{Declaration}% -\BeginIndex{Option}{oneside} -\BeginIndex{Option}{twoside}% -Diese beiden Optionen funktionieren genau wie bei den -Standardklassen. Bei der Option \Option{oneside} wird ein -einseitiges\Index{einseitig} Layout mit einem einseitigen -Satzspiegel gewählt. Dies bedeutet insbesondere auch, dass -normalweise mit einem flatternden unteren Rand gearbeitet wird. - -Bei der Option \Option{twoside} wird ein doppelseitiges Layout mit -einem doppelseitigen\Index{doppelseitig} Satzspiegel gewählt. Dazu -wird der \LaTeX-Befehl \Macro{flushbottom}\IndexCmd{flushbottom} -ausgeführt, der dafür sorgt, dass am Seitenende umbrochener Seiten -kein variabler Leerraum zu finden ist. Will man stattdessen einen -flatternden unteren Rand, so kann man dies mit Hilfe des -\LaTeX-Befehls \Macro{raggedbottom}\IndexCmd{raggedbottom} erreichen. -% -\EndIndex{Option}{oneside}% -\EndIndex{Option}{twoside}% - - -\begin{Declaration} - \Option{onecolumn}\\ - \Option{twocolumn} -\end{Declaration}% -\BeginIndex{Option}{onecolumn} -\BeginIndex{Option}{twocolumn}% -Diese beiden Optionen funktionieren genau wie bei den -Standardklassen. Mit ihrer Hilfe wird zwischen einem -einspaltigen\Index{einspaltig} und einem -zweispaltigen\Index{zweispaltig} Layout umgeschaltet. Die in -{\LaTeX} eingebauten Möglichkeiten für mehrspaltigen Satz reichen -oft nur für einfache Aufgaben aus. Es gibt jedoch das -Standardpaket \Package{multicol}, mit dem sehr viel flexiblerer -Mehrspaltensatz möglich ist (siehe -\cite{package:multicol}).\Index{Spalten}\IndexPackage{multicol} -% -\EndIndex{Option}{onecolumn} -\EndIndex{Option}{twocolumn} - - -\begin{Declaration} - \Option{openany}\\ - \Option{openright} -\end{Declaration}% -\BeginIndex{Option}{openany}% -\BeginIndex{Option}{openright}% -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}% -Diese beiden Optionen funktionieren genau wie bei den -Standardklassen. Sie haben Auswirkungen auf die Auswahl der -Seite, auf der ein Kapitel\Index[indexmain]{Kapitel} beginnen kann -und existieren daher bei \Class{scrartcl} nicht, da dort die -oberste Gliederungsebene unter dem Teil der Abschnitt ist. Die -Gliederungsebene Kapitel gibt es bei \Class{scrartcl} nicht. - -Ein Kapitel beginnt immer auf einer neuen Seite. Mit der Option -\Option{openany} kann dies jede neue Seite sein. Bei Wahl der -Einstellung \Option{openright} wird jedoch zwingend eine neue rechte -Seite vorgeschrieben, wie es bei Büchern allgemein üblich ist. -Dazu wird gegebenenfalls eine linke Seite -eingefügt. Diese leeren Seiten werden durch implizite Ausführung des -\LaTeX-Befehls \Macro{cleardoublepage}\IndexCmd{cleardoublepage} -erzeugt. - -Da zwischen rechten und linken Seiten nur im doppelseitigen Layout -unterschieden wird, hat die Option \Option{openright} im einseitigen -Layout keinerlei Auswirkungen. Sie sollten sie deshalb zusammen mit -der Option \Option{twoside} einsetzen. -% -\EndIndex{Option}{openany} -\EndIndex{Option}{openright} - -\begin{Declaration} - \Option{cleardoublestandard}\\ - \Option{cleardoubleplain}\\ - \Option{cleardoubleempty} -\end{Declaration}% -\BeginIndex{Option}{cleardoublestandard}% -\BeginIndex{Option}{cleardoubleplain}% -\BeginIndex{Option}{cleardoubleempty}% -Will man, dass mit der \Macro{cleardoublepage}-Anweisung -eingefügte Leerseiten keinen Kolumnentitel,\Index{Kolumnentitel} -sondern nur eine Seitenzahl oder auch weder Kolumnentitel noch -Seitenzahl enthalten, so bleibt bei den Standardklassen nur, die -Anweisung entsprechend umzudefinieren. {\KOMAScript} bietet -Optionen, um dem Anwender dies abzunehmen. Mit der Option -\Option{cleardoublestandard} hat man das Standardverhalten von -\Macro{cleardoublepage}. Bei Verwendung der Option -\Option{cleardoubleplain} wird die leere, linke Seite hingegen -mit dem Seitenstil \PValue{plain}\IndexPagestyle{plain} -ausgegeben. Bei Verwendung der Option \Option{cleardoubleempty} -findet entsprechend der Seitenstil -\PValue{empty}\IndexPagestyle{empty} Anwendung. Die Seitenstile -werden in \autoref{sec:maincls.pageStyle} näher erläutert. -% -\EndIndex{Option}{cleardoublestandard}% -\EndIndex{Option}{cleardoubleplain}% -\EndIndex{Option}{cleardoubleempty}% - - -\begin{Declaration} - \Option{parskip}\\ - \Option{parskip*}\\ - \Option{parskip+}\\ - \Option{parskip-}\\ - \Option{halfparskip}\\ - \Option{halfparskip*}\\ - \Option{halfparskip+}\\ - \Option{halfparskip-}\\ - \Option{parindent} -\end{Declaration}% -\BeginIndex{Option}{parskip}% -\BeginIndex{Option}{parskip*}% -\BeginIndex{Option}{parskip+}% -\BeginIndex{Option}{parskip-}% -\BeginIndex{Option}{halfparskip}% -\BeginIndex{Option}{halfparskip*}% -\BeginIndex{Option}{halfparskip+}% -\BeginIndex{Option}{halfparskip-}% -\BeginIndex{Option}{parindent}% -\begin{Explain}% - Die Standardklassen setzen Absätze\Index[indexmain]{Absatz} - normalerweise mit Absatzeinzug und ohne Absatzabstand. Bei - Verwendung eines normalen Satzspiegels, wie ihn \Package{typearea} - bietet, ist dies die vorteilhafteste Absatzauszeichnung. Würde man - ohne Einzug und Abstand arbeiten, hätte der Leser als Anhaltspunkt - nur die Länge der letzten Zeile. Im Extremfall kann es sehr schwer - sein, zu erkennen, ob eine Zeile voll ist oder nicht. Des Weiteren - stellt der Typograf fest, dass die Auszeichnung des Absatzendes am - Anfang der nächsten Zeile leicht vergessen ist. Demgegenüber ist - eine Auszeichnung am Absatzanfang einprägsamer. Der Absatzabstand - hat den Nachteil, dass er in verschiedenem Zusammenhang leicht - verloren geht. So wäre nach einer abgesetzten Formel nicht mehr - festzustellen, ob der Absatz fortgesetzt wird oder ein neuer - beginnt. Auch am Seitenanfang müsste zurückgeblättert werden, um - feststellen zu können, ob mit der Seite auch ein neuer Absatz - beginnt. All diese Probleme sind beim Absatzeinzug nicht gegeben. - Eine Kombination von Absatzeinzug und Absatzabstand ist wegen der - übertriebenen Redundanz abzulehnen. Der - Einzug\Index[indexmain]{Einzug} alleine ist deutlich genug. Der - einzige Nachteil des Absatzeinzuges liegt in der Verkürzung der - Zeile. Damit gewinnt der Absatzabstand\Index{Absatzabstand} bei - ohnehin kurzen Zeilen, etwa im Zeitungssatz, seine Berechtigung. -\end{Explain} - -Unabhängig von obigen Erläuterungen wird hin und wieder ein Layout mit -Absatzabstand an Stelle des Absatzeinzugs gefordert. \KOMAScript{} -bietet hierfür mit \Option{parskip}, \Option{parskip-}, \Option{parskip*}, -\Option{parskip+} sowie \Option{halfparskip}, \Option{halfparskip-}, -\Option{halfparskip*} und \Option{halfparskip+} eine ganze -Reihe von Optionen. - -Die vier \Option{parskip}-Optionen setzen jeweils einen Absatzabstand -von einer Zeile. Die vier \Option{halfparskip}-Optionen verwenden nur -eine halbe Zeile. -Um zu verhindern, dass beispielsweise beim Seitenwechsel ein -Absatzwechsel unerkannt bleibt, wird bei jeweils drei Varianten dafür -gesorgt, dass die letzte Zeile eines Absatzes nicht komplett gefüllt -wird. Bei der Variante ohne Plus und Stern bleibt mindestens ein -Leeraum von 1\Unit{em}. Bei der Plus-Variante bleibt mindestens ein -Drittel einer normalen Zeile und bei der Stern-Variante mindestens ein -Viertel einer normalen Zeile frei. Bei der Minus-Variante werden keine -Vorkehrungen für die letzte Zeile eines Absatzes getroffen. - -Alle acht Optionen zur Auswahl eines Absatzabstandes verändern -außerdem den Abstand vor, nach und innerhalb von Listenumgebungen. -Dadurch wird verhindert, dass diese Umgebungen oder Absätze innerhalb -dieser Umgebungen stärker vom Text abgesetzt werden als die Absätze -des normalen Textes voneinander. Darüber hinaus wird dafür gesorgt, -dass im Inhalts-, Abbildungs- und Tabellenverzeichnis ohne -zusätzlichem Absatzabstand gearbeitet wird. - -Voreingestellt ist bei \KOMAScript{} das Verhalten der Option -\Option{parindent}. Hierbei gibt es keinen Absatzabstand, sondern -einen Absatzeinzug von 1\Unit{em}. -% -\EndIndex{Option}{parskip}% -\EndIndex{Option}{parskip*}% -\EndIndex{Option}{parskip+}% -\EndIndex{Option}{parskip-}% -\EndIndex{Option}{halfparskip}% -\EndIndex{Option}{halfparskip*}% -\EndIndex{Option}{halfparskip+}% -\EndIndex{Option}{halfparskip-}% -\EndIndex{Option}{parindent}% - - -\begin{Declaration} - \Option{headsepline}\\ - \Option{headnosepline}\\ - \Option{footsepline}\\ - \Option{footnosepline} -\end{Declaration}% -\BeginIndex{Option}{headsepline}% -\BeginIndex{Option}{headnosepline}% -\BeginIndex{Option}{footsepline}% -\BeginIndex{Option}{footnosepline}% -Wird unter Kolumnentiteln eine horizontale Linie\Index{Trennlinie} -gewünscht, so lässt sich diese mit der Option \Option{headsepline} -einschalten. Die Option \Option{headnosepline} stellt die Umkehrung -dar. Bei den Seitenstilen \PValue{empty} und \PValue{plain} hat dies -selbstverständlich keine Auswirkung, da hier auf einen -Seitenkopf\Index{Seitenkopf} ausdrücklich verzichtet werden soll. -Typografisch betrachtet hat eine solche Linie immer die Auswirkung, -dass der Kopf optisch näher an den Text heranrückt. Dies bedeutet nun -nicht, dass der Kopf räumlich weiter vom Textkörper\Index{Textbereich} -weggerückt werden müsste. Stattdessen sollte der Kopf dann bei der -Berechnung des Satzspiegels als zum Textkörper gehörend betrachtet -werden. Dies wird bei {\KOMAScript} dadurch erreicht, dass bei -Verwendung der Klassenoption \Option{headsepline} automatisch die -Paketoption \Option{headinclude} an das \Package{typearea}-Paket -weitergereicht wird. - -Für eine Trennlinie\Index{Trennlinie} über dem Seitenfuß gibt es -die analog funktionierenden Optionen \Option{footsepline} und -\Option{footnosepline}. Bei Aktivierung der Trennlinie mit -\Option{footsepline} wird automatisch die Option -\Option{footinclude} an das \Package{typearea}-Paket -weitergereicht. Im Gegensatz zu \Option{headsepline} wirkt sich -die Option \Option{footsepline} auch beim Seitenstil -\PValue{plain} aus, da \PValue{plain} eine Seitenzahl im Fuß -ausgibt. -% -\EndIndex{Option}{headsepline}% -\EndIndex{Option}{headnosepline}% -\EndIndex{Option}{footsepline}% -\EndIndex{Option}{footnosepline}% - - -\begin{Declaration} - \Option{titlepage}\\ - \Option{notitlepage} -\end{Declaration}% -\BeginIndex{Option}{titlepage}% -\BeginIndex{Option}{notitlepage}% -Die beiden Optionen funktionieren genau wie bei den -Standardklassen. Mit der Option \Option{titlepage} wird erreicht, -dass für die gesamte Titelei\Index[indexmain]{Titel} eigene Seiten -verwendet werden. Diese Seiten werden innerhalb von -\Environment{titlepage}-Umgebungen gesetzt und erhalten somit -normalerweise weder Seitenkopf noch Seitenfuß. Bei {\KOMAScript} -wurde die Titelei gegenüber den Standardklassen stark erweitert -(siehe dazu \autoref{sec:maincls.titles}). - -Demgegenüber wird mit der Option \Option{notitlepage} erreicht, dass -ein sogenannter \emph{in-page} Titel gesetzt wird. Das heißt, die -Titelei wird lediglich speziell hervorgehoben, auf der Titelseite kann -aber nachfolgend weiteres Material, beispielsweise eine -Zusammenfassung oder ein Abschnitt gesetzt werden. -% -\EndIndex{Option}{titlepage}% -\EndIndex{Option}{notitlepage}% - - -\begin{Declaration} - \Option{chapterprefix}\\ - \Option{nochapterprefix} -\end{Declaration}% -\BeginIndex{Option}{chapterprefix}% -\BeginIndex{Option}{nochapterprefix}% -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}% -Bei den Standardklassen \Class{book} und \Class{report} werden -Kapitelüberschriften% -\Index[indexmain]{Kapitelueberschriften=Kapitelüberschriften} -in der Form ausgegeben, dass zunächst in einer Zeile -"`Kapitel"'\footnote{Bei Verwendung einer anderen Sprache als Deutsch - wird "`Kapitel"' selbstverständlich in der jeweiligen - Sprache gesetzt.} % -gefolgt von der Kapitelnummer steht. Erst ab der nächsten Zeile wird -dann die Überschrift in linksbündigem Flattersatz ausgegeben. Bei -{\KOMAScript} kann dieses Verhalten mit der Klassenoption -\Option{chapterprefix} ebenfalls erreicht werden. Voreingestellt ist -jedoch das Verhalten der Option \Option{nochapterprefix}. Die -Optionen wirken sich außerdem auf das Aussehen der automatischen -Kolumnentitel für Kapitel aus (siehe -\autoref{sec:maincls.pageStyle}). -% -\EndIndex{Option}{chapterprefix}% -\EndIndex{Option}{nochapterprefix}% - - -\begin{Declaration} - \Option{appendixprefix}\\ - \Option{noappendixprefix} -\end{Declaration}% -\BeginIndex{Option}{appendixprefix}% -\BeginIndex{Option}{noappendixprefix}% -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}% -Zuweilen kommt es vor, dass man die Kapitelüberschriften im -Hauptteil durchaus in der einfachen Form von -\Option{nochapterprefix} setzten möchte. Gleichzeitig sollen die -Überschriften im Anhang\Index{Anhang} jedoch davon abweichend mit -einer Präfixzeile, "`Anhang"' gefolgt vom Buchstaben des Anhangs, -versehen werden. Dies ist mit der Klassenoption -\Option{appendixprefix} möglich. Da sich jedoch dadurch ein -inkonsistentes Layout ergibt, rate ich von der Verwendung ab. - -Lediglich aus Gründen der symmetrischen Vollständigkeit gibt es auch -die Umkehrungsoption \Option{noappendixprefix}. Mir ist jedoch keine -sinnvolle Anwendung dieser Option bekannt. -% -\EndIndex{Option}{appendixprefix}% -\EndIndex{Option}{noappendixprefix}% - - -\begin{Declaration} - \Option{onelinecaption}\\ - \Option{noonelinecaption} -\end{Declaration} -\BeginIndex{Option}{onelinecaption}% -\BeginIndex{Option}{noonelinecaption}% -Bei den Standardklassen wird generell zwischen einzeiligen und -mehrzeiligen Über- oder Unterschriften von Tabellen und Abbildungen -unterschieden. Einzeilige Texte werden dabei grundsätzlich zentriert, -während mehrzeilige Texte linksbündig im Blocksatz gesetzt -werden. Dieses Verhalten, das auch bei \KOMAScript{} voreingestellt -ist, entspricht der Option \Option{onelinecaption}. Bei Verwendung der -Option \Option{noonelinecaption} findet hingegen keine -Sonderbehandlung für einzeilige Texte statt. - -\begin{Explain} - Der Verzicht auf die Sonderbehandlung wird auch gerne als Lösung für - einen weiteren Nebeneffekt beschrieben, der manchmal höchst - erwünscht ist. Werden Fußnoten innerhalb von \Macro{caption} - gesetzt, so werden diese in der Regel falsch nummeriert. Dies liegt - daran, dass bereits beim Ausmessen, ob ein einzeiliger Text - vorliegt, der Fußnotenzähler für jede Fußnote einmal erhöht - wird. Bei Verwendung der Option \Option{noonelinecaption} findet - dieses Ausmessen jedoch gar nicht erst statt. Die Nummern der - Fußnoten sind damit korrekt. - - Bei \KOMAScript{} ist ab Version 2.8q jedoch ohnehin eine Umgehung - dieses Problems eingebaut. Damit kann man Fußnoten auch mit - \Option{onelinecaption} in Über- oder Unterschriften von Tabellen - und Abbildungen verwenden. Allerdings sollte bei Verwendung von - Fußnoten in Gleitumgebungen, der Inhalt der Gleitumgebung immer in - eine \Environment{minipage}-Umgebung verpackt werden. So bleiben - Gleitumgebung und Fußnote garantiert zusammen. Persönlich halte ich - die Verwendung von Fußnoten in Gleitumgebungen, also von Verweisen - innerhalb von Verweisen, für stilistisch fragwürdig. -\end{Explain} -% -\EndIndex{Option}{onelinecaption}% -\EndIndex{Option}{noonelinecaption}% - -\subsection{Optionen für die Schriftwahl} -\label{sec:maincls.fontOptions} - -Schriftoptionen wirken sich auf die Größe der Grundschrift -oder der Schrift einzelner Teile aus. -% Theoretisch wären auch -% Optionen, die sich auf die Schriftart auswirken, Schriftoptionen. -% Solche Optionen gibt es bei {\KOMAScript} derzeit jedoch nicht. - -\begin{Declaration} - \Option{10pt}\\% - \Option{11pt}\\% - \Option{12pt}\\ - \Option{\Var{X}pt} -\end{Declaration}% -\BeginIndex{Option}{10pt}% -\BeginIndex{Option}{11pt}% -\BeginIndex{Option}{12pt}% -\BeginIndex{Option}{\Var{X}pt}% -Die Optionen \Option{10pt}, \Option{11pt} und \Option{12pt} -entsprechen den Standardoptionen. Im Gegensatz zu den Standardklassen -kann bei {\KOMAScript} jedoch auch eine andere -Schriftgröße\Index[indexmain]{Schriftgroesse=Schriftgröße} eingestellt -werden. Da bei {\LaTeX} jedoch nur Klassenoptionsdateien für -10\Unit{pt}, 11\Unit{pt} und 12\Unit{pt} mitgeliefert werden und -{\KOMAScript} keine entsprechenden Dateien bereit stellt, müssen Sie -selbst für diese Dateien sorgen. Das Paket \Package{extsizes} (siehe -\cite{package:extsizes}) stellt beispielsweise mit \File{size14.clo} -solche Dateien zur Verfügung. Diese können bei \KOMAScript{} direkt -verwendet werden, indem die entsprechende Größe, beispielsweise -\Option{14pt}\IndexOption{14pt}, als Klassenoption angegeben wird. Bei -sehr großen Schriften kann es jedoch zu einem arithmetischen Überlauf -bei der Satzspiegelberechnung im \Package{typearea}-Paket kommen. -% -\EndIndex{Option}{10pt}% -\EndIndex{Option}{11pt}% -\EndIndex{Option}{12pt}% -\EndIndex{Option}{\Var{X}pt}% - - -\begin{Declaration} - \Option{smallheadings}\\ - \Option{normalheadings}\\ - \Option{bigheadings} -\end{Declaration}% -\BeginIndex{Option}{smallheadings}% -\BeginIndex{Option}{normalheadings}% -\BeginIndex{Option}{bigheadings}% -Die -Überschriften\index{Ueberschriften=Überschriften}\index{Gliederung} -werden sowohl bei den Standardklassen als auch bei {\KOMAScript} -normalerweise recht groß gesetzt. Dies gefällt nicht jedem und wirkt -insbesondere bei kleinen Papiergrößen oft störend. Daher stehen bei -{\KOMAScript} neben den mit der Option \Option{bigheadings} sehr groß -eingestellen Überschriften die beiden Optionen \Option{normalheadings} -und \Option{smallheadings} zur Ver"-fügung, mit denen man insgesamt -kleinere Überschriften erhält. -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}Die Abstände vor und nach -Kapitelüberschriften werden von diesen Optionen ebenfalls beeinflusst. -Auf Kapitelüberschriften wirken sich außerdem die Layoutoptionen -\Option{chapterprefix} und \Option{nochapterprefix} sowie im Anhang -\Option{appendixprefix} und \Option{noappendixprefix} aus, die in -\autoref{sec:maincls.layoutOptions} beschrieben worden sind. -% -\EndIndex{Option}{smallheadings}% -\EndIndex{Option}{normalheadings}% -\EndIndex{Option}{bigheadings}% - - - -\subsection{Optionen für das Inhaltsverzeichnis} -\label{sec:maincls.tocOptions} - -Bei {\KOMAScript} gibt es mehrere Optionen, die sich auf den Inhalt -des Inhaltsverzeichnisses\Index[indexmain]{Inhaltsverzeichnis} -auswirken. Die Form des Inhaltsverzeichnisses ist zwar fest, es kann -jedoch durch Optionen zwischen unterschiedlichen Varianten gewählt -werden. - -\begin{Declaration} - \Option{liststotoc}\\ - \Option{idxtotoc}\\ - \Option{bibtotoc}\\ - \Option{bibtotocnumbered}\\ - \Option{liststotocnumbered} -\end{Declaration}% -\BeginIndex{Option}{liststotoc}% -\BeginIndex{Option}{idxtotoc}% -\BeginIndex{Option}{bibtotoc}% -\BeginIndex{Option}{bibtotocnumbered}% -\BeginIndex{Option}{liststotocnumbered}% -\begin{Explain}% - Normalerweise erscheinen Tabellen-\Index{Tabellenverzeichnis} und - Abbildungsverzeichnis\Index{Abbildungsverzeichnis}, - Index\Index{Index} und - Literaturverzeichnis\Index{Literaturverzeichnis} nicht im - Inhaltsverzeichnis. Im klassischen Buchdruck wird auf entsprechende - Einträge bewusst verzichtet. Das ist unter Anderem deshalb so, weil - stillschweigend von einer ganz bestimmten Verteilung dieser - Verzeichnisse ausgegangen wird, wenn die entsprechenden Teile - überhaupt verwendet werden: - \begin{itemize} - \item Inhaltsverzeichnis nach der Titelei, - \item Tabellen- und Abbildungsverzeichnis nach dem - Inhaltsverzeichnis, - \item Index ganz am Ende, - \item Literaturverzeichnis vor dem Index. - \end{itemize} - Bücher, die all diese Verzeichnisse aufweisen, sind außerdem häufig - mit diesen praktischen Bändern gebunden, die man an den - entsprechenden Stellen ins Buch legen kann, so dass besagte - Verzeichnisse höchstens einmal gesucht werden müssen.\par -\end{Explain} - -Neuerdings ist es üblich geworden, dass Tabellen- und -Abbildungsverzeichnis sowie das Literaturverzeichnis, seltener der -Index im Inhaltsverzeichnis zu finden sind. Dies hat sicher auch -mit der neuen Mode zu tun, Abbildungs- und Tabellenverzeichnis ans -Buchende zu stellen. Beide Verzeichnisse haben von Aufbau und -Intention eine deutliche Ähnlichkeit mit dem Inhaltsverzeichnis. -Daher betrachte ich die Entwicklung skeptisch. Da es keinen Sinn -hat, nur das Tabellen- oder nur das Abbildungsverzeichnis ohne -das jeweils andere ins Inhaltsverzeichnis aufzunehmen, gibt es -nur eine Option \Option{liststotoc}, mit der beide Verzeichnisse -gemeinsam ins Inhaltsverzeichnis aufgenommen werden. Dabei werden -auch Verzeichnisse berücksichtigt, die mit Hilfe des -\Package{float}-Pakets\IndexPackage{float} ab Version 1.2e -erstellt werden (siehe \cite{package:float}). Als Verzeichnisse, -die den Inhalt anderer Abschnitte des Werks auf"|führen, erhalten -Tabellen-, Abbildungs- und die mit dem \Package{float}-Paket -erzeugten Verzeichnisse grundsätzlich keine Kapitelnummer. - -Der Index erhält mit der Option \Option{idxtotoc} einen Eintrag ins -Inhaltsverzeichnis. Da der Index ebenfalls nur Verweise auf den Inhalt -anderer Abschnitte enthält, wird auch er grundsätzlich nicht -nummeriert. - -Das Literaturverzeichnis stellt eine etwas andere Art von Verzeichnis -dar. Hier wird nicht der Inhalt des vorliegenden Werks aufgelistet, -sondern auf externe Inhalte verwiesen. Mit dieser Begründung könnte -man argumentieren, dass das Literaturverzeichnis ein eigenes Kapitel -bzw. einen eigenen Abschnitt darstellt, und somit eine Nummer -verdient. Die Option \Option{bibtotocnumbered} führt genau dazu, -einschließlich des dann fälligen Eintrags in das Inhaltsverzeichnis. -Ich selbst bin der Meinung, dass bei dieser Argumentation auch ein -klassisches, kommentiertes Quellenverzeichnis ein eigenes Kapitel -wäre. Außerdem ist das Literaturverzeichnis letztlich nichts, was man -selbst geschrieben hat. Deshalb verdient es allenfalls einen nicht -nummerierten Eintrag ins Inhaltsverzeichnis, was mit der Option -\Option{bibtotoc} erreicht wird. - -Nachdem\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} ich bereits -der Option \Option{liststotoc} recht skeptisch und der Option -\Option{bibtotocnumbered} ablehnend gegenüberstehe, sollte es nicht -wundern, dass ich die Option \Option{liststotocnumbered} nur -zähneknirschend implementiert habe. Als nächstes will noch jemand, -dass das Inhaltsverzeichnis nummeriert und im Inhaltsverzeichnis -aufgeführt wird. Wer daher eine Erklärung zur Option -\Option{liststotoc} erwartet, sucht in dieser Anleitung vergeblich -danach. Eine entsprechende Option für das Stichwortverzeichnis wäre -ebenfalls derart unsinnig, dass ich ihre Implementierung bisher -standhaft abgelehnt habe. -% -\EndIndex{Option}{liststotoc}% -\EndIndex{Option}{idxtotoc}% -\EndIndex{Option}{bibtotoc}% -\EndIndex{Option}{bibtotocnumbered}% -\EndIndex{Option}{liststotocnumbered}% - -\begin{Declaration} - \Option{tocindent}\\ - \Option{tocleft} -\end{Declaration}% -\BeginIndex{Option}{tocindent}% -\BeginIndex{Option}{tocleft}% -Normalerweise\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} wird das -Inhaltsverzeichnis\Index{Inhaltsverzeichnis} so formatiert, dass die -Gliederungsebenen unterschiedlich weit eingezogen werden. Dabei wird -für die Gliederungsnummer jeder Ebene ein Raum fester Breite -vorgesehen, in dem die Nummer linksbündig gesetzt wird. Dies -entspricht der Verwendung der Option \Option{tocindent}. - -Werden sehr viele Gliederungspunkte verwendet, so werden die -Gliederungsnummern sehr breit. Damit reicht der vorgesehene Platz -nicht aus. In \cite{DANTE:FAQ} wird für solche Fälle vorgeschlagen, -die Erzeugung des Inhaltsverzeichnisses umzudefinieren. \KOMAScript{} -bietet jedoch eine alternative Formatierung an, bei der das Problem -nicht auf"|tritt. Bei Verwendung der Option \Option{tocleft} werden die -unterschiedlichen Gliederungsebenen nicht unterschiedlich weit -eingezogen. Stattdessen wird eine tabellenartige Form gewählt, in der -alle Gliederungsnummern und alle Gliederungstexte jeweils in einer -Spalte linksbündig untereinander stehen. Der für die -Gliederungsnummern benötigte Platz wird dabei automatisch ermittelt. - -\begin{Explain} - Damit der Platz, der für die Gliederungsnummern benötigt wird, bei - Option \Option{tocleft} automatisch ermittelt werden kann, müssen - einige Makros umdefiniert werden. Es ist zwar unwahrscheinlich, aber - nicht ausgeschlossen, dass dies zu Problemen bei Verwendung - anderer Pakete führt. Sollten Sie diesen Verdacht haben, - probieren Sie alternativ die Option \Option{tocindent}, die ohne - solche Umdefinierungen auskommt. Bei Verwendung von Paketen, die - ebenfalls in die Formatierung des Inhaltsverzeichnisses eingreifen, - ist außerdem damit zu rechnen, dass die Optionen \Option{tocleft} - und \Option{tocindent} nicht funktionieren. Sicherheitshalber sollte - man bei Verwendung solcher Pakete keine der beiden Optionen als - globale Optionen, also nicht als Klassenoptionen, angeben. - - Bei Option \Option{tocleft} erfolgt die Ermittlung der für die - Gliederungsnummern benötigten Breite während der Ausgabe des - Inhaltsverzeichnisses. Nach einer Änderung, die sich auf das - Inhaltsverzeichnis auswirkt, werden maximal drei \LaTeX-Durchläufe - benötigt, bis das Inhaltsverzeichnis mit korrektem Wert dargestellt - wird. -\end{Explain} -% -\EndIndex{Option}{tocindent}% -\EndIndex{Option}{tocleft}% - - -\subsection{Optionen für die Verzeichnisse der Gleitumgebungen} -\label{sec:maincls.listsOptions} - -Die bekanntesten Verzeichnisse von Gleitumgebungen sind das Abbildungs- und -das Tabellenverzeichnis. Beispielsweise mit Hilfe des -\Package{float}-Pakets\IndexPackage{float} (siehe \cite{package:float}) können -jedoch eigene Gleitumgebungen erstellt werden, die ebenfalls in Verzeichnissen -erfasst werden. - -\begin{Explain} - Ob sich \KOMAScript-Optionen auf Verzeichnisse auswirken, die mit Hilfe von - anderen Paketen erstellt werden, hängt maßgeblich von diesen Paketen ab. Bei - den Verzeichnissen des \Package{float}-Pakets\IndexPackage{float} ist dies - normalerweise der Fall. - - Neben den hier angegebenen Optionen gibt es weitere, die sich zwar - auf die Verzeichnisse der Gleitumgebungen, nicht jedoch auf deren - Formatierung oder Inhalt auswirken. Stattdessen haben sie - Auswirkungen auf den Inhalt des Inhaltsverzeichnisses. Deshalb - finden sich die entsprechenden Erläuterungen in - \autoref{sec:maincls.tocOptions}. -\end{Explain} - -\begin{Declaration} - \Option{listsindent}\\ - \Option{listsleft} -\end{Declaration}% -\BeginIndex{Option}{listsindent}% -\BeginIndex{Option}{listsleft}% -Normalerweise\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} werden die -Verzeichnisse\Index{Abbildungsverzeichnis}\Index{Tabellenverzeichnis} -der Gleitumgebungen so formatiert, dass für die Nummer ein Raum fester -Breite verwendet wird. Dies entspricht der Verwendung der Option -\Option{listsindent}. - -Werden die Nummern sehr breit, weil beispielsweise sehr viele Tabellen -verwendet werden, so reicht der vorgesehene Platz irgendwann nicht -mehr aus. Vergleichbar zur Option \Option{tocleft} bietet -\KOMAScript{} daher die Option \Option{listsleft}. Dabei wird die -Breite der Nummern automatisch ermittelt und der Platz entsprechend -angepasst. Bezüglich der Nebenwirkungen und Funktionsweise gilt, was -in \autoref{sec:maincls.tocOptions} für die Option \Option{tocleft} -erklärt wurde. Es sei an dieser Stelle jedoch nochmals darauf -hingewiesen, dass mit der Option \Option{listsleft} mehrere -\LaTeX-Durchläufe benötigt werden, bis die Verzeichnisse ihre -endgültige Form erhalten haben. -% -\EndIndex{Option}{listsindent}% -\EndIndex{Option}{listsleft}% - - -\subsection{Optionen für die Formatierung} -\label{sec:maincls.formattingOptions} - -Formatierungsoptionen sind alle Optionen, welche die Form oder -Formatierung einer Ausgabe beeinflussen und nicht in einen anderen -Abschnitt eingeordnet werden können. Es sind also sozusagen die -\emph{sonstigen Optionen}. - -\begin{Declaration} - \Option{abstracton}\\ - \Option{abstractoff} -\end{Declaration}% -\BeginIndex{Option}{abstracton}% -\BeginIndex{Option}{abstractoff}% -\OnlyAt{\Class{scrreprt}\and\Class{scrartcl}}% -Bei den Standardklassen setzt die \Environment{abstract}-Umgebung -noch den zentrierten Titel"`\abstractname"' vor die -Zusammenfassung\Index[indexmain]{Zusammenfassung}. Früher war dies -durchaus üblich. Inzwischen sind wir durch das Zeitunglesen darin -geübt, einen entsprechend hervorgehobenen Text am Anfang eines -Artikels oder Berichts als Zusammenfassung zu erkennen. Dies gilt -umso mehr, wenn dieser Text noch vor dem Inhaltsverzeichnis steht. -Zudem verwundert es, wenn ausgerechnet diese Überschrift klein und -zentriert ist. {\KOMAScript} bietet mit den Optionen -\Option{abstracton} und \Option{abstractoff} die Möglichkeit, die -Überschrift über der Zusammenfassung ein- oder auszuschalten. - -\begin{Explain} - Bei Büchern wird in der Regel eine andere Art der Zusammenfassung - verwendet. Dort setzt man ein entsprechendes Kapitel an den Anfang - oder Ende des Werks. Oft wird diese Zusammenfassung entweder mit - der Einleitung oder einem weiteren Ausblick verknüpft. Daher gibt es - bei \Class{scrbook} überhaupt keine \Environment{abstract}-Umgebung. - Bei Berichten im weiteren Sinne, etwa einer Studien- oder - Diplomarbeit, ist ebenfalls eine Zusammenfassung in dieser Form zu - empfehlen.\par -\end{Explain} -% -\EndIndex{Option}{abstracton}% -\EndIndex{Option}{abstractoff}% - - -\begin{Declaration} - \Option{pointednumbers}\\ - \Option{pointlessnumbers} -\end{Declaration}% -\BeginIndex{Option}{pointednumbers}% -\BeginIndex{Option}{pointlessnumbers}% -\begin{Explain}% - Nach {\small DUDEN} steht in Gliederungen\Index{Gliederung}, in - denen ausschließlich arabische Ziffern für die - Nummerierung\Index{Nummerierung} verwendet werden, am Ende der - Gliederungsnummern kein abschließender Punkt (siehe - \cite[R\,3]{DUDEN}). Wird hingegen innerhalb der Gliederung auch mit - römischen Zahlen oder Groß- oder Kleinbuchstaben gearbeitet, so - steht am Ende aller Gliederungsnummer ein abschließender Punkt - (siehe \cite[R\,4]{DUDEN}). In {\KOMAScript} ist ein Automatismus - eingebaut, der diese etwas komplexe Regel zu erfüllen versucht. Der - Automatismus wirkt sich so aus, dass normalerweise bei Verwendung - des Gliederungsbefehls \Macro{part} oder eines Anhangs - (\Macro{appendix}) auf Gliederungsnummer mit abschließendem Punkt - umgeschaltet wird. Diese Information wird in der \File{aux}-Datei - gespeichert und wirkt sich dann beim nächsten \LaTeX-Lauf auf das - gesamte Dokument aus.\par -\end{Explain} - -Manchmal versagt der Automatismus zum Setzen oder Weglassen des -abschließenden Punktes in der Gliederungsnummer oder andere Sprachen -sehen andere Regeln vor. Deshalb ist es mit der Option -\Option{pointednumbers} möglich, den Punkt manuell einzuschalten oder -mit der Option \Option{pointlessnumbers} zu verbieten. - -Es ist zu beachten, dass der Automatismus immer erst für den nächsten -\LaTeX-Lauf die Verwendung des abschließenden Punktes ein- oder -ausschaltet. Bevor also versucht wird, die korrekte Darstellung über -Verwendung einer der Optionen zu erzwingen, sollte grundsätzlich ein -weiterer \LaTeX-Lauf ohne Dokumentänderung durchgeführt werden. - -Richtig, die korrekten Namen für diese Optionen wären -\Option{dottednumbers}\IndexOption{dottednumbers} und -\Option{dotlessnumbers}\IndexOption{dotlessnumbers} oder Ähnliches. -Wie das Leben so spielt, war mir die Bedeutung der statt dessen -gewählten Namen vor ein paar Jahren bei der Implementierung nicht -klar. -% -\EndIndex{Option}{pointednumbers}% -\EndIndex{Option}{pointlessnumbers}% - - -\begin{Declaration} - \Option{leqno} -\end{Declaration}% -\BeginIndex{Option}{leqno}% -Gleichungen\Index{Gleichungen} werden normalerweise auf der -rechten Seite nummeriert. Mit Hilfe der Standardoption -\Option{leqno} wird die Standardoptionsdatei \File{leqno.clo} -geladen. Dadurch erfolgt die Nummerierung von Gleichungen links. -% -\EndIndex{Option}{leqno}% - - -\begin{Declaration} - \Option{fleqn} -\end{Declaration}% -\BeginIndex{Option}{fleqn}% -Gleichungen werden normalerweise horizontal zentriert ausgegeben. Mit -Hilfe der Standardoption \Option{fleqn} wird die Standardoptionsdatei -\File{fleqn.clo} geladen. Dadurch erfolgt die Ausgabe von Gleichungen -linksbündig. -% -\EndIndex{Option}{fleqn}% - - -\begin{Declaration} - \Option{tablecaptionbelow}\\ - \Option{tablecaptionabove} -\end{Declaration}% -\BeginIndex{Option}{tablecaptionbelow}% -\BeginIndex{Option}{tablecaptionabove}% -Wie in \autoref{sec:maincls.floats} erläutert wird, verhält sich -\Macro{caption}\IndexCmd{caption} bei Abbildungen\Index{Abbildungen} -immer wie \Macro{captionbelow}\IndexCmd{captionbelow}. Bei Tabellen -ist das Verhalten hingegen von zwei Optionen abhängig. Mit der -Voreinstellung \Option{tablecaptionbelow} verhält sich \Macro{caption} -auch bei Tabellen wie \Macro{captionbelow}. Mit der Option -\Option{tablecaptionabove} verhält sich \Macro{caption} jedoch wie -\Macro{captionabove}\IndexCmd{captionabove}. - -Bitte\OnlyAt{\Package{float}}\IndexPackage{float} beachten -Sie, dass bei Verwendung des \Package{float}-Pakets die Optionen -\Option{tablecaptionbelow} und \Option{tablecaptionabove} nicht -mehr funktionieren, sobald Sie \Macro{refloatstyle} auf Tabellen -anwenden. Näheres zum \Package{float}-Paket und -\Macro{refloatstyle} entnehmen Sie bitte \cite{package:float}. -% -\EndIndex{Option}{tablecaptionbelow}% -\EndIndex{Option}{tablecaptionabove}% - - -\begin{Declaration} - \Option{origlongtable} -\end{Declaration}% -\BeginIndex{Option}{origlongtable}% -\begin{Explain}% - Beim Paket\OnlyAt{\Package{longtable}} - \Package{longtable}\IndexPackage{longtable} (siehe - \cite{package:longtable}) werden Tabellenüberschriften intern mit - dem Befehl \Macro{LT@makecaption} gesetzt. Damit diese - Tabellenüberschriften zu denen normaler Tabellen passen, definieren - die \KOMAScript-Klassen diese Anweisung normalerweise um. Siehe - hierzu auch \autoref{sec:maincls.floats}. Diese Umdefinierung - erfolgt mit Hilfe von \Macro{AfterPackage} unmittelbar nach dem - Laden von \Package{longtable}. Ist das Paket - \Package{caption2}\IndexPackage{caption2} (siehe - \cite{package:caption2}) geladen, unterbleibt die Umdefinierung in - \KOMAScript, um \Package{caption2} nicht in die Quere zu kommen. -\end{Explain} -Falls die Tabellenüberschriften des \Package{longtable}-Pakets von den -\KOMAScript-Klassen nicht umdefiniert werden sollen, kann die Option -\Option{origlongtable} gesetzt werden. -% -\EndIndex{Option}{origlongtable}% - - -\begin{Declaration} - \Option{openbib} -\end{Declaration}% -\BeginIndex{Option}{openbib}% -Die Standardoption \Option{openbib} schaltet auf eine alternative -Formatierung des Literaturverzeichnisses\Index{Literaturverzeichnis} -um. Dabei wird zum einen die erste Zeile der Literaturangabe, die -normalerweise den Autor enthält, weniger stark eingerückt. Zum anderen -wird der Befehl \Macro{newblock} so umdefiniert, dass er einen Absatz -einfügt. Ohne die Option fügt \Macro{newblock} lediglich einen -dehnbaren horizontalen Abstand ein. -% -\EndIndex{Option}{openbib} - - -\begin{Declaration} - \Option{draft}\\ - \Option{final} -\end{Declaration}% -\BeginIndex{Option}{draft}% -\BeginIndex{Option}{final}% -Die beiden Standardoptionen \Option{draft} und \Option{final} werden -normalerweise verwendet, um zwischen Dokumenten im -Entwurfsstadium\Index{Entwurf} und fertigen -Dokumenten\Index{Endfassung} zu unterscheiden. Insbesondere werden mit -der Option \Option{draft} kleine schwarze Kästchen aktiviert, die im -Falle von überlangen Zeilen am Zeilenende ausgegeben werden. Diese -Kästchen erleichtern dem ungeübten Auge, Absätze ausfindig zu machen, -die manueller Nachbearbeitung bedürfen. Demgegenüber erscheinen mit -der Option \Option{final} keine solchen Kästchen. - -Die beiden Optionen werden übrigens auch von anderen Paketen ausgewertet -und beeinflussen deren Eigenschaften. So -verzichtet das Paket \Package{graphics}\IndexPackage{graphics} -oder \Package{graphicx}\IndexPackage{graphicx} bei Verwendung der -Option \Option{draft} auf die Ausgabe der Grafiken. Stattdessen -werden lediglich Rahmen in der entsprechenden Größe und die -Dateinamen der Grafiken ausgegeben (siehe -\cite{package:graphics}). -% -\EndIndex{Option}{draft}% -\EndIndex{Option}{final}% - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Generelle Dokumenteigenschaften} -\label{sec:maincls.general} - -Einige Dokumenteigenschaften sind keinem speziellen Abschnitt des -Dokuments wie der Titelei, dem Text oder dem Literaturverzeichnis -zuzuordnen, sondern betreffen das Dokument insgesamt. Ein Teil dieser -Eigenschaften wurde bereits im \autoref{sec:maincls.options} -erläutert. - -\subsection{Änderung der verwendeten Schriftart} -\label{sec:maincls.font} - -\BeginIndex{}{Schriftart}\BeginIndex{}{Schriftgroesse=Schriftgröße}% -\begin{Explain} -\KOMAScript{} verwendet für verschiedene Elemente des Textes zum -Zwecke der Hervorhebung keine fest eingestellten Schriften und -Schriftauszeichungen. Stattdessen existieren Schriftvariablen in Form -von Anweisungen, in denen die Befehle zur Schriftumschaltung abgelegt -sind. In früheren Versionen von \KOMAScript{} musste der Anwender zur -Änderung der Auszeichnung eines Elements die entsprechende Anweisung -mit Hilfe von \Macro{renewcommand} umdefinieren. Manchmal war es auch -nicht einfach, aus dem Namen des Elements auf die zugehörige Anweisung -zu schließen. Außerdem musste zur Umdefinierung häufig erst einmal -festgestellt werden, wie die ursprüngliche Definition lautete. - -Genaugenommen waren all diese Erschwernisse durchaus beabsichtigt. -Denn eigentlich sollte es sich dabei nicht um eine -Benutzerschnittstelle, sondern um eine Schnittstelle für Paketautoren -handeln, die eigene Klassen oder Pakete um \KOMAScript{} herum bauen. -Über die Jahre hat sich aber gezeigt, dass die Schnittstelle trotzdem -hauptsächlich von Anwendern verwendet wird. Also wurde eine neue, -einfachere Schnittstelle geschaffen. Dennoch rät der Autor dem -typografischen Laien ausdrücklich davon ab, Schriftgrößen und andere --auszeichnungen nach eigenem Geschmack zu ändern. Wissen und -Fingerspitzengefühl sind Grundvoraussetzungen für die Auswahl und die -Mischung unterschiedlicher Schriftgrößen, "~attribute und "~familien. -\end{Explain} - - -\begin{Declaration} - \Macro{setkomafont}\Parameter{Element}\Parameter{Befehle}\\ - \Macro{addtokomafont}\Parameter{Element}\Parameter{Befehle}\\ - \Macro{usekomafont}\Parameter{Element} -\end{Declaration}% -\BeginIndex{Cmd}{setkomafont}% -\BeginIndex{Cmd}{addtokomafont}% -\BeginIndex{Cmd}{usekomafont}% -\ChangedAt{v2.8p}{\Class{scrbook}\and \Class{scrreprt}\and - \Class{scrartcl}}% -Mit Hilfe der beiden Anweisungen \Macro{setkomafont} und -\Macro{addtokomafont} ist es möglich, die \PName{Befehle} festzulegen, -mit denen die Schrift eines bestimmten \PName{Element}s -umgeschaltet wird. Theoretisch könnten als \PName{Befehle} alle -möglichen Anweisungen einschließlich Textausgaben verwendet werden. -Sie sollten sich jedoch unbedingt auf solche Anweisungen beschränken, -mit denen wirklich nur ein Schriftattribut umgeschaltet wird. In der -Regel werden dies die Befehle \Macro{normalfont}, \Macro{rmfamily}, -\Macro{sffamily}, \Macro{ttfamily}, \Macro{mdseries}, -\Macro{bfseries}, \Macro{upshape}, \Macro{itshape}, \Macro{slshape}, -\Macro{scshape} sowie die Größenbefehle \Macro{Huge}, \Macro{huge}, -\Macro{LARGE} etc. sein. Die Erklärung zu diesen Befehlen entnehmen -Sie bitte \cite{l2kurz}, \cite{latex:usrguide} oder -\cite{latex:fntguide}. Auch Farbumschaltungen wie \Macro{normalcolor} -sind möglich (siehe \cite{package:graphics}). Das Verhalten bei -Verwendung anderer Anweisungen, inbesondere solcher, die zu -Umdefinierungen führen oder Ausgaben tätigen, ist nicht definiert. -Seltsames Verhalten ist möglich und stellt keinen Fehler dar. - -Mit \Macro{setkomafont} wird die Schriftumschaltung eines Elements mit -einer völlig neuen Definition versehen. Demgegenüber wird mit -\Macro{addtokomafont} die existierende Definition lediglich erweitert. -Es wird empfohlen, beide Anweisungen nicht innerhalb des Dokuments zu -verwenden. Beispiele für die Verwendung entnehmen Sie bitte den -Abschnitten zu den jeweiligen Elementen. Namen und Bedeutung der -einzelnen Elemente sind in \autoref{tab:maincls.elementsWithoutText} -aufgelistet. Die Voreinstellungen sind den jeweiligen Abschnitten zu -entnehmen. -% -% Mit tabularx.sty oder array.sty waere folgende Tabelle viel -% einfacher zu loesen: -\begin{table} - \centering% - \begin{tabular}{lp{.6\linewidth}} - Element & Beschreibung \\\hline\\[-2ex] - \FontElement{caption}\IndexFontElement[indexmain]{caption} - & \raggedright Text einer Abbildungs- oder - Tabellenunter- oder "~überschrift \tabularnewline%[.75ex] - \FontElement{captionlabel}\IndexFontElement[indexmain]{captionlabel} - & \raggedright Label einer Abbildungs- oder - Tabellenunter- oder "~überschrift; Anwendung erfolgt nach dem - Element \FontElement{caption} \tabularnewline%[.75ex] - \FontElement{chapter}\IndexFontElement[indexmain]{chapter} - & \raggedright Überschrift der Ebene - \Macro{chapter} \tabularnewline%[.75ex] - \FontElement{descriptionlabel}% - \IndexFontElement[indexmain]{descriptionlabel} - & \raggedright Labels, also das - optionale Argument von \Macro{item}, in einer - \Environment{description}-Umgebung \tabularnewline%[.75ex] - \FontElement{dictumauthor}\IndexFontElement[indexmain]{dictumauthor} - & \raggedright Urheber eines schlauen Spruchs; Anwendung erfolgt - nach dem Element \FontElement{dictumtext} \tabularnewline%[.75ex] - \FontElement{dictumtext}\IndexFontElement[indexmain]{dictumtext} - & \raggedright Text eines schlauen Spruchs (siehe Anweisung - \Macro{dictum}) \tabularnewline%[.75ex] - \FontElement{pagefoot}\IndexFontElement[indexmain]{pagefoot} - & \raggedright eigentlich der Fuß einer Seite, - jedoch auch der Kopf der Seite \tabularnewline%[.75ex] - \FontElement{footnote}\IndexFontElement[indexmain]{footnote} - & \raggedright Marke und Text einer Fußnote \tabularnewline%[.75ex] - \FontElement{footnotelabel}% - \IndexFontElement[indexmain]{footnotelabel} - & \raggedright Marke einer Fußnote; Anwendung erfolgt nach dem - Element \FontElement{footnote} \tabularnewline%[.75ex] - \FontElement{footnotereference}% - \IndexFontElement[indexmain]{footnotereference} - & Referenzierung der Fußnotenmarke im Text \tabularnewline%[.75ex] - \FontElement{pagehead}\IndexFontElement[indexmain]{pagehead} - & \raggedright eigentlich der Kopf einer Seite, - jedoch auch der Fuß der Seite \tabularnewline%[.75ex] - \FontElement{pagenumber}\IndexFontElement[indexmain]{pagenumber} - & \raggedright Seitenzahl im Kopf oder Fuß der - Seite \tabularnewline%[.75ex] - \FontElement{paragraph}\IndexFontElement[indexmain]{paragraph} - & \raggedright Überschrift der Ebene - \Macro{paragraph} \tabularnewline%[.75ex] - \FontElement{part}\IndexFontElement[indexmain]{part} - & \raggedright Überschrift der Ebene \Macro{part} - jedoch ohne die Zeile mit der Nummer des Teils - \tabularnewline%[.75ex] - \FontElement{partnumber}\IndexFontElement[indexmain]{partnumber} - & \raggedright Zeile mit der Nummer des - Teils in Überschrift der Ebene \Macro{part} - \tabularnewline%[.75ex] - \FontElement{section}\IndexFontElement[indexmain]{section} - & \raggedright Überschrift der Ebene - \Macro{section} \tabularnewline%[.75ex] - \FontElement{sectioning}\IndexFontElement[indexmain]{sectioning} - & \raggedright alle Gliederungsüberschriften, - also die Argumente von \Macro{part} bis \Macro{subparagraph} und - \Macro{minisec} sowie die Überschrift der Zusammenfassung; die - Anwendung erfolgt vor dem Element der jeweiligen Gliederungebene - \tabularnewline%[.75ex] - \FontElement{subparagraph}% - \IndexFontElement[indexmain]{subparagraph} - & \raggedright Überschrift der Ebene - \Macro{subparagraph} \tabularnewline%[.75ex] - \FontElement{subsection}\IndexFontElement[indexmain]{subsection} - & \raggedright Überschrift der Ebene - \Macro{subsection} \tabularnewline%[.75ex] - \FontElement{subsubsection}% - \IndexFontElement[indexmain]{subsubsection} - & \raggedright Überschrift der Ebene - \Macro{subsubsection} \tabularnewline%[.75ex] - \FontElement{title}\IndexFontElement[indexmain]{title} - & \raggedright Haupttitel des Dokuments, also das - Argument von \Macro{title} \tabularnewline%[.75ex] - \end{tabular} - \caption{Elemente, deren Schrift bei \KOMAScript{} mit - \Macro{setkomafont} und \Macro{addtokomafont} verändert werden - kann} - \label{tab:maincls.elementsWithoutText} -\end{table} - -Mit der Anweisung \Macro{usekomafont} kann die aktuelle Schriftart auf -diejenige umgeschaltet werden, die für das angegebene \PName{Element} -definiert ist. -\begin{Example} - Angenommen, Sie wollen, dass für das Element - \FontElement{captionlabel} dieselbe Schriftart wie - für das Element \FontElement{descriptionlabel} verwendet wird. Das - erreichen Sie einfach mit: - \begin{small} -\begin{verbatim} - \setkomafont{captionlabel}{\usekomafont{descriptionlabel}} -\end{verbatim} - \end{small} - Weitere Beispiele finden Sie in den Abschnitten zu den jeweiligen - Elementen. -\end{Example} -% -\EndIndex{Cmd}{setkomafont}% -\EndIndex{Cmd}{addtokomafont}% -\EndIndex{Cmd}{usekomafont}% -\EndIndex{}{Schriftart}\EndIndex{}{Schriftgroesse=Schriftgröße}% - -\subsection{Seitenstil} -\label{sec:maincls.pageStyle} - -Eine der allgemeinen Eigenschaften eines Dokuments ist der -Seitenstil\Index[indexmain]{Seitenstil}. Bei {\LaTeX} versteht man -unter dem Seitenstil in erster Linie den Inhalt der Kopf- und -Fußzeilen. - -\begin{Declaration} - \Macro{pagestyle}\PParameter{empty}\\ - \Macro{pagestyle}\PParameter{plain}\\ - \Macro{pagestyle}\PParameter{headings}\\ - \Macro{pagestyle}\PParameter{myheadings}\\ - \Macro{thispagestyle}\Parameter{lokaler Seitenstil} -\end{Declaration}% -\BeginIndex{Cmd}{pagestyle}% -\BeginIndex{Cmd}{thispagestyle}% -\BeginIndex{Pagestyle}{empty}% -\BeginIndex{Pagestyle}{plain}% -\BeginIndex{Pagestyle}{headings}% -\BeginIndex{Pagestyle}{myheadings}% -Üblicherweise wird zwischen vier verschiedenen Seitenstilen -unterschieden. -\begin{description} -\item[empty] ist der Seitenstil, bei dem Kopf- und Fußzeile - vollständig leer bleiben. Dies ist bei {\KOMAScript} vollkommen - identisch zu den Standardklassen. -\item[plain] ist der Seitenstil, bei dem keinerlei - Kolumnentitel\Index{Kolumnentitel} verwendet, sondern nur eine - Seitenzahl ausgegeben wird. Bei den Standardklassen wird diese - Seitenzahl immer mittig im Fuß ausgegeben. Bei {\KOMAScript} erfolgt - die Ausgabe stattdessen im doppelseitigen\Index{doppelseitig} Layout - außen im Fuß. Der einseitige Seitenstil entspricht bei {\KOMAScript} - dem der Standardklassen. -\item[headings] ist der Seitenstil für lebende Kolumnentitel. Das sind - Kolumnentitel, bei denen Überschriften automatisch in den Seitenkopf - übernommen werden. Im Internet oder in Beschreibungen zu - \LaTeX-Paketen findet man auch häufig die englische Bezeichnung - "`\emph{running headline}"'. - \OnlyAt{\Class{scrbook}\and\Class{scrreprt}} Bei den Klassen - \Class{scrbook}\IndexClass{scrbook} und - \Class{scrreprt}\IndexClass{scrreprt} werden dabei im doppelseitigen - Layout die Überschriften der Kapitel und der Abschnitte in der - Kopfzeile wiederholt -- bei {\KOMAScript} jeweils außen, bei den - Standardklassen innen. Die Seitenzahl wird bei {\KOMAScript} im Fuß - außen, bei den Standardklassen im Kopf außen gesetzt. Im einseitigen - Layout werden nur die Überschriften der Kapitel verwendet und bei - {\KOMAScript} zentriert im Kopf ausgegeben. Die Seitenzahlen werden - bei {\KOMAScript} dann zentriert im Fuß gesetzt. - \OnlyAt{\Class{scrartcl}}Bei - \Class{scrartcl}\IndexClass{scrartcl} wird entsprechend verfahren, - jedoch eine Ebene tiefer bei Abschnitt und Unterabschnitt angesetzt, - da die Gliederungsebene Kapitel hier nicht existiert. - - Während die Standardklassen automatische Kolumnentitel immer in - Versalien -- also Großbuchstaben -- setzen, verwendet {\KOMAScript} - die Schreibweise, die in der Überschrift vorgefunden wurde. Dies hat - verschiedene typografische Gründe. So sind Versalien als - Auszeichnung eigentlich viel zu mächtig. Verwendet man sie trotzdem, - sollten sie um einen Punkt kleiner gesetzt und leicht gesperrt - werden. All dies findet bei den Standardklassen keine Beachtung. -\item[myheadings] entspricht weitgehend dem Seitenstil - \texttt{headings}, allerdings werden die Kolumnentitel nicht - automatisch erzeugt, sondern liegen in der Verantwortung des - Anwenders. Er verwendet dazu die Anweisungen - \Macro{markboth}\IndexCmd{markboth} und - \Macro{markright}\IndexCmd{markright}. -\end{description} -Die Form der Seitenstile \texttt{headings} und \texttt{myheadings} -wird außerdem durch jede der vier Klassenoptionen \Option{headsepline}, -\Option{headnosepline}, \Option{footsepline} und -\Option{footnosepline} (siehe \autoref{sec:maincls.layoutOptions}) -beeinflusst. Der Seitenstil ab der aktuellen Seite wird mit der -Anweisung \Macro{pagestyle} umgeschaltet. Demgegenüber verändert -\Macro{thispagestyle} nur den Seitenstil der aktuellen Seite. - -Der Seitenstil kann jederzeit mit Hilfe der -\Macro{pagestyle}-Anweisung gesetzt werden und gilt dann ab der -nächsten Seite, die ausgegeben wird. Üblicherweise setzt man den -Seitenstil jedoch nur einmal zu Beginn des Dokuments oder in der -Präambel. Für eine Änderung des Seitenstils nur der aktuellen Seite -verwendet man stattdessen die Anweisung \Macro{thispagestyle}. Dies -geschieht auch an einigen Stellen im Dokument automatisch. -Beispielsweise wird bei allen Kapitelanfangsseiten implizit die -Anweisung \Macro{thispagestyle}\PParameter{plain} ausgeführt. - -Bitte beachten Sie auch, dass die Umschaltung zwischen automatischen -und manuellen Kolumnentiteln bei Verwendung des -\Package{scrpage2}-Pakets nicht mehr über den Seitenstil, sondern mit -speziellen Anweisungen erfolgt. Die Seitenstile \texttt{headings} und -\texttt{myheadings} sollten zusammen mit diesem Paket nicht verwendet -werden (siehe \autoref{cha:scrpage}). -% -\EndIndex{Cmd}{pagestyle}% -\EndIndex{Cmd}{thispagestyle}% -\EndIndex{Pagestyle}{empty}% -\EndIndex{Pagestyle}{plain}% -\EndIndex{Pagestyle}{headings}% -\EndIndex{Pagestyle}{myheadings}% - - -\BeginIndex[indexother]{}{Schriftart}% -Um die Schriftarten von Kopf und Fuß der Seite oder der Seitenzahl zu -ändern\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}}, % -verwenden Sie die Benutzerschnittstelle, die in -\autoref{sec:maincls.font} beschrieben ist. Für den Kopf und -den Fuß ist dabei das gleiche Element zuständig, das Sie wahlweise mit -\FontElement{pagehead}\IndexFontElement{pagehead} oder -\FontElement{pagefoot}\IndexFontElement{pagefoot} benennen können. -Das Element für die Seitenzahl innerhalb des Kopfes oder Fußes heißt -\FontElement{pagenumber}\IndexFontElement{pagenumber}. Die -Voreinstellungen sind in -\autoref{tab:maincls.defaultFontsHeadFoot} zu finden. -% -\begin{table} - \centering% - \begin{tabular}{ll} - Element & Voreinstellung \\\hline\\[-1.75ex] - \FontElement{pagefoot}\IndexFontElement{pagefoot} & - \Macro{normalfont}\Macro{normalcolor}\Macro{slshape} \\ - \FontElement{pagehead}\IndexFontElement{pagehead} & - \Macro{normalfont}\Macro{normalcolor}\Macro{slshape} \\ - \FontElement{pagenumber}\IndexFontElement{pagenumber} & - \Macro{normalfont}\Macro{normalcolor}\\ - \end{tabular} - \caption{Schriftvoreinstellungen für die Elemente des Seitenstils} - \label{tab:maincls.defaultFontsHeadFoot} -\end{table} -% -\begin{Example} - Angenommen, Sie wollen Kopf und Fuß einen Schriftgrad kleiner und - kursiv setzen. Die Seitenzahl soll jedoch nicht kursiv, sondern fett - gesetzt werden. Davon abgesehen, dass das Ergebnis grauenvoll - aussehen wird, können Sie dies wie folgt erreichen: - \begin{small} -\begin{verbatim} - \setkomafont{pagehead}{% - \normalfont\normalcolor\itshape\small - } - \setkomafont{pagenumber}{\normalfont\bfseries} -\end{verbatim} - \end{small} - Wollen Sie hingegen lediglich, dass zusätzlich zur bereits - voreingestellten schrägen Variante ebenfalls eine kleinere Schrift - verwendet wird, so genügt: - \begin{small} -\begin{verbatim} - \addtokomafont{pagefoot}{\small} -\end{verbatim} - \end{small} - Wie Sie sehen, ist im letzten Beispiel das Element - \FontElement{pagefoot} verwendet. Das gleiche Ergebnis erhalten Sie - auch, wenn Sie stattdessen \FontElement{pagehead} verwenden (siehe - \autoref{tab:maincls.elementsWithoutText} auf - Seite~\pageref{tab:maincls.elementsWithoutText}). -\end{Example} -Es ist an dieser Stelle nicht möglich, Versalien für die -automatischen Kolumnentitel zu erzwingen. Wenn Sie dies wünschen, -verwenden Sie bitte das \Package{scrpage2}-Paket (siehe -\autoref{cha:scrpage}). - -Eine sinnvolle Verwendung können die Befehle -\Macro{usekomafont}\PParameter{pagehead} und -\Macro{usekomafont}\PParameter{pagenumber} finden, wenn Sie eigene -Seitenstile definieren. Falls Sie dafür nicht das \KOMAScript-Paket -\Package{scrpage2} (siehe \autoref{cha:scrpage}), sondern -beispielsweise das Paket \Package{fancyhdr}\IndexPackage{fancyhdr} -(siehe \cite{package:fancyhdr}) einsetzen, können Sie diese Befehle in -Ihren Definitionen verwenden. Dadurch bleiben Sie zu \KOMAScript{} -möglichst kompatibel. Verwenden Sie diese Befehle in Ihren eigenen -Definitionen nicht, so bleiben Schriftänderungen wie in den -vorangehenden Beispielen unbeachtet. Die Pakete -\Package{scrpage}\IndexPackage{scrpage} und -\Package{scrpage2}\IndexPackage{scrpage2} sorgen selbst für maximale -Kompatibilität. -% -\EndIndex[indexother]{}{Schriftart}% - - -\begin{Declaration} - \Macro{titlepagestyle}\\ - \Macro{partpagestyle}\\ - \Macro{chapterpagestyle}\\ - \Macro{indexpagestyle} -\end{Declaration}% -\BeginIndex{Cmd}{titlepagestyle}% -\BeginIndex{Cmd}{partpagestyle}% -\BeginIndex{Cmd}{chapterpagestyle}% -\BeginIndex{Cmd}{indexpagestyle}% -Auf einigen Seiten wird mit Hilfe von \Macro{thispagestyle} -automatisch ein anderer Seitenstil gewählt. Welcher Seitenstil dies -ist, wird diesen vier Makros entnommen. In der Voreinstellung ist der -Seitenstil in allen vier Fällen \PValue{plain}. Die Bedeutung der -einzelnen Makros entnehmen Sie bitte der folgenden Liste: -\begin{labeling}[~--]{\Macro{chapterpagestyle}} -\item[\Macro{titlepagestyle}] Seitenstil der Seite mit der - Titelei bei \emph{in-page}-Titeln -\item[\Macro{partpagestyle}] Seitenstil der Seiten mit - \Macro{part}-Titeln -\item[\Macro{chapterpagestyle}] - \OnlyAt{\Class{scrbook}\and\Class{scrreprt}} Seitenstil auf - Kapitelanfangsseiten -\item[\Macro{indexpagestyle}] Seitenstil der ersten Indexseite -\end{labeling} -Die Seitenstile können mit Hilfe von \Macro{renewcommand} umdefiniert -werden. -\begin{Example} - Angenommen, Sie wollen, dass die Seiten mit der - \Macro{part}-Überschrift nicht mit einer Nummer versehen - werden. Dann setzen Sie folgende Anweisung beispielsweise in der - Präambel Ihres Dokuments: - \begin{small} -\begin{verbatim} - \renewcommand*{\partpagestyle}{empty} -\end{verbatim} - \end{small} - Wie Sie oben erfahren haben, ist der Seitenstil \PValue{empty} genau - das, was in diesem Beispiel verlangt wird. Natürlich können Sie auch - einen selbstdefinierten Seitenstil verwenden. - - Angenommen, Sie haben mit dem Paket \Package{scrpage2} (siehe - \autoref{cha:scrpage}) einen eigenen Seitenstil für - Kapitelanfangsseiten definiert. Diesem Seitenstil haben Sie den - passenden Namen \PValue{chapter} gegeben. Um diesen nun auch - tatsächlich zu verwenden, definieren Sie das Makro - \Macro{chapterpagestyle} entsprechend um: - \begin{small} -\begin{verbatim} - \renewcommand*{\chapterpagestyle}{chapter} -\end{verbatim} - \end{small} - - Angenommen, Sie wollen, dass das Inhaltsverzeichnis eines Buches - insgesamt nicht mit Seitenzahlen versehen wird. Danach soll - aber wieder mit dem Seitenstil \PValue{headings} gearbeitet - werden, sowie mit \PValue{plain} auf den Kapitelanfangsseiten. Dann - verwenden Sie folgende Anweisungen: - \begin{small} -\begin{verbatim} - \clearpage - \pagestyle{empty} - \renewcommand*{\chapterpagestyle}{empty} - \tableofcontents - \clearpage - \pagestyle{headings} - \renewcommand*{\chapterpagestyle}{plain} -\end{verbatim} - \end{small} - - Die Umdefinierungen der beiden anderen Seitenstilvorgaben - funktionieren in gleicher Weise. -\end{Example} -\begin{Explain} - Wer nun glaubt, er könne auf Kapitelanfangsseiten ebenfalls mit - lebenden Kolumnentiteln arbeiten indem er einfach eine Definition - wie -\begin{verbatim} - \renewcommand*{\chapterpagestyle}{headings} -\end{verbatim} - verwendet, wird sich möglicherweise wundern. Zwar wird dadurch - tatsächlich auch auf Kapitelanfangsseiten der Seitenstil - \PValue{headings} verwendet. Allerdings erscheint bei Verwendung der - Option \Option{openright} trotzdem kein Kolumnentitel. Die Ursache - dafür ist im \LaTeX-Kern zu finden. Dort ist \Macro{rightmark}, die - Marke für rechte Seiten, mit: -\begin{verbatim} - \let\@rightmark\@secondoftwo - \def\rightmark{\expandafter\@rightmark\firstmark\@empty\@empty} -\end{verbatim} - definiert. Es wird also die rechte Marke von \Macro{firstmark} - gesetzt. \Macro{firstmark} beinhaltet die erste linke und rechte - Marke, die auf einer Seite gesetzt wurde. Innerhalb von - \Macro{chapter} wird mit \Macro{markboth} die linke Marke auf die - Kapitelüberschrift und die rechte Marke auf einen leeren Inhalt - gesetzt. Damit ist also die erste rechte Marke auf einer rechten - Kapitelanfangsseite leer. Daher ist auf diesen Seiten auch der - Kolumnentitel leer. - - Nun könnte man natürlich in der Dokumentpräambel \Macro{rightmark} - so umdefinieren, dass statt der ersten, die letzte rechte Marke - einer Seite verwendet wird: -\begin{verbatim} - \makeatother - \renewcommand*{\rightmark}{% - \expandafter\@rightmark\botmark\@empty\@empty - } - \makeatletter -\end{verbatim} - Damit würde man aber auf rechten Kapitelanfangsseiten als - Kolumnentitel den Titel der letzten Abschnittsüberschrift - (\Macro{section}) dieser Seite erhalten. Das wäre verwirrend und - ist grundsätzlich abzulehnen. - - Ebenso verwirrend und damit abzulehnen wäre, wenn auf rechten - Kapitelanfangsseiten plötzlich als Kolumnentitel nicht die - Abschnittsüberschrift, sondern die Kapitelüberschrift erscheinen - würde. Das voreingestellte Verhalten ist also korrekt. -\end{Explain} -% -\EndIndex{Cmd}{titlepagestyle}% -\EndIndex{Cmd}{partpagestyle}% -\EndIndex{Cmd}{chapterpagestyle}% -\EndIndex{Cmd}{indexpagestyle}% - - -\begin{Declaration} - \Macro{clearpage}\\ - \Macro{cleardoublepage}\\ - \Macro{cleardoublestandardpage}\\ - \Macro{cleardoubleplainpage}\\ - \Macro{cleardoubleemptypage} -\end{Declaration}% -\BeginIndex{Cmd}{clearpage}% -\BeginIndex{Cmd}{cleardoublepage}% -\BeginIndex{Cmd}{cleardoublestandardpage}% -\BeginIndex{Cmd}{cleardoubleplainpage}% -\BeginIndex{Cmd}{cleardoubleemptypage}% -Im \LaTeX-Kern existiert die Anweisung \Macro{clearpage}, die dafür -sorgt, dass alle noch nicht ausgegebenen Fließumgebungen ausgegeben -werden und anschließend eine neue Seite begonnen wird. Außerdem -existiert die Anweisung \Macro{cleardoublepage}, die wie -\Macro{clearpage} arbeitet, durch die aber im doppelseitigen Layout -(siehe Layoutoption \Option{twoside} in -\autoref{sec:maincls.layoutOptions}) eine neue rechte Seite -begonnen wird. Dazu wird gegebenenfalls eine leere linke Seite im -aktuellen Seitenstil ausgegeben. - -Bei {\KOMAScript} arbeitet \Macro{cleardoublestandardpage} genau in -der soeben beschriebene Art und Weise. Die Anweisung -\Macro{cleardoubleplainpage} ändert demgegenüber den Seitenstil der -leeren linken Seite zusätzlich auf \PValue{plain}, um den -Kolumnentitel zu unterdrücken. Analog dazu wird bei der Anweisung -\Macro{cleardoubleemptypage} der Seitenstil \PValue{empty} verwendet, -um sowohl Kolumnentitel als auch Seitenzahl auf der leeren linken -Seite zu unterdrücken. Die Seite ist damit vollständig leer. Die -Arbeitsweise der \Macro{cleardoublepage}-Anweisung ist hingegen von -den in \autoref{sec:maincls.layoutOptions} erklärten Layoutoptionen -\Option{cleardoublestandard}, \Option{cleardoubleplain} und -\Option{cleardoubleempty} abhängig und entspricht je nach Option einer -der drei Anweisungen. -% -\EndIndex{Cmd}{clearpage}% -\EndIndex{Cmd}{cleardoublepage}% -\EndIndex{Cmd}{cleardoublestandardpage}% -\EndIndex{Cmd}{cleardoubleplainpage}% -\EndIndex{Cmd}{cleardoubleemptypage}% - - -\begin{Declaration} - \Macro{ifthispageodd}\Parameter{Wahr}\Parameter{Falsch} -\end{Declaration}% -\BeginIndex{Cmd}{ifthispageodd}% -\begin{Explain}% - Eine Besonderheit von \LaTeX{} besteht darin, dass es nicht einfach - möglich ist, festzustellen, auf welcher Seite man sich gerade befindet. - Damit ist auch schwer zu sagen, ob die aktuelle Seite eine - gerade oder eine ungerade Seitenzahl besitzt. Einige werden nun - einwenden, dass es doch die \TeX-Verzweigung \Macro{ifodd} gibt, die - man nur auf den aktuellen Seitenzähler anwenden muss. Dies ist - jedoch ein Irrtum. Zum Zeitpunkt der Auswertung einer solchen - Verzweigung weiß \LaTeX{} nämlich gar nicht, ob der gerade - bearbeitete Text noch auf dieser Seite oder erst auf der - nächsten gesetzt wird. Der Seitenumbruch findet nämlich nicht - bereits beim Einlesen des Absatzes, sondern erst in der - \emph{output}-Routine von \LaTeX{} statt. Zu dem Zeitpunkt wäre aber eine - Eingabe der Form \verb|\ifodd\value{page}| bereits vollständig - ausgewertet. - - Um zuverlässig festzustellen, ob ein Text auf einer geraden oder - einer ungeraden Seite ausgegeben wird, muss man normalerweise mit - einem Label und einer Seitenreferenz auf dieses Label - arbeiten. Dabei muss man auch noch spezielle Vorkehrungen für den - ersten \LaTeX-Durchlauf treffen, bei dem das Label noch nicht - bekannt ist. -\end{Explain} -Will man bei \KOMAScript{} feststellen, ob ein Text auf einer geraden -oder einer ungeraden Seite ausgegeben wird, so verwendet man die -Anweisung \Macro{ifthispageodd}. Dabei wird das \PName{Wahr}-Argument -nur dann ausgeführt, wenn man sich gerade auf einer ungeraden Seite -befindet. Anderenfalls wird das \PName{Falsch}-Argument ausgeführt. - -\begin{Explain} -Genau genommen geht es natürlich nicht darum, wo man sich gerade -befindet, sondern entscheidend ist, ob eine Seitenreferenz auf ein -Label, das an dieser Stelle gesetzt würde, eine gerade oder eine -ungerade Seite referenzieren würde. -\end{Explain} -\begin{Example} - Angenommen, Sie wollen einfach nur ausgeben, ob ein Text auf einer - geraden oder ungeraden Seite ausgegeben wird. Sie könnten dann - beispielsweise mit der Eingabe - \begin{small} -\begin{verbatim} - Dies ist eine Seite mit \ifthispageodd{ungerader}{gerader} - Seitenzahl. -\end{verbatim} - \end{small} - die Ausgabe - \begin{quote} - Dies ist eine Seite mit \ifthispageodd{ungerader}{gerader} - Seitenzahl. - \end{quote} - erhalten. -\end{Example} - -Da die Anweisung \Macro{ifthispageodd} mit einem Mechanismus arbeitet, -der einem Label und einer Referenz darauf sehr ähnlich ist, werden -nach jeder Textänderung mindestens zwei \LaTeX-Durchläufe -benötigt. Erst dann ist die Entscheidung korrekt. Im ersten Durchlauf -wird eine Heuristik für die Entscheidung verwendet. - -\begin{Explain} - Es sind Fälle denkbar, in denen die Anweisung \Macro{ifthispageodd} - nie zum korrekten Ergebnis führt. Nehmen wir an, dass die Anweisung - innerhalb einer Box verwendet wird. Eine Box wird von \LaTeX{} - immer im Ganzen gesetzt. In ihr findet kein Seitenumbruch - statt. Nehmen wir weiter an, der \PName{Wahr}-Teil wäre sehr groß, - der \PName{Falsch}-Teil aber leer. Nehmen wir außerdem an, dass die - Box mit dem \PName{Falsch}-Teil noch auf die aktuelle, gerade Seite - passt, mit dem \PName{Wahr}-Teil jedoch nicht. Nehmen wir weiter an, - \KOMAScript{} entscheidet beim ersten Durchlauf heuristisch, dass der - \PName{Wahr}-Teil zutrifft. Die Entscheidung war damit falsch und - wird im nächsten Durchlauf revidiert. Dadurch wird aber der - \PName{Falsch}-Teil statt dem \PName{Wahr}-Teil abgearbeitet. Die - Entscheidung wird also im nächsten Durchlauf wieder revidiert und - immer so weiter. - - Diese Fälle sind zwar selten. Trotzdem soll niemand sagen, ich habe - nicht darauf hingewiesen, dass sie möglich sind. -\end{Explain} -% -\EndIndex{Cmd}{ifthispageodd} - -\begin{Declaration} - \Macro{pagenumbering}\Parameter{Nummerierungsstil} -\end{Declaration} -\BeginIndex{Cmd}{pagenumbering}% -Diese Anweisung funktioniert bei \KOMAScript{} genau in der gleichen -Weise wie bei den Standardklassen. Genaugenommen handelt es sich dabei -um eine Fähigkeit des \LaTeX-Kerns. Mit der Anweisung kann der -\PName{Nummerierungsstil} für die Seitenzahlen umgeschaltet werden. -Die Umschaltung gilt ab sofort, also ab der Seite, auf der diese -Anweisung aufgerufen wird. Die möglichen Angaben für den -\PName{Nummerierungsstil} sind \autoref{tab:numberKind} zu -entnehmen. Der Aufruf von \Macro{pagenumbering} setzt gleichzeitig die -Seitenzahl\Index{Seitenzahl} zurück. Die nächste ausgegebene Seite hat -also die Nummer 1 im gewählten \PName{Nummerierungsstil}. -% -\begin{table} - \centering - \begin{tabular}{lll} - Nummerierungsstil & Beispiel & Bedeutung \\\hline\\[-2ex] - \PValue{arabic} & 8 & arabische Zahlen \\ - \PValue{roman} & viii & kleine römische Zahlen \\ - \PValue{Roman} & VIII & große römische Zahlen \\ - \PValue{alph} & h & Kleinbuchstaben \\ - \PValue{Alph} & H & Großbuchstaben \\ - \end{tabular} - \caption{Verfügbare Nummerierungsstile für Seitenzahlen} - \label{tab:numberKind} -\end{table} -% -\EndIndex{Cmd}{pagenumbering} - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Die Titelei} -\label{sec:maincls.titles} - -\begin{Explain} - Nachdem die Optionen und einige allgemeine Dinge nun bekannt sind, - beginnen wir das Dokument, wo es normalerweise beginnt: mit der - Titelei. Unter der Titelei\Index{Titel} versteht man alles, was im - weitesten Sinne zum Titel eines Dokuments gehört. Wie in - \autoref{sec:maincls.layoutOptions} bereits erwähnt, wird - grundsätzlich zwischen Titelseiten und \emph{in-page} Titeln - unterschieden. Artikelklassen wie \Class{article} oder - \Class{scrartcl} haben \emph{in-page} Titel voreingestellt, während - bei Klassen wie \Class{report}, \Class{book}, \Class{scrreprt} und - \Class{scrbook} Titelseiten voreingestellt sind. Diese - Voreinstellung ist mit den Klassenoptionen \Option{titlepage} und - \Option{notitlepage} beeinflussbar. -\par -\end{Explain} - - -\begin{Declaration} - \Environment{titlepage} -\end{Declaration}% -\BeginIndex{Env}{titlepage}% -Grundsätzlich werden bei den Standardklassen und bei {\KOMAScript} -alle Titelseiten in einer speziellen Umgebung, der -\Environment{titlepage}-Umgebung, gesetzt. Diese Umgebung startet -immer mit einer neuen Seite -- im zweiseitigen Layout sogar mit -einer neuen rechten Seite -- im einspaltigen Modus. Für eine -Seite wird der Seitenstil mit -\Macro{thispagestyle}\PParameter{empty} geändert, so dass weder -Seitenzahl noch Kolumnentitel ausgegeben werden. Am Ende der -Umgebung wird die Seite automatisch beendet. Sollten Sie nicht -das automatische Layout der Titelei verwenden können, ist zu -empfehlen, eine eigene Titelei mit Hilfe dieser Umgebung zu -entwerfen. - -\begin{Example} - Angenommen, Sie wollen eine Titelseite, auf der lediglich oben links - möglichst groß und fett das Wort "`Me"' steht -- kein Autor, kein Datum, - nichts weiter. Folgendes Dokument ermöglicht das: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \begin{titlepage} - \textbf{\Huge Me} - \end{titlepage} - \end{document} -\end{verbatim} - \end{small} - Einfach? Stimmt. -\end{Example} -% -\EndIndex{Env}{titlepage} - - -\begin{Declaration} - \Macro{maketitle}\OParameter{Seitenzahl} -\end{Declaration}% -\BeginIndex{Cmd}{maketitle}% -Während bei den Standardklassen nur maximal eine Titelseite mit den -drei Angaben Titel, Autor und Datum existiert, können bei -{\KOMAScript} mit \Macro{maketitle} bis zu sechs Titelseiten gesetzt -werden. Im Gegensatz zu den Standardklassen kennt \Macro{maketitle} -bei {\KOMAScript} außerdem noch ein optionales nummerisches Argument. -Findet es Verwendung, so wird die Nummer als Seitenzahl der ersten -Titelseite benutzt. Diese Seitenzahl wird jedoch nicht ausgegeben, -sondern beeinflusst lediglich die Zählung. Sie sollten hier -unbedingt eine ungerade Zahl wählen, da sonst die gesamte Zählung -durcheinander gerät. Meiner Auf"|fassung nach gibt es nur zwei -sinnvolle Anwendungen für das optionale Argument. Zum einen könnte man -dem Schmutztitel\Index[indexmain]{Schmutztitel} die logische Seitenzahl --1 geben, um so die Seitenzählung erst ab der Haupttitelseite mit -1 zu beginnen. Zum anderen könnte man mit einer höhere Seitenzahl -beginnen, beispielsweise 3, 5 oder 7, um so weitere Titelseiten zu -berücksichtigen, die erst vom Verlag hinzugefügt werden. Wird eine -\emph{in-page}-Titelei verwendet, wird das optionale Argument -ignoriert. Dafür kann der Seitenstil einer solchen Titelei durch -Umdefinierung des Makros \Macro{titlepagestyle} verändert werden. -Siehe hierzu \autoref{sec:maincls.pageStyle}. - -Die folgenden Anweisungen führen nicht unmittelbar zum Setzen der -Titelei. Das Setzen der Titelei erfolgt immer mit -\Macro{maketitle}. Mit den nachfolgend erklärten Anweisungen -werden lediglich die Inhalte der Titelei festgelegt. Sie müssen -daher auch unbedingt vor \Macro{maketitle} verwendet werden. Es -ist jedoch nicht notwendig und bei Verwendung des -\Package{babel}-Pakets\IndexPackage{babel} (siehe -\cite{package:babel}) auch nicht empfehlenswert, diese -Anweisungen in der Dokumentpräambel vor -\Macro{begin}\PParameter{document} zu verwenden. -Beispieldokumente finden Sie am Ende des Abschnitts. - - -\begin{Declaration} - \Macro{extratitle}\Parameter{Schmutztitel} -\end{Declaration}% -\BeginIndex{Cmd}{extratitle}% -\begin{Explain}% - Früher war der Buchblock oftmals nicht durch einen Buchdeckel vor - Verschmutzung geschützt. Diese Aufgabe übernahm dann die erste Seite - des Buches, die meist einen Kurztitel, eben den \emph{Schmutztitel} - trug. Auch heute noch wird diese Extraseite vor dem eigentlichen - Haupttitel gerne verwendet und enthält dann Verlagsangaben, - Buchreihennummer und ähnliche Angaben.\par -\end{Explain} -Bei {\KOMAScript} ist es möglich, vor der eigentlichen Titelseite eine -weitere Seite zu setzen. Als \PName{Schmutztitel} kann dabei -beliebiger Text -- auch mehrere Absätze -- gesetzt werden. Der Inhalt -von \PName{Schmutztitel} wird von {\KOMAScript} ohne zusätzliche -Beeinflussung der Formatierung ausgegeben. Dadurch ist dessen -Gestaltung völlig dem Anwender überlassen. Die Rückseite des -Schmutztitels bleibt leer. Der Schmutztitel ergibt auch -dann eine eigene Titelseite, wenn mit \emph{in-page}-Titeln gearbeitet -wird. Die Ausgabe des mit \Macro{extratitle} definierten Schmutztitels -erfolgt als Bestandteil der Titelei mit \Macro{maketitle}. - -\begin{Example} - Kommen wir auf das Beispiel von oben zurück und gehen davon aus, - dass das spartanische "`Me"' nur den Schmutztitel darstellt. Nach - dem Schmutztitel soll noch der Haupttitel folgen. Dann kann wie - folgt verfahren werden: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \extratitle{\textbf{\Huge Me}} - \title{It's me} - \maketitle - \end{document} -\end{verbatim} - \end{small} - Sie können den Schmutztitel aber auch horizontal zentriert und etwas - tiefer setzen: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \begin{document} - \extratitle{\vspace*{4\baselineskip} - \begin{center}\textbf{\Huge Me}\end{center}} - \title{It's me} - \maketitle - \end{document} -\end{verbatim} - \end{small} - Die Anweisung \Macro{title} ist grundsätzlich notwendig, damit die - Beispiele fehlerfrei sind. Sie wird nachfolgend erklärt. -\end{Example} -% -\EndIndex{Cmd}{extratitle} - - -\begin{Declaration} - \Macro{titlehead}\Parameter{Titelkopf}\\ - \Macro{subject}\Parameter{Typisierung}\\ - \Macro{title}\Parameter{Titel}\\ - \Macro{author}\Parameter{Autor}\\ - \Macro{date}\Parameter{Datum}\\ - \Macro{publishers}\Parameter{Herausgeber}\\ - \Macro{and}\\ - \Macro{thanks}\Parameter{Fußnote} -\end{Declaration}% -\BeginIndex{Cmd}{titlehead}% -\BeginIndex{Cmd}{subject}% -\BeginIndex{Cmd}{title}% -\BeginIndex{Cmd}{author}% -\BeginIndex{Cmd}{date}% -\BeginIndex{Cmd}{publishers}% -\BeginIndex{Cmd}{and}% -\BeginIndex{Cmd}{thanks}% -Für den Inhalt der Haupttitelseite stehen sechs Elemente zur -Verfügung. Der \PName{Titelkopf}\Index[indexmain]{Titelkopf} wird -mit der Anweisung \Macro{titlehead} definiert. Er wird über die -gesamte Textbreite in normalem Blocksatz am Anfang der Seite -ausgegeben. Er kann vom Anwender frei gestaltet werden. - -Die \PName{Typisierung}\Index[indexmain]{Typisierung} wird unmittelbar -über dem \PName{Titel} ausgegeben. Dabei wird eine gegenüber der -Grundschrift leicht vergößerte Schrift verwendet. - -Der \PName{Titel} wird in einer sehr großen Schrift -ausgegeben. Dabei\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -findet neben der Größenumschaltung auch die Schriftumschaltung für das -Element \FontElement{title}\IndexFontElement{title} Anwendung. -Voreingestellt ist die gleiche Schrift, die für das Element -\FontElement{sectioning}\IndexFontElement{sectioning} verwendet -wird (siehe \autoref{tab:maincls.elementsWithoutText}). Die Größe ist -jedoch davon unabhängig (siehe \autoref{tab:maincls.mainTitle}). Die -Voreinstellungen können mit Hilfe der Anweisungen aus -\autoref{sec:maincls.font} verändert werden. - -Unter dem \PName{Titel} folgt der \PName{Autor}\Index[indexmain]{Autor}. -Es können auch mehrere Autoren innerhalb des Arguments von -\Macro{author} angegeben werden. Diese sind dann mit \Macro{and} -voneinander zu trennen. - -Unter dem Autor oder den Autoren folgt das Datum\Index{Datum}. -Dabei ist das aktuelle Datum, \Macro{today}\IndexCmd{today}, -voreingestellt. Es kann jedoch mit \Macro{date} eine beliebige -Angabe -- auch ein leere -- erreicht werden. - -Als Letztes folgt schließlich der -\PName{Herausgeber}\Index[indexmain]{Herausgeber}. Selbstverständlich -kann diese Anweisung auch für andere Angaben geringer Wichtigkeit -verwendet werden. Notfalls kann durch Verwendung einer \Macro{parbox} -über die gesamte Seitenbreite auch erreicht werden, dass diese Angabe -nicht zentriert, sondern im Blocksatz gesetzt wird. Sie ist dann als -Äquivalent zum Titelkopf zu betrachten. Dabei ist jedoch zu beachten, -dass sie oberhalb von eventuell vorhandenen Fußnoten ausgegeben wird. - -Fußnoten\Index{Fussnoten=Fußnoten} werden auf der Titelseite -nicht mit \Macro{footnote}, sondern mit der Anweisung -\Macro{thanks} erzeugt. Sie dienen in der Regel für Anmerkungen -bei den Autoren. Als Fußnotenzeichen werden dabei Symbole statt -Zahlen verwendet. - -Bis auf den \PName{Titelkopf} und eventuelle Fußnoten werden alle -Ausgaben horinzontal zentriert. Diese Angaben sind noch einmal kurz -zusammengefasst in \autoref{tab:maincls.mainTitle} zu finden. -\begin{table} - \centering - \begin{tabular}{llll} - Element & Anweisung & Schrift - & Ausrichtung \\ - \hline\rule{0pt}{2.7ex}% - Seitenkopf & \Macro{titlehead} & \Macro{normalsize} - & Blocksatz \\ - Typisierung & \Macro{subject} & \Macro{Large} - & zentriert \\ - Titel & \Macro{title} & \Macro{huge} - & zentriert \\ - Autoren & \Macro{author} & \Macro{Large} - & zentriert \\ - Datum & \Macro{date} & \Macro{Large} - & zentriert \\ - Herausgeber & \Macro{publishers} & \Macro{Large} - & zentriert \\ - \end{tabular} - \caption[Der Haupttitel]{Schriftgröße und horizontale - Ausrichtung der Elemente der Haupttitelseite in der Reihenfolge - ihrer vertikalen Position von oben nach unten bei Verwendung von - \Macro{maketitle}} - \label{tab:maincls.mainTitle} -\end{table} - -\begin{Example} - Nehmen wir nun einmal an, Sie schreiben eine Diplomarbeit. Dabei sei - vorgegeben, dass die Titelseite oben linksbündig das Institut - einschließlich Adresse und rechtsbündig das Semester wiedergibt. Wie - üblich ist ein Titel einschließlich Autor und Abgabedatum zu setzen. - Außerdem soll der Betreuer angegeben und zu erkennen sein, dass es - sich um eine Diplomarbeit handelt. Sie könnten das wie folgt - erreichen: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \usepackage{ngerman} - \begin{document} - \titlehead{{\Large Universit"at Schlauenheim - \hfill SS~2001\\} - Institut f"ur Raumkr"ummung\\ - Hochschulstra"se~12\\ - 34567 Schlauenheim} - \subject{Diplomarbeit} - \title{Digitale Raumsimulation mit dem DSP\,56004} - \author{cand. stup. Uli Ungenau} - \date{30. Februar 2001} - \publishers{Betreut durch Prof. Dr. rer. stup. Naseweis} - \maketitle - \end{document} -\end{verbatim} - \end{small} -\end{Example} - -\begin{Explain} - Ein häufiges Missverständnis betrifft die Bedeutung der - Haupttitelseite. Irrtümlich wird oft angenommen, es handle sich - dabei um den Buchumschlag oder Buchdeckel. Daher wird häufig - erwartet, dass die Titelseite nicht den Randvorgaben für - doppelseitige Satzspiegel gehorcht, sondern rechts und links gleich - große Ränder besitzt. Nimmt man jedoch einmal ein Buch zur Hand und - klappt es auf, trifft man sehr schnell auf mindestens eine - Titelseite unter dem Buchdeckel innerhalb des sogenannten - Buchblocks. Genau diese Titelseiten werden mit \Macro{maketitle} - gesetzt. Wie beim Schmutztitel handelt es sich also auch bei der - Haupttitelseite um eine Seite innerhalb des Buchblocks, die deshalb - dem Satzspiegel des gesamten Dokuments gehorcht. Überhaupt ist ein - Buchdeckel, das \emph{Cover}, etwas, was man in einem getrennten - Dokument erstellt. Schließlich hat er oft eine sehr individuelle - Gestalt. Es spricht auch nichts dagegen, hierfür ein Grafik- oder - DTP-Programm zu Hilfe zu nehmen. Ein getrenntes Dokument sollte auch - deshalb verwendet werden, weil es später auf ein anderes - Druckmedium, etwa Karton, und möglicherweise mit einem anderen - Drucker ausgegeben werden soll.\par -\end{Explain} -% -\EndIndex{Cmd}{titlehead}% -\EndIndex{Cmd}{subject}% -\EndIndex{Cmd}{title}% -\EndIndex{Cmd}{author}% -\EndIndex{Cmd}{date}% -\EndIndex{Cmd}{publishers}% -\EndIndex{Cmd}{and}% -\EndIndex{Cmd}{thanks}% - - -\begin{Declaration} - \Macro{uppertitleback}\Parameter{Titelrückseitenkopf}\\ - \Macro{lowertitleback}\Parameter{Titelrückseitenfuß} -\end{Declaration}% -\BeginIndex{Cmd}{uppertitleback}% -\BeginIndex{Cmd}{lowertitleback}% -% -Im doppelseitigen Druck bleibt bei den Standardklassen die Rückseite -des Blatts mit der Titelseite leer. Bei {\KOMAScript} lässt sich die -Rückseite der Haupttitelseite hingegen für weitere Angaben -nutzen. Dabei wird zwischen genau zwei Elementen unterschieden, die -der Anwender frei gestalten kann: dem \PName{Titelrückseitenkopf} und -dem \PName{Titelrückseitenfuß}. Dabei kann der Kopf bis zum Fuß -reichen und umgekehrt. Nimmt man diese Anleitung als Beispiel, so -wurde der Haftungsausschluss mit Hilfe von \Macro{uppertitleback} -gesetzt. -\EndIndex{Cmd}{uppertitleback}% -\EndIndex{Cmd}{lowertitleback}% - - -\begin{Declaration} - \Macro{dedication}\Parameter{Widmung} -\end{Declaration}% -\BeginIndex{Cmd}{dedication}% -{\KOMAScript} bietet eine eigene Widmungsseite. Diese -Widmung\Index{Widmung} wird zentriert und in etwas größerer Schrift -gesetzt. Die Rückseite ist wie bei der Seite mit dem Schmutztitel -grundsätzlich leer. Die Widmungsseite wird zusammen mit der restlichen -Titelei mit \Macro{maketitle} ausgegeben und muss daher vor dieser -Anweisung definiert sein. - -\begin{Example} - Nehmen wir dieses Mal an, dass Sie einen Gedichtband schreiben, den - Sie Ihrer Frau widmen wollen. Das könnte wie folgt aussehen: - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \usepackage{ngerman} - \begin{document} - \extratitle{\textbf{\Huge In Liebe}} - \title{In Liebe} - \author{Prinz Eisenherz} - \date{1412} - \lowertitleback{Dieser Gedichtband wurde mit Hilfe von - {\KOMAScript} und {\LaTeX} gesetzt.} - \uppertitleback{Selbstverlach\par - Auflage: 1 Exemplar} - \dedication{Meinem Schnuckelchen\\ - in ewiger Liebe\\ - von Deinem Hasenboppelchen.} - \maketitle - \end{document} -\end{verbatim} - \end{small} -\end{Example} -% -\EndIndex{Cmd}{dedication} -% -\EndIndex{Cmd}{maketitle} - - -\begin{Declaration} - \Environment{abstract} -\end{Declaration}% -\BeginIndex{Env}{abstract}% -\OnlyAt{\Class{scrartcl}\and\Class{scrreprt}}% -Insbesondere bei Artikeln, seltener bei Berichten findet man -unmittelbar unter der Titelei und noch vor dem Inhaltsverzeichnis -eine Zusammenfassung\Index{Zusammenfassung}. Diese wird daher -oftmals als Bestandteil der Titelei betrachtet. Einige -\LaTeX-Klassen bieten eine spezielle Umgebung für diese -Zusammenfassung, die \Environment{abstract}-Umgebung. Diese wird -unmittelbar ausgegeben, ist also nicht Bestandteil der mit -\Macro{maketitle} gesetzten Titelei. Bitte beachten Sie -unbedingt, dass es sich bei \Environment{abstract} um eine -Umgebung und nicht um eine Anweisung handelt. Ob die -Zusammenfassung mit einer Überschrift versehen wird oder nicht, -wird über die Optionen \Option{abstracton} und -\Option{abstractoff} gesteuert (siehe -\autoref{sec:maincls.formattingOptions}). - -Bei Büchern (\Class{scrbook}) ist die Zusammenfassung häufig -Bestandteil der Einleitung oder eines gesonderten Kapitels am Ende des -Dokuments. Daher gibt es hier keine \Environment{abstract}-Umgebung. -Bei Verwendung der Klasse \Class{scrreprt} ist es sicher eine -Überlegung wert, ob man nicht genauso verfahren sollte. -% -\EndIndex{Env}{abstract} - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Das Inhaltsverzeichnis} -\label{sec:maincls.toc} - -Auf die Titelei folgt normalerweise das -Inhaltsverzeichnis\Index{Inhaltsverzeichnis}. Häufig findet man nach -dem Inhaltsverzeichnis auch noch die Verzeichnisse der -Gleitumgebungen, beispielsweise von Tabellen und Abbildungen (siehe -\autoref{sec:maincls.floats}). - -\begin{Declaration} - \Macro{tableofcontents}\\ - \Macro{contentsname} -\end{Declaration}% -\BeginIndex{Cmd}{tableofcontents}% -\BeginIndex{Cmd}{contentsname}% -Die Ausgabe des Inhaltsverzeichnisses erreicht man mit -\Macro{tableofcontents}. Um ein korrektes Inhaltsverzeichnis zu -erhalten, sind nach jeder Änderung mindestens zwei \LaTeX-Läufe -notwendig. Mit der Option \Option{liststotoc} kann erreicht werden, -dass das Abbildungs- und das Tabellenverzeichnis im Inhaltsverzeichnis -aufgeführt werden. Mit \Option{idxtotoc} existiert auch eine -entsprechende Option für den Index. Im klassischen Buchdruck ist dies -eher unüblich. Das Literaturverzeichnis findet man etwas häufiger im -Inhaltsverzeichnis aufgeführt. Auch hierfür gibt es mit -\Option{bibtotoc} und \Option{bibtotocnumbered} Optionen. Diese -Optionen sind in \autoref{sec:maincls.tocOptions} näher -erläutert. - -Das Inhaltsverzeichnis wird als nicht nummeriertes Kapitel gesetzt und -unterliegt damit den Seiteneffekten der \Macro{chapter*}-Anweisung, -die in \autoref{sec:maincls.structure} genannt sind. Allerdings -werden bei Verwendung automatischer Kolumnentitel\Index{Kolumnentitel} -diese sowohl für linke als auch rechte Seiten korrekt mit der -Überschrift des Inhaltsverzeichnisses belegt. Der Text der Überschrift -ist im Makro \Macro{contentsname} abgelegt. -% -\EndIndex{Cmd}{tableofcontents}% -\EndIndex{Cmd}{contentsname}% - -Für den Aufbau des Inhaltsverzeichnisses gibt es zwei Varianten. -Bei der Standardvariante werden die Gliederungsebenen so -eingerückt, dass die Gliederungsnummer jeweils linksbündig mit dem -Text der nächst höheren Ebene abschließt. Der Platz für die -Gliederungsnummer ist dadurch jedoch limitiert und reicht für -etwas mehr als 1,5 Stellen je Gliederungsebene. Sollte dies zu -einem Problem werden, lässt sich über die Option \Option{tocleft} ein -Verhalten einstellen, bei dem alle Einträge -des Inhaltsverzeichnisses linksbündig untereinander gesetzt werden -(siehe \autoref{sec:maincls.tocOptions}). - - -Der Eintrag für die oberste Gliederungsebene unter \Macro{part}, also -\Macro{chapter} bei \Class{scrbook}\IndexClass{scrbook} und -\Class{scrreprt}\IndexClass{scrreprt} beziehungsweise \Macro{section} -bei \Class{scrartcl}\IndexClass{scrartcl} wird nicht eingerückt. Dafür -findet auf ihn die Schriftart für das Element -\FontElement{sectioning}\IndexFontElement{sectioning} (siehe -\autoref{tab:maincls.elementsWithoutText}) Anwendung. Gleichzeitig -befinden sich zwischen dem Text der Gliederungsebene und der -Seitenzahl keine Pünktchen. Die typografischen Gründe dafür liegen in -der normalerweise anderen Schriftart sowie der erwünschten -Hervorhebung. Das Inhaltsverzeichnis dieser Anleitung ist mit -den Voreinstellungen gesetzt und dient als Beispiel. - - -\begin{Declaration} - \Counter{tocdepth} -\end{Declaration}% -\BeginIndex{Counter}{tocdepth}% -Normalerweise werden bei den Klassen \Class{scrbook} und -\Class{scrreprt} die Gliederungsebenen \Macro{part} bis -\Macro{subsection} und bei der Klasse \Class{scrartcl} die Ebenen -\Macro{part} bis \Macro{subsubsection} in das Inhaltsverzeichnis -aufgenommen. Gesteuert wird dies über den Zähler \Counter{tocdepth}. -Dabei steht der Wert -1 für \Macro{part}, 0 für -\Macro{chapter} und so weiter. Da bei \Class{scrartcl} die Ebene -\Macro{chapter} nicht existiert, beginnt bei dieser Klasse die Zählung -mit \Macro{part} bei 0. Durch Setzen oder Erhöhen oder Verringern des -Zählers kann bestimmt werden, bis zu welcher Gliederungsebene Einträge -in das Inhaltsverzeichnis erfolgen sollen. Dies ist übrigens bei den -Standardklassen ganz genauso. - -Bei Verwendung des \Package{scrpage2}-Pakets\IndexPackage{scrpage2} -(siehe \autoref{cha:scrpage}) muss man sich nicht die nummerischen -Werte der einzelnen Gliederungsebenen merken. Dann stehen dafür die -Makros \Macro{chapterlevel}, \Macro{sectionlevel} und so weiter bis -hinunter zu \Macro{subparagraphlevel} zur Verfügung. -\begin{Example} - Angenommen, Sie setzen einen Artikel, bei dem die Gliederungsebene - \Macro{subsubsection} verwendet wird. Gehen wir weiter davon aus, - dass Sie diese Gliederungsebene aber nicht im Inhaltsverzeichnis - haben wollen. Dann könnte die Präambel Ihres Dokuments wie folgt - aussehen: - \begin{small} -\begin{verbatim} - \documentclass{scrartcl} - \setcounter{tocdepth}{2} -\end{verbatim} - \end{small} - Sie setzen den Zähler \Counter{tocdepth} also auf 2, weil Sie - wissen, dass dies der Wert für \Macro{subsection} ist. Wissen Sie - stattdessen nur, dass normalerweise bei \Class{scrartcl} Einträge in - das Inhaltsverzeichnis bis zur Ebene \Macro{subsubsection} erfolgen, - können Sie auch einfach vom voreingestellten Wert des Zählers - \Counter{tocdepth} eins abziehen: - \begin{small} -\begin{verbatim} - \documentclass{scrartcl} - \addtocounter{tocdepth}{-1} -\end{verbatim} - \end{small} - Wieviel Sie von \Counter{tocdepth} subtrahieren oder dazu addieren - müssen, kön"-nen Sie natürlich auch einfach nach einem ersten - \LaTeX-Lauf im Inhaltsverzeichnis abzählen. -\end{Example} -\iffalse -Ein kleiner Tip am Rande: In obigem Beispiel benötigen Sie immer -irgendein Vorwissen. Es geht aber auch ohne indem Sie zunächst zwei -\LaTeX-Läufe durchführen. Dann zählen Sie am Inhaltsverzeichnis ab, -wieviele Ebenen Sie zu \Counter{tocdepth} hinzuaddieren oder davon -abziehen müssen. Dies erledigen Sie dann wie eben mit Hilfe von -\Macro{addtocounter} in der Präambel Ihres Dokuments. -\fi -% -\EndIndex{Counter}{tocdepth}% - - -\section{Die Verzeichnisse der Gleitumgebungen} - -In der Regel findet man die Verzeichnisse der -Gleitumgebungen\index{Gleitumgebung}, also -Tabellen-\index{Tabellenverzeichnis} und -Abbildungsverzeichnisse\index{Abbildungsverzeichnis}, unmittelbar nach -dem Inhaltsverzeichnis. In einigen Dokumenten wandern diese auch in -den Anhang. Der Autor bevorzugt jedoch die Platzierung unmittelbar -nach dem Inhaltsverzeichnis. Daher erfolgt die Erklärung auch in diesem -Abschnitt. -\begin{Declaration} - \Macro{listoftables}\\ - \Macro{listoffigures} -\end{Declaration} -\BeginIndex{Cmd}{listoftables}% -\BeginIndex{Cmd}{listoffigures}% -Mit diesen Anweisungen kann ein Verzeichnis der Tabellen -beziehungsweise der Abbildungen ausgegeben werden. Änderungen, die -Auswirkungen auf diese Verzeichnisse haben, werden erst nach zwei -\LaTeX{}-Läufen sichtbar. Die Form der Verzeichnisse kann durch -die Optionen \Option{listsindent} und \Option{listsleft} beeinflusst -werden (siehe \autoref{sec:maincls.listsOptions}). Darüber -hinaus wirken sich indirekt die Optionen \Option{liststotoc} und -\Option{liststotocnumbered} aus (siehe -\autoref{sec:maincls.tocOptions}). -% -\EndIndex{Cmd}{listoftables}% -\EndIndex{Cmd}{listoffigures}% - - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Der Text} -\label{sec:maincls.mainText} - -In diesem Abschnitt finden Sie alles, was \KOMAScript{} für die -Erstellung des eigentlichen Textes bereitstellt. Dies ist der Teil, -auf den Sie sich bei einem Dokument zunächst konzentrieren -sollten. Selbstverständlich gehören dazu auch Tabellen, Abbildungen -und vergleichbares Material. - - -\subsection{Abgrenzung} -\label{sec:maincls.separation} - -\OnlyAt{\Class{scrbook}}Bevor wir tatsächlich zum Text kommen, -sind noch drei Anweisungen kurz anzusprechen, die es bei der -Standardklasse \Class{book} und der {\KOMAScript}-Klasse -\Class{scrbook} gibt. Sie können bei einem Buch zur Abgrenzung des -\emph{Vorspanns}\Index{Vorspann}, des -\emph{Hauptteils}\Index{Hauptteil} und des -\emph{Nachspanns}\Index{Nachspann} verwendet werden. - -\begin{Declaration} - \Macro{frontmatter}\\ - \Macro{mainmatter}\\ - \Macro{backmatter} -\end{Declaration}% -\BeginIndex{Cmd}{frontmatter}% -\BeginIndex{Cmd}{mainmatter}% -\BeginIndex{Cmd}{backmatter}% -Mit \Macro{frontmatter} wird der Vorspann eingeleitet. Im Vorspann -werden die nummerierten Seiten mit römischen Seitenzahlen versehen. -Kapitelüberschriften sind im Vorspann nicht nummeriert. -Abschnittsüberschriften wären jedoch nummeriert, gingen von -Kapitelnummer 0 aus und wären außerdem über Kapitelgrenzen hinweg -durchgehend nummeriert. Dies spielt jedoch keine Rolle, da der -Vorspann allenfalls für die Titelei, das -Inhalts-\Index{Inhaltsverzeichnis}, -Abbildungs-\Index{Abbildungsverzeichnis} und -Tabellenverzeichnis\Index{Tabellenverzeichnis} und ein -Vorwort\Index{Vorwort} verwendet wird. Das Vorwort kann also als -normales Kapitel gesetzt werden. Ein Vorwort sollte niemals in -Abschnitte unterteilt, sondern möglichst kurz gefasst werden. Im -Vorwort wird also keine tiefere Gliederungsebene als Kapitel benötigt. - -Mit \Macro{mainmatter} wird der Hauptteil eingeleitet. Existiert kein -Vorspann, so kann diese Anweisung auch entfallen. Im Hauptteil sind -arabische Seitenzahlen voreingestellt. Die Seitenzählung beginnt im -Hauptteil wieder mit 1. - -Mit \Macro{backmatter} wird der Nachspann eingeleitet. Was zum -Nachspann gehört, ist unterschiedlich. Manchmal wird im Nachspann nur -das Literaturverzeichnis\Index{Literaturverzeichnis}, manchmal nur -der Index\Index{Index} gesetzt. Manchmal erscheint der gesamte -Anhang im Nachspann. Der Nachspann gleicht im übrigen dem Vorspann. -% -\EndIndex{Cmd}{frontmatter}% -\EndIndex{Cmd}{mainmatter}% -\EndIndex{Cmd}{backmatter}% - - -\subsection{Gliederung}\Index[indexmain]{Gliederung} -\label{sec:maincls.structure} - -Unter der Gliederung versteht man die Einteilung eines Dokuments in -Teile, Kapitel, Abschnitte und weitere Gliederungsebenen. - -\begin{Declaration} - \Macro{part}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{chapter}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{section}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{subsection}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{subsubsection}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{paragraph}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{subparagraph}\OParameter{Kurzform}\Parameter{Überschrift} -\end{Declaration}% -\BeginIndex{Cmd}{part}% -\BeginIndex{Cmd}{chapter}% -\BeginIndex{Cmd}{section}% -\BeginIndex{Cmd}{subsection}% -\BeginIndex{Cmd}{subsubsection}% -\BeginIndex{Cmd}{paragraph}% -\BeginIndex{Cmd}{subparagraph}% -Die Standardgliederungsbefehle funktionieren bei {\KOMAScript} beinahe -genau wie bei den Standardklassen. So kann ganz normal über ein -optionales Argument ein abweichender Text für den Kolumnentitel und -das Inhaltsverzeichnis vorgegeben werden. -\OnlyAt{\Class{scrartcl}}\Macro{chapter} existiert nur bei Buch- -und Berichtklassen, also bei \Class{book}, \Class{scrbook}, -\Class{report} und \Class{scrreport}, nicht jedoch bei den -Artikelklassen \Class{article} und \Class{scrartcl}. \Macro{chapter} -unterscheidet sich bei {\KOMAScript} außerdem gravierend von der -Version der Standardklassen. Bei den Standardklassen wird die -Kapitelnummer mit dem Präfix "`Kapitel"' beziehungsweise dem -Kapitelnamen in der gewählten Sprache in einer Zeile vor dem -eigentlichen Text der Überschrift ausgegeben. Diese sehr mächtige -Form wird bei {\KOMAScript} durch eine einfache Nummer vor dem Text -abgelöst, lässt sich aber durch die Option \Option{chapterprefix} -wieder einstellen (siehe \autoref{sec:maincls.layoutOptions}). - - - -Bitte beachten Sie, dass \Macro{part} und \Macro{chapter} den -Seitenstil für eine Seite umschaltet. Der jeweilige Seitenstil ist bei -\KOMAScript{} in den Makros \Macro{partpagestyle} und -\Macro{chapterpagestyle} abgelegt (siehe -\autoref{sec:maincls.pageStyle}). - -\BeginIndex[indexother]{}{Schriftart}% -\BeginIndex[indexother]{}{Schriftgroesse=Schriftgröße}% -Die Schriftart aller Gliederungsebenen\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -kann mit der in \autoref{sec:maincls.font} beschriebenen -Anweisungen \Macro{setkomafont}\IndexCmd{setkomafont} und -\Macro{addtokomafont}\IndexCmd{addtokomafont} bestimmt werden. Dabei -wird zunächst generell das Element -\FontElement{sectioning}\IndexFontElement{sectioning} und -anschließend zusätzlich je Gliederungsebene ein spezifisches Element -verwendet (siehe \autoref{tab:maincls.elementsWithoutText}). Die -Schriftart für das Element -\FontElement{sectioning}\IndexFontElement{sectioning} ist als -\Macro{normalfont}""\Macro{normalcolor}""\Macro{sffamily}""% -\Macro{bfseries} vordefiniert. Die Voreinstellungen für die -spezifischen Elemente sind mit einer Schriftgröße vorbelegt und daher -von den Klassenoptionen \Option{bigheadings}, \Option{normalheadings} -und \Option{smallheadings} (siehe -\autoref{sec:maincls.fontOptions}) abhängig. Sie finden die -Voreinstellungen in \autoref{tab:maincls.structureElementsFont}. -% -\begin{table} - \centering% - \begin{tabular}{lll} - Klassenoption & Element & Voreinstellung\\\hline\\[-1.6ex] - \Option{bigheadings} - & \FontElement{part}\IndexFontElement{part} - & \Macro{Huge} \\ - & \FontElement{partnumber}\IndexFontElement{partnumber} - & \Macro{huge} \\ - & \FontElement{chapter}\IndexFontElement{chapter} - & \Macro{huge} \\ - & \FontElement{section}\IndexFontElement{section} - & \Macro{Large} \\ - & \FontElement{subsection}\IndexFontElement{subsection} - & \Macro{large} \\ - & \FontElement{subsubsection}\IndexFontElement{subsubsection} - & \Macro{normalsize} \\ - & \FontElement{paragraph}\IndexFontElement{paragraph=} - & \Macro{normalsize} \\ - & \FontElement{subparagraph}\IndexFontElement{subparagraph} - & \Macro{normalsize} \\[1ex] - \Option{normalheadings} - & \FontElement{part} & \Macro{huge} \\ - & \FontElement{partnumber} & \Macro{huge} \\ - & \FontElement{chapter} & \Macro{LARGE} \\ - & \FontElement{section} & \Macro{Large} \\ - & \FontElement{subsection} & \Macro{large} \\ - & \FontElement{subsubsection} & \Macro{normalsize} \\ - & \FontElement{paragraph} & \Macro{normalsize} \\ - & \FontElement{subparagraph} & \Macro{normalsize} \\[1ex] - \Option{smallheadings} - & \FontElement{part} & \Macro{LARGE} \\ - & \FontElement{partnumber} & \Macro{LARGE} \\ - & \FontElement{chapter} & \Macro{Large} \\ - & \FontElement{section} & \Macro{large} \\ - & \FontElement{subsection} & \Macro{normalsize} \\ - & \FontElement{subsubsection} & \Macro{normalsize} \\ - & \FontElement{paragraph} & \Macro{normalsize} \\ - & \FontElement{subparagraph} & \Macro{normalsize} - \end{tabular} - \caption{Schriftvoreinstellungen für die Elemente der Gliederung} - \label{tab:maincls.structureElementsFont} -\end{table} - -\begin{Example} - Angenommen, Sie verwenden die Klassenoption \Option{bigheadings} und - stellen fest, dass die sehr großen Überschriften von Teildokumenten - zu fett wirken. Nun könnten Sie natürlich wie folgt verfahren: - \begin{small} -\begin{verbatim} - \setkomafont{sectioning}{\normalfont\normalcolor\sffamily} - \part{Anhänge} - \addtokomafont{sectioning}{\bfseries} -\end{verbatim} - \end{small} - Auf diese Weise würden Sie nur für die eine Überschrift "`Anhänge"' - das Schriftattribut \textbf{Fett} abschalten. Sehr viel komfortabler - und eleganter ist es aber, stattdessen generell für - \Macro{part}-Überschriften eine entsprechende Änderung vorzunehmen. - Das ist wahlweise mit: - \begin{small} -\begin{verbatim} - \addtokomafont{part}{\normalfont\sffamily} - \addtokomafont{partnumber}{\normalfont\sffamily} -\end{verbatim} - \end{small} - oder einfach mit: - \begin{small} -\begin{verbatim} - \addtokomafont{part}{\mdseries} - \addtokomafont{partnumber}{\mdseries} -\end{verbatim} - \end{small} - möglich. Die letzte Version ist vorzuziehen, da diese auch dann noch - zum gewünschten Ergebnis führt, wenn Sie später das - \FontElement{sectioning}-Element\IndexFontElement{sectioning} - wie folgt ändern: - \begin{small} -\begin{verbatim} - \setkomafont{sectioning}{\normalfont\normalcolor\bfseries} -\end{verbatim} - \end{small} - Mit dieser Änderung verzichten Sie darauf, für alle - Gliederungsebenen serifenlose Schrift voreinzustellen. -\end{Example} - -Ich möchte Sie eindringlich davor warnen, die Möglichkeit zur -Schriftumschaltung zu missbrauchen, um wild Schriften, Schriftgrößen -und Schriftattribute miteinander zu mischen. Die Auswahl der richtigen -Schrift für die richtige Aufgabe ist eine Sache für Experten und hat -sehr, sehr wenig mit dem persönlichem Geschmack eines Laien zu -tun. Siehe hierzu auch das Zitat am Ende von -\autoref{sec:typearea.tips} und die folgende Erklärung. - -\begin{Explain} - Unterschiedliche Schriften für unterschiedliche Gliederungsebenen - sind mit {\KOMAScript}-Mitteln möglich. Der Laie sollte sie aber - meiden wie der Teufel das Weihwasser. Dies hat typografische Gründe. - - Eine Regel der Typografie besagt, dass man möglichst wenig Schriften - miteinander mischen soll. Serifenlose für die Überschriften scheinen - bereits ein Verstoß gegen diese Regel zu sein. Allerdings muss man - wissen, dass fette, große, serifenbehaftete Buchstaben oft viel zu - mächtig für eine Überschrift sind. Man müsste dann strenggenommen - zumindest auf eine normale statt eine fette oder halbfette Schrift - ausweichen. In tiefen Gliederungsebenen kann das aber wieder zu - schwach sein. Andererseits haben Serifenlose in Überschriften eine - sehr angenehme Wirkung und fast nur für Überschriften eine - Berechtigung. Daher wurde diese Voreinstellung für {\KOMAScript} mit - gutem Grund gewählt. - - Größere Vielfalt sollte aber vermieden werden. Schriftenmischung - ist etwas für Profis. Aus den genannten Gründen sollten Sie bei - Verwendung anderer als der Standard-\TeX-Fonts -- egal ob - CM-\Index{CM-Fonts} oder EC-Fonts\Index{EC-Fonts} -- bezüglich der - Verträglichkeit der serifenlosen und serifenbehafteten Schrift einen - Experten zu Rate ziehen oder die Schrift für das Element - \FontElement{sectioning}\IndexFontElement{sectioning} - vorsichtshalber wie in obigem Beispiel umdefinieren. Die häufig - anzutreffenden Kombinationen Times mit Helvetica oder Palatino mit - Helvetica werden vom Autor als ungünstig betrachtet. -\end{Explain} -\EndIndex[indexother]{}{Schriftart}% -\EndIndex[indexother]{}{Schriftgroesse=Schriftgröße}% -% -\EndIndex{Cmd}{part}% -\EndIndex{Cmd}{chapter}% -\EndIndex{Cmd}{section}% -\EndIndex{Cmd}{subsection}% -\EndIndex{Cmd}{subsubsection}% -\EndIndex{Cmd}{paragraph}% -\EndIndex{Cmd}{subparagraph}% - - -\begin{Declaration} - \Macro{part*}\Parameter{Überschrift}\\ - \Macro{chapter*}\Parameter{Überschrift}\\ - \Macro{section*}\Parameter{Überschrift}\\ - \Macro{subsection*}\Parameter{Überschrift}\\ - \Macro{subsubsection*}\Parameter{Überschrift}\\ - \Macro{paragraph*}\Parameter{Überschrift}\\ - \Macro{subparagraph*}\Parameter{Überschrift} -\end{Declaration}% -\BeginIndex{Cmd}{part*}% -\BeginIndex{Cmd}{chapter*}% -\BeginIndex{Cmd}{section*}% -\BeginIndex{Cmd}{subsection*}% -\BeginIndex{Cmd}{subsubsection*}% -\BeginIndex{Cmd}{paragraph*}% -\BeginIndex{Cmd}{subparagraph*}% -Ebenso existieren die Sternvarianten der Gliederungsbefehle, bei -denen keine Nummerierung\Index{Nummerierung} erfolgt, kein -Kolumnentitel\Index{Kolumnentitel} gesetzt wird und kein Eintrag -ins Inhaltsverzeichnis\Index{Inhaltsverzeichnis} stattfindet. -Der Verzicht auf den Kolumnentitel hat übrigens einen oftmals -unerwünschten Effekt. Geht beispielsweise ein mit -\Macro{chapter*} gesetztes Kapitel über mehrere Seiten, so taucht -plötzlich der Kolumnentitel des letzen Kapitels wieder auf. -{\KOMAScript} bietet dafür aber eine Lösung, die im Folgenden -beschrieben wird. \OnlyAt{\Class{scrartcl}}\Macro{chapter*} -existiert selbstverständlich nur bei Buch- und Berichtklassen, -also bei \Class{book}, \Class{scrbook}, \Class{report} und -\Class{scrreport}, nicht jedoch bei den Artikelklassen -\Class{article} und \Class{scrartcl}. - -Bitte beachten Sie, dass \Macro{part*} und \Macro{chapter*} den -Seitenstil für eine Seite umschaltet. Der jeweilige Seitenstil ist bei -\KOMAScript{} in den Makros \Macro{partpagestyle} und -\Macro{chapterpagestyle} abgelegt (siehe -\autoref{sec:maincls.pageStyle}). - -Bezüglich der Möglichkeiten der Schriftumschaltung\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -gilt das Gleiche wie zuvor in der Erklärung zu den sternlosen -Varianten geschrieben. Die Elemente tragen die gleichen Namen, da sie -nicht Varianten, sondern Gliederungsebenen bezeichnen. -% -\EndIndex{Cmd}{part*}% -\EndIndex{Cmd}{chapter*}% -\EndIndex{Cmd}{section*}% -\EndIndex{Cmd}{subsection*}% -\EndIndex{Cmd}{subsubsection*}% -\EndIndex{Cmd}{paragraph*}% -\EndIndex{Cmd}{subparagraph*}% - -\iffalse -Bei den Standardklassen gibt es keine weiteren Gliederungsbefehle. Es -existiert also insbesondere keine Anweisungen, mit denen man nicht -nummerierte Kapitel oder nicht nummerierte Abschnitte erzeugen kann, -die ins Inhaltsverzeichnis aufgenommen werden und bei denen ein -automatischer Kolumentitel erzeugt wird. -\fi -\begin{Declaration} - \Macro{addpart}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{addpart*}\Parameter{Überschrift}\\ - \Macro{addchap}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{addchap*}\Parameter{Überschrift}\\ - \Macro{addsec}\OParameter{Kurzform}\Parameter{Überschrift}\\ - \Macro{addsec*}\Parameter{Überschrift} -\end{Declaration}% -\BeginIndex{Cmd}{addpart}% -\BeginIndex{Cmd}{addpart*}% -\BeginIndex{Cmd}{addchap}% -\BeginIndex{Cmd}{addchap*}% -\BeginIndex{Cmd}{addsec}% -\BeginIndex{Cmd}{addsec*}% -{\KOMAScript} bietet über die Gliederungsbefehle der Standardklassen -hinaus die Anweisungen \Macro{addchap} und \Macro{addsec}. Diese -ähneln bis auf die fehlende Nummerierung sehr den Standardanweisungen -\Macro{chapter} und \Macro{section}. Sie erzeugen also sowohl einen -automatischen Kolumnentitel als auch einen Eintrag ins -Inhaltsverzeichnis. Die Sternvarianten \Macro{addchap*} und -\Macro{addsec*} gleichen hingegen den Standardanweisungen -\Macro{chapter*} und \Macro{section*} mit einem winzigen aber -wichtigen Unterschied: Die Kolumnentitel werden gelöscht. Dadurch wird -der oben erwähnte Effekt veralteter Kolumnentitel ausgeschlossen. -Stattdessen bleibt der Kolumnentitel auf Folgeseiten leer. -\OnlyAt{\Class{scrartcl}}\Macro{addchap} und \Macro{addchap*} -existieren selbstverständlich nur bei Buch- und Berichtklassen, also -bei \Class{book}, \Class{scrbook}, \Class{report} und -\Class{scrreport}, nicht jedoch bei den Artikelklassen \Class{article} -und \Class{scrartcl}. - -Die Anweisung \Macro{addpart} erstellt entsprechend einen nicht -nummerierten Dokumentteil mit einem Eintrag ins Inhaltsverzeichnis. Da -bereits \Macro{part} und \Macro{part*} den Kolumnentitel löschen, -ergibt sich hier nicht das oben genannte Problem mit veralteten -Kolumnentiteln. Die Sternvariante \Macro{addpart*} ist daher identisch -mit der Sternvariante \Macro{part*} und wurde nur aus -Konsistenzgründen definiert. - -Bitte beachten Sie, dass \Macro{addpart} und \Macro{addchap} und deren -Sternvarianten den Seitenstil für eine Seite umschaltet. Der jeweilige -Seitenstil ist in den Makros \Macro{partpagestyle} und -\Macro{chapterpagestyle} abgelegt (siehe -\autoref{sec:maincls.pageStyle}). - -Bezüglich der Möglichkeiten der Schriftumschaltung\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -gilt das gleiche wie zuvor in der Erklärung zu \Macro{part*}, -\Macro{chapter*} und \Macro{section*} geschrieben. Die Elemente -tragen die gleichen Namen, da sie nicht Varianten, sondern -Gliederungsebenen bezeichnen. -% -\EndIndex{Cmd}{addpart}% -\EndIndex{Cmd}{addpart*}% -\EndIndex{Cmd}{addchap}% -\EndIndex{Cmd}{addchap*}% -\EndIndex{Cmd}{addsec}% -\EndIndex{Cmd}{addsec*}% - - -\begin{Declaration} - \Macro{minisec}\Parameter{Überschrift} -\end{Declaration}% -\BeginIndex{Cmd}{minisec}% -Manchmal ist eine Art Überschrift\Index{Ueberschriften=Überschriften} -wünschenswert, die zwar hervorgehoben wird, ansonsten aber eng mit dem -nachfolgenden Text zusammenhängt. Eine solche Überschrift soll dann -ohne große Abstände gesetzt werden. - -Der Befehl \Macro{minisec} bewirkt genau eine derartige Überschrift. -Diese Überschrift ist keiner Gliederungsebene zugeordnet. Eine solche -\emph{Mini-section} wird nicht in das Inhaltsverzeichnis aufgenommen -und erhält auch keine Nummerierung. -\begin{Example} - Sie haben einen Bausatz für eine Mausefalle entwickelt und wollen - diesen getrennt nach den benötigen Materialien und der Anleitung für - die Montage beschreiben. Das könnte so gemacht werden: - \begin{small} -\begin{verbatim} - \minisec{Bauteile} - - \begin{flushleft} - 1 Brett ($100\times 50 \times 12$)\\ - 1 Bierflaschenschnappverschluss\\ - 1 Kugelschreiberfeder\\ - 1 Reißzwecke\\ - 2 Schrauben\\ - 1 Hammer\\ - 1 Messer - \end{flushleft} - - \minisec{Montage} - - Zunächst suche man das Mauseloch. Dann lege man die - Reißzwecke innen unmittelbar hinter das Loch, damit bei - den folgenden Aktionen die Maus nicht entschlüpfen kann. - Anschließend klopfe man mit dem Hammer den - Bierflaschenschnappverschluss in das Mauseloch. Sollte - der Verschluss nicht groß genug sein, um das Loch - vollständig und dauerhaft zu verschließen, nehme man - stattdessen das Brett und schraube es unter Zuhilfenahme - der beiden Schrauben und des Messers vor das Loch. Statt - des Messers kann selbstverständlich auch ein - Schraubendreher verwendet werden. - - Die Kugelschreiberfeder fiel dem Tierschutz zum Opfer. -\end{verbatim} - \end{small} - Das Ganze sieht anschließend so aus: - \begin{ShowOutput}[\baselineskip]\setlength{\parindent}{1em} - \minisec{Bauteile} - - \begin{flushleft} - 1 Brett ($100\times 50 \times 12$)\\ - 1 Bierflaschenschnappverschluss\\ - 1 Kugelschreiberfeder\\ - 1 Reißzwecke\\ - 2 Schrauben\\ - 1 Hammer\\ - 1 Messer - \end{flushleft} - - \minisec{Montage} - - Zunächst suche man das Mauseloch. Dann lege man die Reißzwecke - innen unmittelbar hinter das Loch, damit bei den folgenden - Aktionen die Maus nicht entschlüpfen kann. Anschließend klopfe man - mit dem Hammer den Bierflaschenschnappverschluss in das Mauseloch. - Sollte der Verschluss nicht groß genug sein, um das Loch - vollständig und dauerhaft zu verschließen, nehme man stattdessen - das Brett und schraube es unter Zuhilfenahme der beiden Schrauben - und des Messers vor das Loch. Statt des Messers kann - selbstverständlich auch ein Schraubendreher verwendet werden. - - Die Kugelschreiberfeder fiel dem Tierschutz zum Opfer. -% Mit der Kugelschreiberfeder hat es eine besondere -% Bewandtnis. Sie stammt noch aus dem Selbstbauprojekt -% "`Mauseschnappfalle"', das dem Tierschutz zum Opfer gefallen ist. - \end{ShowOutput} -\end{Example} - -Die Schriftart des Gliederungsbefehls \Macro{minisec} kann nur über -das Element \FontElement{sectioning}\IndexFontElement{sectioning} -beeinflusst werden (siehe -\autoref{tab:maincls.elementsWithoutText}). Ein spezifisches -Element nur für \Macro{minisec} existiert nicht. Damit kann auch die -voreingestellte Größe nicht verändert werden. -% -\EndIndex{Cmd}{minisec}% - - -\begin{Declaration} - \Macro{raggedsection} -\end{Declaration}% -\BeginIndex{Cmd}{raggedsection}% -Bei den Standardklassen werden die Überschriften ganz normal im -Blocksatz ausgegeben. Dadurch können in den Überschriften Trennungen -auf"|treten und mehrzeilige Überschriften werden auf Textbreite gedehnt. -Dieses Vorgehen ist in der Typografie eher unüblich. {\KOMAScript} -setzt Überschriften daher in linksbündigem Flattersatz mit hängendem -Einzug. Verantwortlich ist dafür die Anweisung \Macro{raggedsection}, -die vordefiniert ist als: -\begin{verbatim} - \newcommand*{\raggedsection}{\raggedright} -\end{verbatim} -Diese Anweisung kann mit \Macro{renewcommand} umdefiniert werden. -\begin{Example} - Sie wollen auch für Überschriften Blocksatz. Dazu schreiben Sie in - die Präambel Ihres Dokuments: - \begin{small} -\begin{verbatim} - \renewcommand*{\raggedsection}{} -\end{verbatim} - \end{small} - oder kürzer: - \begin{small} -\begin{verbatim} - \let\raggedsection\relax -\end{verbatim} - \end{small} - Sie erreichen somit eine ähnliche Formatierung der Überschriften wie - bei den Standardklassen. Noch ähnlicher wird es, wenn sie diese - Änderung mit der oben vorgestellten Änderung für das Element - \FontElement{sectioning}\IndexFontElement{sectioning} - kombinieren. -\end{Example} -% -\EndIndex{Cmd}{raggedsection}% - - -\begin{Declaration} - \Macro{partformat}\\ - \Macro{chapterformat}\\ - \Macro{othersectionlevelsformat}\Parameter{Gliederungsname}\\ - \Macro{autodot} -\end{Declaration}% -\BeginIndex{Cmd}{partformat}% -\BeginIndex{Cmd}{chapterformat}% -\BeginIndex{Cmd}{othersectionlevelsformat}% -\BeginIndex{Cmd}{autodot}% -\begin{Explain}% - Bekanntlich gibt es bei {\LaTeX} zu jedem Zähler eine Anweisung - \Macro{the}\PName{Zählername}, mit welcher der Zähler ausgegeben - werden kann. Die Darstellung der Zähler für die einzelnen - Gliederungsebenen setzt sich dabei je nach Klasse ab \Macro{section} - (\Class{book}, \Class{scrbook}, \Class{report}, \Class{scrreprt}) - oder ab \Macro{subsection} (\Class{article}, \Class{scrartcl}) aus - der Darstellung des Zählers für die übergeordnete Ebene, gefolgt von - einem Punkt und der arabischen Zahl des \PName{Zählername}ns der - jeweiligen Ebene zusammen.\par -\end{Explain} - -\KOMAScript{} hat der Ausgabe der Gliederungsnummern eine weitere -logische Ebene zugefügt. Die Zähler werden für die jeweilige -Überschrift nicht einfach nur ausgegeben. Sie werden mit Hilfe der -Anweisungen \Macro{partformat}, \Macro{chapterformat} und -\Macro{othersectionlevelsformat} formatiert. -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}Die Anweisung -\Macro{chapterformat} existiert selbstverständlich nicht in der Klasse -\Class{scrartcl}. - -Wie bereits in \autoref{sec:maincls.formattingOptions} erläutert wurde, -müssen nach \cite{DUDEN} die Gliederungsnummern je nach Gliederung mit -einem nachfolgenden Punkt versehen werden oder dieser hat zu -entfallen. Die Anweisung \Macro{autodot} ist bei {\KOMAScript} für die -Einhaltung dieser Regel verantwortlich. Auf den Punkt folgt bei allen -Gliederungsebenen außer \Macro{part} noch ein \Macro{enskip}. Dies -entspricht einem Leerraum von 0,5\Unit{em}. - -Die Anweisung \Macro{othersectionlevelsformat} erwartet als Parameter -den Namen der Gliederungsebene, also "`\PName{section}"', -"`\PName{subsection}"' \dots{} In der Voreinstellung gibt es also nur -für die Ebenen \Macro{part} und \Macro{chapter} eigene -Formatieranweisungen, während alle anderen Giederungsebenen mit Hilfe -einer einzigen Formatieranweisung abgedeckt werden. Dies ist allein -historisch begründet. Als Werner Lemberg für sein \Package{CJK}-Paket -eine entsprechende Erweiterung von {\KOMAScript} angeregt hat, wurde -nur diese Unterscheidung benötigt. - -Die Formatierungsanweisungen können mit Hilfe von \Macro{renewcommand} -umdefiniert werden, um sie eigenen Anforderungen anzupassen. -Nachfolgend finden Sie die Originaldefinitionen aus den -{\KOMAScript}-Klassen: -\begin{verbatim} - \newcommand*{\partformat}{\partname~\thepart\autodot} - \newcommand*{\chapterformat}{% - \chapappifchapterprefix{\ }\thechapter\autodot\enskip} - \newcommand*{\othersectionlevelsformat}[1]{% - \csname the#1\endcsname\autodot\enskip} -\end{verbatim} - -\begin{Example} - Angenommen, Sie wollen, dass bei \Macro{part} das Wort "`Teil"' vor - der Nummer nicht ausgegeben wird. Dann können Sie beispielsweise - folgende Anweisung in die Präambel Ihres Dokuments schreiben: - \begin{small} -\begin{verbatim} - \renewcommand*{\partformat}{\thepart\autodot} -\end{verbatim} - \end{small} - Genaugenommen könnten Sie an dieser Stelle auch auf \Macro{autodot} - verzichten und stattdessen einen festen Punkt setzen. Da - \Macro{part} mit römischen Zahlen nummeriert wird, muss der Punkt - laut \cite{DUDEN} folgen. Allerdings bringen Sie - sich dann um die Möglichkeit, eine der Optionen - \Option{pointednumbers} und \Option{pointlessnumbers} einzusetzen - und so von der Regel abzuweichen. Näheres zu den Klassenoptionen - siehe \autoref{sec:maincls.formattingOptions}. - - Eine weitere Möglichkeit wäre, die Nummerierung der Abschnitte - so in den Rand zu platzieren, dass der Überschriftentext - links mit dem umgebenden Text abschließt. Dies erreicht man - mit: - \begin{small} -\begin{verbatim} - \renewcommand*{\othersectionlevelsformat}[1]{% - \llap{\csname the#1\endcsname\autodot\enskip}} -\end{verbatim} - \end{small} - Die wenig bekannte \TeX-Anweisung \Macro{llap}\IndexCmd{llap} sorgt - dabei dafür, dass das Argument links von der aktuellen Position - ausgegeben wird, ohne dass dabei die Position verändert wird. Eine - bessere \LaTeX-Lösung für dieses Problem wäre: - \begin{small} -\begin{verbatim} - \renewcommand*{\othersectionlevelsformat}[1]{% - \makebox[0pt][r]{\csname the#1\endcsname\autodot\enskip}} -\end{verbatim} - \end{small} - Näheres zu den optionalen Argument von \Macro{makebox} ist - \cite{latex:usrguide} zu entnehmen. -\end{Example} -% -\EndIndex{Cmd}{partformat}% -\EndIndex{Cmd}{chapterformat}% -\EndIndex{Cmd}{othersectionlevelsformat}% -\EndIndex{Cmd}{autodot}% - - -\begin{Declaration} - \Macro{chapappifchapterprefix}\Parameter{Zusatztext}\\ - \Macro{chapapp} -\end{Declaration}% -\BeginIndex{Cmd}{chapappifchapterprefix}% -\BeginIndex{Cmd}{chapapp}% -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}% -\ChangedAt{v2.8o}{\Class{scrbook}\and\Class{scrreprt}}% -Diese beiden Anweisungen werden nicht nur intern von {\KOMAScript} -verwendet, sondern stehen auch dem Anwender zur Verfügung. -Nachfolgend werden sie beispielsweise für die Umdefinierung anderer -Anweisungen verwendet. Bei Verwendung der Layoutoption -\Option{chapterprefix} (siehe \autoref{sec:maincls.layoutOptions}) -setzt \Macro{chapappifchapterprefix} im Hauptteil des Dokuments das -Wort "`Kapitel"'\Index{Kapitel} in der aktuellen Sprache gefolgt vom -\PName{Zusatztext}. Im Anhang\Index{Anhang} wird stattdessen das Wort -"`Anhang"' in der aktuellen Sprache, ebenfalls gefolgt vom -\PName{Zusatztext}, ausgegeben. Bei der Einstellung -\Option{nochapterprefix} wird hingegen nichts ausgegeben. - -Die Anweisung \Macro{chapapp} setzt immer das Wort "`Kapitel"' -beziehungsweise "`Anhang"'. Dabei spielen die Optionen -\Option{chapterprefix} und \Option{nochapterprefix} keine Rolle. - -Da es Kapitel nur bei den Klassen \Class{scrbook} und \Class{scrreprt} -gibt, existieren die beiden Anweisungen auch nur bei diesen Klassen. -% -\EndIndex{Cmd}{chapappifchapterprefix}% -\EndIndex{Cmd}{chapapp}% - - -\begin{Declaration} - \Macro{chaptermark}\Parameter{Kolumnentitel}\\ - \Macro{sectionmark}\Parameter{Kolumnentitel}\\ - \Macro{subsectionmark}\Parameter{Kolumnentitel}\\ - \Macro{chaptermarkformat}\\ - \Macro{sectionmarkformat}\\ - \Macro{subsectionmarkformat} -\end{Declaration}% -\BeginIndex{Cmd}{chaptermark}% -\BeginIndex{Cmd}{sectionmark}% -\BeginIndex{Cmd}{subsectionmark}% -\BeginIndex{Cmd}{chaptermarkformat}% -\BeginIndex{Cmd}{sectionmarkformat}% -\BeginIndex{Cmd}{subsectionmarkformat}% -\begin{Explain}% - Wie bereits in \autoref{sec:maincls.pageStyle} erwähnt, arbeitet - der Seitenstil \PValue{headings} mit automatischen - Kolumnentiteln\Index{Kolumnentitel}. Dazu werden die Anweisungen - \Macro{chaptermark} und \Macro{sectionmark} beziehungsweise - \Macro{sectionmark} und \Macro{subsectionmark} entsprechend - definiert. Jeder Gliederungsbefehl (\Macro{chapter}, - \Macro{section}, \Macro{subsection} \dots) führt automatisch eine - entsprechende \Macro{\dots mark}-Anweisung aus. Der übergebene - Parameter beinhaltet dabei den Text der - Gliederungsüberschrift\Index{Ueberschriften=Überschriften}. Die - zugehörige Gliederungsnummer wird automatisch in der \Macro{\dots - mark}-Anweisung hinzugefügt. Die Formatierung erfolgt dabei je - nach Gliederungsebene mit der Anweisung \Macro{chaptermarkformat}, - \Macro{sectionmarkformat} oder \Macro{subsectionmarkformat}. - \OnlyAt{\Class{scrbook}\and\Class{scrreprt}}Selbst\-verständlich - gibt es bei \Class{scrartcl} weder \Macro{chaptermark} noch - \Macro{chaptermarkformat}. \OnlyAt{\Class{scrartcl}} - \Macro{subsectionmark} und \Macro{subsectionmarkformat} existieren - dafür nur bei \Class{scrartcl}. Dies ändert sich allerdings bei - Verwendung des \Package{scrpage2}-Pakets (siehe - \autoref{cha:scrpage}). -\end{Explain} -So wie mit \Macro{chapterformat} und \Macro{othersectionlevelsformat} die -Nummern der Gliederungsüberschriften formatiert ausgegeben werden, -werden mit den Anweisungen \Macro{chaptermarkformat} (nicht -\Class{scrartcl}), \Macro{sectionmarkformat} und -\Macro{subsectionmarkformat} (nur \Class{scrartcl}) die Nummern der -Gliederungsebenen in den automatischen Kolumnentiteln formatiert -ausgegeben. Sie können mit \Macro{renewcommand} eigenen Anforderungen -angepasst werden. Die Originaldefinitionen aus den -{\KOMAScript}-Klassen sind: -\begin{verbatim} - \newcommand*{\chaptermarkformat}{% - \chapappifchapterprefix{\ }\thechapter\autodot\enskip} - \newcommand*{\sectionmarkformat}{\thesection\autodot\enskip} - \newcommand*{\subsectionmarkformat}{% - \thesubsection\autodot\enskip} -\end{verbatim} -\begin{Example} - Angenommen, Sie wollen, dass der Kapitelnummer in den Kolumnentiteln - das Wort "`Kapitel"' vorangestellt wird. Dann setzen Sie - beispielsweise folgende Definition in die Präambel Ihres Dokuments: - \begin{small} -\begin{verbatim} - \renewcommand*{\chaptermarkformat}{% - \chapapp~\thechapter\autodot\enskip} -\end{verbatim} - \end{small} -\end{Example} -Wie Sie sehen, finden hier die Anweisungen \Macro{chapappifchapterprefix} und -\Macro{chapapp} Verwendung, die weiter oben erklärt wurden. -% -\EndIndex{Cmd}{chaptermark}% -\EndIndex{Cmd}{sectionmark}% -\EndIndex{Cmd}{subsectionmark}% -\EndIndex{Cmd}{chaptermarkformat}% -\EndIndex{Cmd}{sectionmarkformat}% -\EndIndex{Cmd}{subsectionmarkformat}% - - -\begin{Declaration} - \Counter{secnumdepth} -\end{Declaration}% -\BeginIndex{Counter}{secnumdepth}\BeginIndex{}{Nummerierung}% -Normalerweise werden bei den Klassen -\Class{scrbook}\IndexClass{scrbook} und -\Class{scrreprt}\IndexClass{scrreprt} die Gliederungsebenen -\Macro{part}\IndexCmd{part}\IndexCmd{chapter}\IndexCmd{section} bis -\Macro{subsection}\IndexCmd{subsection} und bei der Klasse -\Class{scrartcl}\IndexClass{scrartcl} die Ebenen \Macro{part} bis -\Macro{subsubsection}\IndexCmd{subsubsection} nummeriert. Gesteuert -wird dies über den \LaTeX-Zähler \Counter{secnumdepth}. Dabei steht -der Wert -1 für \Macro{part}, 0 für \Macro{chapter} und so -weiter. Da bei \Class{scrartcl} die Ebene \Macro{chapter} nicht -existiert, beginnt bei dieser Klasse die Zählung mit \Macro{part} bei -0. Durch Setzen oder Erhöhen oder Verringern des Zählers kann -bestimmt werden, bis zu welcher Gliederungsebene eine Nummerierung -erfolgen soll. Dies ist übrigens bei den Standardklassen ganz genauso. -Vergleichen Sie hierzu auch die Erklärung zum Zähler -\Counter{tocdepth} in \autoref{sec:maincls.toc}. -% -\EndIndex{Counter}{secnumdepth}\EndIndex{}{Nummerierung} - - -\begin{Declaration} - \Macro{setpartpreamble}% - \OParameter{Position}\OParameter{Breite}\Parameter{Präambel}\\ - \Macro{setchapterpreamble}% - \OParameter{Position}\OParameter{Breite}\Parameter{Präambel} -\end{Declaration}% -\BeginIndex{Cmd}{setpartpreamble}% -\BeginIndex{Cmd}{setchapterpreamble}% -\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}Teile und Kapitel können -bei {\KOMAScript} mit einer \PName{Präambel} versehen werden. Dies ist -insbesondere im zweispaltigen Layout mit der Klassenoption -\Option{twocolumn}\IndexOption{twocolumn} nützlich, da die -\PName{Präambel} zusammen mit der Überschrift einspaltig gesetzt wird. -Die \PName{Präambel} kann auch mehrere Absätze beinhalten. Die -Anweisung zum Setzen der \PName{Präambel} muss vor der jeweiligen -\Macro{part}- oder \Macro{addpart}- bzw. \Macro{chapter}- oder -\Macro{addchap}-Anweisung stehen. -\begin{Example} - Sie schreiben einen Bericht über den Zustand einer Firma. Dabei - organisieren Sie den Bericht so, dass jeder Abteilung ein eigener - Teilbericht spendiert wird. Jedem dieser Teile soll außerdem eine - Zusammenfassung vorangestellt werden. Diese Zusammenfassung soll auf - der Titelseite jedes Teils stehen. Das ist wie folgt möglich: - \begin{small} -\begin{verbatim} - \setpartpreamble{% - \begin{abstract} - Dies ist ein Blindtext. Er dient lediglich zur - Demonstration der Möglichkeiten von \KOMAScript. - \end{abstract} - } - \part{Abteilung Grünschnitt} -\end{verbatim} - \end{small} - Je nach Einstellung der Optionen für die - Überschriftengröße\Index{Ueberschriften=Überschriften} (siehe - \autoref{sec:maincls.fontOptions}) und der Optionen für die - Form der \Environment{abstract}-Umgebung\IndexEnv{abstract} (siehe - \autoref{sec:maincls.formattingOptions}), sieht das Ergebnis ungefähr - wie folgt aus: - \begin{ShowOutput}\centering - {\LARGE\usekomafont{sectioning} Teil III.\par\vspace{20pt}} - {\LARGE\usekomafont{sectioning} Abteilung Grünschnitt\strut\par} - \begin{quote}\small - \vspace{6ex} - \begin{center} - \usekomafont{sectioning}\abstractname - \end{center} - \vspace{2ex} - Dies ist ein Blindtext. Er dient lediglich zur - Demonstration der Möglichkeiten von \KOMAScript. - \end{quote} - \end{ShowOutput} -\end{Example} -Bitte beachten Sie, dass Sie für die Abstände der Prämbel zur -Teilüberschrift bzw. zum Kapiteltext selbst verantwortlich -sind. Bitte beachten Sie auch, dass die -\Environment{abstract}-Umgebung bei der Klasse \Class{scrbook} nicht -existiert (siehe \autoref{sec:maincls.titles}). - -Das\ChangedAt{v2.8p}{\Class{scrbook}\and\Class{scrreprt}} erste -optionale Argument \PName{Position} bestimmt über ein bis zwei -Buchstaben die Position, an der die Präambel ausgegeben wird. Für die -vertikale Position existieren derzeit zwei Möglichkeiten: -\begin{description} -\item [\quad\texttt{o}:] über der Überschrift -\item [\quad\texttt{u}:] unter der Überschrift -\end{description} -Es kann jeweils eine Präambel unter und eine Präambel über der -Überschrift gesetzt werden. Für die horizontale Position existieren -derzeit drei Möglichkeiten: -\begin{description} -\item [\quad\texttt{l}:] linksbündig -\item [\quad\texttt{r}:] rechtsbündig -\item [\quad\texttt{c}:] zentriert -\end{description} -Dabei wird allerdings nicht der Text der \PName{Präambel} entsprechend -angeordnet, sondern eine Box, deren Breite durch das zweite optionale -Argument \PName{Breite} bestimmt wird. Wird auf das zweite optionale -Argument verzichtet, so wird stattdessen die gesamte Textbreite -verwendet. Damit bleibt die Option zur horizontalen Positionierung in -diesem Fall wirkungslos. Es kann jeweils ein Buchstaben für die -vertikale mit einem Buchstaben für die horizontale Anordnung -kombiniert werden. -% -\EndIndex{Cmd}{setpartpreamble}% -\EndIndex{Cmd}{setchapterpreamble}% - - -\begin{Declaration} - \Macro{dictum}\OParameter{Urheber}\Parameter{Spruch}\\ - \Macro{dictumwidth}\\ - \Macro{dictumauthorformat}\Parameter{Urheber}\\ - \Macro{raggeddictum}\\ - \Macro{raggeddictumtext}\\ - \Macro{raggeddictumauthor} -\end{Declaration}% -\BeginIndex{Cmd}{dictum}% -\BeginIndex{Cmd}{dictumwidth}% -\BeginIndex{Cmd}{dictumauthorformat}% -\BeginIndex{Cmd}{raggeddictum}% -\BeginIndex{Cmd}{raggeddictumtext}% -\BeginIndex{Cmd}{raggeddictumauthor}% -Neben\OnlyAt{\Class{scrbook}\and\Class{scrreprt}}% -\ChangedAt{v2.8q}{\Class{scrbook}\and\Class{scrreprt}} einleitenden -Sätzen ist eine häufige Anwendung für \Macro{setpartpreamble} oder -\Macro{setchapterpreamble} ein kluger \PName{Spruch}\Index{Spruch}. -Ein solcher Spruch kann mit der Anweisung \Macro{dictum} gesetzt -werden. Dabei ist vorgesehen, dass \Macro{dictum} als obligatorisches -Argument einer der Anweisungen \Macro{setchapterpreamble} oder -\Macro{setpartpreamble} verwendet wird. Dies ist jedoch nicht -zwingend. - -Der Spruch wird zusammen mit einem optional anzugebenden -\PName{Urheber} in einer \Macro{parbox}\IndexCmd{parbox} (siehe -\cite{latex:usrguide}) der Breite \Macro{dictumwidth} gesetzt. Dabei -ist \Macro{dictumwidth} keine Länge, die mit \Macro{setlength} gesetzt -wird. Es handelt sich im ein Makro, das mit \Macro{renewcommand} -umdefiniert werden kann. Vordefiniert ist \verb;0.3333\textwidth;, -also ein Drittel der jeweiligen Textbreite. Die Box selbst wird mit -der Anweisung \Macro{raggeddictum} ausgerichtet. Voreingestellt ist -dabei \Macro{raggedleft}\IndexCmd{raggedleft}, also rechtsbündig. -\Macro{raggeddictum} kann mit Hilfe von \Macro{renewcommand} -umdefiniert werden. - -Innerhalb der Box wird der \PName{Spruch} mit \Macro{raggeddictumtext} -angeordnet. Voreingestellt ist hier -\Macro{raggedright}\IndexCmd{raggedright}, also linksbündig. Eine -Umdefinierung ist auch hier mit \Macro{renewcommand} möglich. Die -Ausgabe erfolgt in der für Element \FontElement{dictumtext} eingestellten -Schriftart, die mit den Anweisungen aus -\autoref{sec:maincls.font} geändert werden kann. Die -Voreinstellung entnehmen Sie bitte \autoref{tab:maincls.dictumfont}. - -Ist ein \PName{Urheber} angegeben, so wird dieser mit einer Linie über -die gesamte Breite der \Macro{parbox} vom \PName{Spruch} abgetrennt. -Mit \Macro{raggeddictumauthor} wird die Ausrichtung vorgenommen. -Voreingestellt ist \Macro{raggedleft}. Auch diese Anweisung kann mit -\Macro{renewcommand} umdefiniert werden. Die Ausgabe erfolgt in der -Form, die mit \Macro{dictumauthorformat} festgelegt ist. Das Makro -erwartet schlicht den \Macro{Urheber} als Argument. In der -Voreinstellung ist \Macro{dictumauthorformat} als -\begin{small} -\begin{verbatim} - \newcommand*{\dictumauthorformat}[1]{(#1)} -\end{verbatim} -\end{small} -definiert. Der \PName{Urheber} wird also in runde Klammern -gesetzt. Für das Element \PName{dictumauthor} kann dabei eine -Abweichung der Schrift von der des Elementes \PName{dictumtext} -definiert werden. Die Voreinstellung entnehmen Sie bitte -\autoref{tab:maincls.dictumfont}. Eine Änderung ist mit Hilfe der -Anweisungen aus \autoref{sec:maincls.font} möglich. -% -\begin{table} - \centering% - \begin{tabular}{ll} - Element & Voreinstellung \\\hline\\[-1.6ex] - \FontElement{dictumtext} & - \Macro{normalfont}\Macro{normalcolor}\Macro{sffamily}\Macro{small}\\ - \FontElement{dictumauthor} & - \Macro{itshape}\\ - \end{tabular} - \caption{Schriftvoreinstellungen für die Elemente des Spruchs} - \label{tab:maincls.dictumfont} -\end{table} -% -Wird \Macro{dictum} innerhalb der Anweisung \Macro{setchapterpreamble} -oder \Macro{setpartpreamble} verwendet, so ist Folgendes zu -beachten: Die horizontale Anordnung erfolgt immer mit -\Macro{raggeddictum}. Das optionale Argument zur horizontalen -Anordnung, das die beiden Anweisungen vorsehen, bleibt daher ohne -Wirkung. \Macro{textwidth} ist nicht die Breite des gesamten -Textkörpers, sondern die aktuelle Textbreite. Ist also -\Macro{dictumwidth} auf \verb;.5\textwidth; gesetzt und bei -\Macro{setchapterpreamble} wird als optionales Argument für die Breite -ebenfalls \verb;.5\textwidth; angegeben, so erfolgt die Ausgabe in -einer Box, deren Breite ein Viertel der Breite des Textkörper ist. Es -wird empfohlen, bei Verwendung von \Macro{dictum} auf die optionale -Angabe einer Breite bei \Macro{setchapterpreamble} oder -\Macro{setpartpreamble} zu verzichten. - -Sollen mehrere schlaue Sprüche untereinander gesetzt werden, so -sollten diese durch einen zusätzlichen Abstand vertikal voneinander -abgesetzt werden. Ein solcher kann leicht mit der Anweisung -\Macro{bigskip}\IndexCmd{bigskip} gesetzt werden. - -\begin{Example} - Sie schreiben ein Kapitel über die moderne Ehe. Dabei wollen sie in - der Präambel zur Kapitelüberschrift einen schlauen Spruch - setzen. Dieser soll unter der Überschrift erscheinen. Also schreiben - Sie: - \begin{small} -\begin{verbatim} - \setchapterpreamble[u]{% - \dictum[Schiller]{Drum prüfe, wer sich ewig bindet \dots}} - \chapter{Die moderne Ehe} -\end{verbatim} - \end{small} - Die Ausgabe erfolgt dann in der Form: - \begin{ShowOutput} - {\usekomafont{sectioning}\usekomafont{chapter}% - 17\enskip Die moderne Ehe\par} - \vspace{\baselineskip} - \dictum[Schiller]{Drum prüfe, wer sich ewig bindet \dots} - \end{ShowOutput} - - Wenn Sie wollen, dass nicht ein Drittel, sondern nur ein Viertel der - verfügbaren Textbreite für den Spruch verwendet wird, so definieren - Sie \Macro{dictumwidth} wie folgt um: - \begin{small} -\begin{verbatim} - \renewcommand*{\dictumwidth}{.25\textwidth} -\end{verbatim} - \end{small} -\end{Example} - -An dieser Stelle sei noch auf das Paket~\cite{package:ragged2e} -hingewiesen, mit dem man Flattersatz mit Trennung erreichen -kann. -\EndIndex{Cmd}{dictum}% -\EndIndex{Cmd}{dictumwidth}% -\EndIndex{Cmd}{dictumauthorformat}% -\EndIndex{Cmd}{raggeddictum}% -\EndIndex{Cmd}{raggeddictumtext}% -\EndIndex{Cmd}{raggeddictumauthor}% - - -\subsection{Fußnoten} -\label{sec:maincls.footnotes} - -Eine nicht auf den Text beschränkte Eigenschaft eines Dokuments -ist das Aussehen der Fußnoten. Da Fußnoten\Index{Fussnoten=Fußnoten} -aber hauptsächlich im Text auf"|treten, werden sie in diesem -Abschnitt aufgeführt. - -\begin{Declaration} - \Macro{footnote}\OParameter{Nummer}\Parameter{Text}\\ - \Macro{footnotemark}\OParameter{Nummer}\\ - \Macro{footnotetext}\OParameter{Nummer}\Parameter{Text} -\end{Declaration}% -\BeginIndex{Cmd}{footnote}% -\BeginIndex{Cmd}{footnotemark}% -\BeginIndex{Cmd}{footnotetext}% -Fußnoten werden bei {\KOMAScript} genau wie bei den Standardklassen -mit der Anweisung \Macro{footnote} oder den paarweise zu verwendenden -Anweisungen \Macro{footnotemark} und \Macro{footnotetext} erzeugt. -Genau wie bei den Standardklassen ist es möglich, dass innerhalb einer -Fußnote ein Seitenumbruch erfolgt. Dies geschieht in der Regel dann, -wenn die zugehörige Fußnotenmarkierung so weit unten auf der Seite -gesetzt wird, dass keine andere Wahl bleibt, als die Fußnote auf die -nächste Seite zu umbrechen. -% -\EndIndex{Cmd}{footnote}% -\EndIndex{Cmd}{footnotemark}% -\EndIndex{Cmd}{footnotetext}% - - -\begin{Declaration} - \Macro{deffootnote}\OParameter{Markenbreite}\Parameter{Einzug}% - \Parameter{Absatzeinzug}\Parameter{Markendefinition}\\ - \Macro{deffootnotemark}\Parameter{Markendefinition}\\ - \Macro{thefootnotemark}\\ - \Macro{textsuperscript}\Parameter{Text} -\end{Declaration}% -\BeginIndex{Cmd}{deffootnote}% -\BeginIndex{Cmd}{deffootnotemark}% -\BeginIndex{Cmd}{thefootnotemark}% -\BeginIndex{Cmd}{textsuperscript}% -{\KOMAScript} setzt die Fußnoten etwas anders als die Standardklassen. -Die Fußnotenmarkierung im Text, also die Referenzierung der Fußnote, -erfolgt wie bei den Standardklassen durch kleine hochgestellte Zahlen. -Genauso werden die Markierungen auch in der Fußnote selbst -wiedergegeben. Sie werden dabei rechtsbündig in einem Feld der -Breite \PName{Markenbreite} gesetzt. Die erste Zeile der Fußnote -schließt direkt an das Feld der Markierung an. - -Alle weiteren Zeilen werden um den Betrag von \PName{Einzug} -eingezogen ausgegeben. Wird der optionale Parameter -\PName{Markenbreite} nicht angegeben, dann entspricht er dem -Wert von \PName{Einzug}. -Sollte die Fußnote aus mehreren Absätzen bestehen, dann wird die -erste Zeile eines Absatzes zusätzlich mit dem Einzug der -Größe \PName{Absatzeinzug} versehen. - -\begin{figure} - \centering\setlength{\unitlength}{1mm} - \begin{picture}(100,22) - \thinlines - % frame of following paragraph - \put(5,0){\line(1,0){90}} - \put(5,0){\line(0,1){5}} - \put(10,5){\line(0,1){5}}\put(5,5){\line(1,0){5}} - \put(95,0){\line(0,1){10}} - \put(10,10){\line(1,0){85}} - % frame of first paragraph - \put(5,11){\line(1,0){90}} - \put(5,11){\line(0,1){5}} - \put(15,16){\line(0,1){5}}\put(5,16){\line(1,0){10}} - \put(95,11){\line(0,1){10}} - \put(15,21){\line(1,0){80}} - % box of the footnote mark - \put(0,16.5){\framebox(14.5,4.5){\mbox{}}} - % description of paragraphs - \put(45,16){\makebox(0,0)[l]{\textsf{erster Absatz einer Fußnote}}} - \put(45,5){\makebox(0,0)[l]{\textsf{folgender Absatz einer Fußnote}}} - % help lines - \thicklines - \multiput(0,0)(0,3){7}{\line(0,1){2}} - \multiput(5,0)(0,3){3}{\line(0,1){2}} - % parameters - \put(2,7){\vector(1,0){3}} - \put(5,7){\line(1,0){5}} - \put(15,7){\vector(-1,0){5}} - \put(15,7){\makebox(0,0)[l]{\small\PName{Absatzeinzug}}} - % - \put(-3,13){\vector(1,0){3}} - \put(0,13){\line(1,0){5}} - \put(10,13){\vector(-1,0){5}} - \put(10,13){\makebox(0,0)[l]{\small\PName{Einzug}}} - % - \put(-3,19){\vector(1,0){3}} - \put(0,19){\line(1,0){14.5}} - \put(19.5,19){\vector(-1,0){5}} - \put(19.5,19){\makebox(0,0)[l]{\small\PName{Markenbreite}}} - \end{picture} - \caption{Parameter für die Darstellung der Fußnoten} - \label{fig:maincls.deffootnote} -\end{figure} - -\autoref{fig:maincls.deffootnote} veranschaulicht die -verschiedenen Parameter nochmals. Die Voreinstellung in -\KOMAScript{} entspricht folgender Definition: -\begin{small} -\begin{verbatim} - \deffootnote[1em]{1.5em}{1em} - {\textsuperscript{\thefootnotemark}} -\end{verbatim} -\end{small} -Dabei wird mit Hilfe von \Macro{textsuperscript} sowohl die -Hochstellung als auch die Wahl einer kleineren Schrift -erreicht. \Macro{thefootnotemark} ist die aktuelle Fußnotenmarke ohne -jegliche Formatierung. - -Auf\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} die Fußnote -einschließlich der Markierung findet außerdem die für das Element -\FontElement{footnote}\IndexFontElement{footnote} eingestellte -Schriftart Anwendung. Die Schriftart der Markierung kann jedoch mit -Hilfe der Anweisungen aus \autoref{sec:maincls.font} für das -Element -\FontElement{footnotelabel}\IndexFontElement{footnotelabel} -davon abweichend eingestellt werden. Siehe hierzu auch -\autoref{tab:maincls.elementsWithoutText}. Voreingestellt ist jeweils -keine Umschaltung der Schrift. - -Die Fußnotenmarkierung im Text wird getrennt von der -Markierung vor der Fußnote definiert. Dies geschieht mit der Anweisung -\Macro{deffootnotemark}. Voreingestellt ist hier: -\begin{small} -\begin{verbatim} - \deffootnotemark{% - \textsuperscript{\thefootnotemark}} -\end{verbatim} -\end{small} -Dabei findet\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} die -Schriftart für das Element -\FontElement{footnotereference}\IndexFontElement{footnotereference} -Anwendung (siehe \autoref{tab:maincls.elementsWithoutText}). Die -Markierungen im Text und in der Fußnote selbst sind also identisch. -Die Schriftart kann mit Hilfe der Anweisungen aus -\autoref{sec:maincls.font} jedoch geändert werden. - -\begin{Example} - Relativ häufig wird gewünscht, dass die Markierung in der Fußnote - selbst weder hochgestellt noch kleiner gesetzt wird. Dabei soll sie - aber nicht direkt am Text kleben, sondern geringfügig davor - stehen. Dies kann zum einen wie folgt erreicht werden: - \begin{small} -\begin{verbatim} - \deffootnote{1em}{1em}{\thefootnotemark\ } -\end{verbatim} - \end{small} - Die Fußnotenmarkierung einschließlich dem folgenden Leerzeichen - wird also rechtsbündig in eine Box der Breite 1\Unit{em} gesetzt. - Die folgenden Zeilen der Fußnote werden gegenüber dem linken Rand - ebenfalls um 1\Unit{em} eingezogen. - - Eine weitere, oft gefragte Formatierung sind linksbündige - Fußnoten. Diese können mit folgender Definition erhalten werden: - \begin{small} -\begin{verbatim} - \deffootnote{1.5em}{1em}{% - \makebox[1.5em][l]{\thefootnotemark}} -\end{verbatim} - \end{small} - - Sollen jedoch die Fußnoten insgesamt lediglich in einer anderen - Schriftart, beispielsweise serifenlos gesetzt werden, so ist dies - ganz einfach mit Hilfe der Anweisungen aus - \autoref{sec:maincls.fontOptions} zu lösen: - \begin{small} -\begin{verbatim} - \setkomafont{footnote}{\sffamily} -\end{verbatim} - \end{small} -\end{Example} -Wie die Beispiele zeigen, ermöglicht {\KOMAScript} mit dieser -einfachen Benutzerschnittstelle eine große Vielfalt unterschiedlicher -Fußnotenformatierungen. -% -\EndIndex{Cmd}{deffootnote}% -\EndIndex{Cmd}{deffootnotemark}% -\EndIndex{Cmd}{thefootnotemark}% -\EndIndex{Cmd}{textsuperscript}% - - -\subsection{Listen} -\label{sec:maincls.lists} -\BeginIndex[indexother]{}{Listen} - -{\LaTeX} und die Standardklassen bieten verschiedene Umgebungen -für Listen. All diese Umgebungen bietet {\KOMAScript} -selbstverständlich auch, teilweise jedoch mit leichten -Abwandlungen oder Erweiterungen. Grundsätzlich gilt, dass Listen --- auch unterschiedlicher Art -- bis zu einer Tiefe von vier -Listen geschachtelt werden können. Eine tiefere Schachtelung wäre -auch aus typografischen Gründen kaum sinnvoll, da genaugenommen -schon mehr als drei Ebenen nicht mehr überblickt werden können. -Ich empfehle in solchen Fällen, die eine große Liste in mehrere -kleinere Listen aufzuteilen. - -\begin{Declaration} - \Environment{itemize}\\ - \Macro{item}\\ - \Macro{labelitemi}\\ - \Macro{labelitemii}\\ - \Macro{labelitemiii}\\ - \Macro{labelitemiv} -\end{Declaration}% -\BeginIndex{Env}{itemize}% -\BeginIndex{Cmd}{item}% -\BeginIndex{Cmd}{labelitemi}% -\BeginIndex{Cmd}{labelitemii}% -\BeginIndex{Cmd}{labelitemiii}% -\BeginIndex{Cmd}{labelitemiv}% -Die einfachste Form einer Liste ist die Stichpunkt- oder -\Environment{itemize}-Liste. Die Benutzer einer unbeliebten -Textverarbeitung nennen diese Form der Liste auch gerne -\emph{Bulletpoints}. Vermutlich können sie sich nicht vorstellen, dass -je nach Ebene auch ein anderes Zeichen als ein fetter Punkt zur -Einleitung eines Stichpunkts verwendet werden kann. Bei {\KOMAScript} -werden je nach Ebene folgende Zeichen verwendet: "`{\labelitemi}"', -"`{\labelitemii}"', "`{\labelitemiii}"' und "`{\labelitemiv}"'. Die -Definition der Zeichen für die einzelnen Ebenen sind in den Makros -\Macro{labelitemi}, \Macro{labelitemii}, \Macro{labelitemiii} und -\Macro{labelitemiv} abgelegt. Sie können mit \Macro{renewcommand} -umdefiniert werden. Die einzelnen Stichpunkte werden mit \Macro{item} -eingeleitet. -\begin{Example} - Sie haben eine einfache Aufzählung, die in mehreren Ebenen - geschachtelt ist. Sie schreiben beispielsweise: - \begin{small} -\begin{verbatim} - \minisec{Die Fahrzeuge im Spiel} - \begin{itemize} - \item Flugzeuge - \begin{itemize} - \item Doppeldecker - \item Jets - \item Transportmaschinen - \begin{itemize} - \item einmotorig - \begin{itemize} - \item{düsengetrieben} - \item{propellergetrieben} - \end{itemize} - \item mehrmotorig - \end{itemize} - \item Drehflügler - \end{itemize} - \item Motorräder - \begin{itemize} - \item historisch korrekt - \item futurisch nicht real - \end{itemize} - \item Automobile - \begin{itemize} - \item Personenwagen - \item Lastwagen - \end{itemize} - \end{itemize} -\end{verbatim} - \end{small} - Anschließend erhalten Sie: - \begin{ShowOutput}[\baselineskip] - \minisec{Die Fahrzeuge im Spiel} - \begin{itemize} - \item Flugzeuge - \begin{itemize} - \item Doppeldecker - \item Jets - \item Transportmaschinen - \begin{itemize} - \item einmotorig - \begin{itemize} - \item{düsengetrieben} - \item{propellergetrieben} - \end{itemize} - \item mehrmotorig - \end{itemize} - \item Drehflügler - \end{itemize} - \item Motorräder - \begin{itemize} - \item historisch korrekt - \item futurisch nicht real - \end{itemize} - \item Automobile - \begin{itemize} -% \item Rennwagen - \item Personenwagen - \item Lastwagen - \end{itemize} -% \item Fahrräder - \end{itemize} - \end{ShowOutput} -\end{Example} -% -\EndIndex{Env}{itemize}% -\EndIndex{Cmd}{item}% -\EndIndex{Cmd}{labelitemi}% -\EndIndex{Cmd}{labelitemii}% -\EndIndex{Cmd}{labelitemiii}% -\EndIndex{Cmd}{labelitemiv}% - - -\begin{Declaration} - \Environment{enumerate}\\ - \Macro{item}\\ - \Macro{theenumi}\\ - \Macro{theenumii}\\ - \Macro{theenumiii}\\ - \Macro{theenumiv}\\ - \Macro{labelenumi}\\ - \Macro{labelenumii}\\ - \Macro{labelenumiii}\\ - \Macro{labelenumiv} -\end{Declaration}% -\BeginIndex{Env}{enumerate}% -\BeginIndex{Cmd}{item}% -\BeginIndex{Cmd}{theenumi}% -\BeginIndex{Cmd}{theenumii}% -\BeginIndex{Cmd}{theenumiii}% -\BeginIndex{Cmd}{theenumiv}% -\BeginIndex{Cmd}{labelenumi}% -\BeginIndex{Cmd}{labelenumii}% -\BeginIndex{Cmd}{labelenumiii}% -\BeginIndex{Cmd}{labelenumiv}% -Die nummerierte Liste ist ebenfalls sehr häufig zu finden und bereits -vom {\LaTeX}-Kern vorgesehen. Die Nummerierung\Index{Nummerierung} -erfolgt je nach Ebene in unterschiedlicher Art: mit arabischen Zahlen, -mit Kleinbuchstaben, mit kleinen römischen Zahlen und mit -Großbuchstaben. Die Art der Nummerierung wird dabei über die Makros -\Macro{theenumi} bis \Macro{theenumiv} festgelegt. Das Format der -Ausgabe wird von den Makros \Macro{labelenumi} bis \Macro{labelenumiv} -bestimmt. Dabei folgt auf den Wert der zweiten Ebene, der in -Kleinbuchstaben ausgegeben wird, eine runde Klammer, während die Werte -aller anderen Ebenen von einem Punkt gefolgt werden. Die einzelnen -Stichpunkte werden wieder mit \Macro{item} eingeleitet. -\begin{Example} - Übernehmen wir das Beispiel der \Environment{itemize}-Umgebung, - wobei wir jede \Environment{itemize}-Umgebung durch eine - \Environment{enumerate}-Umgebung ersetzen. Das Ergebnis wäre dann: - \begin{ShowOutput}[\baselineskip] - \minisec{Die Fahrzeuge im Spiel} - \begin{enumerate} - \item Flugzeuge - \begin{enumerate} - \item Doppeldecker - \item Jets - \item Transportmaschinen - \begin{enumerate} - \item einmotorig - \begin{enumerate} - \item{düsengetrieben}\label{xmp:maincls.jets} - \item{propellergetrieben} - \end{enumerate} - \item mehrmotorig - \end{enumerate} - \item Drehflügler - \end{enumerate} - \item Motorräder - \begin{enumerate} - \item historisch korrekt - \item futurisch nicht real - \end{enumerate} - \item Automobile - \begin{enumerate} -% \item Rennwagen - \item Personenwagen - \item Lastwagen - \end{enumerate} -% \item Fahrräder - \end{enumerate} - \end{ShowOutput} - Innerhalb der Aufzählung können ganz normal mit \Macro{label} Marken - gesetzt werden, auf die dann mit \Macro{ref} zugegriffen werden - kann. So wurde oben hinter den düsengetriebenen, einmotorigen - Flugzeugen mit "`\Macro{label}\PParameter{bsp:duesen}"' ein Label - gesetzt. Der \Macro{ref}-Wert ist dann "`\ref{xmp:maincls.jets}"'. -\end{Example} -% -\EndIndex{Env}{enumerate}% -\EndIndex{Cmd}{item}% -\EndIndex{Cmd}{theenumi}% -\EndIndex{Cmd}{theenumii}% -\EndIndex{Cmd}{theenumiii}% -\EndIndex{Cmd}{theenumiv}% -\EndIndex{Cmd}{labelenumi}% -\EndIndex{Cmd}{labelenumii}% -\EndIndex{Cmd}{labelenumiii}% -\EndIndex{Cmd}{labelenumiv}% - - -\begin{Declaration} - \Environment{description}\\ - \Macro{item}\OParameter{Stichwort} -\end{Declaration}% -\BeginIndex{Env}{description}% -\BeginIndex{Cmd}{item}% -Eine weitere Listenform ist die Stichwortliste. Sie dient in -erster Linie der Beschreibung einzelner Begriffe. Diese werden -als optionale Parameter bei \Macro{item} angegeben. Die -Schriftart\Index{Schriftart}\ChangedAt{v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}}, % -die für die Hervorhebung des Stichworts verwendet wird, kann mit Hilfe -der in \autoref{sec:maincls.font} beschriebenen Anweisungen für -das Element -\FontElement{descriptionlabel}\IndexFontElement{descriptionlabel} (siehe -\autoref{tab:maincls.elementsWithoutText}) geändert werden. In der -Voreinstellung wird \Macro{sffamily}""\Macro{bfseries} verwendet. -\begin{Example} - Sie wollen, dass die Stichworte statt serifenlos und fett lediglich - fett aber in der Standardschriftart ausgegeben werden. Mit - \begin{small} -\begin{verbatim} - \setkomafont{descriptionlabel}{\normalfont\bfseries} -\end{verbatim} - \end{small} - definieren Sie daher die Schrift entsprechend um. - - Ein Beispiel für die Ausgabe einer Stichwortliste ist die Aufzählung - der Seitenstile in \autoref{sec:maincls.pageStyle}. Der Quelltext - dazu lautet (stark gekürzt): - \begin{small} -\begin{verbatim} - \begin{description} - \item[empty] ist der Seitenstil, bei dem Kopf- und - Fußzeile vollständig leer bleiben. - \item[plain] ist der Seitenstil, bei dem keinerlei - Kolumnentitel verwendet wird. - \item[headings] ist der Seitenstil für automatische - Kolumnentitel. - \item[myheadings] ist der Seitenstil für manuelle - Kolumnentitel. - \end{description} -\end{verbatim} - \end{small} - Diese gekürzte Version ergibt: - \begin{ShowOutput} - \begin{description} - \item[empty] ist der Seitenstil, bei dem Kopf- und - Fußzeile vollständig leer bleiben. - \item[plain] ist der Seitenstil, bei dem keinerlei - Kolumnentitel verwendet wird. - \item[headings] ist der Seitenstil für automatische - Kolumnentitel. - \item[myheadings] ist der Seitenstil für manuelle - Kolumnentitel. - \end{description} - \end{ShowOutput} -\end{Example} -% -\EndIndex{Env}{description}% -\EndIndex{Cmd}{item}% - - -\begin{Declaration} - \Environment{labeling}\OParameter{Trennzeichen}\Parameter{längstes - Muster}\\ - \Macro{item}\OParameter{Schlüsselwort} -\end{Declaration}% -\BeginIndex{Env}{labeling}% -\BeginIndex{Cmd}{item}% -Eine andere Form der Stichwortliste ist nur bei den -{\KOMAScript}-Klassen gegeben: die \Environment{labeling}-Umgebung. Im -Unterschied zur \Environment{description}-Umgebung kann hier ein -Muster angegeben werden, dessen Länge die Einrücktiefe bei allen -Stichpunkten ergibt. Darüber hinaus kann zwischen Stichpunkt und -Beschreibungstext ein optionales \PName{Trennzeichen} festgelegt -werden. -\begin{Example} - Wir schreiben das Beispiel der \Environment{description}-Umgebung - etwas um: - \begin{small} -\begin{verbatim} - \begin{labeling}[~--]{% - \usekomafont{descriptionlabel}myheadings} - \item[\usekomafont{descriptionlabel}empty] - Seitenstil für leere Seiten ohne Kopf und Fuß - \item[\usekomafont{descriptionlabel}plain] - Seitenstil für Kapitelanfänge ganz ohne Kolumnentitel - \item[\usekomafont{descriptionlabel}headings] - Seitenstil für automatische Kolumnentitel - \item[\usekomafont{descriptionlabel}myheadings] - Seitenstil für manuelle Kolumnentitel - \end{labeling} -\end{verbatim} - \end{small} - Als Ergebnis erhalten wir dann: - \begin{ShowOutput} - \begin{labeling}[~--]{\usekomafont{descriptionlabel}myheadings} - \item[\usekomafont{descriptionlabel}empty] Seitenstil für leere - Seiten ohne Kopf und Fuß - \item[\usekomafont{descriptionlabel}plain] Seitenstil für - Kapitelanfänge ganz ohne Kolumnentitel - \item[\usekomafont{descriptionlabel}headings] Seitenstil für - automatische Kolumnentitel - \item[\usekomafont{descriptionlabel}myheadings] Seitenstil für - manuelle Kolumnentitel - \end{labeling} - \end{ShowOutput} - Wie in diesem Beispiel zu sehen ist, muss eine eventuell geforderte - Schriftumschaltung bei dieser Umgebung sowohl im Muster als auch im - optionalen Parameter jeder \Macro{item}-Anweisung wiederholt - werden. -\end{Example} -Gedacht war die Umgebung ursprünglich für Strukturen wie -"`Voraussetzung, Aussage, Beweis"' oder "`Gegeben, Gesucht, Lösung"' -wie man sie in Vorlesungsskripten häufiger findet. Inzwischen findet -die Umgebung aber ganz unterschiedliche Anwendungen. So wurde die -Umgebung für Beispiele in dieser Anleitung mit Hilfe der -\Environment{labeling}-Umgebung definiert. -% -\EndIndex{Env}{labeling}% -\EndIndex{Cmd}{item}% - - -\begin{Declaration} - \Environment{verse} -\end{Declaration}% -\BeginIndex{Env}{verse}% -Die \Environment{verse}-Umgebung wird normalerweise nicht als -Listenumgebung wahrgenommen, da hier nicht mit \Macro{item} gearbeitet -wird. Stattdessen wird wie innerhalb der -\Environment{flushleft}-Umgebung mit festen Zeilenumbrüchen -gearbeitet. Intern handelt es sich jedoch sowohl bei den -Standardklassen als auch bei {\KOMAScript} durchaus um eine -Listenumgebung. - -Die \Environment{verse}-Umgebung findet hauptsächlich für -Gedichte\Index{Gedichte} Anwendung. Dabei werden die Zeilen links und -rechts eingezogen. Einzelne Verse werden mit einem festen -Zeilenumbruch, also mit \verb|\\| beendet. Strophen werden ganz normal -als Absatz gesetzt, also durch eine Leerzeile getrennt. Häufig findet -stattdessen auch \Macro{medskip}\IndexCmd{medskip} oder -\Macro{bigskip}\IndexCmd{bigskip} Verwendung. Will man verhindern, -dass am Ende eines Verses ein Seitenumbruch erfolgt, so verwendet man -ganz normal \verb|\\*| an Stelle von \verb|\\|. -\begin{Example} - Als Beispiel ein kurzes Gedicht von Wilhelm Busch: - \begin{small} -\begin{verbatim} - \begin{verse} - Wenn einer, der mit Mühe kaum\\* - Gekrochen ist auf einen Baum,\\* - Schon meint, dass er ein Vogel wär,\\* - So irrt sich der. - \end{verse} -\end{verbatim} - \end{small} - Mit dem Resultat: - \begin{ShowOutput} - \begin{verse} - Wenn einer, der mit Mühe kaum\\* - Gekrochen ist auf einen Baum,\\* - Schon meint, dass er ein Vogel wär,\\* - So irrt sich der. - \end{verse} - \end{ShowOutput} - Bei einem sehr langen Vers kann mit \verb|\\*| allerdings nicht - verhindert werden, dass innerhalb des Verses ein Seitenumbruch - erfolgt. Dies wäre beispielsweise hier möglich: - \begin{ShowOutput} - \begin{verse} - Der Philosoph wie der Hausbesitzer hat immer Reparaturen.\\ - \bigskip - Wer dir sagt, er hätte noch nie gelogen, dem traue nicht, mein - Sohn. - \end{verse} - \end{ShowOutput} - Hier noch zwei Sprüche, die man immer bedenken sollte, wenn man mit - scheinbar seltsamen Fragen zu {\LaTeX} oder den dazugehörigen Antworten - konfrontiert ist: - \begin{ShowOutput} - \begin{verse} - Wir mögen's keinem gerne gönnen,\\* - Dass er was kann, was wir nicht können.\\ - \bigskip - Wie klein ist das, was einer ist,\\* - Wenn man's mit seinem Dünkel misst. - \end{verse} - \end{ShowOutput} - Hier fand übrigens \Macro{bigskip} Anwendung, um die beiden Sprüche - voneinander zu trennen. -\end{Example} -% -\EndIndex{Env}{verse}% - - -\begin{Declaration} - \Environment{quote}\\ - \Environment{quotation} -\end{Declaration}% -\BeginIndex{Env}{quote}% -\BeginIndex{Env}{quotation}% -Diese beiden Umgebungen sind intern ebenfalls Listenumgebungen und -sowohl bei den Standardklassen als auch bei {\KOMAScript} zu finden. -Beide Umgebungen setzen Blocksatz, der sowohl rechts als auch links -eingezogen ist. Verwendet werden die Umgebungen häufig, um längere -Zitate\Index{Zitate} abzusetzen. Der Unterschied zwischen beiden liegt -in der Art und Weise, wie Absätze abgesetzt werden. Während bei -\Environment{quote} Absätze durch vertikalen Abstand gekennzeichnet -werden, wird bei \Environment{quotation} mit horizontalem Einzug der -ersten Zeile eines Absatzes gearbeitet. Dies gilt auch für den ersten -Absatz einer \Environment{quotation}-Umgebung. Wollen Sie dort den -Einzug verhindern, müssen Sie die -\Macro{noindent}-Anweisung\IndexCmd{noindent} voranstellen. -\begin{Example} - Sie wollen eine kleine Anekdote hervorheben. Also schreiben Sie - folgende \Environment{quotation}-Umgebung: - % - \begin{small} -\begin{verbatim} - Ein kleines Beispiel für eine Anekdote: - \begin{quotation} - Es klingelt an der Tür eines Pfarrhauses in Stuttgart. - Als die Haushälterin öffnet, steht ein unrasierter Mann - in einem reichlich schäbigen Mantel vor der Tür und hält - seine Strickmütze in der Hand. - - "`Gute Frau, ich habe seit drei Tagen nichts gegessen"', - verkündet der Mann in bestem Hochdeutsch aber recht - gequältem Ton, der bestens zu seinem Gesichtsausdruck - passt. - - Die Frau schüttelt mitleidig den Kopf. - - "`Guda Moh, Sie missat sich halt zwinga!"' - \end{quotation} -\end{verbatim} - \end{small} - Das Ergebnis ist dann: - \begin{ShowOutput} - Ein kleines Beispiel für eine Anekdote: - \begin{quotation} - Es klingelt an der Tür eines Pfarrhauses in Stuttgart. Als die - Haushälterin öffnet, steht ein unrasierter Mann in einem - reichlich schäbigen Mantel vor der Tür und hält seine - Strickmütze in der Hand. - - "`Gute Frau, ich habe seit drei Tagen nichts gegessen"', - verkündet der Mann in bestem Hochdeutsch aber recht gequältem - Ton, der bestens zu seinem Gesichtsausdruck passt. - - Die Frau schüttelt mitleidig den Kopf. - - "`Guda Moh, Sie missat sich halt zwinga!"' - \end{quotation} - \end{ShowOutput} - % - Wenn Sie stattdessen eine \Environment{quote}-Umgebung - verwenden, sieht das Ganze so aus: - % - \begin{ShowOutput} - Ein kleines Beispiel für eine Anekdote: - \begin{quote}\setlength{\parskip}{4pt plus 2pt minus 2pt} - Es klingelt an der Tür eines Pfarrhauses in Stuttgart. Als die - Haushälterin öffnet, steht ein unrasierter Mann in einem - reichlich schäbigen Mantel vor der Tür und hält seine - Strickmütze in der Hand. - - "`Gute Frau, ich habe seit drei Tagen nichts gegessen"', - verkündet der Mann in bestem Hochdeutsch aber recht gequältem - Ton, der bestens zu seinem Gesichtsausdruck passt. - - Die Frau schüttelt mitleidig den Kopf. - - "`Guda Moh, Sie missat sich halt zwinga!"' - \end{quote} - \end{ShowOutput} - % -\end{Example} -% -\EndIndex{Env}{quote}% -\EndIndex{Env}{quotation}% - - -\begin{Declaration} - \Environment{addmargin}\OParameter{linker Einzug}\Parameter{Einzug}\\ - \Environment{addmargin*}\OParameter{innerer Einzug}\Parameter{Einzug} -\end{Declaration} -\BeginIndex{Env}{addmargin}% -Wie die \Environment{quote} und \Environment{quotation} handelt es -sich bei \Environment{addmargin} um eine Umgebung, die den -Rand\Index{Rand} verändert. Im Unterschied zu den beiden -erstgenannten Umgebungen kann der Anwender jedoch bei -\Environment{addmargin} wählen, um welchen Wert der Rand verändert -werden kann. Des Weiteren verändert die Umgebung den Absatzeinzug und -den Absatzabstand nicht. - -Ist nur das obligatorische Argument \PName{Einzug} -angegeben, so wird der Inhalt der Umgebung rechts und links um diesen -Wert eingezogen. Ist das optionale Argument \PName{linker Einzug} -hingegen angegeben, so wird links abweichend von \PName{Einzug} der -Wert \PName{linker Einzug} zum Rand addiert. - -Die Sternvariante \Environment{addmargin*} unterscheidet sich nur im -doppelseitigen Satz von der Variante ohne Stern. Wobei der Unterschied -auch dann nur auf"|tritt, wenn das optionale Argument \PName{innerer - Einzug} verwendet wird. Dabei wird dann der Wert von \PName{innerer - Einzug} zum inneren Randanteil der Seite addiert. Dies ist bei -rechten Seiten der linke Rand der Seite, bei linken Seiten jedoch der -rechte Rand der Seite. \PName{Einzug} gilt dann für den jeweils -anderen Rand. - -Bei beiden Varianten der Umgebung sind für alle Parameter auch -negative Werte erlaubt. Damit kann man erreichen, dass die Umgebung in -den Rand hineinragt. -\begin{Example} - Angenommen, Sie schreiben eine Anleitung, in der kurze - Quellcode-Beispiele enthalten sind. Um diese sehr stark - hervorzuheben, sollen sie mit horizontalen Linien vom Text abgesetzt - und leicht in den äußeren Rand verschoben werden. Sie definieren - sich dafür zunächst eine Umgebung: - \begin{small} -\begin{verbatim} - \newenvironment{QuellcodeRahmen}{% - \begin{addmargin*}[1em]{-1em}% - \begin{minipage}{\linewidth}% - \rule{\linewidth}{2pt}% - }{% - \rule[.25\baselineskip]{\linewidth}{2pt}% - \end{minipage}% - \end{addmargin*}% - } -\end{verbatim} - \end{small} - Wird obiger Quellcode in einer solchen Umgebung gesetzt, so ergibt - sich: - \begin{ShowOutput} - \newenvironment{QuellcodeRahmen}{% - \begin{addmargin*}[1em]{-1em}% - \begin{minipage}{\linewidth}% - \rule{\linewidth}{2pt}% - }{% - \rule[.25\baselineskip]{\linewidth}{2pt}% - \end{minipage}% - \end{addmargin*}% - } - Sie definieren sich oder überhaupt zunächst die folgende Umgebung: - \begin{QuellcodeRahmen} -\begin{verbatim} -\newenvironment{\QuellcodeRahmen}{% - \begin{addmargin*}[1em]{-1em}% - \begin{minipage}{\linewidth}% - \rule{\linewidth}{2pt}% -}{% - \rule[.25\baselineskip]{\linewidth}{2pt}% - \end{minipage}% - \end{addmargin*}% -} -\end{verbatim} - \end{QuellcodeRahmen} - Das mag praktisch sein oder unpraktisch, zumindest jedoch zeigt es, - wie die Umgebung verwendet werden kann. - \end{ShowOutput} - Das optionale Argument der \Environment{addmargin*}-Umgebung sorgt - dafür, dass der innere Rand um den Wert - 1\Unit{em} vergrößert wird. Dafür wird der äußere - Rand um den negativen Wert vergrößert, also in Wirklichkeit um - 1\Unit{em} verkleinert. Dies resultiert in einer - Verschiebung um 1\Unit{em} nach außen. Selbstverständlich kann statt - \PValue{1em} auch eine Länge, beispielsweise - \PValue{2\Macro{parindent}}, verwendet werden. -\end{Example} -Ein Problem mit der \Environment{addmargin*}-Umgebung soll nicht -verschwiegen werden. Tritt ein Seitenumbruch mitten in einer -\Environment{addmargin*}-Umgebung auf, so findet der Einzug auf -der zweiten Seite vertauscht statt. Das heißt, dass der \PName{innere - Einzug} plötzlich außen vorgenommen wird. Es empfiehlt sich -daher, in dieser Umgebung den Seitenumbruch ganz zu verhindern. Das -kann man erreichen, indem man zusätzlich eine \Macro{parbox} oder -wie in obigem Beispiel eine \Environment{minipage} verwendet. Dabei -wird von dem Umstand Gebrauch gemacht, dass weder das Argument einer -\Macro{parbox} noch der Inhalt einer \Environment{minipage} umbrochen -wird. Leider handeln Sie sich damit einen anderen Nachteil ein: Seiten -können unter Umständen nicht mehr korrekt gefüllt werden. Dies führt -dann auch zu entsprechenden Warnungen. - -Ob eine Seite eine linke oder eine rechte Seite ist, kann übrigens -zuverlässig nicht beim ersten \LaTeX-Durchlauf festgestellt -werden. Siehe dazu die Erklärung zur Anweisung \Macro{ifthispageodd}. -% -\EndIndex{Env}{addmargin}% - - -\begin{Explain} - Erlauben Sie mir noch eine abschließende Bemerkung zu den - Listenumgebungen. Im Internet und im Support wird häufig danach - gefragt, warum nach einer Listenumgebung ein Einzug\Index{Einzug} - wie bei einem Absatz erfolge. Tatsächlich ist dies gar nicht der - Fall, sondern der Effekt resultiert daraus, dass der Anwender einen - Absatz verlangt. Bei {\LaTeX} werden Leerzeilen als Absatz - interpretiert. Dies gilt auch vor und nach Listenumgebungen. Soll - eine Listenumgebung also innerhalb eines Absatzes gesetzt werden, so - ist weder davor noch danach eine Leerzeile zu setzen. Um die - Umgebung trotzdem in der \LaTeX-Datei besser vom Rest abzusetzen, - kann man davor und dahinter eine leere Kommentarzeile setzen, also - eine Zeile, die direkt mit einem Prozentzeichen beginnt und nichts - weiter enthält.\par -\end{Explain} -\EndIndex[indexother]{}{Listen} - -\subsection{Randnotizen} -\label{sec:maincls.marginNotes} - -\begin{Declaration} - \Macro{marginpar}\OParameter{Randnotiz links}\Parameter{Randnotiz}\\ - \Macro{marginline}\Parameter{Randnotiz} -\end{Declaration}% -\BeginIndex{Cmd}{marginpar}% -\BeginIndex{Cmd}{marginline}% -Randnotizen\Index[indexmain]{Randnotizen} werden normalerweise bei -{\LaTeX} mit der Anweisung \Macro{marginpar} gesetzt. Sie werden -dabei im äußeren Rand gesetzt. Bei einseitigen Dokumenten wird -der rechte Rand verwendet. Zwar kann bei \Macro{marginpar} -optional eine abweichende Randnotiz angegeben werden, falls die -Randnotiz im linken Rand landet, jedoch werden Randnotizen immer -im Blocksatz ausgegeben. Die Erfahrung zeigt, dass bei -Randnotizen statt dem Blocksatz oft je nach Rand linksbündiger -oder rechtsbündiger Flattersatz zu bevorzugen ist. {\KOMAScript} -bietet hierfür die Anweisung \Macro{marginline}. -\begin{Example} - In der Einleitung ist an einer Stelle die Klassenangabe - \Class{scrartcl} im Rand zu finden. Diese kann mit: - \begin{small} -\begin{verbatim} - \marginline{\texttt{scrartcl}} -\end{verbatim} - \end{small} - erreicht werden.\footnote{Tatsächlich wurde nicht \Macro{texttt}, - sondern eine semantische Auszeichnung verwendet. Um nicht unnötig - zu verwirren, wurde diese im Beispiel ersetzt.} - - Statt \Macro{marginline} wäre auch die Verwendung von - \Macro{marginpar} möglich gewesen. Tatsächlich wird bei obiger - Anweisung intern nichts anders gemacht als: -\begin{verbatim} - \marginpar[\raggedleft\texttt{scrartcl}] - {\raggedright\texttt{scrartcl}} -\end{verbatim} - Letztlich ist \Macro{marginline} also nur eine abkürzende - Schreibweise. -\end{Example} - -\begin{Explain} - Leider funktioniert \Macro{marginpar} im - doppelseitigen\Index{doppelseitig} Layout nicht immer ganz korrekt. - Die Entscheidung, ob eine Randnotiz links oder rechts landet, wird - bereits bei der Auswertung von \Macro{marginpar} getroffen. - Verschiebt nun die Ausgaberoutine eine Randnotiz über einen - Seitenumbruch auf die nächste Seite, so ist die Formatierung nicht - mehr korrekt. Dieses Verhalten ist tief in {\LaTeX} verankert und - wurde vom \LaTeX3-Team deshalb als Feature deklariert. - \Macro{marginline} ändert nichts an diesem unerwünschten - Verhalten.\par -\end{Explain} -% -\EndIndex{Cmd}{marginpar}% -\EndIndex{Cmd}{marginline}% - - -\subsection{Tabellen und Abbildungen} -\label{sec:maincls.floats} - -\begin{Explain} - {\LaTeX} bietet mit den Fließumgebungen einen sehr leistungsfähigen - und komfortablen Mechanismus für die automatische Anordnung von - Abbildungen\Index{Abbildungen} und Tabellen\Index{Tabellen}. - Genaugenommen sollte statt von "`Tabellen"' von "`Tafeln"' die Rede - sein. Dies wäre auch zur Unterscheidung der Umgebungen - \Environment{table}\IndexEnv{table} und - \Environment{tabular}\IndexEnv{tabular} von Vorteil. Es hat sich im - Deutschen aber für beides die Bezeichnung "`Tabelle"' eingebürgert. - Das kommt vermutlich daher, dass man in - \Environment{table}-Umgebungen üblicherweise - \Environment{tabular}-Umgebungen setzt. - - Häufig werden die Fließumgebungen\Index[indexmain]% - {Fliessumgebung=Fließumgebung} von Anfängern nicht richtig - verstanden. So wird oft die Forderung aufgestellt, eine Tabelle oder - Abbildung genau an einer bestimmten Position im Text zu setzen. Dies - ist jedoch nicht erforderlich, da auf Fließumgebungen im Text über - eine Referenz verwiesen wird. Es ist auch nicht sinnvoll, da eine - solches Objekt an einer Stelle nur dann gesetzt werden kann, wenn - auf der Seite noch genügend Platz für das Objekt vorhanden ist. Ist - dies nicht der Fall, müsste das Objekt auf die nächste Seite - umbrochen werden und auf der aktuellen Seite würde ein - möglicherweise sehr großer leerer Raum bleiben. - - Häufig findet sich in einem Dokument auch bei jedem Fließobjekt das - gleiche optionale Argument zur Platzierung des Objekts. Auch dies - ist nicht sinnvoll. In solchen Fällen sollte man besser den - Standardwert global ändern. Näheres dazu ist \cite{DANTE:FAQ} zu - entnehmen.\par -\end{Explain} - -Ein wichtiger Hinweis sei diesem Abschnitt noch vorangestellt: Die -meisten Mechanismen, die hier vorgestellt werden und über die -Fähigkeiten der Standardklassen hinaus gehen, funktionieren nicht -mehr, wenn Sie ein Paket verwenden, das in die Generierung von -Tabellen- und Abbildungstiteln eingreift und deren Aussehen -verändert. Dies sollte selbstverständlich sein, wird aber leider -häufig nicht bedacht. - -\begin{Declaration} - \Macro{caption}\OParameter{Verzeichniseintrag}\Parameter{Titel}\\ - \Macro{captionbelow}\OParameter{Verzeichniseintrag}\Parameter{Titel}\\ - \Macro{captionabove}\OParameter{Verzeichniseintrag}\Parameter{Titel} -\end{Declaration}% -\BeginIndex{Cmd}{caption}% -\BeginIndex{Cmd}{captionabove}% -\BeginIndex{Cmd}{captionbelow}% -Tabellen und Abbildungen werden bei den Standardklassen mit Hilfe -der Anweisung \Macro{caption} mit einem \PName{Titel} in Form -einer Unterschrift\Index{Tabellenunterschrift} versehen. Bei -Abbildungen ist dies grundsätzlich korrekt. Bei Tabellen wird -gestritten, ob der \PName{Titel} als Überschrift über oder -konsistent mit der Bildunterschrift\Index{Bildunterschrift} unter -die Tabelle gehört. Daher bietet \KOMAScript{} im Gegensatz zu den -Standardklassen die Anweisungen \Macro{captionbelow} für -\PName{Titel} in Form von Unterschriften und \Macro{captionabove} -für \PName{Titel} in Form von Überschriften. \Macro{caption} -verhält sich bei Abbildungen immer wie \Macro{captionbelow}. Bei -Tabellen lässt sich das Verhalten von \Macro{caption} hingegen -mit den Optionen -\Option{tablecaptionabove}\IndexOption{tablecaptionabove} und -\Option{tablecaptionbelow}\IndexOption{tablecaptionbelow} steuern -(siehe \autoref{sec:maincls.formattingOptions}). Aus Gründen der -Kompatibilität ist voreingestellt, dass sich \Macro{caption} auch -bei Tabellen wie \Macro{captionbelow} verhält. -% -\begin{Example} - Sie wollen mit - Tabellenüberschriften\Index{Tabellenueberschrift=Tabellenüberschrift} - statt mit Tabellenunterschriften arbeiten, weil Sie teilweise - Tabellen haben, die über mehr als eine Seite gehen. Mit den - Standardklassen bliebe Ihnen nur die Möglichkeit: - \begin{small} -\begin{verbatim} - \begin{table} - \caption{Dies ist nur eine Beispieltabelle} - \begin{tabular}{llll} - Dies & ist & ein & Beispiel.\\\hline - Bitte & lassen & Sie & den \\ - Inhalt & dieser & Tabelle & unbeachtet. - \end{tabular} - \end{table} -\end{verbatim} - \end{small} - Damit hätten Sie das unschöne Ergebnis: - \begin{ShowOutput}\centering - {\usekomafont{caption}{\usekomafont{captionlabel}\tablename~30.2:} - Dies ist nur eine - Beispieltabelle}\\ - \begin{tabular}{llll} - Dies & ist & ein & Beispiel.\\\hline - Bitte & lassen & Sie & den \\ - Inhalt & dieser & Tabelle & unbeachtet. - \end{tabular} - \end{ShowOutput} - Bei \KOMAScript{} schreiben Sie hingegen: - \begin{small} -\begin{verbatim} - \begin{table} - \captionabove{Dies ist nur eine Beispieltabelle} - \begin{tabular}{llll} - Dies & ist & ein & Beispiel.\\\hline - Bitte & lassen & Sie & den \\ - Inhalt & dieser & Tabelle & unbeachtet. - \end{tabular} - \end{table} -\end{verbatim} - \end{small} - Sie erhalten dann das gewünschte Ergebnis: - \begin{ShowOutput}\centering - {\usekomafont{caption}{\usekomafont{captionlabel}\tablename~30.2:} - Dies ist nur eine - Beispieltabelle}\\\vskip\abovecaptionskip - \begin{tabular}{llll} - Dies & ist & ein & Beispiel.\\\hline - Bitte & lassen & Sie & den \\ - Inhalt & dieser & Tabelle & unbeachtet. - \end{tabular} - \end{ShowOutput} - Da Sie konsistent alle Tabellen mit Überschriften versehen, können - Sie stattdessen natürlich auch die Option \Option{tablecaptionabove} - setzen (siehe \autoref{sec:maincls.formattingOptions}). Dann genügt - es, wenn Sie wie bei den Standardklassen \Macro{caption} verwenden. - Sie erhalten trotzdem das Ergebnis von \Macro{captionabove}. -\end{Example} - -\begin{Explain} - Einige werden nun einwenden, dass man das Gleiche auch mit dem - \Package{topcapt}-Paket\IndexPackage{topcapt} und der dort - definierten Anweisung \Macro{topcaption} erreichen kann (siehe - \cite{package:topcapt}). - Dies ist jedoch nicht der Fall. \Macro{topcaption} bleibt von - Paketen, die direkt das \Macro{caption}-Makro umdefinieren - unberücksichtigt. Ein Beispiel dafür ist das - \Package{hyperref}-Paket (siehe \cite{package:hyperref}). - Demgegenüber sind \Macro{captionabove} und \Macro{captionbelow} so - implementiert, dass sich die Änderungen auch auf diese beiden - Anweisungen auswirken. - - Bei Verwendung des - \Package{longtable}-Pakets\IndexPackage{longtable} wird dafür - gesorgt, dass auch die Tabellenüberschriften, die innerhalb einer - \Environment{longtable}-Umgebung gesetzt werden, in Aussehen und - Form denen einer normalen \Environment{table}-Umgebung entsprechen. - Es gelten damit auch dieselben Einstellmöglichkeiten. Bitte beachten - Sie, dass beim \Package{longtable}-Paket normalerweise die maximale - Breite einer Tabellenüberschrift begrenzt werden kann und per - Voreinstellung auf 4\Unit{in} begrenzt ist (siehe - \cite{package:longtable}). Bei Verwendung von \KOMAScript{} - funktioniert der entsprechende Mechanismus aus \Package{longtable} - jedoch nur, wenn die Klassenoption \Option{origlongtable} (siehe - \autoref{sec:maincls.formattingOptions}) gesetzt wird. Ist das - Paket \Package{caption2}\IndexPackage{caption2} (siehe - \cite{package:caption2}) geladen, so werden die - Tabellenüberschriften von jenem Paket behandelt. - - Bitte beachten Sie, dass sich \Macro{captionabove} und \Macro{captionbelow} - innerhalb einer \Environment{float}-Umgebung, die mit Hilfe des - \Package{float}-Pakets\IndexPackage{float} definiert wurde, genau wie in - \cite{package:float} für die \Macro{caption}-Anweisung beschrieben - verhalten. In diesem Fall kontrolliert allein der float-Stil, ob es sich um - eine Überschrift oder um eine Unterschrift handelt. -\end{Explain} - - -\begin{Declaration} - \Environment{captionbeside}\OParameter{Verzeichniseintrag}% - \Parameter{Titel}\OParameter{Anordnung}\OParameter{Gesamtbreite}% - \OParameter{Offset}\\% - \Environment{captionbeside}\OParameter{Verzeichniseintrag}% - \Parameter{Titel}\OParameter{Anordnung}\OParameter{Gesamtbreite}% - \OParameter{Offset}\PValue{*} -\end{Declaration} -\BeginIndex{Env}{captionbeside}% -Neben \ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}}% -den Unter- und Überschriften findet man insbesondere bei kleineren -Abbildungen häufiger Beschreibungen, die neben der Abbildung gesetzt -werden. Dabei schließt normalerweise die Unterkante der Beschreibung -mit der Unterkante der Abbildung ab. Natürlich kann man mit etwas -Geschick und beispielsweise zwei \Macro{parbox}-Anweisungen -dergleichen auch in den Standardklassen erreichen. \KOMAScript{} -bietet jedoch eine spezielle Umgebung. Diese Umgebung kann innerhalb -der Gleitumgebungen verwendet werden. Der erste optionale Parameter -\PName{Verzeichniseintrag} und der obligatorische Parameter -\PName{Titel} entsprechen dabei genau den gleichnamigen Parametern von -\Macro{caption}, \Macro{captionabove} oder \Macro{captionbelow}. Der -\PName{Titel} wird dabei neben den Inhalt der Umgebung gesetzt. - -Ob der \PName{Titel} rechts oder links daneben gesetzt wird, kann mit -dem optionalen Parameter \PName{Anordnung} bestimmt werden. Es darf -genau einer der folgenden Buchstaben angegeben werden: -\begin{quote} -\begin{labeling}[--~]{\PValue[o]} -\item[\PValue{l}] links -\item[\PValue{r}] rechts -\item[\PValue{i}] innen, also auf rechten Seiten links und auf - linken Seiten rechts -\item[\PValue{o}] außen, also auf rechten Seiten rechts und auf - linken Seiten links -\end{labeling} -\end{quote} -Voreingestellt ist rechts neben dem Inhalt der Umgebung. Bei -Verwendung von \PValue{o} oder \PValue{i} für \emph{Anordnung} außen -oder innen werden unter Umständen zwei \LaTeX-Durchläufe benötigt, -um die korrekte Anordnung zu erreichen. - -Normalerweise nehmen der Inhalt der Umgebung und der \PName{Titel} die -gesamte verfügbare Breite ein. Es besteht jedoch die Möglichkeit, mit -dem optionalen Parameter \PName{Gesamtbreite} eine andere Breite -anzugeben. Diese kann auch größer als die Breite des Textkörpers -sein. - -Bei Angabe einer \PName{Gesamtbreite} wird die genutzte Breite -normalerweise bezüglich der Breite des Textkörpers zentriert. Mit dem -optionalen Argument \PName{Offset} kann stattdessen eine Verschiebung -relativ zum linken Rand angegeben werden. Ein positiver Wert -entspricht einer Verschiebung nach rechts, ein negativer Wert einer -Verschiebung nach links. Mit einem \PName{Offset} von 0\Unit{pt} -erfolgt die Ausgabe linksbündig. - -Wird hinter den optionalen Parameter \PName{Offset} noch ein Stern -gesetzt, so stellt der \PName{Offset} im doppelseitigen Druck auf -linken Seiten eine Verschiebung relativ zum rechten Rand dar. Ein -positiver Wert entspricht dann einer Verschiebung nach außen, während -ein negativer Wert für eine Verschiebung nach innen steht. Ein -\PName{Offset} von 0\Unit{pt} wäre dann also bündig zum inneren -Rand. Diese Variante benötigt unter Umständen zwei \LaTeX-Durchläufe, -um die korrekte Verschiebung zu erreichen. - -\begin{Example} - Ein Beispiel für die Verwendung der - \Environment{captionbeside}-Umgebung ist in - \autoref{fig:maincls.captionbeside} zu finden. Gesetzt wurde - diese Abbildung mit: - \begin{small} -\begin{verbatim} - \begin{figure} - \begin{captionbeside}[Beispiel f"ur Bildbeschreibung]% - {Eine Bildbeschreibung weder über noch unter der - Abbildung, sondern daneben}[i][\linewidth][2em]* - \fbox{% - \parbox[b][5\baselineskip][c]{.25\textwidth}{% - \hspace*{\fill}\KOMAScript\hspace*{\fill}\par}} - \end{captionbeside} - \label{fig:maincls.captionbeside} - \end{figure} -\end{verbatim} - \end{small} - \begin{figure} - \begin{captionbeside}[Beispiel f"ur Bildbeschreibung]% - {Eine Bildbeschreibung weder über noch unter der Abbildung, - sondern daneben}[i][\linewidth][2em]* - \fbox{% - \parbox[b][5\baselineskip][c]{.25\textwidth}{% - \hspace*{\fill}\KOMAScript\hspace*{\fill}\par}} - \end{captionbeside} - \label{fig:maincls.captionbeside} - \end{figure} - Die Gesamtbreite ist also die aktuell verfügbare Breite - \PValue{\Macro{linewidth}}. Diese wird jedoch um \PValue{2em} nach - außen verschoben. Der Titel oder die Beschreibung steht innen neben - der Abbildung. Damit erscheint die Abbildung selbst um 2\Unit{em} in - den Rand gerückt. -\end{Example} -% -\EndIndex{Env}{captionbeside} - - -\BeginIndex[indexother]{}{Schriftart} -Die Schriftart\ChangedAt{% - v2.8p}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} % -für die Beschreibung und das Label~-- "`Abbildung"' oder "`Tabelle"' -gefolgt von der Nummer und einem Trennzeichen -- kann über die in -\autoref{sec:maincls.font} beschriebenen Anweisungen verändert -werden. Zuständig sind hier die Elemente -\FontElement{caption}\IndexFontElement{caption} und -\FontElement{captionlabel}\IndexFontElement{captionlabel} (siehe -\autoref{tab:maincls.elementsWithoutText}). Dabei wird die -Schriftart für das Element \FontElement{caption} zunächst auch auf das -Element \FontElement{captionlabel} angewandt, bevor dessen spezifische -Schriftart Anwendung findet. Die Vorbelegungen sind -\autoref{tab:maincls.captionFont} zu entnehmen. -% -\begin{Example} - Sie wollen, dass Tabellen- und Abbildungsbeschreibungen in einer - kleineren Schriftart gesetzt werden. Also setzen Sie - beispielsweise in der Präambel Ihres Dokuments: - \begin{small} -\begin{verbatim} - \addtokomafont{caption}{\small} -\end{verbatim} - \end{small} - Außerdem hätten Sie gerne, dass das Label serifenlos und fett - gedruckt wird. Sie setzen also außerdem: - \begin{small} -\begin{verbatim} - \setkomafont{captionlabel}{\sffamily\bfseries} -\end{verbatim} - \end{small} - Wie Sie sehen, kann auch hier einfach eine Erweiterung der - Vorbelegung verwendet werden. -\end{Example} -% -\begin{table} - \centering% - \begin{tabular}{ll} - Element & Voreinstellung \\\hline\\[-1.75ex] - \FontElement{caption} & \Macro{normalfont} \\ - \FontElement{captionlabel} & \Macro{normalfont} - \end{tabular} - \caption{Schriftvoreinstellungen für die Elemente der Tabellen- oder - Abbildungsunterschrift bzw. -überschrift} - \label{tab:maincls.captionFont} -\end{table} -% -\EndIndex[indexother]{}{Schriftart} -% -\EndIndex{Cmd}{caption}% -\EndIndex{Cmd}{captionabove}% -\EndIndex{Cmd}{captionbelow}% - - -\begin{Explain} -\begin{Declaration} - \PValue{komaabove}\\ - \PValue{komabelow} -\end{Declaration}% -\BeginIndex{Floatstyle}{komaabove}% -\BeginIndex{Floatstyle}{komabelow}% -\OnlyAt{\Package{float}}Bei Verwendung des -\Package{float}-Pakets\IndexPackage{float} wird das Aussehen der damit -definierten Fließumgebungen allein vom \emph{float}-Stil bestimmt. Dies -schließt auch die Frage ein, ob mit Überschriften oder Unterschriften -gearbeitet wird. Im \Package{float}-Paket gibt es keinen vordefinierten Stil, -der im Aussehen dem von \KOMAScript{} entspricht und dieselben -Einstellmöglichkeiten (siehe unten) bietet. \KOMAScript{} definiert deshalb -zusätzlich die beiden Stile \PValue{komaabove} und \PValue{komabelow}. Diese -können bei Verwendung des \Package{float}-Pakets wie die dort definierten -Stile \PValue{plain}\IndexFloatstyle{plain}, -\PValue{boxed}\IndexFloatstyle{boxed} oder -\PValue{ruled}\IndexFloatstyle{ruled} aktiviert werden. Siehe dazu -\cite{package:float}. Beim Stil \PValue{komaabove} werden \Macro{caption}, -\Macro{captionabove} und \Macro{captionbelow} als Überschrift, beim Stil -\PValue{komabelow} als Unterschrift gesetzt. -% -\EndIndex{Floatstyle}{komaabove}% -\EndIndex{Floatstyle}{komabelow}% -\end{Explain} - - -\begin{Declaration} - \Macro{captionformat} -\end{Declaration}% -\BeginIndex{Cmd}{captionformat}% -Bei {\KOMAScript} gibt es verschiedene Eingriffsmöglichkeiten, um die -Formatierung der Beschreibung zu ändern. Die Änderung der Schriftart -wurde bereits erläutert. Das oder die Trennzeichen zwischen dem Label -und dem eigentlichen Beschreibungstext sind im Makro -\Macro{captionformat} abgelegt. Abweichend von allen anderen -\Macro{\dots}format-Anweisungen ist hier also nicht der Zähler, -sondern nur die auf den Zähler folgenden Angaben enthalten. Die -Originaldefinition lautet: -\begin{verbatim} - \newcommand*{\captionformat}{:\ } -\end{verbatim} -Auch diese kann mit \Macro{renewcommand} geändert werden. -\begin{Example} - Aus mir unerfindlichen Gründen wollen Sie als Trennzeichen - keinen Doppelpunkt gefolgt von einem Leerzeichen, sondern einen - Gedankenstrich einschließlich der notwendigen Leerzeichen. - Daher definieren Sie: - \begin{small} -\begin{verbatim} - \renewcommand*{\captionformat}{~--~} -\end{verbatim} - \end{small} - Diese Definition sollten Sie beispielsweise in die Präambel Ihres - Dokuments stellen. -\end{Example} -% -\EndIndex{Cmd}{captionformat}% - - -\begin{Declaration} - \Macro{figureformat}\\ - \Macro{tableformat} -\end{Declaration}% -\BeginIndex{Cmd}{figureformat}% -\BeginIndex{Cmd}{tableformat}% -Es wurde schon darauf hingewiesen, dass \Macro{captionformat} keine -Formatierung für das Label selbst enthält. Dieses sollte nun -keineswegs über Umdefinierung der Anweisungen für die Zählerausgabe, -\Macro{thefigure} oder \Macro{thetable}, verändert werden. Eine solche -Umdefinierung hätte nämlich auch Auswirkungen auf die Ausgabe von -\Macro{ref} oder der Verzeichnisse. Stattdessen bietet {\KOMAScript} -auch hier zwei \Macro{\dots format}-Anweisungen. Diese sind wie folgt -vordefiniert: -\begin{verbatim} - \newcommand*{\figureformat}{\figurename~\thefigure\autodot} - \newcommand*{\tableformat}{\tablename~\thetable\autodot} -\end{verbatim} -Sie können ebenfalls mit \Macro{renewcommand} eigenen Anforderungen -angepasst werden. -\begin{Example} - Hin und wieder wird gewünscht, dass die Beschreibungstexte ganz ohne - Label und natürlich auch ohne Trennzeichen ausgegeben werden. Bei - {\KOMAScript} genügen folgende Definitionen, um dies zu erreichen: - \begin{small} -\begin{verbatim} - \renewcommand*{\figureformat}{} - \renewcommand*{\tableformat}{} - \renewcommand*{\captionformat}{} -\end{verbatim} - \end{small} -\end{Example} -% -\EndIndex{Cmd}{figureformat}% -\EndIndex{Cmd}{tableformat}% - -\begin{Declaration} - \Macro{setcapindent}\Parameter{Einzug}\\ - \Macro{setcapindent*}\Parameter{XEinzug}\\ - \Macro{setcaphanging} -\end{Declaration}% -\BeginIndex{Cmd}{setcapindent}% -\BeginIndex{Cmd}{setcapindent*}% -\BeginIndex{Cmd}{setcaphanging}% -Wie bereits erwähnt wurde, werden in den Standardklassen die -Beschreibungen nicht hängend gesetzt. Das heißt: In mehrzeiligen -Beschreibungen beginnt die zweite Zeile direkt unter dem Labeltext. -Es gibt bei den Standardklassen auch keinen Mechanismus, dies direkt -zu beeinflussen. Bei {\KOMAScript} werden hingegen alle Zeilen ab der -zweiten so weit eingerückt, dass diese nicht mehr unter dem Label, -"`Abbildung \dots:"' oder "`Tabelle \dots:"', sondern unter dem -eigentlichen Text der ersten Zeile beginnen. - -Dieses Verhalten, das der Verwendung der Anweisung -\Macro{setcaphanging} entspricht, kann bei {\KOMAScript} jederzeit -durch Verwendung der Anweisung \Macro{setcapindent} oder -\Macro{setcapindent*} geändert werden. Dabei gibt der Parameter -\PName{Einzug} an, wie weit ab der zweiten Zeile eingerückt werden -soll. - -Soll nach dem Label und vor dem Beschreibungstext noch ein -Zeilenumbruch erfolgen, so definieren Sie die Einrücktiefe -\PName{XEinzug} der Beschreibung stattdessen mit der Sternvariante der -Anweisung: \Macro{setcapindent*}. - -Mit einem negativen \PName{Einzug} erreicht man hingegen, dass vor der -Beschreibung ebenfalls ein Umbruch erfolgt und nur die erste Zeile der -Beschreibung, nicht jedoch die folgenden, um -\PName{Einzug} -eingerückt werden. - -Ob einzeilige Beschreibungen wie mehrzeilige Beschreibungen gesetzt -werden oder eine Sonderbehandlung erfahren, wird über die -Klassenoptionen \Option{onelinecaption} und \Option{noonelinecaption} -gewählt. Siehe hierzu die Erklärung zu diesen Optionen in -\autoref{sec:maincls.layoutOptions}. - -\begin{Example} - Die Beispiele entnehmen Sie bitte den - Abbildungen~\ref{fig:maincls.caption.first} bis - \ref{fig:maincls.caption.last}. Dabei zeigt sich auch, dass bei geringer - Spaltenbreite der komplett hängende Einzug unvorteilhaft ist. Der - Quelltext der zweiten Abbildung sei hier mit abgewandelter - Unterschrift beispielhaft wiedergegeben: - \begin{small} -\begin{verbatim} - \begin{figure} - \setcapindent{1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption{Beispiel mit teilweise hängendem Einzug ab der - zweiten Zeile} - \end{figure} -\end{verbatim} - \end{small} - Wie zu sehen ist, kann die Formatierung also auch lokal innerhalb - der \Environment{figure}-Umgebung\IndexEnv{figure} geändert werden. - \begin{figure} - \typeout{^^J--- Ignore underfull and overfull \string\hbox:} - \addtokomafont{caption}{\small} - \addtokomafont{captionlabel}{\bfseries} - \centering% - \begin{minipage}{.9\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Beispiel f"ur Bildunterschrift]% - {\sloppy Entspricht der Standardeinstellung, also wie bei - Verwendung von \Macro{setcaphanging}} - \label{fig:maincls.caption.first} - \end{minipage} - \hspace{.02\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \setcapindent{1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Beispiel f"ur Bildunterschrift]% - {Mit teilweise h"ang"-endem Einzug ab der zweiten Zeile durch - Verwendung von \Macro{setcapindent}\PParameter{1em}} - \end{minipage} - \end{minipage} - - \vspace*{2ex}\noindent% - \begin{minipage}{.9\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \setcapindent*{1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Beispiel f"ur Bildunterschrift]% - {Mit h"angendem Einzug ab der zweiten Zeile und Umbruch vor - der Beschreibung durch Verwendung von - \Macro{setcapindent*}\PParameter{1em}} - \end{minipage} - \hspace{.02\linewidth} - \begin{minipage}[t]{.48\linewidth}\sloppy - \setcapindent{-1em} - \fbox{\parbox{.95\linewidth}{\centering{\KOMAScript}}} - \caption[Beispiel f"ur Bildunterschrift]% - {Mit Einzug lediglich in der zweiten Zeile und einem Umbruch - vor der Beschreibung durch Verwendung von - \Macro{setcapindent}\PParameter{-1em}} - \label{fig:maincls.caption.last} - \end{minipage} - \end{minipage} - \typeout{^^J--- Don't ignore underfull and overfull - \string\hbox:^^J} - \end{figure} -\end{Example} -% -\EndIndex{Cmd}{setcapindent}% -\EndIndex{Cmd}{setcapindent*}% -\EndIndex{Cmd}{setcaphanging}% - - -\begin{Declaration} - \Macro{setcapwidth}\OParameter{Ausrichtung}\Parameter{Breite}\\ - \Macro{setcapmargin}\OParameter{Rand links}\Parameter{Rand}\\ - \Macro{setcapmargin*}\OParameter{Rand innen}\Parameter{Rand} -\end{Declaration} -\BeginIndex{Cmd}{setcapwidth}% -\BeginIndex{Cmd}{setcapmargin}% -\BeginIndex{Cmd}{setcapmargin*}% -Mit% -\ChangedAt{v2.8q}{% - \Class{scrbook}\and\Class{scrreprt}\and\Class{scrartcl}} Hilfe -dieser drei Befehle kann die Breite und Anordnung der Beschreibung -beeinflusst werden. Normalerweise steht die gesamte Text- oder -Spaltenbreite für den Text der Beschreibung zur Verfügung. - -Mit der Anweisung \Macro{setcapwidth} kann diese \PName{Breite} -reduziert werden. Dabei gibt das obligatorische Argument die maximale -\PName{Breite} der Beschreibung an. Als optionales Argument kann genau -ein Buchstabe übergeben werden, der die horizontale Ausrichtung der -Beschreibung angibt. Die möglichen Ausrichtungen finden Sie in der -folgenden Liste. -\begin{quote} -\begin{labeling}[--~]{\PValue[o]} -\item[\PValue{l}] linksbündig -\item[\PValue{c}] zentriert -\item[\PValue{r}] rechtsbündig -\item[\PValue{i}] innen, also auf rechten Seiten linksbündig und auf - linken Seiten rechtsbündig -\item[\PValue{o}] außen, also auf rechten Seiten rechtsbündig und auf - linken Seiten linksbündig -\end{labeling} -\end{quote} -Die Ausrichtung innen und außen entspricht im einseitigen Satz -linksbündig und rechtsbündig. Innerhalb von -\Package{longtable}\IndexPackage{longtable}-Tabellen funktioniert die -Ausrichtung innen und außen nicht korrekt. Insbesondere werden -Beschreibungen von Folgeseiten bei diesen Tabellen immer nach den -Beschreibungen der ersten Teiltabelle ausgerichtet. Dies ist ein -konzeptionelles Problem des Paketes \Package{longtable}. - -Mit der Anweisung \Macro{setcapmargin} kann statt der Breite der -Beschreibung ein \PName{Rand} angegeben werden, der neben der -Beschreibung zusätzlich zum normalen Textrand eingehalten werden soll. -Sollen der Rand rechts und links nicht identisch gewählt werden, kann -mit dem optionalen Argument ein von \PName{Rand} abweichender -\PName{Rand links} von der Beschreibung eingestellt werden. Bei der -Sternvariante \Macro{setcapmargin*} wird statt dem \PName{Rand links} -im doppelseitigen Satz der \PName{Rand innen} abweichend definiert. -Hier ergibt sich bei -\Package{longtable}\IndexPackage{longtable}-Tabellen das gleiche -Problem wie bei der Ausrichtung außen oder innen bei der Anweisung -\Macro{setcapwidth}. Die Verwendung von \Macro{setcapmargin} oder -\Macro{setcapmargin*} schaltet außerdem die Option -\Option{noonelinecaption} (siehe -\autoref{sec:maincls.layoutOptions}) für die Beschreibungen ein, -die mit dieser Randeinstellung gesetzt werden. - -\begin{Explain} - \Package{longtable} packt die Beschreibung in eine Box, die auf - Folgeseiten nach Bedarf erneut ausgegeben wird. Bei der Ausgabe - einer Box werden die Makros, die bei der Erzeugung der Box - durchlaufen wurden, nicht erneut ausgewertet. Damit ist es - \KOMAScript{} unmöglich, die Randeinstellung im doppelseitigen Satz - auf geraden Seiten zu vertauschen. Dies wäre aber notwendig, um eine - Ausrichtung, die nach außen oder innen verschoben ist, zu - ermöglichen. - - Man kann übrigens auch negative Werte für \PName{Rand} und - \PName{Rand rechts} oder \PName{Rand außen} angeben. Dadurch - erreicht man, dass die Beschreibung in den entsprechenden Rand - hineinragt. -\end{Explain} - -\begin{Example} - Ein etwas ausgefallenes Problem ist, wenn die Bildunterschrift - zentriert unter einer Abbildung stehen und dabei genauso breit wie - die Abbildung selbst sein soll. Ist die Breite der Abbildung - bekannt, ist die Lösung mit \KOMAScript{} sehr einfach. Angenommen, - die Abbildung ist 8\Unit{cm} breit, so genügt: - \begin{small} -\begin{verbatim} - \setcapwidth[c]{8cm} -\end{verbatim} - \end{small} - unmittelbar vor \Macro{caption} oder \Macro{captionbelow}. Ist die - Breite nicht bekannt, so muss zunächst in der Präambel des Dokuments - eine Länge definiert werden: - \begin{small} -\begin{verbatim} - \newlength{\Abbildungsbreite} -\end{verbatim} - \end{small} - Nun kann in vielen Fällen die Breite direkt mit Hilfe der - \LaTeX-Anweisung \Macro{settowidth} (siehe \cite{latex:usrguide}) - ermittelt werden. Eine Lösung kann dann wie folgt aussehen: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \settowidth{\Abbildungsbreite}{% - \fbox{\hspace{1em}\KOMAScript\hspace{1em}}% - }% - \fbox{\hspace{1em}\KOMAScript\hspace{1em}}% - \setcapwidth[c]{\Abbildungsbreite} - \caption{Beispiel einer unter der Abbildung zentrierten - Bildunterschrift} - \end{figure} -\end{verbatim} - \end{small} - Allerdings ist es unpraktisch den Inhalt zweimal zu schreiben. Ebenso - ist es unpraktisch, \Macro{setcapwidth} jedesmal neu aufzurufen. Aber - nichts ist einfacher, als in der Präambel einen Befehl zu - definieren, der die drei Schritte: - \begin{enumerate} - \item Bestimmung der Breite des Arguments - \item Festlegung der Breite der Bildunterschrift - \item Ausgabe des Arguments - \end{enumerate} - verbirgt: - \begin{small} -\begin{verbatim} - \newcommand{\Abbildung}[1]{% - \settowidth{\Abbildungsbreite}{#1}% - \setcapwidth[c]{\Abbildungsbreite}% - #1} -\end{verbatim} - \end{small} - Mit diesem Befehl verkürzt sich das Beispiel zu: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \Abbildung{\fbox{\hspace{1em}\KOMAScript\hspace{1em}}}% - \caption{Beispiel einer unter der Abbildung zentrierten - Bildunterschrift} - \end{figure} -\end{verbatim} - \end{small} - - Nun hat ein Befehl jedoch den Nachteil, dass Fehler in den Makros - des Arguments bei mehrzeiligen Argumenten von \LaTeX{} nicht mit - einer sehr genauen Zeilenzahl gemeldet werden. Deshalb ist in - manchen Fällen eine Umgebung praktischer. Es stellt sich dann aber - die Frage, wie die Breite des Inhalts der Umgebung bestimmt werden - kann. Die Lösung besteht in der \Environment{lrbox}-Umgebung, die in - \cite{latex:usrguide} beschrieben ist: - \begin{small} -\begin{verbatim} - \newsavebox{\Abbildungsbox} - \newenvironment{AbbildungSetztCaptionBreite}{% - \begin{lrbox}{\Abbildungsbox}% - }{% - \end{lrbox}% - \global\setbox\Abbildungsbox=\box\Abbildungsbox% - \aftergroup\SetzeAbbildungsbox% - } - \newcommand{\SetzeAbbildungsbox}{% - \Abbildung{\usebox{\Abbildungsbox}}} -\end{verbatim} - \end{small} - Dabei wird der oben definierte Befehl \Macro{Abbildung} eingesetzt. - In der Anwendung ergibt sich dann: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \begin{AbbildungSetztCaptionBreite} - \fbox{\hspace{1em}\KOMAScript\hspace{1em}} - \end{AbbildungSetztCaptionBreite} - \caption{Beispiel einer unter der Abbildung zentrierten - Bildunterschrift} - \end{figure} -\end{verbatim} - \end{small} - Zugegeben, in diesem Beispiel ist die Umgebung überflüssig. Aber - ihre Definition mit Verwendung von \Macro{global} ist gleichzeitig - recht trickreich. Es ist deshalb davon auszugehen, dass viele - Anwender mit der Forderung, die Umgebung selbst zu erstellen, - überfordert wären. Da sie aber sehr nützlich sein kann, wurde sie - hier als Beispiel vorgestellt. - - Gäbe es die \Environment{captionbeside}-Umgebung nicht, so könnte - man die Bildunterschrift trotzdem recht einfach rechts neben der - Abbildung setzen. Dazu müsste \Macro{SetzeAbbildungsbox} aus obigem - Beispiel zunächst umdefiniert werden: - \begin{small} -\begin{verbatim} - \renewcommand{\SetzeAbbildungsbox}{% - \settowidth{\Abbildungsbreite}{\usebox{\Abbildungsbox}}% - \parbox[b]{\Abbildungsbreite}{\usebox{\Abbildungsbox}}% - \hfill% - \addtolength{\Abbildungsbreite}{1em}% - \addtolength{\Abbildungsbreite}{-\hsize}% - \setlength{\Abbildungsbreite}{-\Abbildungsbreite}% - \setcapwidth[c]{\Abbildungsbreite}% - } -\end{verbatim} - \end{small} - Anschließend müsste lediglich noch die \Macro{caption}-Anweisung - ebenfalls in eine \Macro{parbox} gepackt werden: - \begin{small} -\begin{verbatim} - \begin{figure} - \centering% - \begin{AbbildungSetztCaptionBreite} - \fbox{\rule{0pt}{5\baselineskip}% - \hspace{1em}\KOMAScript\hspace{1em}} - \end{AbbildungSetztCaptionBreite} - \parbox[b]{\Abbildungsbreite}{% - \caption{Beispiel einer neben die Abbildung gesetzten - mehrzeiligen Bildinformation} - } - \end{figure} -\end{verbatim} - \end{small} - Die \Macro{rule}-Anweisung in diesem Beispiel dient lediglich als - unsichtbare Stütze, um eine Beispielabbildung mit größerer - vertikaler Ausdehnung zu erreichen. -\end{Example} -% -\EndIndex{Cmd}{setcapwidth}% -\EndIndex{Cmd}{setcapmargin}% -\EndIndex{Cmd}{setcapmargin*}% - - -\subsection{Textauszeichnung} -\label{sec:maincls.emphasis} - -\begin{Explain} - \LaTeX{} bietet verschiedene Möglichkeiten der - Textauszeichnung\Index{Textauszeichnung}. Streng genommen stellt - eine Überschrift ebenfalls eine Auszeichnung dar. In diesem - Abschnitt beschäftigen wir uns aber ausschließlich mit unmittelbaren - Auszeichnungen, also solchen, die keine zusätzliche Bedeutungen in - sich besitzen, sondern die für verschiedene Zwecke verwendet werden - können. Näheres zu den normalerweise definierten Möglichkeiten sind - \cite{l2kurz}, \cite{latex:usrguide} und \cite{latex:fntguide} zu - entnehmen. -\end{Explain} - -\begin{Declaration} - \Macro{textsubscript}\Parameter{Text} -\end{Declaration} -\BeginIndex{Cmd}{textsubscript}% -In \autoref{sec:maincls.footnotes} wurde bereits die Anweisung -\Macro{textsuperscript}\IndexCmd{textsuperscript} vorgestellt, die -Bestandteil des \LaTeX-Kerns ist. Leider bietet \LaTeX{} selbst -keine entsprechende Anweisung, um Text tief\Index{Tiefstellung} -statt hoch\Index{Hochstellung} zu stellen. \KOMAScript{} -definiert dafür \Macro{textsubscript}. -% -\begin{Example} - Sie schreiben einen Text über den menschlichen Stoffwechsel. Darin - kommen hin und wieder einfache chemische Summenformeln vor. Dabei - sind einzelne Ziffern tief zu stellen. Im Sinne des logischen Markup - definieren Sie zunächst in der Dokumentpräambel oder einem eigenen - Paket: - \begin{small} -\begin{verbatim} - \newcommand*{\Molek}[2]{#1\textsubscript{#2}} -\end{verbatim} - \end{small} - \newcommand*{\Molek}[2]{#1\textsubscript{#2}} - Damit schreiben Sie dann: - \begin{small} -\begin{verbatim} - Die Zelle bezieht ihr Energie unter anderem aus der - Reaktion von \Molek C6\Molek H{12}\Molek O6 und \Molek O2 - zu \Molek H2\Molek O{} und \Molek C{}\Molek O2. - Arsen (\Molek{As}{}) wirkt sich allerdings auf den - Stoffwechsel sehr nachteilig aus. -\end{verbatim} - \end{small} - Das Ergebnis sieht daraufhin so aus: - \begin{ShowOutput} - Die Zelle bezieht ihr Energie unter anderem aus der Reaktion von - \Molek C6\Molek H{12}\Molek O6 und \Molek O2 zu \Molek H2\Molek - O{} und \Molek C{}\Molek O2. Arsen (\Molek{As}{}) wirkt sich - allerdings auf den Stoffwechsel sehr nachteilig aus. - \end{ShowOutput} - Etwas später entscheiden Sie, dass Summenformeln grundsätzlich - serifenlos geschrieben werden sollen. Nun zeigt sich, wie gut die - Entscheidung für konsequentes logisches Markup war. Sie müssen nur - die \Macro{Molek}-Anweisung umdefinieren: - \begin{small} -\begin{verbatim} - \newcommand*{\Molek}[2]{\textsf{#1\textsubscript{#2}}} -\end{verbatim} - \end{small} - \renewcommand*{\Molek}[2]{\textsf{#1\textsubscript{#2}}} - Schon ändert sich die Ausgabe im gesamten Dokument: - \begin{ShowOutput} - Die Zelle bezieht ihr Energie unter anderem aus der Reaktion von - \Molek C6\Molek H{12}\Molek O6 und \Molek O2 zu \Molek H2\Molek - O{} und \Molek C{}\Molek O2. Arsen (\Molek{As}{}) wirkt sich - allerdings auf den Stoffwechsel sehr nachteilig aus. - \end{ShowOutput} -\end{Example} -\begin{Explain} - Im Beispiel wird die Schreibweise "`\verb|\Molek C6|"' - verwendet. Dabei wird Nutzen aus der Tatsache gezogen, - dass Argumente, die nur aus einem Zeichen bestehen, nicht geklammert - werden müssen. Damit ist "`\verb|\Molek C6|"' gleichbedeutend mit - "`\verb|\Molek{C}{6}|"'. Bekannt ist dieser Umstand hauptsächlich - von Indizes und Potenzen in mathematischen Umgebungen, etwa - "`\verb|$x^2$|"' statt "`\verb|$x^{2}$|"' für "`$x^2$"'. -\end{Explain} -% -\EndIndex{Cmd}{textsubscript}% - - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Der Schlussteil} -\label{sec:maincls.appendix} - -Im Schlussteil eines Dokuments finden sich üblicherweise die -Anhänge\Index{Anhang}, das -Literaturverzeichnis\Index{Literaturverzeichnis} und gegebenenfalls -ein Stichwortverzeichnis\Index{Stichwortverzeichnis}. - -\begin{Declaration} - \Macro{appendix} -\end{Declaration}% -\BeginIndex{Cmd}{appendix}% -Der Anhang wird in den Standardklassen und den {\KOMAScript}-Klassen -mit der Anweisung \Macro{appendix} eingeleitet. Diese Anweisung -schaltet unter anderem die Kapitelnummerierung auf Großbuchstaben um -und sorgt gleichzeitig dafür, dass die Regeln für die Nummerierung der -Gliederungsebenen nach \cite{DUDEN} eingehalten werden. Diese Regeln -sind in der Beschreibung der Klassenoptionen \Option{pointednumbers} -und \Option{pointlessnumbers} in -\autoref{sec:maincls.formattingOptions} näher erläutert. - -Bitte beachten Sie, dass es sich bei \Macro{appendix} um eine -Anweisung und \emph{nicht} um eine Umgebung handelt! Die Anweisung -erwartet auch nicht etwa ein Argument. Die Kapitel beziehungsweise -Abschnitte des Anhangs werden ganz normal mit \Macro{chapter} und -\Macro{section} gesetzt. -% -\EndIndex{Cmd}{appendix} - - -\begin{Declaration} - \Macro{appendixmore} -\end{Declaration}% -\BeginIndex{Cmd}{appendixmore}% -Bei den {\KOMAScript}-Klassen gibt es innerhalb der Anweisung -\Macro{appendix} eine Besonderheit. Ist nämlich die Anweisung -\Macro{appendixmore} definiert, so wird sie von der -\Macro{appendix}-Anweisung ebenfalls ausgeführt. Intern wird dies -von den {\KOMAScript}-Klassen \Class{scrbook} und -\Class{scrreprt} für die Realisierung der Layoutoptionen -\Option{appendixprefix} und \Option{noappendixprefix} genutzt -(siehe \autoref{sec:maincls.layoutOptions}). Dies sollten Sie -unbedingt beachten, falls Sie selbst das Makro -\Macro{appendixmore} definieren oder umdefinieren wollen. Ist -eine dieser beiden Optionen gesetzt, so erhalten Sie bei -\verb|\newcommand{\appendixmore}{|\dots\verb|}| eine -Fehlermeldung. Dadurch soll verhindert werden, dass Sie die -Optionen außer Kraft setzen, ohne es zu merken. - -\begin{Example} - Sie wollen nicht, dass bei Verwendung der Klasse \Class{scrbook} - oder \Class{scrreprt} im Hauptteil die Kapitel mit einer Präfixzeile - versehen werden (siehe Layoutoptionen \Option{chapterprefix} und - \Option{nochapterprefix} in \autoref{sec:maincls.layoutOptions}). - Damit die Konsistenz gewahrt bleibt, wollen Sie auch nicht, dass eine - solche Zeile im Anhang verwendet wird. Stattdessen sollen in den - Anhängen direkt vor dem Kapitelbuchstaben das Wort "`Anhang"' in der - jeweiligen Sprache stehen. Dies soll auch für die Kolumnentitel - gelten. Also verwenden Sie weder die Layoutoption - \Option{appendixprefix} noch \Option{noappendixprefix}, sondern - definieren in der Dokumentpräambel: - \begin{small} -\begin{verbatim} - \newcommand*{\appendixmore}{% - \renewcommand*{\chapterformat}{% - \appendixname~\thechapter\autodot\enskip} - \renewcommand*{\chaptermarkformat}{% - \appendixname~\thechapter\autodot\enskip} - } -\end{verbatim} - \end{small} - Sollten Sie später dann doch noch entscheiden, dass Sie die Option - \Option{appendixprefix} verwenden wollen, so erhalten Sie aufgrund - der dann bereits definierten Anweisung \Macro{appendixmore} eine - Fehlermeldung. Damit wird verhindert, dass obige Definition - unbemerkt die Einstellungen überschreibt, die Sie per Option - getroffen haben. - - Wenn Sie ein vergleichbares Verhalten des Anhangs für die Klasse - \Class{scrartcl} erreichen wollen, so ist dies ebenfalls - möglich. Dazu schreiben Sie in die Präambel Ihres Dokuments: - \begin{small} -\begin{verbatim} - \newcommand*{\appendixmore}{% - \renewcommand*{\othersectionlevelsformat}[1]{% - \ifthenelse{\equal{##1}{section}}{\appendixname~}{}% - \csname the##1\endcsname\autodot\enskip} - \renewcommand*{\sectionmarkformat}{% - \appendixname~\thesection\autodot\enskip} - } -\end{verbatim} - \end{small} - Sie benötigen dafür außerdem das - \Package{ifthen}-Paket\IndexPackage{ifthen} (siehe - \cite{package:ifthen}). - - Die Erklärung zu den umdefinierten Anweisungen finden Sie in - \autoref{sec:maincls.structure}. -\end{Example} -% -\EndIndex{Cmd}{appendixmore}% - - -\begin{Declaration} - \Macro{setbibpreamble}\Parameter{Präambel} -\end{Declaration}% -\BeginIndex{Cmd}{setbibpreamble}% -Mit der Anweisung \Macro{setbibpreamble} kann eine Präambel für -das Literaturverzeichnis\Index{Literaturverzeichnis} gesetzt -werden. Bedingung dafür ist, dass die Präambel vor der Anweisung -zum Setzen des Literaturverzeichnisses gesetzt wird. Dies muss -nicht unmittelbar davor sein. Es kann also beispielsweise am -Anfang des Dokuments erfolgen. Ebenso wie die Klassenoptionen -\Option{bibtotoc} und \Option{bibtotocnumbered} kann die -Anweisung aber nur erfolgreich sein, wenn nicht ein Paket geladen -wird, das dies durch Umdefinierung der -\Environment{thebibliography}-Umgebung verhindert. Obwohl das -\Package{natbib}-Paket\IndexPackage{natbib} unautorisiert interne -Makros von {\KOMAScript} verwendet, konnte erreicht werden, dass -\Macro{setbibpreamble} auch mit der aktuellen Version von -\Package{natbib} funktioniert (siehe \cite{package:natbib}). -\begin{Example} - Sie wollen darauf hinweisen, dass das Literaturverzeichnis nicht in - der Reihenfolge der Zitierung im Dokument, sondern alphabetisch - sortiert ist. Daher setzen Sie folgende Anweisung: - \begin{small} -\begin{verbatim} - \setbibpreamble{Die Literaturangaben sind alphabetisch nach - den Namen der Autoren sortiert. Bei mehreren Autoren wird - nach dem ersten Autor sortiert.\par\bigskip} -\end{verbatim} - \end{small} - Die Anweisung \Macro{bigskip}\IndexCmd{bigskip} sorgt dafür, dass - zwischen der Präambel und der ersten Literaturangabe ein großer - Zwischenraum gesetzt wird. - - Eine andere Möglichkeit, die Präambel des Literaturverzeichnisses - nutzbringend einzusetzen, ergäbe sich, wenn Sie beispielsweise die - Literaturangaben mit linksbündigem Flattersatz setzen wollten. - Dann setzen Sie als Präambel einfach: - \begin{small} -\begin{verbatim} - \setbibpreamble{\raggedright} -\end{verbatim} - \end{small} - Das Ergebnis sehen Sie im Literaturverzeichnis dieser Anleitung. -\end{Example} -% -\EndIndex{Cmd}{setbibpreamble} - - -\begin{Declaration} - \Macro{setindexpreamble} -\end{Declaration}% -\BeginIndex{Cmd}{setindexpreamble}% -Analog zur Präambel des Literaturverzeichnisses können Sie auch das -Stichwortverzeichnis mit einer Präambel versehen. Dies findet häufig -dann Anwendung, wenn es mehr als einen Index gibt oder im Index -unterschiedliche Arten der Referenzierung durch unterschiedliche -Hervorhebung der Seitenzahlen markiert werden. -\begin{Example} - Sie haben ein Dokument, in dem Begriffe sowohl definiert als auch - verwendet werden. Die Seitenzahlen der Begriffsdefinitionen sind - fett dargestellt. Natürlich möchten Sie gerne auf diesen Umstand - hinweisen. Also setzen Sie eine entsprechende Präambel für den - Index: - \begin{small} -\begin{verbatim} - \setindexpreamble{Alle \textbf{fett} gedruckten - Seitenzahlen sind Referenzen auf die Definition des - jeweiligen Begriffs. Demgegenüber geben normal gedruckte - Seitenzahlen die Seiten der Verwendung des jeweiligen - Begriffs wieder.\par\bigskip} -\end{verbatim} - \end{small} -\end{Example} - -Bitte beachten Sie, dass für die erste Seite des Index der Seitenstil -umgeschaltet wird. Welcher Seitenstil hierbei Verwendung findet, ist -im Makro \Macro{indexpagestyle} abgelegt (siehe -\autoref{sec:maincls.pageStyle}). - -Für die Erstellung, Sortierung und Ausgabe des Stichwortverzeichnisses -sind die üblichen Standard-\LaTeX-Pakete und Zusatzprogramme -zuständig. Von {\KOMAScript} werden genau wie von den Standardklassen -lediglich die grundlegenden Makros und Umgebungen dafür zur Verfügung -gestellt. -% -\EndIndex{Cmd}{setindexpreamble}% - - -\section{Obsoletes} -\label{sec:maincls.obsolete} - -\begin{Explain} - In diesem Abschnitt finden Sie Anweisungen, die der Anwender nicht - mehr verwenden sollte. Diese Anweisungen waren in früheren Versionen - von \KOMAScript{} zu finden und ihre Verwendung war dokumentiert. In - der aktuellen Version von \KOMAScript{} können sie aus Gründen der - Kompatibilität noch immer in gleicher Weise verwendet werden. Es - existieren jedoch neue Mechanismen oder Benutzerschnittstellen, die - stattdessen verwendet werden sollten. Dokumentiert sind die - veralteten Anweisungen hier nur, damit es dem Anwender leichter - fällt, alte Dokumente zu verstehen. Darüber hinaus steht es - Paketautoren frei, weiterhin diese Makros zu verwenden. - - \begin{Declaration} - \Macro{capfont} \\ - \Macro{caplabelfont} - \end{Declaration} - \BeginIndex{Cmd}{capfont}% - \BeginIndex{Cmd}{caplabelfont}% - Das Makro \Macro{capfont} beinhaltet die Schriftart, die für - Tabellen- bzw. Abbildungunterschriften bzw. -überschriften verwendet - wird. Das Makro \Macro{caplabelfont} beinhaltet die Schriftart, die - davon abweichend für die Bezeichnung und Nummer verwendet wird. - Verwenden Sie stattdessen die in \autoref{sec:maincls.font} - vorgestellten Anweisungen für die Elemente \FontElement{caption} und - \FontElement{captionlabel}. -% - \EndIndex{Cmd}{capfont}% - \EndIndex{Cmd}{caplabelfont}% - - \begin{Declaration} - \Macro{descfont} - \end{Declaration} - \BeginIndex{Cmd}{descfont}% - Dieses Makro beinhaltet die Schriftart, die für die Stichworte, also - die optionalen \Macro{item}-Argumente, einer - \Environment{description}-Umgebung verwendet wird. Verwenden Sie - stattdessen die in \autoref{sec:maincls.font} vorgestellten - Anweisungen für das Element \FontElement{descriptionlabel}. -% - \EndIndex{Cmd}{descfont}% - - \begin{Declaration} - \Macro{sectfont} - \end{Declaration} - \BeginIndex{Cmd}{sectfont}% - Dieses Makro beinhaltet die Schriftart, die für alle Überschriften - der Gliederung und der Zusammenfassung, den Haupttitel und die - oberste Ebene unter \Macro{part} im Inhaltsverzeichnis verwendet - wird. Verwenden Sie stattdessen die in - \autoref{sec:maincls.font} vorgestellten Anweisungen für das - Element \FontElement{sectioning}. -% - \EndIndex{Cmd}{sectfont}% - -\end{Explain} - -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\section{Autoren} -\label{sec:maincls.authors} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die -Vorlage dafür geliefert. -% In folgender Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item Frank Neukam -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\item Axel Sommerfeldt -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% mode: font-lock -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/layout.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/layout.tex deleted file mode 100644 index 13072c2cc6b..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/layout.tex +++ /dev/null @@ -1,1477 +0,0 @@ -\ProvidesFile{layout.tex}[2004/07/06 KOMA-Script Anleitung] -% ============================================================================ -% layout.tex -% Copyright (c) 2001 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% layout.tex -% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Paketes. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: Kopf- und Fusszeilen -% Autoren: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Inhalt: Kopf- und Fusszeilen mit scrpage -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% -% -\chapter{Kopf- und Fußzeilen mit \Package{scrpage2}}\label{cha:scrpage} -% -\BeginIndex{Package}{scrpage2}% -Wie bereits in \autoref{cha:typearea} zur Bestimmung des -Satzspiegels hingewiesen wurde, stellt \KOMAScript{} ein Werkzeug -zur Verfügung, um die im Layout definierten Freiräume für -Kopf- und Fußzeilen auch mit Inhalt zu füllen. - -\BeginIndex{Package}{scrpage}% -Dazu dient in \KOMAScript{} das Paket \Package{scrpage2}, das eine -stark erweiterte Variante des originalen \Package{scrpage} darstellt. -Verglichen mit dem häufig anzutreffenden Paket -\Package{fancyhdr} \cite{package:fancyhdr} ist \Package{scrpage2} -extrem flexibel in seiner Benutzung. Weiterhin -ist es durch seine Nähe zu den \KOMAScript{}-Klassen dort gut -integriert und somit eine perfekte Ergänzung der -Standardfunktionalität. - -Für \Package{scrpage2} und \Package{scrpage} gilt, dass sie nicht an -die \KOMAScript{}-Klassen gebunden sind. Sie können mit jeder anderen -Dokumentenklasse, zum Beispiel den Standardklassen eingesetzt werden. -Für neue Dokumente sollte unbedingt das neue Paket \Package{scrpage2} -benutzt werden -- die alte Version steht aus Gründen der -Kompatibilität jedoch weiterhin zur Verfügung. Dieses Kapitel -fokussiert auf \Package{scrpage2}. -Befehle, die in gleicher Form bei -\Package{scrpage} vorkommen, -werden als solche markiert \ScrpageMark{}(siehe Rand). Treten in der -neuen Variante Abweichungen auf, wird im Text an -markierten\ScrpageNote{} Stellen darauf hingewiesen. -% -\EndIndex{Package}{scrpage} - -\begin{Explain}% Einführung zu Kopfzeilen - Um die nachfolgende Beschreibung zu verstehen, muss noch einiges zu - \LaTeX{} gesagt werden. Grundlegend definiert der \LaTeX-Kern die - Standardseitenstile \PValue{empty}, welcher eine völlig undekorierte - Seite erzeugt, und \PValue{plain}, welcher meist nur die Seitenzahl - enthält. Weiterhin ist in vielen Klassen der Stil \PValue{headings} - zu finden, welcher eine komplexe Seitendekoration erzeugt, wobei es - hier noch die Untervariante \PValue{myheadings} gibt. Dieser - Seitenstil \PValue{myheadings} ist wie \PValue{headings} gestaltet, - jedoch müssen die sonst automatisch aktualisierten Kolumnentitel - manuell gesetzt werden. Ausführlicher wird das im Abschnitt - \ref{sec:maincls.pageStyle} beschrieben. Weiterhin ist zu beachten, - dass einige \LaTeX{}-Befehle für die aktuelle - Seite auf den Seitenstil \PValue{plain} wechseln, auch wenn der - Autor einen anderen Stil, zum Beispiel \PValue{headings}, eingestellt - hat. Das bedeutet, dass zu einem \PValue{headings}-Stil auch ein - passender \PValue{plain}-Stil vorhanden sein sollte. - - Das Paket \Package{scrpage2} definiert dazu einen - \PValue{headings}-Stil namens \PValue{scrheadings} und einen - korrespondieren \PValue{plain}-Seitenstil, der einfach - \PValue{scrplain} heißt. Letzteren direkt zu aktivieren ist - eigentlich nicht notwendig, da dies automatisch durch - \PValue{scrheadings} geschieht. Eine Ausnahme gibt es nur, wenn - \PValue{scrheadings} nicht genutzt wird, man aber eigene Stile mit - \PValue{scrplain} kombinieren will. Dazu muss vor dem eigenen Stil - \PValue{scrplain} mindestens einmal, beispielsweise mit - \Macro{pagestyle}\Parameter{scrplain}% - \Macro{pagestyle}\Parameter{eigenerStil}, aktiviert werden. - % next sentence is not not important; shall only reduce - % stretching of paragraphs - Dadurch wird der originale \PValue{plain}-Seitenstil mit - \Package{scrpage2}-Stil \PValue{scrplain} ersetzt und - ist somit im Folgenden aktiv. -\end{Explain} - -\section{Grundlegende Funktionen}\label{sec:scrpage.basics} -\subsection{Vordefinierte Seitenstile}\label{sec:scrpage.basics.buildIn} -% \lehead ... -% scrheadings -% \headmark \pagemark - -\begin{Declaration} - \PValue{scrheadings}\\ - \PValue{scrplain} -\end{Declaration}% -\BeginIndex{Pagestyle}{scrheadings}\BeginIndex{Pagestyle}{scrplain}% -\Index{Seitenstil}% -Das Paket \Package{scrpage2} liefert einen eigenen Seitenstil namens -\PValue{scrheadings}. Dieser Seitenstil kann mittels -\Macro{pagestyle}\PParameter{scrheadings} aktiviert werden. Wird -dieser Seitenstil benutzt, dann ist gleichzeitig ein dazu passender -\PValue{plain}-Stil verfügbar. Passend bedeutet, dass auch der -\PValue{plain}-Stil auf in \autoref{sec:scrpage.basics.format} -vorgestellten Befehle, die beispielsweise die Kopfbreite ändern, -reagiert. Die Aktivierung des Seitenstils \PValue{scrheadings} oder -des zugehörigen \PValue{plain}-Stils hat keine Auswirkung darauf, ob -mit manuellen oder automatischen Kolumnentiteln gearbeitet wird (siehe -\autoref{sec:scrpage.basics.mark}). - -\begin{Declaration} - \Macro{lehead}% - \OParameter{scrplain-links-gerade}\Parameter{scrheadings-links-gerade}\\ - \Macro{cehead}% - \OParameter{scrplain-mittig-gerade}\Parameter{scrheadings-mittig-gerade}\\ - \Macro{rehead}% - \OParameter{scrplain-rechts-gerade}\Parameter{scrheadings-rechts-gerade}\\ - \Macro{lefoot}% - \OParameter{scrplain-links-gerade}\Parameter{scrheadings-links-gerade}\\ - \Macro{cefoot}% - \OParameter{scrplain-mittig-gerade}\Parameter{scrheadings-mittig-gerade}\\ - \Macro{refoot}% - \OParameter{scrplain-rechts-gerade}\Parameter{scrheadings-rechts-gerade}\\ - \Macro{lohead}% - \OParameter{scrplain-links-ungerade}\Parameter{scrheadings-links-ungerade}\\ - \Macro{cohead}% - \OParameter{scrplain-mittig-ungerade}\Parameter{scrheadings-mittig-ungerade}\\ - \Macro{rohead}% - \OParameter{scrplain-rechts-ungerade}\Parameter{scrheadings-rechts-ungerade}\\ - \Macro{lofoot}% - \OParameter{scrplain-links-ungerade}\Parameter{scrheadings-links-ungerade}\\ - \Macro{cofoot}% - \OParameter{scrplain-mittig-ungerade}\Parameter{scrheadings-mittig-ungerade}\\ - \Macro{rofoot}% - \OParameter{scrplain-rechts-ungerade}\Parameter{scrheadings-rechts-ungerade}\\ - \Macro{ihead}% - \OParameter{scrplain-innen}\Parameter{scrheadings-innen}\\ - \Macro{chead}% - \OParameter{scrplain-zentriert}\Parameter{scrheadings-zentriert}\\ - \Macro{ohead}% - \OParameter{scrplain-außen}\Parameter{scrheadings-außen}\\ - \Macro{ifoot}% - \OParameter{scrplain-innen}\Parameter{scrheadings-innen}\\ - \Macro{cfoot}% - \OParameter{scrplain-zentriert}\Parameter{scrheadings-zentriert}\\ - \Macro{ofoot}% - \OParameter{scrplain-außen}\Parameter{scrheadings-außen} -\end{Declaration}% -\BeginIndex{Cmd}{lehead}\BeginIndex{Cmd}{cehead}\BeginIndex{Cmd}{rehead}% -\BeginIndex{Cmd}{ihead}\BeginIndex{Cmd}{chead}\BeginIndex{Cmd}{ohead}% -\BeginIndex{Cmd}{lohead}\BeginIndex{Cmd}{cohead}\BeginIndex{Cmd}{rohead}% -\BeginIndex{Cmd}{lefoot}\BeginIndex{Cmd}{cefoot}\BeginIndex{Cmd}{refoot}% -\BeginIndex{Cmd}{ifoot}\BeginIndex{Cmd}{cfoot}\BeginIndex{Cmd}{rfoot}% -\BeginIndex{Cmd}{lofoot}\BeginIndex{Cmd}{cofoot}\BeginIndex{Cmd}{rofoot}% -Diese Seitenstile sind so definiert, dass sowohl im Kopf als auch im -Fuß drei Felder vorhanden sind, deren Inhalt modifiziert werden kann. -Die Befehle zur Modifikation sind in \autoref{fig:scrpage.leheadetall} -verdeutlicht. Die in der Mitte dargestellten Befehle modifizieren sowohl -die Felder der linken als auch der rechten Seite. - -\begin{figure} - \centering - \setlength{\unitlength}{1mm}\begin{picture}(100,65)(0,10)\small - \put(0,12){\dashbox{2}(40,56){linke Seite}} - \put(60,12){\dashbox{2}(40,56){rechte Seite}} - % Felder: oben links - \put(1,63){\framebox(8,4){~}} - \put(16,63){\framebox(8,4){~}} - \put(31,63){\framebox(8,4){~}} - % Felder: oben rechts - \put(61,63){\framebox(8,4){~}} - \put(76,63){\framebox(8,4){~}} - \put(91,63){\framebox(8,4){~}} - % Felder: unten links - \put(1,13){\framebox(8,4){~}} - \put(16,13){\framebox(8,4){~}} - \put(31,13){\framebox(8,4){~}} - % Felder: unten rechts - \put(61,13){\framebox(8,4){~}} - \put(76,13){\framebox(8,4){~}} - \put(91,13){\framebox(8,4){~}} - % die Befehle und Pfeile - % für beidseitig - % - \put(50,65){\makebox(0,0){\Macro{ihead}}} - \put(44,65){\vector(-1,0){4}}\put(56,65){\vector(1,0){4}} - \put(50,58){\makebox(0,0){\Macro{chead}}} - \put(44,58){\line(-1,0){24}}\put(56,58){\line(1,0){24}} - \put(20,58){\vector(0,1){4}}\put(80,58){\vector(0,1){4}} - \put(50,51){\makebox(0,0){\Macro{ohead}}} - \put(44,51){\line(-1,0){40}}\put(56,51){\line(1,0){40}} - \put(4,51){\vector(0,1){11}}\put(96,51){\vector(0,1){11}} - % - \put(50,15){\makebox(0,0){\Macro{ifoot}}} - \put(56,15){\vector(1,0){4}}\put(44,15){\vector(-1,0){4}} - \put(50,22){\makebox(0,0){\Macro{cfoot}}} - \put(44,22){\line(-1,0){24}}\put(56,22){\line(1,0){24}} - \put(20,22){\vector(0,-1){4}}\put(80,22){\vector(0,-1){4}} - \put(50,29){\makebox(0,0){\Macro{ofoot}}} - \put(44,29){\line(-1,0){40}}\put(56,29){\line(1,0){40}} - \put(4,29){\vector(0,-1){11}}\put(96,29){\vector(0,-1){11}} - % Befehle für einseitig - \put(5,69){\makebox(0,0)[b]{\Macro{lehead}}} - \put(20,69){\makebox(0,0)[b]{\Macro{cehead}}} - \put(35,69){\makebox(0,0)[b]{\Macro{rehead}}} - % - \put(65,69){\makebox(0,0)[b]{\Macro{lohead}}} - \put(80,69){\makebox(0,0)[b]{\Macro{cohead}}} - \put(95,69){\makebox(0,0)[b]{\Macro{rohead}}} - % - \put(5,11){\makebox(0,0)[t]{\Macro{lefoot}}} - \put(20,11){\makebox(0,0)[t]{\Macro{cefoot}}} - \put(35,11){\makebox(0,0)[t]{\Macro{refoot}}} - % - \put(65,11){\makebox(0,0)[t]{\Macro{lofoot}}} - \put(80,11){\makebox(0,0)[t]{\Macro{cofoot}}} - \put(95,11){\makebox(0,0)[t]{\Macro{rofoot}}} - \end{picture} - \caption[Befehle zur Manipulation der - \Package{scrpage2}-Seitenstile]% - {Befehle zur Manipulation der Seitenstile \PValue{scrheadings} und - \PValue{scrplain} in ihrer Zuordnung zu den manipulierten - Seitenelementen} - \label{fig:scrpage.leheadetall} -\end{figure} - -\begin{Example} -Angenommen man möchte zentriert im Seitenfuß die Seitenzahl -dargestellt haben, dann benutzt man einfach: -\begin{small} -\begin{verbatim} - \cfoot{\pagemark} -\end{verbatim} -\end{small} -Sollen die Seitenzahlen im Kopf außen und die -Kolumnentitel\Index{Kolumnentitel} innen stehen, dann erfolgt dies mit: -\begin{small} -\begin{verbatim} - \ohead{\pagemark} - \ihead{\headmark} - \cfoot{} -\end{verbatim} -\end{small} -Das \Macro{cfoot}\PParameter{} ist nur dann notwendig, wenn eine -möglicherweise im Fuß vorhandene Seitenzahl entfernt werden muss. -\end{Example} - -Die anderen Befehle, die direkt nur einem Feld zugeordnet sind, -können für anspruchsvollere Vorhaben genutzt werden. - -\begin{Example} -Angenommen, man hat den Auf"|trag, einen Jahresbericht einer Firma -zu erstellen, dann könnte das so angegangen werden: -\begin{small} -\begin{verbatim} - \ohead{\pagemark} - \rehead{Jahresbericht 2001} - \lohead{\headmark} - \cefoot{Firma WasWeißIch} - \cofoot{Abteilung Entwicklung} -\end{verbatim} -\end{small} -Natürlich muss man hier dafür sorgen, dass mittels \Macro{cofoot} -der Fuß der rechten Seite aktualisiert wird, wenn eine neue - Abteilung im Bericht besprochen wird. -\end{Example} - -Wie oben dargestellt, gibt es einen zu \PValue{scrheadings} -korrespondierenden \PValue{plain}-Seitenstil. -Da es auch möglich sein soll, diesen Stil anzupassen, -unterstüt"-zen die Befehle ein optionales Argument. -Damit kann der Inhalt des entsprechenden Feldes -im \PValue{plain}-Seitenstil modifiziert werden. - -\begin{Example} -Um für die Nutzung von \PValue{scrheadings} die Position der -Seitenzahlen festzulegen, kann man folgendes benutzen: -\begin{small} -\begin{verbatim} - \cfoot[\pagemark]{} - \ohead[]{\pagemark} -\end{verbatim} -\end{small} -Wird nun der Stil \PValue{plain} genutzt, beispielsweise weil -\Macro{chapter} eine neue Seite beginnt und darauf umschaltet, -dann steht die Seitenzahl zentriert im Seitenfuß. -\end{Example} -% -\EndIndex{Pagestyle}{scrheadings}\EndIndex{Pagestyle}{scrplain}% - -% Die folgende Deklaration und Erklaerung wurde eingefuegt von -% mjk 2001-08-18 -\begin{Declaration} - \Macro{clearscrheadings}\\ - \Macro{clearscrplain}\\ - \Macro{clearscrheadfoot} -\end{Declaration}% -\BeginIndex{Cmd}{clearscrheadings}% -\BeginIndex{Cmd}{clearscrplain}% -\BeginIndex{Cmd}{clearscrheadfoot}% -Will man sowohl den Seitenstil \PValue{scrheadings} als auch den dazu -gehörenden \PValue{plain}-Seitenstil von Grund auf neu definieren, -muss man häufig zusätzlich einige der bereits belegten Seitenelemente -löschen. Da man selten alle Elemente mit neuem Inhalt füllt, sind -dazu in den meisten Fällen mehrere Befehle mit leeren Parametern -notwendig. -Mit Hilfe dieser drei Befehle ist das Löschen schnell und -gründlich möglich. Während \Macro{clearscrheadings} lediglich alle -Felder des Seitenstils \PValue{scrheadings} und \Macro{clearscrplain} -alle Felder des zugehörigen \PValue{plain}-Seitenstils löscht, werden -von \Macro{clearscrheadfoot} alle Felder beider Seitenstile auf leere -Inhalte gesetzt. -\begin{Example} - Sie wollen unabhängig davon, wie die Seitenstile derzeit aussehen, - die Standardform der \KOMAScript-Klassen bei zweiseitigem Satz - erreichen. Dies ist mit nur drei Befehlen möglich: - \begin{small} -\begin{verbatim} - \clearscrheadfoot - \ohead{\headmark} - \ofoot[\pagemark]{\pagemark} -\end{verbatim} - \end{small} - Ohne die Befehle \Macro{clearscrheadfoot}, \Macro{clearscrheadings} - und \Macro{clearscrplain} wären doppelt so viele Anweisungen und - neun weitere leere Argumente notwendig: - \begin{small} -\begin{verbatim} - \ihead[]{} - \chead[]{} - \ohead[]{\headmark} - \ifoot[]{} - \cfoot[]{} - \ofoot[\pagemark]{\pagemark} -\end{verbatim} - \end{small} - Einige davon könnten natürlich entfallen, wenn man von einer - konkreten Vorbelegung ausginge. -\end{Example} -% -\EndIndex{Cmd}{clearscrheadings}% -\EndIndex{Cmd}{clearscrplain}% -\EndIndex{Cmd}{clearscrheadfoot}% -% -\EndIndex{Cmd}{lehead}\EndIndex{Cmd}{cehead}\EndIndex{Cmd}{rehead}% -\EndIndex{Cmd}{ihead}\EndIndex{Cmd}{chead}\EndIndex{Cmd}{ohead}% -\EndIndex{Cmd}{lohead}\EndIndex{Cmd}{cohead}\EndIndex{Cmd}{rohead}% -\EndIndex{Cmd}{lefoot}\EndIndex{Cmd}{cefoot}\EndIndex{Cmd}{refoot}% -\EndIndex{Cmd}{ifoot}\EndIndex{Cmd}{cfoot}\EndIndex{Cmd}{rfoot}% -\EndIndex{Cmd}{lofoot}\EndIndex{Cmd}{cofoot}\EndIndex{Cmd}{rofoot}% - -% Satz leicht geaendert: mjk 2001-08-18 -In den vorausgehenden Beispielen wurden schon zwei -Befehle benutzt, die noch gar nicht besprochen wurden. -Das soll jetzt nachgeholt werden. - -% Die folgende Deklaration und Erklaerung wurde eingefuegt von -% mjk 2001-08-17 -\begin{Declaration} - \Macro{leftmark}\\ - \Macro{rightmark} -\end{Declaration}% -\BeginIndex{Cmd}{leftmark}\BeginIndex{Cmd}{rightmark}% -Diese beiden Befehle erlauben es auf die Kolumnentitel zuzugreifen, -die normalerweise für die linke bzw. die rechte Seite gedacht -sind. Diese beiden Befehle werden nicht von \Package{scrpage} -bzw. \Package{scrpage2}, sondern direkt vom \LaTeX-Kern zur -Verfügung gestellt. Wenn in diesem Kapitel vom Kolumnentitel der -linken Seite oder vom Kolumnentitel der rechten Seite die Rede ist, -dann ist damit eigentlich der Inhalt von \Macro{leftmark} -bzw. \Macro{rightmark} gemeint. -% -\EndIndex{Cmd}{leftmark}\EndIndex{Cmd}{rightmark}% - - -\BeginIndex{Cmd}{headmark} -\begin{Declaration} -\Macro{headmark} -\end{Declaration}% -\ScrpageMark{}% -Dieser Befehl ermöglicht es, auf die Inhalte der Kolumnentitel -zuzugreifen. -Im Gegensatz zu den originalen \LaTeX{}-Befehlen -\Macro{leftmark} und \Macro{rightmark} braucht man -nicht auf die richtige Zuordnung zur linken oder rechten -Seite zu achten. -\EndIndex{Cmd}{headmark} - -\BeginIndex{Cmd}{pagemark} -\begin{Declaration} -\Macro{pagemark} -\end{Declaration}% -\ScrpageMark{}% -Dieser Befehl ermöglicht den Zugriff auf die Seitenzahl. Im -\autoref{sec:scrpage.basics.format} wird der Befehl -\Macro{pnumfont} zur Formatierung der Seitenzahl vorgestellt, -den \Macro{pagemark} automatisch berücksichtigt. -\EndIndex{Cmd}{pagemark} - -\BeginIndex{Cmd}{pagestyle}\BeginIndex{Pagestyle}{useheadings} -\begin{Declaration} -\Option{useheadings} -\end{Declaration}% -Das Paket \Package{scrpage2} ist in erster Linie dafür gedacht, dass -die bereitgestellten Stile benutzt oder eigene Stile definiert -werden. Jedoch kann es notwendig sein, auch auf einen von der -Dokumentenklasse zur Verfügung gestellten Stil zurückzuschalten. -Dieses mit \Macro{pagestyle}\PParameter{headings} vorzunehmen wäre -naheliegend, hat aber den Nachteil, dass die nachfolgend besprochenen -Befehle \Macro{automark} und \Macro{manualmark} nicht wie erwartet -funktionieren. Aus diesem Grund sollte auf die originalen Stile mit -\Macro{pagestyle}\PParameter{useheadings} umgeschalten werden. Eine -solche Umschaltung hat dann keine Auswirkung darauf, ob mit manuellen -oder automatischen Kolumnentiteln gearbeitet wird. -\EndIndex{Cmd}{pagestyle}\EndIndex{Pagestyle}{useheadings} - -\subsection{Manuelle und automatische Kolumnentitel} -\label{sec:scrpage.basics.mark} -% \automark \manualmark -% -Gewöhnlich gibt es zu einem \PValue{headings}-Stil eine -\emph{my}-Variante. Ist ein solcher Stil aktiv, dann werden die -Kolumnentitel nicht mehr automatisch aktualisiert. Bei -\Package{scrpage2} wird ein anderer Weg beschritten. Ob die -Kolumnentitel lebend sind oder nicht, bestimmen die Befehle -\Macro{automark} und \Macro{manualmark}. Die Voreinstellung kann auch -bereits beim Laden des Paketes über die Optionen \Option{automark} und -\Option{manualmark} beeinflusst werden (siehe -\autoref{sec:scrpage.basics.options}, -\autopageref{page:scrpage.automark}). - -\BeginIndex{Cmd}{manualmark} -\begin{Declaration} -\Macro{manualmark} -\end{Declaration}% -Wie der Name bereits verdeutlicht, schaltet \Macro{manualmark} die -Aktualisierung der Kolumnentitel aus. Es bleibt somit dem Nutzer -überlassen, für eine Aktualisierung bzw. für den Inhalt der -Kolumnentitel zu sorgen. Dazu stehen die Befehle -\Macro{markboth}\IndexCmd{markboth} und -\Macro{markright}\IndexCmd{markright} bereit. -\EndIndex{Cmd}{manualmark} - -% Ergaenzt mjk 2001-07-17 -\BeginIndex{Cmd}{automark} -\begin{Declaration} - \Macro{automark}\OParameter{rechte Seite}\Parameter{linke Seite} -\end{Declaration}% -Das Makro \Macro{automark} hingegen aktiviert die automatische -Aktualisierung. Für die beiden Parameter sind die Bezeichnungen der -Gliederungsebenen\Index{Gliederungsebenen} einzusetzen, deren Titel an -entsprechender Stelle erscheinen soll. Gültige Werte für die Parameter -sind: \PValue{part}\ChangedAt{2.2}{\Package{scrpage2}}, \PValue{chapter}, \PValue{section}, \PValue{subsection}, -\PValue{subsubsection}, \PValue{paragraph} und \PValue{subparagraph}. Der Wert -\PValue{part} führt bei Verwendung der meisten Klassen nicht zu dem -gewünschten Ergebnis. Bisher ist nur von den \KOMAScript-Klassen ab -Version~2.9s bekannt, dass dieser Wert unterstützt wird. -Das optionale Argument \PName{rechte Seite} ist ver\-ständlicherweise -nur für zweiseitigen Satz gedacht. Im einseitigen Satz sollten Sie -normalerweise darauf verzichten. Mit Hilfe der Option -\Option{autooneside}\IndexOption{autooneside} können Sie auch -einstellen, dass das optionale Argument im -einseitigen\Index{einseitig} Satz automatisch ignoriert wird (siehe -\autoref{sec:scrpage.basics.options}). -\begin{Example} -Wird beispielsweise mit einer \emph{book}-Klasse gearbeitet, -dessen höch\-ste Gliederungsebene \emph{chapter} ist, dann -stellt nach einem vorhergehenden \Macro{manualmark} der Befehl -\begin{small} -\begin{verbatim} - \automark[section]{chapter} -\end{verbatim} -\end{small} -den Originalzustand wieder her. Bevorzugt man stattdessen, -die tieferen Gliederungsebenen angezeigt zu bekommen, dann -erfolgt dies mit: -\begin{small} -\begin{verbatim} - \automark[subsection]{section} -\end{verbatim} -\end{small} -\end{Example} - -\begin{Explain} - Die Markierung der höheren Gliederungsebene wird mit - Hilfe von \Macro{markboth}\IndexCmd{markboth} gesetzt. Die - Markierung der tieferen Gliederungsebene wird mit - \Macro{markright}\IndexCmd{markright} - bzw. \Macro{markleft}\IndexCmd{markleft} gesetzt. - Der entsprechende Aufruf erfolgt indirekt über die jeweiligen - Gliederungsbefehle. Die Anweisung \Macro{markleft} wird von - \Package{scrpage2} bereitgestellt und ist vergleichbar zu - \Macro{markright} aus dem \LaTeX-Kern definiert. Obwohl sie nicht - als internes Makro definiert ist, wird von einem direkten Gebrauch - abgeraten. -\end{Explain} -\EndIndex{Cmd}{automark} - - -\subsection{Formatierung der Kopf- und Fußzeilen} -\label{sec:scrpage.basics.format} -% \headfont \pnumfont -% \setheadwidth \setfootwidth -% \set(head|foot)(top|sep|bot)line -Im vorherigen Abschnitt ging es hauptsächlich um inhaltliche -Dinge. -Das genügt natürlich nicht, um die gestalterischen Ambitionen -zu befriedigen. Deshalb soll es sich in diesem Abschnitt -ausschließlich darum drehen. -\BeginIndex{Cmd}{headfont}\BeginIndex{Cmd}{pnumfont} -\begin{Declaration} -\Macro{headfont}\\ -\Macro{pnumfont} -\end{Declaration}% -\ScrpageMark{}% -Die Schriftformatierung übernimmt -der Befehl \Macro{headfont} für den Seitenkopf und -fuß -und \Macro{pnumfont} für die Seitenzahl. -\begin{Example} -Um beispielsweise den Kopf und Fuß in fetter serifenloser Schrift zu setzen, -und die Seitenzahl geneigt serif erscheinen zu lassen, -nutzt man folgende Definitionen. -\begin{small} -\begin{verbatim} - \renewcommand{\headfont}{\normalfont\sffamily\bfseries} - \renewcommand{\pnumfont}{\normalfont\rmfamily\slshape} -\end{verbatim} -\end{small} -\end{Example} -\EndIndex{Cmd}{headfont}\EndIndex{Cmd}{pnumfont} -% -Ab Version 2.8p der \KOMAScript{}-Klassen wurde die Schnittstelle -für Schriftattribute vereinheitlicht. -Wird \Package{srcpage2} in Verbindung mit einer dieser Klassen -verwendet, dann sollte die Zuweisung in der Art erfolgen, wie -sie im \autoref{sec:maincls.font} beschrieben wird. -\begin{Example} -Statt dem \Macro{renewcommand} wird dann der Befehl -\Macro{setkomafont} verwendet. -Die vorhergehenden Definitionen lauten dann: -\begin{small} -\begin{verbatim} - \setkomafont{pagehead}{\normalfont\sffamily\bfseries} - \setkomafont{pagenumber}{\normalfont\rmfamily\slshape} -\end{verbatim} -\end{small} -\end{Example} - -\BeginIndex{Cmd}{setheadwidth}\BeginIndex{Cmd}{setfootwidth} -\begin{Declaration} -\Macro{setheadwidth}\OParameter{Verschiebung}\Parameter{Breite}\\ -\Macro{setfootwidth}\OParameter{Verschiebung}\Parameter{Breite} -\end{Declaration}% -Normalerweise entsprechen die Breiten von Kopf- und Fußzeile der Breite -des Textbereichs.\Index{Kopf>Breite}\Index{Fuß>Breite} -Die Befehle \Macro{setheadwidth} und \Macro{setfootwidth} -ermöglichen dem Anwender, auf einfache Weise die Breiten seinen -Bedürfnissen anzupassen. -Das obligatorische Argument \PName{Breite} nimmt den Wert der Breite -des Kopfes bzw. des Fußes auf, \PName{Verschiebung} ist ein -Längenmaß für die Verschiebung des entsprechenden Elements in Richtung -des äußeren Seitenrandes. - -Für die möglichen Standardfälle akzeptiert das obligatorische Argument -\PName{Breite} auch folgende symbolische Werte: -\begin{labeling}[\ --]{\PValue{textwithmarginpar}} -\item[\PValue{paper}] die Breite des Papiers -\item[\PValue{page}] die Breite der Seite -\item[\PValue{text}] die Breite des Textbereichs -\item[\PValue{textwithmarginpar}] die Breite des Textbereichss inklusive dem -Seitenrand -\item[\PValue{head}] die aktuelle Breite des Seitenkopfes -\item[\PValue{foot}] die aktuelle Breite des Seitenfußes -\end{labeling} -Der Unterschied zwischen \PValue{paper} und \PValue{page} besteht -darin, dass \PValue{page} die Breite des Papiers abzüglich der -Bindekorrektur ist, falls das -\Package{typearea}-Paket\IndexPackage{typearea} verwendet wird (siehe -\autoref{cha:typearea}). Ohne Verwendung von \Package{typearea} -sind \PValue{paper} und \PValue{page} -identisch.%mjk-2001-08-17 - -\begin{Example} - Angenommen man möchte ein Seitenlayout wie im - \emph{\LaTeX-Begleiter}, bei dem die Kopfzeile in den Rand ragt, - dann geschieht das ganz einfach mit: -\begin{small} -\begin{verbatim} - \setheadwidth[0pt]{textwithmarginpar} -\end{verbatim} -\end{small} -% -und sieht dann auf einer rechten Seite folgendermaßen aus: -% -\begin{XmpTopPage} - \XmpHeading{10,25}{85} - \thinlines\XmpRule{10,23}{85} - \XmpSetText[\XmpTopText]{10,20} - \XmpMarginNote{83,10.8} -\end{XmpTopPage} -% -Soll der Seitenfuß die gleiche Breite und Ausrichtung haben, dann hat -man jetzt zwei Wege. -Der erste ist, man wiederholt das Gleiche für den Seitenfuß mit: -\begin{small} -\begin{verbatim} - \setfootwidth[0pt]{textwithmarginpar} -\end{verbatim} -\end{small} -% -oder man greift auf den anderen symbolischen Wert \PValue{head} zurück, -da der Kopf bereits die gewünschte Breite hat. -\begin{small} -\begin{verbatim} - \setfootwidth[0pt]{head} -\end{verbatim} -\end{small} -\end{Example} - -Wird keine Verschiebung angegeben, das heißt auf das optionale Argument -verzichtet, dann erscheint der Kopf bzw. der Fuß symmetrisch auf -der Seite angeordnet. Es wird somit ein Wert für die Verschiebung -automatisch ermittelt, der der aktuellen Seitengestalt entspricht. - -\begin{Example} -Entsprechend dem vorherigen Beispiel wird hier auf das optionale -Argument verzichtet: -\begin{small} -\begin{verbatim} - \setheadwidth{textwithmarginpar} -\end{verbatim} -\end{small} -% -und sieht dann auf einer rechten Seite folgendermaßen aus: -% -\begin{XmpTopPage} - \XmpHeading{5,25}{85} - \thinlines\XmpRule{5,23}{85} - \XmpSetText[\XmpTopText]{10,20} - \XmpMarginNote{83,10.8} -\end{XmpTopPage} -\end{Example} - -Wie zu sehen, ist der Kopf jetzt nach innen verschoben, wobei -die Kopfbreite sich nicht geändert hat. Die Verschiebung ist -so berechnet, dass die Seitenproportionen auch hier sichtbar werden. -\EndIndex{Cmd}{setheadwidth}\EndIndex{Cmd}{setfootwidth} - -\BeginIndex{Cmd}{setheadtopline}\BeginIndex{Cmd}{setheadsepline} -\BeginIndex{Cmd}{setfootseptline}\BeginIndex{Cmd}{setfootbotline} -\begin{Declaration} -\Macro{setheadtopline}\OParameter{Länge}\Parameter{Dicke}\OParameter{Anweisungen}\\ -\Macro{setheadsepline}\OParameter{Länge}\Parameter{Dicke}\OParameter{Anweisungen}\\ -\Macro{setfootsepline}\OParameter{Länge}\Parameter{Dicke}\OParameter{Anweisungen}\\ -\Macro{setfootbotline}\OParameter{Länge}\Parameter{Dicke}\OParameter{Anweisungen} -\end{Declaration}% -Entsprechend den Größenparametern für die Kopf- und Fußzeile -gibt es auch Befehle, die die Dimensionen der Linien im Kopf und -Fuß modifizieren können. - -\begin{labeling}[\ --]{\Macro{setfootsepline}} -\item[\Macro{setheadtopline}] modifiziert die Parameter für die Linie -über dem Seitenkopf -\item[\Macro{setheadsepline}] modifiziert die Parameter für die Linie -zwischen Kopf und Textkörper -\item[\Macro{setfootsepline}] modifiziert die Parameter für die Linie -zwischen Text und Fuß -\item[\Macro{setfootbotline}] modifiziert die Parameter für die Linie -unter dem Seitenfuß -\end{labeling} - -Das obligatorische Argument \PName{Dicke} bestimmt, wie stark -die Linie gezeichnet wird. -Das optionale Argument \PName{Länge} akzeptiert die -gleichen symbolischen Werte wie \PName{Breite} bei -\Macro{setheadwidth}, als auch einen normalen Längenausdruck. -Solange im Dokument dem optionalen Argument \PName{Länge} kein Wert -zugewiesen wurde, passt sich die entsprechende Linienlänge automatisch der -Breite des Kopfes bzw. des Fußes an. - -Möchte man diesen Automatismus für die Länge einer Linie wieder restaurieren, -dann nutzt man im Längenargument den Wert \PValue{auto}. - -Mit\ChangedAt{2.2}{\Package{scrpage2}} -dem optionalen Argument \PName{Anweisungen} können zusätzliche Anweisungen -definiert werden, die vor dem Zeichnen der jeweiligen Linie auszuführen sind. -Das können beispielsweise Anweisungen sein, um die -Farbe\Index{Kopf>Farbe}\Index{Fuss=Fuß>Farbe}\Index{Farbe>im - Kopf}\Index{Farbe>im Fuss=im Fuß} der Linie zu ändern. -Bei Verwendung einer \KOMAScript-Klasse können diese Anweisungen auch über -\Macro{setkomafont}\IndexCmd{setkomafont} für eines der Elemente -\FontElement{headtopline}\IndexFontElement{headtopline}, -\FontElement{headsepline}\IndexFontElement{headsepline}, -\FontElement{footsepline}\IndexFontElement{footsepline}, -\FontElement{footbottomline}\IndexFontElement{footbottomline} oder auch -\FontElement{footbotline}\IndexFontElement{footbotline} gesetzt und mit -\Macro{addtokomafont}\IndexCmd{addtokomafont} erweitert werden. Die -Anweisungen \Macro{setkomafont} und \Macro{addkomafont} sind in -\autoref{sec:maincls.font} näher beschrieben. - -\begin{Declaration} -\Macro{setheadtopline}\OParameter{\upshape\PValue{auto}}\Parameter{\upshape\PValue{current}}\\ -\Macro{setheadtopline}\OParameter{\upshape\PValue{auto}}\Parameter{}\\ -\Macro{setheadtopline}\OParameter{\upshape\PValue{auto}}\Parameter{}\OParameter{} -\end{Declaration}% -Die hier am Befehl \Macro{setheadtopline} illustrierten Argumente -sind natürlich auch für die anderen drei Längenbefehle gültig. - -Enthält das obligatorische Argument den Wert \PValue{current} oder wird -leer gelassen, dann wird die Dicke der Linie nicht verändert. Das kann -genutzt werden, wenn die Länge der Linie aber nicht die Dicke modifiziert -werden soll. - -Wird das das optionale Argument \PName{Anweisungen} weggelassen, so bleiben -eventuell zuvor gesetzte Anweisungen erhalten. Wird hingegen ein leeres -Argumen \PName{Anweisungen} gesetzt, so werden eventuell zuvor gesetzte -Anweisungen wieder gelöscht. - -\begin{Example} -Soll beispielsweise der Kopf mit einer kräftigen Linie von 2\,pt -darüber und einer normalen von 0,4\,pt zwischen Kopf und Text -abgesetzt werden, dann erfolgt das mit: -\begin{small} -\begin{verbatim} - \setheadtopline{2pt} - \setheadsepline{.4pt} -\end{verbatim} -\end{small} -% -\begin{XmpTopPage} - \XmpHeading{10,25}{70} - \thinlines\XmpRule{10,23}{70} - \thicklines\XmpRule{10,28}{70} - \XmpSetText[\XmpTopText]{10,20} - \XmpMarginNote{83,10.8} -\end{XmpTopPage} - -Soll diese Linie zusätzlich in roter Farbe gesetzt werden, dann sind die -Anweisungen beispielsweise wie folgt zu ändern: -\begin{small} -\begin{verbatim} - \setheadtopline{2pt}[\color{red}] - \setheadsepline{.4pt}[\color{red}] -\end{verbatim} -\end{small} -In diesem und auch dem folgenden Beispiel wurde für die Aktivierung der Farbe -die Syntax des \Package{color}\IndexPackage{color}-Pakets verwendet, das dann -natürlich auch geladen werden muss. \Package{scrpage2} selbst bietet keine -direkte Farbunterstützung. Damit ist jedes beliebige Farbunterstützungspaket -verwendbar. - -Mit einer \KOMAScript-Klasse kann alternativ -\begin{small} -\begin{verbatim} - \setheadtopline{2pt} - \setheadsepline{.4pt} - \setkomafont{headtopline}[\color{red}] - \setkomafont{headsepline}[\color{red}] -\end{verbatim} -\end{small} -verwendet werden. - -Die automatische Anpassung an die Kopf- und Fußbreiten illustriert -folgendes Beispiel: -\begin{small} -\begin{verbatim} - \setfootbotline{2pt} - \setfootsepline[text]{.4pt} - \setfootwidth[0pt]{textwithmarginpar} -\end{verbatim} -\end{small} - -%\phantomsection für hyperref-\pageref-Link jum-2001/11/24 -\phantomsection\label{page:scrpage.autoLineLength}% -\begin{XmpBotPage} - \XmpHeading{10,18}{85} - \thinlines\XmpRule{17,21}{70} - \thicklines\XmpRule{10,16}{85} - \XmpSetText[\XmpBotText]{10,33} - \XmpMarginNote{83,24.5} -\end{XmpBotPage} -\end{Example} -% -Nun mag nicht jedem die Ausrichtung der Linie über der Fußzeile -gefallen, sondern es wird erwartet, dass sie linksbündig zum -Text ist. -Diese Einstellung kann nur global in Form einer Paketoption erfolgen -und wird im folgenden Abschnitt -\ref{sec:scrpage.basics.options} mit anderen Optionen beschrieben. -\EndIndex{Cmd}{setheadtopline}\EndIndex{Cmd}{setheadsepline} -\EndIndex{Cmd}{setfootseptline}\EndIndex{Cmd}{setfootbotline} - -\subsection{Optionen beim Laden des Paketes}\label{sec:scrpage.basics.options} -% head(in|ex)clude foot(in|ex)clude --> typearea -% headtopline headsepline footbotline footsepline (plain...) -% komastyle standardstyle -% markuppercase markusecase -% automark manualmark -\vspace{-1ex} -\BeginIndex{Option}{headinclude}\BeginIndex{Option}{footinclude} -\BeginIndex{Option}{headexclude}\BeginIndex{Option}{footexclude} -\begin{Declaration} -\Option{headinclude}\\ -\Option{headexclude}\\ -\Option{footinclude}\\ -\Option{footexclude} -\end{Declaration}% -Diese Optionen bestimmen, ob der Seitenkopf bzw.\,der Seitenfuß -für die Satzspiegel zum Text\-kör\-per gezählt werden. -Die durch die Verwendung der Parameter notwendigen Einstellungen -werden vom Paket \Package{typearea} -(siehe \autoref{sec:typearea.options}) -vorgenommen, wenn dieses Paket nach \Package{scrpage2} geladen wird. -Wichtig ist hier, dass bei Verwendung einer \KOMAScript{}-Klasse -diese Optionen bei der Dokumentenklasse und nicht bei \Package{scrpage2} -angegeben werden müssen, um eine Wirkung zu erzielen. -\EndIndex{Option}{headinclude}\EndIndex{Option}{footinclude} -\EndIndex{Option}{headexclude}\EndIndex{Option}{footexclude} - -\BeginIndex{Option}{headtopline}\BeginIndex{Option}{plainheadtopline} -\BeginIndex{Option}{headsepline}\BeginIndex{Option}{plainheadsepline} -\BeginIndex{Option}{footsepline}\BeginIndex{Option}{plainfootsepline} -\BeginIndex{Option}{footbotline}\BeginIndex{Option}{plainfootbotline} -\begin{Declaration} -\Option{headtopline} und \Option{plainheadtopline}\\ -\Option{headsepline} und \Option{plainheadsepline}\\ -\Option{footsepline} und \Option{plainfootsepline}\\ -\Option{footbotline} und \Option{plainfootbotline} -\end{Declaration}% -Eine Grundeinstellung für die Linien unter und über den Kopf- und -Fußzeilen kann mit diesen Optionen vorgenommen werden. -Diese Einstellungen gelten dann als Standard für alle mit \Package{scrpage2} -definierten Seitenstile. -Wird eine von diesen Optionen verwendet, dann wird eine Linienstärke -von 0,4\,pt eingesetzt. -Da es zum Seitenstil \PValue{scrheadings} einen entsprechenden -\PValue{plain}-Stil gibt, kann mit den \Option{plain\dots}-Optionen -auch die entsprechende Linie des \PValue{plain}-Stils konfiguriert -werden. Diese \Option{plain}-Optionen wirken aber nur, wenn auch -die korrespondierende Option ohne \Option{plain} aktiviert wurde. -Somit zeigt die Option \Option{plainheadtopline} -ohne \Option{headtopline} keine Wirkung. - -Bei diesen Optionen ist zu beachten, dass der entsprechende -Seitenteil in den Textbereich des Satzspiegels mit übernommen wird, -wenn eine Linie aktiviert wurde. -Wird also mittels \Option{headsepline} die Trennlinie zwischen -Kopf und Text aktiviert, dann wird automatisch mittels -\Package{typearea} der Satzspiegel so berechnet, dass der Seitenkopf -Teil des Textblocks ist. - -Die Bedingungen für die Optionen des vorhergehenden Abschnitts -gelten auch für diesen Automatismus. -Das bedeutet, dass das Paket \Package{typearea} nach \Package{scrpage2} -geladen werden muss, beziehungsweise, dass bei Verwendung einer -\KOMAScript{}-Klasse, die Optionen -\Option{headinclude} und \Option{footinclude} explizit bei -\Macro{documentclass} gesetzt werden müssen, um Kopf- bzw. Fußzeile -in den Texblock zu übernehmen. - -\EndIndex{Option}{headtopline}\EndIndex{Option}{plainheadtopline} -\EndIndex{Option}{headsepline}\EndIndex{Option}{plainheadsepline} -\EndIndex{Option}{footsepline}\EndIndex{Option}{plainfootsepline} -\EndIndex{Option}{footbotline}\EndIndex{Option}{plainfootbotline} - -\BeginIndex{Option}{ilines}% -\BeginIndex{Option}{clines}% -\BeginIndex{Option}{olines}% -\Index{Linienausrichtung}% -\begin{Declaration} -\Option{ilines}\\ -\Option{clines}\\ -\Option{olines} -\end{Declaration}% -Bei der Festlegung der Linienlängen -kann es vorkommen, dass die Linie zwar die gewünschte Länge aber nicht -die erwünschte Ausrichtung hat, da sie im Kopf- bzw. Fußbereich -zentriert wird. Mit den hier vorgestellten Paketoptionen kann -global für alle mit \Package{scrpage2} definierten Seitenstile diese -Vorgabe modifiziert werden. -Dabei setzt \Option{ilines} die Ausrichtung so, dass die Linien an -den inneren Rand verschoben werden. Die Option \Option{clines} -verhält sich wie die Standardeinstellung und \Option{olines} -richtet am äußeren Rand aus. - -\begin{Example} - Hier gilt es, das Beispiel zu \Macro{setfootsepline} auf Seite - \pageref{page:scrpage.autoLineLength} mit dem folgenden zu - vergleichen, um die Wirkung der Option \Option{ilines} zu sehen. - \begin{small} -\begin{verbatim} - \usepackage[ilines]{scrpage2} - \setfootbotline{2pt} - \setfootsepline[text]{.4pt} - \setfootwidth[0pt]{textwithmarginpar} -\end{verbatim} - \end{small} -% Der folgende Text wurde erg"anzt um den Seitenumbruch zu verbessern, -% mjk-2001-10-05: - \enlargethispage*{2\baselineskip} - Allein die Verwendung der Option \Option{ilines} führt dabei zu der - geänderten Ausgabe, die nachfolgend veranschaulicht wird: -% -\begin{XmpBotPage} - \XmpHeading{10,18}{85} - \thinlines\XmpRule{10,21}{70} - \thicklines\XmpRule{10,16}{85} - \XmpSetText[\XmpBotText]{10,33} - \XmpMarginNote{83,24.5} -\end{XmpBotPage} - Die Trennlinie zwischen Text und Fuß wird bündig innen im Fußteil - gesetzt und nicht wie bei der Standardeinstellung zentriert. -\end{Example} -\EndIndex{Option}{ilines}\EndIndex{Option}{clines}\EndIndex{Option}{olines} - -% \phantomsection für hyperref-\pageref-Link jum-2001/11/24 -\phantomsection% -\BeginIndex{Option}{automark}\BeginIndex{Option}{manualmark} -\begin{Declaration} -\Option{automark}\label{page:scrpage.automark}\\ -\Option{manualmark} -\end{Declaration}% -Diese Optionen setzen gleich zu Beginn des Dokuments die Einstellung, -ob eine automatische Aktualisierung der Kolumnentitel erfolgt. -Die Option \Option{automark} schaltet die automatische -Aktualisierung ein, \Option{manualmark} deaktiviert sie. -% Das Folgende wurde ergaenzt, weil dazu die haeufigsten Fragen -% bzw. falschen Bug-Reports im Support kamen. -% mjk-2001-09-21: -Ohne Verwendung einer der beiden Optionen bleibt die Einstellung -erhalten, die beim Laden des Paketes gültig war. -\begin{Example} - Sie laden das Paket \Package{scrpage2} unmittelbar nach der Klasse - \Class{scrreprt} und ohne weitere Optionen. Dazu schreiben Sie: - \begin{small} -\begin{verbatim} - \documentclass{scrreprt} - \usepackage{scrpage2} -\end{verbatim} - \end{small} - Da bei \Class{scrreprt} der Seitenstil \PValue{plain} voreingestellt - ist, ist dies auch jetzt noch der Fall. Außerdem entspricht die - Voreinstellung \PValue{plain} manuellen Kolumnentiteln. Wenn Sie - also anschließend mit - \begin{small} -\begin{verbatim} - \pagestyle{scrheadings} -\end{verbatim} - \end{small} - auf den Seitenstil \PValue{scrheadings} umschalten, sind noch immer - manuelle Kolumnentitel eingestellt. - - Verwenden Sie stattdessen die Dokumentklasse \Class{scrbook}, so - ist nach - \begin{small} -\begin{verbatim} - \documentclass{scrbook} - \usepackage{scrpage2} -\end{verbatim} - \end{small} - der Seitenstil \PValue{headings} mit automatischen Kolumnentiteln - aktiviert. Bei Umschaltung auf den Seitenstil \PValue{scrheadings} - bleiben automatische Kolumnentitel eingeschaltet. Dabei werden dann - weiterhin die Markierungsmakros von \Class{scrbook} verwendet. - - Verwenden Sie hingegen - \begin{small} -\begin{verbatim} - \usepackage[automark]{scrpage2} -\end{verbatim} - \end{small} - so wird unabhängig von der verwendeten Klasse auf automatische - Kolumnentitel umgeschaltet, wobei die Markierungsmakros von - \Package{scrpage2} genutzt werden. - Natürlich wirkt sich dies auf den Seitenstil - \PValue{plain} von \Class{scrreprt} nicht aus. Die Kolumnentitel - werden erst sichtbar, wenn auf den Seitenstil - \PValue{scrheadings}\IndexPagestyle{scrheadings} oder - \PValue{useheadings} oder einen selbstdefinierten Seitenstil mit - Kolumnentiteln umgeschaltet wird. -\end{Example} -\EndIndex{Option}{automark}\EndIndex{Option}{manualmark} - - -% Folgende Deklaration und Erklaerung wurde eingefügt von -% mjk 2001-08-17: -\BeginIndex{Option}{autooneside} -\begin{Declaration} - \Option{autooneside} -\end{Declaration}% -Diese Option sorgt dafür, dass das optionale Argument von -\Macro{automark}\IndexCmd{automark} im einseitigen Satz automatisch -ignoriert wird. Siehe hierzu auch die Erläuterung zum Befehl -\Macro{automark} in \autoref{sec:scrpage.basics.mark}. -\EndIndex{Option}{autooneside} - - -\BeginIndex{Option}{komastyle}\BeginIndex{Option}{standardstyle} -\begin{Declaration} -\Option{komastyle}\\ -\Option{standardstyle} -\end{Declaration}% -Diese Optionen bestimmen, wie der vordefinierte Seitenstil -\PValue{scrheadings} gestaltet ist. -Bei \Option{komastyle} wird eine Definition vorgenommen, wie -sie den \KOMAScript{}-Klassen entspricht. -Bei den \KOMAScript{}-Klas\-sen ist dies die Voreinstellung und -kann somit auch für andere Klassen gesetzt werden. - -Die Option \Option{standardstyle} definiert \PValue{scrheadings} -wie es von den Standardklassen erwartet wird. -Außerdem wird hier automatisch \Option{markuppercase} aktiviert, -es sei denn, \Option{markusedcase} wird ebenfalls als Option übergeben. -\EndIndex{Option}{komastyle}\EndIndex{Option}{standardstyle} - -\BeginIndex{Option}{markuppercase}\BeginIndex{Option}{markusedcase} -\begin{Declaration} -\Option{markuppercase}\\ -\Option{markusedcase} -\end{Declaration}% -Für die Funktionalität von \Macro{automark} modifiziert -\Package{scrpage2} interne Befehle, die die Gliederungsbefehle -benutzen, um die lebenden Kolumnentitel zu setzen. -Da einige Klassen, im Gegensatz -zu den \KOMAScript{}-Klassen, die Kolumnentitel in Großbuchstaben -schreiben, muss \Package{scrpage2} wissen, wie die genutzte -Dokumentenklasse die lebenden Kolumnentitel darstellt. - -Die Option \Option{markuppercase} zeigt \Package{scrpage2}, -dass die benutzte Klasse die Großschreibweise benutzt. -Die Option \Option{markusedcase} sollte angegeben werden, -wenn die benutzte Dokumentenklasse keine Großschreibweise -verwendet. -Die Optionen sind nicht geeignet, eine entsprechende -Darstellung zu erzwingen. Es kann somit zu unerwünschten -Effekten kommen, wenn die Angabe nicht dem Verhalten -der Dokumentenklasse entspricht. -\EndIndex{Option}{markuppercase}\EndIndex{Option}{markusedcase} - -% Die folgende Deklaration und Erklaerung wurde eingefuegt von -% mjk 2001-08-18 -\begin{Declaration} - \Option{nouppercase} -\end{Declaration}% -\BeginIndex{Option}{nouppercase}% -Wie in der Erklärung zu den Optionen \Option{markuppercase} und -\Option{markusedcase} bereits ausgeführt wurde, gibt es Klassen und -auch Pakete, die beim Setzen der lebenden -Kolumnentitel\Index{Kolumnentitel} mit Hilfe einer der Anweisungen -\Macro{MakeUppercase} oder \Macro{uppercase} den gesamten Eintrag in -Großbuchstaben wandeln. Mit der Option \Option{nouppercase} können -diese beiden Anweisungen im Kopf und im Fuß außer Kraft gesetzt -werden. Das gilt aber nur für Seitenstile, die mit Hilfe von -\Package{scrpage2} definiert werden. Dazu zählen auch -\PValue{scrheadings} und der zugehörige \PValue{plain}-Seitenstil. - -Die verwendete Methode ist äußerst brutal und kann dazu führen, dass -auch erwünschte Änderungen von Klein- in -Großbuchstaben\Index{Grossbuchstaben=Großbuchstaben} unterbleiben. Da -diese Fälle nicht sehr häufig sind, stellt \Option{nouppercase} aber -meist eine brauchbare Lösung dar. -\begin{Example} - Sie verwenden die Standardklasse \Class{book}\IndexClass{book}, - wollen aber, dass die lebenden Kolumnentitel nicht in - Großbuchstaben, sondern in normaler gemischter Schreibweise gesetzt - werden. Die Präambel Ihres Dokuments könnte dann wie folgt beginnen: - \begin{small} -\begin{verbatim} - \documentclass{book} - \usepackage[nouppercase]{scrpage2} - \pagestyle{scrheadings} -\end{verbatim} - \end{small} - Die Umschaltung auf den Seitenstil \PValue{scrheadings} ist - notwendig, weil sonst der Seitenstil \PValue{headings} verwendet - wird, der von der Option \Option{nouppercase} nicht behandelt wird. -\end{Example} - -In einigen Fällen setzen nicht nur Klassen, sondern auch Pakete -lebende Kolumnentitel in Großbuchstaben. Auch in diesen Fällen hilft -\Option{nouppercase} meist, um zu gemischter Schreibweise -zurückzuschalten. -% -\EndIndex{Option}{nouppercase} - - -\section{Seitenstile selbst gestalten}\label{sec:scrpage.UI} -% -% -\subsection{Die Anwenderschnittstelle}\label{sec:scrpage.UI.user} -% \deftripstyle -\BeginIndex{Cmd}{deftripstyle}\Index{Seitenstil} -Nun möchte man ja nicht immer an die vorgegebenen Seitenstile gebunden sein, -sondern auch seiner Kreativität freien Lauf lassen. -Manchmal ist man auch dazu gezwungen, weil ein bestimmtes -\emph{Corporate Identity} einer Firma es verlangt. -Der einfachste Weg damit umzugehen ist -\begin{Declaration} -\Macro{deftripstyle}\Parameter{Name}% -\OParameter{LA}\OParameter{LI}% -\Parameter{KI}\Parameter{KM}\Parameter{KA}% -\Parameter{FI}\Parameter{FM}\Parameter{FA} -\end{Declaration}% -\ScrpageMark{}% -Die einzelnen Felder haben folgende Bedeutung: -\begin{labeling}[\,--]{\PName{Name}} -\item[\PName{Name}] die Bezeichnung des Seitenstils, um ihn mit - \Macro{pagestyle}\Parameter{Name} zu aktivieren -\item[\PName{LA}] die Dicke der äußeren Linien, d.\,h. der Linien über -der Kopfzeile und unter der Fußzeile (optional) -\item[\PName{LI}] die Dicke der inneren Linie, d.\,h. der Linien die Kopf und -Fuß vom Textkörper trennen (optional) -\item[\PName{KI}] Inhalt des Feldes im Kopf innenseitig oder bei einseitigem -Layout links -\item[\PName{KM}] Inhalt des Feldes im Kopf zentriert -\item[\PName{KA}] Inhalt des Feldes im Kopf außenseitig oder bei einseitigem -Layout rechts -\item[\PName{FI}] Inhalt des Feldes im Fuß innenseitig oder bei einseitigem -Layout links -\item[\PName{FM}] Inhalt des Feldes im Fuß zentriert -\item[\PName{FA}] Inhalt des Feldes im Fuß außenseitig oder bei einseitigem -Layout rechts -\end{labeling} - -Der Befehl \Macro{deftripstyle} stellt sicherlich die einfachste -Möglichkeit dar, Seitenstile zu definieren. -Leider sind damit auch Einschränkungen verbunden, -da in einem Seitenbereich mit einem durch \Macro{deftripstyle} deklarierten -Seitenstil keine Änderung der Kopf- und Fußlinien erfolgen kann. - -\begin{Example} -Vorgegeben sei ein doppelseitiges Layout, bei dem die Kolumnentitel -innen erscheinen sollen. -Weiterhin soll der Dokumententitel, in diesem Fall kurz \glqq Bericht\grqq, -an den Außenrand in den Kopf, die Seitenzahl soll zentriert in den Fuß. -\begin{small} -\begin{verbatim} - \deftripstyle{DerBericht}% - {\headmark}{}{Bericht}% - {}{\pagemark}{} -\end{verbatim} -\end{small} - -Sollen weiterhin die Linien über dem Kopf und unter dem Fuß -mit 2\,pt erscheinen und der ganze Textkörper mit dünnen Linien -von 0,4\,pt von Kopf und Fuß abgesetzt werden, dann erweitert -man vorherige Definition. -\begin{small} -\begin{verbatim} - \deftripstyle{DerBericht}[2pt][.4pt]% - {\headmark}{}{Bericht}% - {}{\pagemark}{} -\end{verbatim} -\end{small} -% -\typeout{^^J--- Ignore underfull and overfull \string\hbox:} -\begin{center}\setlength{\unitlength}{1mm}\begin{picture}(100,50)\scriptsize -\thinlines -\put(5,0){\line(0,1){50}} -\put(55,0){\line(0,1){50}} -\put(5,50){\line(1,0){40}} -\put(55,50){\line(1,0){40}} -% -\thicklines -\put(45,0){\line(0,1){50}} -\put(95,0){\line(0,1){50}} -\put(5,0,){\line(1,0){40}} -\put(55,0){\line(1,0){40}} -% -\XmpHeading[Bericht\hfill 2. Das Auge]{11,46}{30} -\XmpHeading[2.1 Netzhaut\hfill Bericht]{59,46}{30} -\XmpHeading[\hfill 14\hfill]{11,6.5}{30} -\XmpHeading[\hfill 15\hfill]{59,6.5}{30} -\put(11,43){\makebox(0,0)[tl]{\parbox{30mm}{\tiny% - \textbf{2.1 Netzhaut}\\ - \XmpText[49]}}} -\put(59,43){\makebox(0,0)[tl]{\parbox{30mm}{\tiny% - \XmpText[51]}}} -% -\thinlines -\XmpRule{11,44.5}{30}\XmpRule{59,44.5}{30} -\XmpRule{11,8}{30}\XmpRule{59,8}{30} -\linethickness{1pt} -\XmpRule{11,48}{30}\XmpRule{59,48}{30} -\XmpRule{11,5}{30}\XmpRule{59,5}{30} -\end{picture}\end{center} -\typeout{^^J--- Don't ignore underfull and overfull \string\hbox:^^J} -\end{Example} -\EndIndex{Cmd}{deftripstyle} - -\subsection{Die Expertenschnittstelle}\label{sec:scrpage.UI.expert} -% \defpagestyle \newpagestyle \providepagestyle \renewpagestyle -\BeginIndex{Cmd}{defpagestyle}\BeginIndex{Cmd}{newpagestyle} -\BeginIndex{Cmd}{renewpagestyle}\BeginIndex{Cmd}{providepagestyle} -\Index{Seitenstil} -Einfache Seitenstile, wie sie mit \Macro{deftripstyle} deklariert -werden können, sind erfahrungsgemäß selten. -Entweder verlangt ein Professor, dass die Diplomarbeit so aussieht -wie seine eigene -- und wer will ihm da \emph{ernsthaft} widersprechen -- -oder eine Firma möchte, dass die halbe Finanzbuchhaltung im -Seitenfuß auf"|taucht. Alles kein Problem, denn es gibt noch: -\begin{Declaration} -\Macro{defpagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition}\\ -\Macro{newpagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition}\\ -\Macro{renewpagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition}\\ -\Macro{providepagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition} -\end{Declaration}% -\ScrpageMark{}% -Dies sind die Befehle, die die volle Kontrolle über die Gestaltung -eines Seitenstils ermöglichen. Der Aufbau ist bei allen vier -Definitionen gleich, sie unterscheiden sich nur in Hinsicht -der Wirkungsweise. -\begin{labeling}[\ --]{\Macro{providepagestyle}} -\item[\Macro{defpagestyle}] definiert immer einen neuen Seitenstil. -Existiert bereits einer mit diesem Namen, wird dieser -überschrieben. -\item[\Macro{newpagestyle}] definiert einen neuen Seitenstil. Wenn schon -einer mit diesem Namen existiert, wird ein Fehler ausgegeben. -\item[\Macro{renewpagestyle}] definiert einen bestehenden Seitenstil um. Wenn noch -keiner mit diesem Namen existiert, wird ein Fehler ausgegeben. -\item[\Macro{providepagestyle}] definiert einen neuen Seitenstil nur dann, -wenn dieser vorher noch nicht existiert. -\end{labeling} - -Am Beispiel von \Macro{defpagestyle} soll die Syntax der Definitionen -im Folgenden erläutert werden. -\begin{labeling}[\,--]{\PName{Kopfdefinition}} -\item[\PName{Name}] die Bezeichnung des Seitenstils für \Macro{pagestyle}\Parameter{Name} -\item[\PName{Kopfdefinition}] die Deklaration des Seitenkopfes bestehend aus -fünf Teilen, wobei die in runden Klammern stehenden Angaben optional sind: -\AParameter{OLL,OLD}\Parameter{GS}\Parameter{US}\Parameter{ES}\AParameter{ULL,ULD} -\item[\PName{Fußdefinition}] die Deklaration des Seitenfußes bestehend aus -fünf Teilen, wobei die in runden Klammern stehenden Angaben optional sind: -\AParameter{OLL,OLD}\Parameter{GS}\Parameter{US}\Parameter{ES}\AParameter{ULL,ULD} -\end{labeling} - -Wie zu sehen ist, haben Kopf- und Fußdefinition identischen Aufbau. Die einzelnen -Parameter haben folgende Bedeutung: -\begin{labeling}[\ --]{\PName{OLD}} -\item[\PName{OLL}] obere Linienlänge: Kopf = außen, Fuß = Trennlinie -\item[\PName{OLD}] obere Liniendicke -\item[\PName{GS}] Definition für die \emph{gerade} Seite -\item[\PName{US}] Definition für die \emph{ungerade} Seite -\item[\PName{ES}] Definition für \emph{einseitiges} Layout -\item[\PName{ULL}] untere Linienlänge Kopf = Trennlinie, Fuß = außen -\item[\PName{ULD}] untere Liniendicke -\end{labeling} - -Werden die optionalen Linienargumente nicht gesetzt, dann -bleibt das Verhalten weiterhin durch die im \autoref{sec:scrpage.basics.format} -vorgestellten Linienbefehle konfigurierbar. -In der alten Version \Package{scrpage}\ScrpageNote{} sind die Linienargumente -obligatorisch. - -Die drei Felder \PName{GS}, \PName{US} und \PName{ES} entsprechen Boxen, die -die Breite des Kopf- bzw. Fußteils haben. -Die entsprechenden Definitionen erscheinen in diesen Boxen linksbündig. -Um somit etwas links- \emph{und} rechtsseitig in den Boxen zu platzieren, -kann der Zwischenraum mit \Macro{hfill} gestreckt werden: -% -\begin{verbatim} - {\headmark\hfill\pagemark} -\end{verbatim} - -Um zusätzlich etwas zentriert erscheinen zu lassen, ist eine erweiterte -Definition notwendig. -Die Befehle \Macro{rlap} und \Macro{llap} setzen die übergebenen Argumente. -Für \LaTeX{} erscheint es aber so, dass diese Texte eine Breite von Null -haben. Nur so erscheint der mittlere Text auch wirklich zentriert. -% -\begin{verbatim} - {\rlap{\headmark}\hfill Text zentriert\hfill\llap{\pagemark}} -\end{verbatim} - -Dies und die Verwendung der Expertenschnittstelle in Zusammenhang mit -anderen Befehlen von \Package{scrpage2} nun als abschließendes Beispiel. - -\begin{Example} -Im Beispiel wird die Dokumentenklasse \Class{scrbook} genutzt. -Das bedeutet, es liegt im Dokument standardmäßig zweiseitiges -Layout vor. -Für das Paket \Package{scrpage2} wird festgelegt, dass mit -automatisch aktualisierten Kolumnentiteln gearbeitet wird und -dass im Seitenstil \PValue{scrheadings} eine Trennlinie zwischen -Kopf und Text gezogen wird. - -\begin{small}\begin{verbatim} - \documentclass{scrbook} - \usepackage[automark,headsepline]{scrpage2} -\end{verbatim}\end{small} - -Mit Hilfe der Expertenschnittstelle werden zwei Seitenstile -definiert. Der erste legt keine Linienargumente fest, im -zweiten wird die Linie über dem Kopf mit einer Dicke -von 1\,pt und die Linie unter dem Kopf mit 0\,pt festgelegt. - -\begin{small}\begin{verbatim} - \defpagestyle{ohneLinien}{% - {Beispiel\hfill\headmark} - {\headmark\hfill ohne Linien} - {\rlap{Beispiel}\hfill\headmark\hfill% - \llap{ohne Linien}} - }{% - {\pagemark\hfill} - {\hfill\pagemark} - {\hfill\pagemark\hfill} - } -\end{verbatim}\end{small} - -\begin{small}\begin{verbatim} - \defpagestyle{mitLinien}{% - (\textwidth,1pt) - {mit Linien\hfill\headmark} - {\headmark\hfill mit Linien} - {\rlap{\KOMAScript}\hfill \headmark\hfill% - \llap{mit Linien}} - (0pt,0pt) - }{% - (\textwidth,.4pt) - {\pagemark\hfill} - {\hfill\pagemark} - {\hfill\pagemark\hfill} - (\textwidth,1pt) - } -\end{verbatim}\end{small} - -Gleich zu Beginn wird der Seitenstil \PValue{scrheadings} -aktiviert. -Mit \Macro{chapter} wird ein neues Kapitel begonnen. -Weiterhin wird automatisch durch \Macro{chapter} -der Seitenstil für diese Seite auf \PValue{plain} gesetzt. -Auch wenn das folgende \Macro{chead} recht unüblich ist, und -auch nicht besonders gelungen ist, zeigt es doch, dass durch -Modifikation das \PValue{plain}-Stils ein Kolumnentitel -erzeugt werden kann. -Grundsätzlich sollte jedoch davon Abstand genommen werden, -da sonst der Markierungscharakter der \PValue{plain}-Seite -verloren geht. Es ist wichtiger anzuzeigen, dass hier ein -neues Kapitel beginnt, als dass ein Abschnitt dieser -Seite einen bestimmten Titel trägt. - -\begin{small}\begin{verbatim} - \begin{document} - \pagestyle{scrheadings} - - \chapter{Thermodynamik} - \chead[\leftmark]{} - \section{Hauptsätze} - Jedes System besitzt eine extensive Zustandsgröße - Energie. Sie ist in einem abgeschlossenen System konstant. -\end{verbatim}\end{small} - -\begin{XmpTopPage} - \XmpHeading[\hfill\textsl{1. Thermodynamik}\hfill]{10,27}{70} - \put(10,17){\normalsize\textbf{\sffamily 1.Thermodynamik}} - \put(10,12){\textbf{\sffamily 1.1 Hauptsätze}} - \XmpSetText[% - Jedes System besitzt eine extensive Zustandsgröße]{10,9} -\end{XmpTopPage} - -Nach dem Seitenwechsel ist dann der Seitenstil \PValue{scrheadings} -aktiv, und somit auch die Trennlinie aus den Paketoptionen -sichtbar. -\begin{small}\begin{verbatim} - Es existiert eine Zustandsgröße, genannt die Entropie, - eines Systems, deren zeitliche Änderung sich aus - Entropieströmung und Entropieerzeugung zusammensetzt. -\end{verbatim}\end{small} -\begin{XmpTopPage} - \XmpHeading[\textsl{1. Thermodynamik}\hfill]{20,27}{70} - \thinlines\XmpRule{20,25}{70} - \XmpSetText[% - Es existiert eine Zustandsgröße, genannt die En"-tropie, - eines Systems, deren zeitliche Änderung sich aus - Entropieströmung und Entropieerzeugung zusammensetzt.]{20,21} -\end{XmpTopPage} - -Wiederum nach einem Seitenwechsel wird auf manuelle Kolumnentitel -gewechselt und der Seitenstil \PValue{ohneLinien} aktiviert. -Da keine Linienargumente bei der Definition dieses Stils -genutzt wurden, wird die Standard-Linienkonfiguration -verwendet, die hier eine Linie zwischen Kopf und Text zeichnet, -da \Option{headsepline} als Argument für \Package{scrpage2} -angegeben wurde. -\begin{small}\begin{verbatim} - \manualmark - \pagestyle{ohneLinien} - \section{Exergie und Anergie} - \markright{Energieumwandlung} - Man bezeichnet die bei der Einstellung des - Gleichgewichts mit der Umgebung maximal - gewinnbare Arbeit als Exergie. -\end{verbatim}\end{small} -\begin{XmpTopPage} - \XmpHeading[\slshape Energieumwandlung\hfill ohne Linien]{10,27}{70} - \thinlines\XmpRule{10,25}{70} - \XmpSetText[% - \textbf{\sffamily 1.2 Exergie und Anergie}\\ - Man bezeichnet die bei der Einstellung des - Gleichgewichts mit der Umgebung maximal - gewinnbare Arbeit als Exergie.]{10,21} -\end{XmpTopPage} - -Nach dem Wechsel auf die folgende linke Seite wird der -Seitenstil \PValue{mitLinien} aktiviert. -Die Linieneinstellungen werden hier nun angewendet und entsprechend -der Definition dargestellt. -\begin{small}\begin{verbatim} - \pagestyle{mitLinien} - \renewcommand{\headfont}{\itshape\bfseries} - Den nicht in Exergie umwandelbaren Anteil einer - Energie nennt man Anergie \Var{B}. - \[ B = U + T (S_1 - S_u) - p (V_1 - V_u)\] - \end{document} -\end{verbatim}\end{small} -\begin{XmpTopPage} - \XmpHeading[\itshape\bfseries mit Linien\hfill 1. Thermodynamik]{20,27}{70} - \thicklines\XmpRule{20,29}{70} - \XmpSetText[% - Den nicht in Exergie umwandelbaren Anteil einer - Energie nennt man Anergie $B$. - \[ B = U + T (S_1 - S_u) - p (V_1 - V_u)\] ]{20,20} -\end{XmpTopPage} -\end{Example} -\EndIndex{Cmd}{defpagestyle}\EndIndex{Cmd}{newpagestyle} -\EndIndex{Cmd}{renewpagestyle}\EndIndex{Cmd}{providepagestyle} - -\subsection{Seitenstile verwalten}\label{sec:scrpage.UI.cfgFile} -% scrpage.cfg -\BeginIndex{File}{scrpage.cfg} -Bei längerer Arbeit mit verschiedenen Seitenstilen wird sich, je nach -Geschmack und Aufgabenstellung, ein fester Satz an benutzten Stilen -etablieren. -Um nicht bei jedem neuen Projekt eine große Kopieraktion von den Daten -eines Projekts zum neuen Projekt starten zu müssen, liest \Package{scrpage2} -am Ende seiner Initialisierungsphase die Datei \File{scrpage.cfg} ein. -In dieser Datei können dann Seitenstile definiert sein, die viele -Projekte gemeinsam nutzen können. -\EndIndex{File}{scrpage.cfg} -\EndIndex{Package}{scrpage2} - -\section{Autoren} -\label{sec:scrpage.authors} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die Vorlage -dafür geliefert. -% In folgener Aufzaehlung den Namen des Autors, der fuer das Kapitel -% verantwortlich ist bitte mit \textbf{} hervorheben. -\begin{itemize} -\item Markus Kohm \TextEMail{Markus.Kohm@gmx.de} -\item \textbf{Jens-Uwe Morawski} -\end{itemize} -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/satzspgl.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/satzspgl.tex deleted file mode 100644 index b8810407868..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/satzspgl.tex +++ /dev/null @@ -1,1353 +0,0 @@ -\ProvidesFile{satzspgl.tex}[2003/05/13 KOMA-Script Anleitung] -% ============================================================================ -% Copyright (c) 2001-2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% satzspgl.tex -% Copyright (c) 2001-2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Modul: Hauptdokument -% Autoren: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Inhalt: Alles über die Satzspiegelkonstruktion und typearea. -% Sprache: Deutsch -% Zeichensatz der Kommentare: -% US-ASCII -% Korrektur: Enrico Kunz -% Index: Enrico Kunz -% - -\chapter{Satzspiegelberechnung mit \Package{typearea.sty}} -\label{cha:typearea} - -\section{Grundlagen der Satzspiegelkonstruktion} - -\begin{Explain} - Betrachtet man eine einzelne Seite eines Buches oder eines anderen - Druckwerkes, so besteht diese auf den ersten Blick aus den - Rändern\footnote{Der Autor und der Lektor haben an dieser Stelle - überlegt, ob eine Seite nicht nur einen umlaufenden Rand hat und - daher von "`dem Rand"' die Rede sein müsste. Da jedoch \LaTeX{} - diesen einen Rand logisch in mehrere Ränder unterteilt, die - getrennt bestimmt werden, ist hier auch von "`den Rändern"' die - Rede.}, einem Kopfbereich, einem Textkörper und einem Fußbereich. - Genauer betrachtet kommt noch ein Abstand zwischen Kopfbereich und - Textkörper sowie zwischen Textkörper und Fußbereich hinzu. Die - Auf"|teilung dieser Bereiche, sowie ihre Anordnung zueinander und - auf dem Papier nennt man - \emph{Satzspiegel}.\Index[indexmain]{Satzspiegel} - - In der Literatur werden verschiedene Algorithmen und heuristische - Verfahren zur Konstruktion eines guten Satzspiegels vorgeschlagen - und diskutiert \cite{DANTE:TK0402:MJK}. Häufig findet man dabei ein - Verfahren, das mit verschiedenen Diagonalen und Schnittpunkten - arbeitet. Das gewünschte Ergebnis dabei ist, dass das - Seitenverhältnis des Textbereichs dem Seitenverhältnis \emph{der - Seite} entspricht. Bei einem einseitigen\Index{einseitig} Dokument - sollen außerdem der linke und rechte Rand gleich breit sein, während - der obere zum unteren Rand im Verhältnis 1:2 stehen sollte. Bei - einem doppelseitigen\Index{doppelseitig} Dokument, beispielsweise - einem Buch, ist hingegen zu beachten, dass der innere Rand genauso - groß sein sollte wie jeder der beiden äußeren Ränder. - - Im vorherigen Abschnitt wurde \emph{die Seite} erwähnt und - hervorgehoben. Irrtümlich wird oftmals angenommen, das Format der - Seite wäre mit dem Format des Papiers - gleichzusetzen.\Index[indexmain]{Seitenformat} - \Index[indexmain]{Papierformat} Betrachtet man jedoch ein gebundenes - Druckerzeugnis, so ist zu erkennen, dass ein Teil des Papiers in der - Bindung\Index[indexmain]{Bindung} verschwindet und nicht mehr als - Seite zu sehen ist. Für den Satzspiegel ist jedoch nicht - entscheidend, welches Format das Papier hat, sondern, was der Leser - für einen Eindruck vom Format der Seite bekommt. Damit ist klar, - dass bei der Berechnung des Satzspiegels der Teil, der durch die - Bindung versteckt wird, aus dem Papierformat herausgerechnet und - dann zum inneren Rand hinzugefügt werden muss. Wir nennen diesen - Teil \emph{Bindekorrektur}.\Index[indexmain]{Bindekorrektur} - - Die Bindekorrektur ist vom jeweiligen Produktionsvorgang abhängig - und kann nicht allgemein festgelegt werden. Es handelt sich dabei - also um einen Parameter, der für jeden Produktionsvorgang neu - festzulegen ist. Im professionellen Bereich spielt dieser Wert nur - eine geringe Rolle, da ohnehin auf größere Papierbögen gedruckt und - entsprechend geschnitten wird. Beim Schneiden wird dann wiederum - sichergestellt, dass obige Verhältnisse für die sichtbare - Doppelseite eingehalten sind. - - Wir wissen nun also, wie die einzelnen Teile zueinander stehen. Was - wir noch nicht wissen ist, wie breit und hoch der Textbereich ist. - Kennen wir eines dieser beiden Maße, so ergeben sich zusammen mit - dem Papierformat und dem Seitenformat oder der Bindekorrektur alle - anderen Maße durch Lösung mehrerer mathematischer Gleichungen. - \begin{eqnarray*} - \Var{Textbereichshöhe} : \Var{Textbereichsbreite} &=& - \Var{Seitenhöhe} : \Var{Seitenbreite}\\ -% - \Var{Seitenbreite} &=& \Var{Papierbreite} - \Var{Bindekorrektur}\\ -% - \Var{oberer~Rand} + \Var{unterer~Rand} &=& - \Var{Seitenhöhe} - \Var{Textbereichshöhe} \\ -% - \Var{oberer~Rand} : \Var{unterer~Rand} &=& 1 : 2 \\ -% - \Var{linker~Rand} : \Var{rechter~Rand} &=& 1 : 1 \\ -% - \Var{halber~innerer~Rand} &=& - \frac{1}{2}\Var{äußerer~Rand} + \Var{Bindekorrektur} \\ - \end{eqnarray*} - \Index[indexmain]{Rand}% - Dabei gibt es \Var{linker~Rand} und \Var{rechter~Rand} nur im - einseitigen Druck. Dementsprechend gibt es \Var{innerer~Rand} und - \Var{äußerer~Rand} nur im doppelseitigen Druck. In den - Gleichungen wird mit \Var{halber~innerer~Rand} gearbeitet, weil der - ganze innere Rand zur Doppelseite gehört. Zu einer Seite gehört also - nur die Hälfte des inneren Randes. - - Die Frage nach der Breite des Textbereichs wird in der Literatur - ebenfalls diskutiert. Die optimale Textbereichsbreite ist von - verschiedenen Faktoren abhängig: - \begin{itemize} - \item Größe, Laufweite und Art der verwendeten Schrift - \item Verwendeter Durchschuss - \item Länge der Worte - \item Verfügbarer Platz - \end{itemize} - Der Einfluss der Schrift wird deutlich, wenn man sich bewusst macht, - wozu Serifen dienen. Serifen\Index[indexmain]{Serifen} sind kleine - Striche an den Linienenden der Buchstaben. Buchstaben, die mit - vertikalen Linien auf die Grundlinie der Textzeile treffen, - lösen diese eher auf, als dass sie das Auge auf der Linie halten. - Genau bei diesen Buchstaben liegen die Serifen horizontal auf - der Grundlinie und verstärken damit die Zeilenwirkung der Schrift. - Das Auge kann der Textzeile nicht nur beim Lesen der Worte, sondern - insbesondere auch beim schnellen Zurückspringen an den Anfang der - nächsten Zeile besser folgen. Damit darf die Zeile bei einer Schrift - mit Serifen genaugenommen länger sein als bei einer Schrift ohne Serifen. - - Unter dem Durchschuss\Index[indexmain]{Durchschuss} versteht man den - Abstand zwischen Textzeilen. Bei \LaTeX{} ist ein Durchschuss von - etwa 20\% der Schriftgröße voreingestellt. Mit Befehlen wie - \Macro{linespread}\IndexCmd{linespread} oder besser mit Hilfe von - Paketen wie \Package{setspace}\IndexPackage{setspace} (siehe - \cite{package:setspace}) kann der Durchschuss verändert werden. Ein - großer Durchschuss erleichtert dem Auge die Verfolgung einer Zeile. - Bei sehr großem Durchschuss wird das Lesen aber dadurch gestört, - dass das Auge zwischen den Zeilen weite Wege zurücklegen muss. - Daneben wird sich der Leser des entstehenden Streifeneffekts sehr - deutlich und unangenehm bewusst. Der Graueindruck der Seite ist in - diesem Fall gestört. Dennoch können bei großem Durchschuss die - Zeilen länger sein. - - Auf der Suche nach konkreten Werten für gute - Zeilenlängen\Index[indexmain]{Zeilenlaenge=Zeilenlänge} findet man in - der Literatur je nach Autor unterschiedliche Angaben. Teilweise ist - dies auch in der Muttersprache des Autors begründet. Das Auge - springt nämlich üblicherweise von Wort zu Wort, wobei kurze Worte - diese Aufgabe erleichtern. Über alle Sprachen und Schriftarten - hinweg kann man sagen, dass eine Zeilenlänge von 60 bis 70 Zeichen, - einschließlich Leer- und Satzzeichen, einen brauchbaren Kompromiss - darstellen. Ein gut gewählter Durchschuss\Index{Durchschuss} wird - dabei vorausgesetzt. Bei den Voreinstellungen von \LaTeX{} braucht - man sich über letzteres normalerweise keine Sorgen zu machen. - - Bevor wir uns an die konkrete Konstruktion machen, fehlen jetzt nur - noch Kleinigkeiten, die man wissen sollte. \LaTeX{} beginnt die - erste Zeile des Textbereichs einer Seite nicht am oberen Rand des - Textbereichs, sondern setzt die Zeile mit einem definierten Abstand - zum oberen Rand des Textbereichs. Desweiteren verfügt \LaTeX{} über - die beiden Befehle \Macro{raggedbottom}\IndexCmd{raggedbottom} und - \Macro{flushbottom}\IndexCmd{flushbottom}. Der erste dieser Befehle - legt fest, dass die letzte Zeile einer jeden Seite dort liegen soll, - wo sie eben zu liegen kommt. Das kann dazu führen, dass sich die - Position der letzten Zeile von Seite zu Seite vertikal um nahezu - eine Zeile verändern kann. Im doppelseitigen Druck ist das in der - Regel unerwünscht. Mit dem zweiten Befehl, \Macro{flushbottom}, wird - hingegen festgelegt, dass die letzte Zeile immer am unteren Rand des - Textbereichs zu liegen kommt. Um dies zu erreichen, muss \LaTeX{} - gegebenenfalls dehnbare vertikale Abstände über das erlaubte Maß - hinaus strecken. Ein solcher Abstand ist beispielsweise der - Absatzabstand. Dies gilt auch, wenn man diesen auf Null gesetzt hat. - Um nicht bereits auf normalen Seiten, auf denen der Absatzabstand - das einzige dehnbare vertikale Maß darstellt, eine Dehnung zu - erzwingen, sollte die Höhe des Textbereichs ein Vielfaches der - Textzeilenhöhe zuzüglich des Abstands der ersten Zeile vom oberen - Rand des Textbereichs sein. - - Damit sind nun alle Grundlagen der Satzspiegelberechnung, die bei - {\KOMAScript} eine Rolle spielen, zusammengetragen. Wir können also - mit der konkreten Konstruktion beginnen.\par -\end{Explain} - - -\section{Satzspiegelkonstruktion durch Teilung} -\label{sec:typearea.divConstruction} - -\begin{Explain} - Der einfachste Weg, um zu erreichen, dass der Textbereich dasselbe - Verhältnis aufweist wie die Seite, ist folgender. Zunächst zieht man - an der Innenseite des Papiers den Teil \Var{BCOR}, der für die - Bindekorrektur\Index{Bindekorrektur} benötigt wird, ab und teilt die - restliche Seite vertikal in eine Anzahl \Var{DIV} gleich hoher - Streifen. Dann teilt man die Seite horizontal in die gleiche Anzahl - \Var{DIV} gleich breiter Streifen. Nun verwendet man den obersten - horizontalen Streifen als oberen und die beiden untersten - horizontalen Streifen als unteren Rand. Im doppelseitigen Druck - verwendet man außerdem den innersten vertikalen Streifen als inneren - und die beiden äußersten vertikalen Streifen als äußeren Rand. Zum - inneren Rand gibt man dann noch \Var{BCOR} hinzu. Was nun innerhalb - der Seite noch übrig bleibt, ist der Textbereich.\Index{Textbereich} - Die Breite bzw. Höhe der Ränder und des Textbereichs resultiert - damit automatisch aus der Anzahl \Var{DIV} der Streifen. Da für die - Ränder insgesamt jeweils drei Streifen benötigt werden, muss - \Var{DIV} zwingend größer als drei sein. - - Bei {\KOMAScript} ist diese Art der Konstruktion im Paket - \Package{typearea} realisiert. Dabei sind für A4-Papier je nach - Schriftgröße unterschiedliche Werte voreingestellt, die - \autoref{tab:typearea.div} zu entnehmen sind. Bei Verzicht auf - Bindekorrektur, wenn also \Var{BCOR} = 0\Unit{pt} gilt, ergeben - sich in etwa die Satzspiegelmaße aus \autoref{tab:typearea.typearea}. - - Neben den voreingestellten Werten kann man \Var{BCOR} und \Var{DIV} - direkt beim Laden des Pakets als Option angeben (siehe - \autoref{sec:typearea.options}). Zusätzlich existiert ein - Befehl, mit dem man einen Satzspiegel explizit berechnen kann und - dem man die beiden Werte als Parameter übergibt (siehe ebenfalls - \autoref{sec:typearea.options}). - - Das \Package{typearea}-Paket bietet außerdem die Möglichkeit, den - optimalen \Var{DIV}-Wert automatisch zu bestimmen. Dieser ist von - der Schriftart abhängig, die zum Zeitpunkt der Satzspiegelberechnung - eingestellt ist. Siehe hierzu ebenfalls - \autoref{sec:typearea.options}. -\end{Explain} - - -\section{Satzspiegelkonstruktion durch Kreisschlagen} -\label{sec:typearea.circleConstruction} - -\begin{Explain} - Neben der zuvor beschriebenen - Satzspiegelkonstruktion\Index{Satzspiegel} gibt es in der Literatur - noch eine eher klassische Methode. Bei diesem Verfahren will man die - gleichen Werte nicht nur in Form des Seitenverhältnisses - wiederfinden; man geht außerdem davon aus, dass das Optimum dann - erreicht wird, wenn die Höhe des Textbereichs der Breite der Seite - entspricht. Das genaue Verfahren ist beispielsweise in - \cite{JTsch87} nachzulesen. - - Als Nachteil dieses spätmittelalterlichen Buchseitenkanons ergibt - sich, dass die Breite des Textbereichs nicht mehr von der Schriftart - abhängt. Es wird also nicht mehr der zur Schrift passende - Textbereich gewählt, stattdessen muss der Autor oder Setzer die zum - Textbereich passende Schrift wählen. Dies ist als zwingend zu - betrachten. - - Im \Package{typearea}-Paket wird diese Konstruktion dahingehend - abgewandelt, dass durch Auswahl eines ausgezeichneten -- normalweise - unsinnigen -- \Var{DIV}-Wertes oder eine spezielle Paket-Option - derjenige \Var{DIV}-Wert ermittelt wird, bei dem der resultierende - Satzspiegel dem spätmittelalterlichen Buchseitenkanon am nächsten - kommt. Siehe hierzu ebenfalls - \autoref{sec:typearea.options}.\par -\end{Explain} - - -\section{Optionen und Makros zur Beeinflussung des Satzspiegels} -\label{sec:typearea.options} -% DIV, DIVcalc, DIVclassic, BCOR -% headinclude, headexclude, footinclude, footexclude, mpinclude, mpexclude -% \typearea, \areaset - -Das Paket \Package{typearea} bietet zwei unterschiedliche -Benutzerschnittstellen, um auf die Satzspiegelkonstruktion Einfluss zu -nehmen. Die erste Möglichkeit ist, beim Laden des Pakets entsprechende -Optionen anzugeben. Wie man Pakete lädt und Paketoptionen übergibt, -entnehmen Sie bitte der Literatur zu \LaTeX{}, beispielsweise -\cite{l2kurz} und \cite{latex:usrguide}, oder den auf den folgenden -Seiten aufgeführten -Beispielen. Da bei der Verwendung der \KOMAScript-Hauptklassen das -Paket \Package{typearea} automatisch geladen wird, müssen die -entsprechenden Paket-Optionen bei diesen Klassen auch direkt als -Klassen-Optionen übergeben werden (siehe -\autoref{sec:maincls.options}). - -\begin{Declaration} - \Option{BCOR}\PName{Korrektur} -\end{Declaration}% -\BeginIndex{Option}{BCOR}% -Mit Hilfe der Option \Option{BCOR}\PName{Korrektur} geben Sie den -absoluten Wert der Bindekorrektur\Index{Bindekorrektur} an, also -die Breite des Bereichs der durch die Bindung von der Papierbreite -verloren geht. Dieser Wert wird in der Satzspiegelkonstruktion -automatisch berücksichtigt und bei der Ausgabe wieder dem inneren -beziehungsweise linken Rand zugeschlagen. Als \PName{Korrektur} -können Sie jede von \TeX verstandene Maßeinheit angeben. - -\begin{Example} - Angenommen Sie erstellen einen Finanzbericht. Das Ganze soll - einseitig in A4 gedruckt und anschließend in eine Klemmmappe - geheftet werden. Die Klemme der Mappe verdeckt 7,5\Unit{mm}. - Der Papierstapel ist sehr dünn, deshalb gehen beim Knicken und - Blättern durchschnittlich höchstens weitere 0,75\Unit{mm} - verloren. Sie schreiben dann also: -\begin{verbatim} - \documentclass[a4paper]{report} - \usepackage[BCOR8.25mm]{typearea} -\end{verbatim} - oder bei Verwendung einer \KOMAScript-Klasse: -\begin{verbatim} - \documentclass[a4paper,BCOR8.25mm]{scrreprt} -\end{verbatim} -\end{Example} - -Bitte beachten Sie unbedingt, dass diese Option bei Verwendung einer -der \KOMAScript-Klassen als Klassenoption übergeben werden muss. -Demgegenüber funktioniert dies bei Verwendung einer anderen Klasse -nur, wenn diese Klasse \Package{typearea} explizit unterstützt. Bei -den Standardklassen ist die Option also direkt beim Laden von -\Package{typearea} zu übergeben. Die Verwendung von -\Macro{PassOptionsToPackage} (siehe \cite{latex:clsguide}) vor dem -Laden von \Package{typearea} funktioniert hingegen immer. -% -\EndIndex{Option}{BCOR} - -\begin{Declaration} - \Option{DIV}\PName{Faktor} -\end{Declaration}% -\BeginIndex{Option}{DIV}% -Mit Hilfe der Option \Option{DIV}\PName{Faktor} wird festgelegt, in -wieviele Streifen die Seite horizontal und vertikal bei der -Satzspiegelkonstruktion eingeteilt wird. Die genaue Konstruktion ist -\autoref{sec:typearea.divConstruction} zu entnehmen. Wichtig zu -wissen ist, dass gilt: Je größer der \PName{Faktor} desto größer wird -der Textbereich und desto kleiner die Ränder. Als \PName{Faktor} kann -jeder ganzzahlige Wert ab 4 verwendet werden. Bitte beachten Sie -jedoch, dass sehr große Werte dazu führen können, dass Randbedingungen -der Satzspiegelkonstruktion, je nach Wahl der weiteren Optionen, -verletzt werden. So kann die Kopfzeile im Extremfall auch außerhalb -der Seite liegen. Bei Verwendung der Option \Option{DIV}\PName{Faktor} -sind Sie für die Einhaltung der Randbedingungen sowie eine nach -typografischen Gesichtspunkten günstige Zeilenlänge selbst -verantwortlich. - -In \autoref{tab:typearea.typearea} finden Sie für das Seitenformat A4 -ohne Bindekorrektur die aus einigen DIV-Faktoren -resultierenden Satzspiegelgrößen. Dabei werden die weiteren von der -Schriftgröße abhängigen Nebenbedingungen nicht berücksichtigt. - -\begin{table} - \centering - \begin{tabular}{c|cc|cc} - & \multicolumn{2}{c|}{Textbereich} & \multicolumn{2}{c}{R"ander}\\ - \emph{DIV}& Breite [mm] & H"ohe [mm] & oben [mm] & innen [mm] \\ - \hline\rule{0pt}{2.7ex}% - 6 & 105,00 & 148,50 & 49,50 & 35,00 \\ - 7 & 120,00 & 169,71 & 42,43 & 30,00 \\ - 8 & 131,25 & 185,63 & 37,13 & 26,25 \\ - 9 & 140,00 & 198,00 & 33,00 & 23,33 \\ - 10 & 147,00 & 207,90 & 29,70 & 21,00 \\ - 11 & 152,73 & 216,00 & 27,00 & 19,09 \\ - 12 & 157,50 & 222,75 & 24,75 & 17,50 \\ - 13 & 161,54 & 228,46 & 22,85 & 16,15 \\ - 14 & 165,00 & 233,36 & 21,21 & 15,00 \\ - 15 & 168,00 & 237,60 & 19,80 & 14,00 \\ - \end{tabular} - \caption{Satzspiegelma"se in Abh"angigkeit von \Var{DIV} bei A4} - \label{tab:typearea.typearea} -\end{table} - -\begin{Example} - Angenommen Sie schreiben ein Sitzungsprotokoll. Sie verwenden dafür - die Klasse \Class{protokol}\footnote{Die Klasse \Class{protokol} ist - eine hypothetische Klasse. Diese Anleitung geht von dem Idealfall - aus, dass für jede Aufgabe eine dafür passende Klasse vorhanden - ist.}. Das Ganze soll doppelseitig werden. In Ihrer Firma wird die - Schriftart Bookman in 12\Unit{pt} verwendet. Diese Schriftart, die - zu den Standard-PostScript-Schriften gehört, wird in {\LaTeX} mit - der Anweisung \verb|\usepackage{bookman}| aktiviert. Die Schriftart - Bookman läuft sehr weit, das heißt, die einzelnen Zeichen sind im - Verhältnis zur Höhe relativ breit. Deshalb ist Ihnen die - Voreinstellung für den \Var{DIV}-Wert in \Package{typearea} zu - gering. Statt einem Wert von 12 sind Sie nach gründlichem Studium - dieses Kapitels einschließlich der weiterführenden Abschnitte - überzeugt, dass ein Wert 15 angebracht ist. Das Protokoll wird nicht - gebunden, sondern gelocht und in einen Ordner abgeheftet. Eine - Bindekorrektur ist deshalb nicht notwendig. Sie schreiben also: - \begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{protokol} - \usepackage{bookman} - \usepackage[DIV15]{typearea} -\end{verbatim} - \end{small} - Als Sie fertig sind, macht man Sie darauf aufmerksam, dass die - Protokolle neuerdings gesammelt und am Quartalsende alle zusammen - als Buch gebunden werden. Die Bindung erfolgt als - einfache Leimbindung, weil den Band ohnehin nie wieder jemand - anschaut und nur wegen ISO\,9000 angefertigt wird. Für die Bindung - einschließlich Biegefalz werden durchschnittlich 12\Unit{mm} - benötigt. Sie ändern die Optionen von \Package{typearea} also - entsprechend ab und verwenden die Klasse für Protokolle nach - ISO\,9000: - \begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{iso9000p} - \usepackage{bookman} - \usepackage[DIV15,BCOR12mm]{typearea} -\end{verbatim} - \end{small} - Natürlich können Sie auch hier wieder eine \KOMAScript-Klasse - verwenden: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside,DIV15,BCOR12mm]{scrartcl} - \usepackage{bookman} -\end{verbatim} -\end{small} -\end{Example} - -Bitte beachten Sie unbedingt, dass diese Option bei Verwendung einer -der \KOMAScript-Klassen als Klassenoption übergeben werden muss. -Demgegenüber funktioniert dies bei Verwendung einer anderen Klasse -nur, wenn diese Klasse \Package{typearea} explizit unterstützt. Bei -den Standardklassen ist die Option also direkt beim Laden von -\Package{typearea} zu übergeben. Die Verwendung von -\Macro{PassOptionsToPackage} (siehe \cite{latex:clsguide}) vor dem -Laden von \Package{typearea} funktioniert hingegen immer. -% -\EndIndex{Option}{DIV} - -\begin{Declaration} - \Option{DIVcalc}\\ - \Option{DIVclassic} -\end{Declaration}% -\BeginIndex{Option}{DIVcalc}% -\BeginIndex{Option}{DIVclassic}% -Wie bereits in \autoref{sec:typearea.divConstruction} erwähnt, gibt -es nur für das Papierformat A4 feste Voreinstellungen für den -\Var{DIV}-Wert. Diese sind \autoref{tab:typearea.div} zu entnehmen. Wird -ein anderes Papierformat gewählt, so berechnet \Package{typearea} -selbst einen guten \Var{DIV}-Wert. Natürlich können Sie diese -Berechnung auch für A4 wählen. Hierzu verwenden Sie einfach die Option -\Option{DIVcalc} an Stelle von \Option{DIV}\PName{Faktor}. -Selbstverständlich können Sie diese Option auch explizit bei allen -anderen Papierformaten angeben. Wenn Sie die automatische Berechnung -wünschen, ist diese Angabe sogar sinnvoll, da die Möglichkeit besteht, -in einer Konfigurationsdatei andere Voreinstellungen zu setzen (siehe -\autoref{sec:typearea.cfg}), die dann mit dieser Option außer -Kraft gesetzt werden können. - -\begin{table} - \centering - \begin{tabular}{lccc} - Grundschriftgr"o"se: & 10\Unit{pt} & 11\Unit{pt} & 12\Unit{pt} \\ - \Var{DIV}: & 8 & 10 & 12 \\ - \end{tabular} - \caption{\label{tab:typearea.div}\PName{DIV}-Voreinstellungen f"ur A4} -\end{table} - -Die in \autoref{sec:typearea.circleConstruction} erwähnte klassische -Konstruktion, der mittelalterliche Buchseitenkanon, mit der -Abweichung, dass ein dazu möglichst gut passender \Var{DIV}-Wert -ermittelt wird, ist ebenfalls auswählbar. Verwenden Sie in -diesem Fall an Stelle von \Option{DIV}\PName{Faktor} oder -\Option{DIVcalc} einfach die Option \Option{DIVclassic}. - -\begin{Example} - In dem bei der Option \Option{DIV}\PName{Faktor} aufgeführten - Beispiel mit der Schriftart Bookman gab es ja genau das Problem, - dass man einen zur Schriftart besser passenden \Var{DIV}-Wert haben - wollte. Man könnte also in Abwandlung des ersten Beispiels auch - einfach die Ermittlung dieses Wertes \Package{typearea} überlassen: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{protokol} - \usepackage{bookman} - \usepackage[DIVcalc]{typearea} -\end{verbatim} -\end{small} -\end{Example} - -\begin{Declaration} - \Macro{typearea}\OParameter{BCOR}\Parameter{DIV} -\end{Declaration}% -\BeginIndex{Cmd}{typearea}% -Wenn Sie bis hier die Beispiele aufmerksam verfolgt haben, werden Sie -sich fragen, wie man die Berechnung eines \Var{DIV}-Wertes in -Abhängigkeit von der gewählten Schrift erreicht, wenn eine -\KOMAScript-Klasse verwendet wird, also die Optionen für -\Package{typearea} vor dem Laden beispielsweise des -\Package{bookman}-Pakets erfolgen müsste. In diesem Fall könnte -\Package{typearea} nur einen Satzspiegel für die Standardschrift, nicht -jedoch für die dann tatsächlich verwendete Schrift Bookman berechnen. -Nach der Auswertung der Optionen berechnet das -\Package{typearea}-Paket den Satzspiegel mit Hilfe des Befehls -\Macro{typearea}\OParameter{BCOR}\Parameter{DIV}. Dabei werden der -gewählte \Var{BCOR}-Wert als optionaler Parameter und der -\Var{DIV}-Wert als Parameter übergeben. Bei der Option -\Option{DIVcalc} werden -dabei als \PName{DIV} der eigentlich ungültige Wert~1 und bei der -Option \Option{DIVclassic} der eigentlich ungültige -Wert~3 übergeben. Den Befehl \Macro{typearea} kann man auch -explizit in der Präambel aufrufen. - -\begin{Example} - Gehen wir wieder davon aus, dass für die Schriftart Bookman ein - Satzspiegel mit guter Zeilenlänge berechnet werden soll. - Gleichzeitig wird eine \KOMAScript-Klasse verwendet. Dies ist unter - Verwendung des \Macro{typearea}-Befehls mit dem - \Option{DIVcalc}-Wert 1 als \PName{DIV}-Parameter möglich: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,BCOR12mm,DIVcalc,twoside]{scrartcl} - \usepackage{bookman} - \typearea[12mm]{1}% entspricht obigen Optionen -\end{verbatim} -\end{small} -\end{Example} - -Nun ist es möglicherweise etwas unpraktisch, wenn man bei der -\Option{DIV}-Option die Möglichkeit hat, \Option{DIVcalc} und -\Option{DIVclassic} anzuwenden, beim \Macro{typearea}-Befehl aber mit -irgendwelchen Pseudowerten jonglieren soll. Deshalb versteht -\Macro{typearea} auch folgende symbolische Angaben für den Parameter -\PName{DIV}: -\begin{labeling}[\ --]{\PValue{classic}} - \item [\PValue{calc}] Satzspiegelberechnung einschließlich - Ermittlung eines guten \Var{DIV}-Wertes erneut durchführen. - \item [\PValue{classic}] Satzspiegelberechnung nach dem - mittelalterlichen Buchseitenkanon (Kreisberechnung) erneut - durchführen. - \item [\PValue{current}] Satzspiegelberechnung mit dem aktuell - gültigen \Var{DIV}-Wert erneut durchführen. - \item [\PValue{default}] Satzspiegelberechnung mit dem Standardwert - für das aktuelle Seitenformat und die aktuelle Schriftgröße erneut - durchführen. Falls kein Standardwert existiert \PValue{calc} - anwenden. - \item [\PValue{last}] Satzspiegelberechnung mit demselben - \PName{DIV}-Argument, das beim letzten Aufruf angegeben wurde, - erneut durchführen. -\end{labeling} -Jetzt wäre es natürlich äußerst unpraktisch, wenn man zwar eine -Satzspiegelberechnung mit dem aktuellen \Var{DIV}-Wert erneut -durchführen könnte, jedoch dabei den \Var{BCOR}-Wert neu angeben -müsste. Deshalb versteht \Macro{typearea} auch die folgende -symbolische Angabe für den Parameter \PName{BCOR}: -\begin{labeling}[\ --]{\PValue{classic}} - \item [\PValue{current}] Satzspiegelberechnung mit dem aktuell - gültigen \Var{BCOR}-Wert erneut durchführen. -\end{labeling} - -\begin{Example} - Gehen wir wieder davon aus, dass für die Schriftart Bookman - ein Satzspiegel mit guter Zeilenlänge berechnet werden - soll. Gleichzeitig wird eine \KOMAScript-Klasse verwendet. Unter - Verwendung der symbolischen Parameterwerte für \PName{BCOR} und - \PName{DIV} ist dies mit dem \Macro{typearea}-Befehl einfach - möglich: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,BCOR12mm,DIVcalc,twoside]{scrartcl} - \usepackage{bookman} - \typearea[current]{calc} -\end{verbatim} -\end{small} - Soll hingegen die neuerliche Berechnung mit einem festen - \Var{DIV}-Wert durchgeführt werden, so gibt es neben der - Möglichkeit: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,BCOR12mm,DIV11,twoside]{scrartcl} - \usepackage{bookman} - \typearea[current]{current} -\end{verbatim} -\end{small} - natürlich auch noch die alte Methode: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,twoside]{scrartcl} - \usepackage{bookman} - \typearea[12mm]{11} -\end{verbatim} -\end{small} - Letztlich ist es eine Frage des Geschmacks, welche Lösung man lieber - verwendet. -\end{Example} - -Häufig wird die Satzspiegelneuberechnung im Zusammenhang mit der -Ver"-änderung des Zeilenabstandes -(\emph{Durchschuss})\Index{Durchschuss} benötigt. Da der -Satzspiegel unbedingt so berechnet werden sollte, dass eine ganze -Anzahl an Zeilen in den Textbereich passt, muss bei Verwendung -eines anderen Durchschusses als dem normalen der Satzspiegel für -diesen Zeilenabstand neu berechnet werden. - -\begin{Example} - Angenommen für eine Diplomarbeit wird die Schriftgröße - 10\Unit{pt} bei eineinhalbzeiligem Satz zwingend gefordert. {\LaTeX} - setzt normalwerweise bei 10\Unit{pt} mit 2\Unit{pt} Durchschuss, - also 1,2-zeilig. Deshalb muss als zusätzlicher Dehnfaktor der Wert - 1,25 verwendet werden. Gehen wir außerdem davon aus, dass eine - Bindekorrektur von 12\Unit{mm} benötigt wird. Dann könnte die Lösung - dies Problems wie folgt aussehen: -\begin{small} -\begin{verbatim} - \documentclass[10pt,BCOR12mm,DIVcalc,twoside]{scrreprt} - \linespread{1.25}\selectfont - \typearea[current]{calc} -\end{verbatim} -\end{small}\IndexCmd{linespread} - Der Befehl \Macro{selectfont} wird benötigt, damit der geänderte - Durchschuss auch tatsächlich vor der Neuberechnung aktiviert wird. - - Das gleiche Beispiel sähe unter Verwendung des - \Package{setspace}-Pakets (siehe \cite{package:setspace}) wie folgt - aus: -\begin{small} -\begin{verbatim} - \documentclass[10pt,BCOR12mm,DIVcalc,twoside]{scrreprt} - \usepackage{setspace} - \onehalfspacing - \typearea[current]{calc} -\end{verbatim} -\end{small} - Wie man sieht, spart man sich mit dem \Package{setspace}-Paket nicht - nur das Wissen um den korrekten Dehnungswert, sondern auch das - Wissen, dass \Macro{selectfont} benötigt wird. - - An dieser Stelle erscheint es mir angebracht, darauf hinzuweisen, - dass der Zeilenabstand für die Titelseite wieder auf den normalen - Wert zurückgesetzt werden sollte. Ein vollständiges Beispiel wäre - also: -\begin{small} -\begin{verbatim} - \documentclass[10pt,BCOR12mm,DIVcalc,twoside]{scrreprt} - \usepackage{setspace} - \onehalfspacing - \typearea[current]{calc} - \begin{document} - \title{Title} - \author{Markus Kohm} - \begin{spacing}{1} - \maketitle - \tableofcontents - \end{spacing} - \chapter{Ok} - \end{document} -\end{verbatim} -\end{small} - Siehe hierzu auch die Anmerkungen in - \autoref{sec:typearea.tips}. -\end{Example} - -\begin{Explain} - Der Befehl \Macro{typearea} ist derzeit so definiert, dass es - theoretisch auch möglich wäre, mitten in einem Dokument den - Satzspiegel zu wechseln. Dabei werden allerdings Annahmen über den - Aufbau des \LaTeX-Kerns gemacht und interne Definitionen und Größen - des \LaTeX-Kerns verändert. Es gibt zwar eine gewisse - Wahrscheinlichkeit, aber keine Garantie, dass dies in zukünftigen - Versionen von \LaTeXe{} noch funktionieren wird. Es ist anzunehmen, - dass es bei \LaTeX3 nicht mehr zu einem korrekten Ergebnis führt. - Aber als Autor von {\KOMAScript} gehe ich derzeit davon aus, dass - der Umstieg zu \LaTeX3 mit sehr viel mehr Inkompatiblilitäten - einhergehen wird.\par -\end{Explain} -% -\EndIndex{Cmd}{typearea} -\EndIndex{Option}{DIVclassic}% -\EndIndex{Option}{DIVcalc} - -\begin{Declaration} - \Option{headinclude}\\ - \Option{headexclude}\\ - \Option{footinclude}\\ - \Option{footexclude} -\end{Declaration}% -\BeginIndex{Option}{headinclude}% -\BeginIndex{Option}{headexclude}% -\BeginIndex{Option}{footinclude}% -\BeginIndex{Option}{footexclude}% -\begin{Explain}% - Bisher wurde zwar erklärt, wie die - Satzspiegelkonstruktion\Index{Satzspiegel} - funktioniert und in welchem Verhältnis die Ränder\Index{Rand} zueinander und der - Textkörper zur Seite steht, aber eine entscheidene Frage blieb - ausgeklammert. Es handelt sich dabei um die Frage, was denn - eigentlich unter dem Rand zu verstehen ist. Auf den ersten Blick - wirkt diese Frage trivial: Der Rand ist der Teil der Seite, der - oben, unten, links und rechts frei bleibt. Doch das ist nur die - halbe Wahrheit. Der äußere Rand ist keineswegs immer leer. Teilweise - findet man darin noch gesetzte Randnotizen (siehe den Befehl - \Macro{marginpar} beispielsweise in \cite{l2kurz} bzw. - \autoref{sec:maincls.marginNotes}). - - Beim oberen und unteren Rand stellt sich die Frage, wie Kopf- und - Fußzeile\Index{Seitenkopf} \Index{Seitenfuß} zu behandeln sind. - Gehören diese beiden zum Textkörper oder - zum jeweiligen Rand? Die Frage ist nicht einfach zu beantworten. - Eindeutig ist, dass ein leerer Fuß und ein leerer Kopf zum Rand zu - rechnen sind. Schließlich können sie nicht vom restlichen Rand - unterschieden werden. Ein Fuß, der nur die - Paginierung\Index[indexmain]{Paginierung}\footnote{Unter der - Paginierung versteht man die Angabe - der Seitenzahl.} enthält, wirkt optisch ebenfalls eher wie Rand und - sollte deshalb zu diesem gerechnet werden. Für die optische Wirkung - ist dabei unwesentlich, ob der Fuß beim Lesen oder Überfliegen - leicht als Fuß erkannt werden kann oder nicht. Entscheidend ist, wie - eine wohlgefüllte Seite bei \emph{unscharfer Betrachtung} - wirkt. Dazu bedient man sich beispielsweise seiner - altersweitsichtigen Großeltern, denen man die Brille stibitzt und - dann die Seite etwa einen halben Meter von der Nasenspitze entfernt - hält. In Ermangelung erreichbarer Großeltern kann man sich auch - damit behelfen, dass man die eigenen Augen auf Fernsicht stellt die - Seite aber nur mit ausgestreckten Armen hält. Brillenträger sind - hier deutlich im Vorteil. Hat man eine Fußzeile, die neben der - Paginierung weitere, weitschweifige Angaben enthält, beispielsweise - einen Copyrighthinweis, so wirkt die Fußzeile eher wie ein etwas - abgesetzter Teil des Textkörpers. Bei der Berechnung des - Satzspiegels sollte das berücksichtigt werden. - - Bei der Kopfzeile sieht es noch schwieriger aus. In der Kopfzeile - wird häufig der - Kolumnentitel\Index[indexmain]{Kolumnentitel}\footnote{Unter dem - Kolumnentitel versteht man in der Regel die Wiederholung einer - Überschrift mit Titelcharakter.} gesetzt. Arbeitet man mit einem - lebenden Kolumnentitel, also der Wiederholung der ersten bzw. - zweiten Gliederungsebene in der Kopfzeile, und hat gleichzeitig sehr - lange Überschriften, so erhält man automatisch sehr lange - Kopfzeilen. In diesem Fall wirkt der Kopf wiederum wie ein - abgesetzter Teil des Textkörpers und weniger wie leerer Rand. - Verstärkt wird dieser Effekt noch, wenn neben dem Kolumnentitel auch - die Paginierung im Kopf erfolgt. Dadurch erhält man einen links und - rechts abgeschlossenen Bereich, der kaum noch als leerer Rand wirkt. - Schwieriger ist es bei Paginierung im Fuß und Überschriften, deren - Länge sehr stark schwankt. Hier kann der Kopf der einen Seite wie - Textkörper wirken, der Kopf der anderen Seite jedoch eher wie Rand. - Keinesfalls sollte man die Seiten jedoch unterschiedlich behandeln. - Das würde zu vertikal springenden Köpfen führen und ist nicht einmal - für ein Daumenkino geeignet. Ich rate in diesem Fall dazu, den Kopf - zum Textkörper zu rechnen. - - Ganz einfach fällt die Entscheidung, wenn der Kopf oder Fuß durch - eine Linie vom eigentlichen Textkörper abgetrennt ist. Dadurch - erhält man eine geschlossene Wirkung und der Kopf bzw. Fuß sollte - unbedingt zum Textkörper gerechnet werden. Wie gesagt, die durch die - Trennlinie verbesserte Erkennung des Kopfes oder Fußes ist hier - unerheblich. Entscheidend ist die unscharfe Betrachtung.\par -\end{Explain} - -Das \Package{typearea}-Paket trifft die Entscheidung, ob ein Kopf oder -Fuß zum Textkörper gehört oder davon getrennt zum Rand gerechnet -werden muss, nicht selbst. Stattdessen kann mit den Optionen -\Option{headinclude} und \Option{footinclude} der Kopf bzw. Fuß -explizit zum Textkörper gezählt werden, während mit den Optionen -\Option{headexclude} und \Option{footexclude} der Kopf bzw. Fuß zum -Rand gerechnet wird. Wenn Sie unsicher sind, was die richtige -Einstellung ist, lesen Sie bitte obige Erläuterungen. Voreingestellt -sind normalerweise \Option{headexclude} und \Option{footexclude}. Dies -kann sich jedoch bei den \KOMAScript-Klassen je nach Klassenoption -oder bei Verwendung anderer \KOMAScript-Pakete generell ändern (siehe -Abschnitte~\ref{sec:maincls.options} und \ref{cha:scrpage}). -% -\EndIndex{Option}{headinclude}% -\EndIndex{Option}{headexclude}% -\EndIndex{Option}{footinclude}% -\EndIndex{Option}{footexclude}% - - -\begin{Declaration} - \Option{mpinclude}\\ - \Option{mpexclude} -\end{Declaration} -\BeginIndex{Option}{mpinclude}% -\BeginIndex{Option}{mpexclude}% -Neben\ChangedAt{v2.8q}{\Class{scrbook}\and \Class{scrreprt}\and - \Class{scrartcl}} Dokumenten, bei denen der Kopf und der Fuß der -Seite eher zum Textbereich als zum Rand gehört, gibt es auch -Dokumente, bei denen dies für Randnotizen zutrifft. Mit der Option -\Option{mpinclude} kann genau dies erreicht werden. Der Effekt dabei -ist, dass eine Breiteneinheit vom Textbereich weggenommen und als -Bereich für die Randnotizen verwendet wird. Mit der Option -\Option{mpexclude}, die der Voreinstellung entspricht, wird -hingegen ein Teil des Randes für Randnotizen verwendet. Dies ist, je -nachdem, ob einseitig oder doppelseitig gearbeitet wird, ebenfalls -eine Breiteneinheit oder auch eineinhalb Breiteneinheiten. In der -Regel ist die Verwendung von \Option{mpinclude} nicht anzuraten -beziehungsweise sollte Experten vorbehalten bleiben. - -\begin{Explain} -In den meisten Fällen, in denen die Option \Option{mpinclude} sinnvoll -ist, werden außerdem breitere Randnotizen benötigt. In sehr vielen -Fällen sollte dabei aber nicht die gesamte Breite, sondern nur ein -Teil davon, dem Textbereich zugeordnet werden. Dies ist beispielsweise -der Fall, wenn der Rand für Zitate verwendet wird. Solche Zitate -werden üblicherweise im Flattersatz gesetzt, wobei die bündige Kante -an den Textbereich anschließt. Da sich kein geschlossener optischer -Eindruck ergibt, dürfen die flatternden Enden also durchaus teilweise -in den Rand ragen. Man kann das einfach erreichen, indem man zum einen -die Option \Option{mpinclude} verwendet. Zum anderen vergrößert man -die Länge \Length{marginparwidth} nach der Berechnung des Satzspiegels -noch mit Hilfe der \Macro{addtolength}-Anweisung. Um welchen Wert man -vergrößern sollte, hängt vom Einzelfall ab und erfordert einiges -Fingerspitzengefühl. Auch deshalb ist die Option \Option{mpinclude} -eher etwas für Experten. Natürlich kann man auch festlegen, dass die -Randnotizen beispielsweise zu einem Drittel in den Rand hineinragen -sollen. Im Beispiel würde man das mit -\Macro{setlength}\PParameter{\Length{marginparwidth}}% -\PParameter{1.5\Length{marginparwidth}} erreichen. - -Da es derzeit keine Option gibt, um mehr Platz für die Randnotizen -innerhalb des Textbereichs vorzusehen, gibt es nur eine -Möglichkeit dies zu erreichen. Man verzichtet auf die Option -\Option{mpinclude}, verringert nach der Satzspiegelberechnung die -Breite des Textbereichs \Macro{textwidth} und setzt die Breite des -Bereichs der Randnotizen auf den Wert, um den man die Breite des -Textbereichs verringert hat. Leider lässt sich dieses Vorgehen nicht -mit der automatischen Berechnung des \PName{DIV}-Wertes verbinden. -Demgegenüber wird \Option{mpinclude} bei -\Option{DIVcalc}\IndexOption{DIVcalc} berücksichtigt. -\end{Explain} -% -\EndIndex{Option}{mpinclude}% -\EndIndex{Option}{mpexclude}% - - -\begin{Declaration} - \PName{Wert}\Option{headlines} -\end{Declaration}% -\BeginIndex{Option}{headlines}% -Es ist nun also bekannt, wie man Satzspiegel mit dem -\Package{typearea}-Paket berechnet und wie man dabei angibt, ob der -Kopf oder Fuß zum Textkörper oder zum Rand gehört. Insbesondere für -den Kopf fehlt aber noch die Angabe, wie hoch er denn eigentlich sein -soll. Hierzu dient die Option \Option{headlines}, der man die Anzahl -der Kopfzeilen voranstellt. Normalerweise arbeitet das -\Package{typearea}-Paket mit 1,25 Kopfzeilen. Dieser Wert stellt einen -Kompromiss dar. Zum einen ist er groß genug, um auch für eine -unterstrichene Kopfzeile (siehe \autoref{sec:maincls.options}) -Platz zu bieten, zum anderen ist er klein genug, um das Randgewicht -nicht zu stark zu verändern, wenn mit einer einfachen, nicht -unterstrichenen Kopfzeile gearbeitet wird. Damit ist der -voreingestellte Wert in den meisten Standardfällen ein guter Wert. -In einigen Fällen will oder muss man aber die Kopfhöhe genauer den -tatsächlichen Erfordernissen anpassen. - -\begin{Example} - Angenommen es soll ein Text mit einem zweizeiligen Kopf erstellt - werden. Normalerweise würde dies dazu führen, dass auf jeder Seite - eine Warnung "`\texttt{overfull} \Macro{vbox}"' von {\LaTeX} - ausgegeben würde. Um dies zu verhindern, wird das - \Package{typearea}-Paket angewiesen, einen entsprechenden Satzspiegel - zu berechnen: -\begin{small} -\begin{verbatim} - \documentclass[a4paper]{article} - \usepackage[2.1headlines]{typearea} -\end{verbatim} -\end{small} - Bei Verwendung einer \KOMAScript-Klasse muss die Option auch wieder - direkt an die Klasse übergeben werden: -\begin{small} -\begin{verbatim} - \documentclass[a4paper,2.1headlines]{scrartcl} -\end{verbatim} -\end{small} - Befehle, mit denen dann der Inhalt der zweizeiligen Kopfzeile - definiert werden kann, sind in \autoref{cha:scrpage} zu finden. -\end{Example} - -Bitte beachten Sie unbedingt, dass diese Option bei Verwendung einer -der \KOMAScript-Klassen als Klassenoption übergeben werden muss. -Demgegenüber funktioniert dies bei Verwendung einer anderen Klasse -nur, wenn diese Klasse \Package{typearea} explizit unterstützt. Bei -den Standardklassen ist die Option also direkt beim Laden von -\Package{typearea} zu übergeben. Die Verwendung von -\Macro{PassOptionsToPackage} (siehe \cite{latex:clsguide}) vor dem -Laden von \Package{typearea} funktioniert hingegen immer. -% -\EndIndex{Option}{headlines} - - -\begin{Declaration} - \Macro{areaset}\OParameter{BCOR}\Parameter{Breite}\Parameter{Höhe} -\end{Declaration}% -\BeginIndex{Cmd}{areaset}% -Bis hier wurde nun eine Menge darüber erzählt, wie man einen guten -oder sogar sehr guten Satzspiegel\Index{Satzspiegel} für -Standardanwendungen erstellt bzw. wie das -\Package{typearea}-Paket dem Anwender diese Arbeit weitgehend -abnimmt, ihm aber gleichzeitig Möglichkeiten der Einflussnahme -bietet. Es gibt jedoch auch Fälle, in denen der Textkörper eine -bestimmte Größe exakt einhalten soll, ohne dass dabei auf gute -Satzspiegelkonstruktion oder auf weitere Nebenbedingungen zu -achten ist. Trotzdem sollen die Ränder so gut wie möglich -verteilt und dabei gegebenenfalls auch eine Bindekorrektur -berücksichtigt werden. Das \Package{typearea}-Paket bietet -hierfür den Befehl \Macro{areaset}, dem man neben der optionalen -Bindekorrektur als Parameter die Breite und Höhe des Textbereichs -übergibt. Die Ränder und deren Verteilung werden dann automatisch -berechnet, wobei gegebenenfalls auch die Paketoptionen -\Option{headinclude}, \Option{headexclude}, sowie -\Option{footinclude} und \Option{footexclude} berücksichtigt -werden. - -\begin{Example} - Angenommen ein Text auf A4-Papier soll genau die Breite von 60 - Zeichen in der Typewriter-Schrift haben und exakt 30 Zeilen je Seite - besitzen. Dann könnte mit folgender Präambel gearbeitet werden: -\begin{verbatim} - \documentclass[a4paper,11pt]{article} - \usepackage{typearea} - \newlength{\CharsLX}% Breite von 60 Zeichen - \newlength{\LinesXXX}% Höhe von 30 Zeilen - \settowidth{\CharsLX}{\texttt{1234567890}} - \setlength{\CharsLX}{6\CharsLX} - \setlength{\LinesXXX}{\topskip} - \addtolength{\LinesXXX}{30\baselineskip} - \areaset{\CharsLX}{\LinesXXX} -\end{verbatim} - -\item Soll stattdessen ein Gedichtband gesetzt werden, bei dem es nur - darauf ankommt, dass der Textbereich genau quadratisch mit einer - Seitenlänge von 15\Unit{cm} ist, wobei ein Binderand von - 1\Unit{cm} zu berücksichtigen ist, so kann dies wie folgt - erreicht werden: -\begin{verbatim} - \documentclass{gedichte} - \usepackage{typearea} - \areaset[1cm]{15cm}{15cm} -\end{verbatim} -\end{Example} -\EndIndex{Cmd}{areaset} - - -\section{Optionen und Makros zur Auswahl des Papierformats} -\label{sec:typearea.paperTypes} - -\Index{Papierformat}% -Die \LaTeX-Standardklassen unterstützen mit -den Optionen \Option{a4paper}, \Option{a5paper}, \Option{b5paper}, -\Option{letterpaper}, \Option{legalpaper} und -\Option{executivepaper} die Papierformate A4 und A5 aus der -ISO-A-Reihe, B5 aus der ISO-B-Reihe, sowie die englischen Formate -letter, legal und executive. -\begin{Declaration} - \Option{letterpaper} \\ - \Option{legalpaper} \\ - \Option{executivepaper} \\ - \Option{a\Var{X}paper} \\ - \Option{b\Var{X}paper} \\ - \Option{c\Var{X}paper} \\ - \Option{d\Var{X}paper} \\ - \Option{landscape} \\ - \Macro{isopaper}\OParameter{Reihe}\Parameter{Formatnummer} -\end{Declaration}% -\BeginIndex{Option}{letterpaper} -\BeginIndex{Option}{legalpaper} -\BeginIndex{Option}{executivepaper} -\BeginIndex{Option}{a0paper} -\BeginIndex{Option}{b0paper} -\BeginIndex{Option}{c0paper} -\BeginIndex{Option}{d0paper} -\BeginIndex{Option}{landscape} -\BeginIndex{Cmd}{isopaper}% -Die drei englischen Formate werden vom \Package{typearea}-Paket in -gleicher Weise unterstützt. Darüber hinaus werden jedoch alle Formate -der ISO-A-, ISO-B-, ISO-C- und ISO-D-Reihe durch Ableitung aus den -jeweiligen Grundgrößen A0, B0, C0 und D0 unterstützt. Diese können -ebenfalls direkt durch entsprechende Optionen \Option{a0paper}, -\Option{a1paper} usw. ausgewählt werden. Genau wie bei den -Standardklassen ist es mit dem \Package{typearea}-Paket möglich, durch -zusätzliche Verwendung der Paketoption \Option{landscape} das -jeweilige Querformat zu wählen. - -Alternativ kann beim \Package{typearea}-Paket die Papiergröße mit -Hilfe des Befehls \Macro{isopaper} eingestellt werden. Danach muss -allerdings der Satzspiegel mit Hilfe des Befehls \Macro{typearea} oder -\Macro{areaset} neu berechnet werden. Ich rate deshalb von der -Verwendung des Befehls \Macro{isopaper} ab. - -\begin{Example} - Angenommen, es soll eine Karteikarte im Format ISO-A8 quer bedruckt - werden. Dabei sollen die Ränder sehr klein gewählt werden. Außerdem - wird auf eine Kopf- und eine Fußzeile verzichtet. -\begin{verbatim} - \documentclass{article} - \usepackage[headexclude,footexclude, - a8paper,landscape]{typearea} - \areaset{7cm}{5cm} - \pagestyle{empty} - \begin{document} - \section*{Papieroptionen} - letterpaper, legalpaper, executivepaper, a0paper, - a1paper \dots\ b0paper, b1paper \dots\ c0paper, - c1paper \dots\ d0paper, d1paper \dots - \end{document} -\end{verbatim} -\end{Example} - -Bitte beachten Sie unbedingt, dass alle \Option{a\Var{X}paper}-, -\Option{b\Var{X}paper}-, \Option{c\Var{X}paper}- und -\Option{d\Var{X}paper}-Optionen mit Ausnahme von \Option{a4paper} und -\Option{a5paper} bei Verwendung einer der \KOMAScript-Klassen als -Klassenoption übergeben werden müssen. Demgegenüber funktioniert dies -bei Verwendung einer anderen Klasse nur, wenn diese Klasse -\Package{typearea} explizit unterstützt. Bei den Standardklassen sind -die Optionen also direkt beim Laden von \Package{typearea} zu -übergeben. Die Verwendung von \Macro{PassOptionsToPackage} (siehe -\cite{latex:clsguide}) vor dem Laden von \Package{typearea} -funktioniert hingegen immer. -% -\EndIndex{Option}{letterpaper} -\EndIndex{Option}{legalpaper} -\EndIndex{Option}{executivepaper} -\EndIndex{Option}{a0paper} -\EndIndex{Option}{b0paper} -\EndIndex{Option}{c0paper} -\EndIndex{Option}{d0paper} -\EndIndex{Option}{landscape} -\EndIndex{Cmd}{isopaper} - -\begin{Declaration} - \Macro{paperwidth}\\ - \Macro{paperheight} -\end{Declaration}% -\BeginIndex{Cmd}{paperwidth}% -\BeginIndex{Cmd}{paperheight}% -Für besonders exotische Papierformate, die weder durch die oben -angegebenen englischen Formate noch durch eines der Formate der vier -ISO-Reihen abgedeckt sind, können direkt die Längen \Macro{paperwidth} -und \Macro{paperheight} gesetzt werden. Danach muss allerdings der -Satzspiegel für dieses Format mit einem der Befehle \Macro{typearea} -oder \Macro{areaset} neu berechnet werden. -\begin{Example} - Angenommen, es soll auf Endlospapier mit den Maßen - \(8\frac{1}{4}\Unit{inch} \times 12\Unit{inch}\) gedruckt werden. - Dieses Papierformat wird von \Package{typearea} nicht direkt - unterstützt. Das Papierformat muss daher vor der Berechnung des - Satzspiegels definiert werden: -\begin{verbatim} - \documentclass{article} - \usepackage{typearea} - \setlength{\paperwidth}{8.25in} - \setlength{\paperheight}{12in} - \typearea{1} -\end{verbatim} -\end{Example} -\EndIndex{Cmd}{paperheight} -\EndIndex{Cmd}{paperwidth} - -\begin{Declaration} - \Option{dvips}\\ - \Option{pdftex}\\ - \Option{pagesize} -\end{Declaration}% -\BeginIndex{Option}{dvips}% -\BeginIndex{Option}{pdftex}% -\BeginIndex{Option}{pagesize}% -\begin{Explain}% - Die oben genannten Mechanismen zur Auswahl des Papierformats haben - genaugenommen nur insofern einen Einfluss auf die Ausgabe, dass - gewisse interne {\LaTeX}-Maße so gesetzt werden, dass bestimmte - Bereiche der Seite, wie Kopf, Textkörper und Fuß so angeordnet und - von \Package{typearea} so berechnet werden, dass sie auf - entsprechendes Papier ausgedruckt werden können. Die Spezifikation - des DVI-Formats\Index{DVI} sieht aber an keiner Stelle - Angaben zum Papierformat - vor. Wird direkt aus dem DVI-Format in eine Low-Level-Druckersprache - wie PCL\footnote{PCL ist die Druckersprache, die HP für seine - Tinten- und Laserdrucker verwendet.} oder ESC/P2\footnote{ESC/P2 - ist die Druckersprache, die EPSON für seine Nadel-, Tinten- und - Laserdrucker benutzt.} ausgegeben, spielt dies - normalerweiser keine Rolle, da auch bei diesen Ausgaben der - 0-Bezugspunkt wie bei DVI links oben liegt. Wird aber in Sprachen - wie PostScript\Index{PostScript} oder PDF\Index{PDF} übersetzt, - bei denen der 0-Bezugspunkt an - anderer Stelle liegt und außerdem das Papierformat in der - Ausgabedatei angegeben werden kann, so fehlt diese Information in - der DVI-Datei. Als Lösung des Problems verwendet der entsprechende - Treiber eine voreingestellte Papiergröße, die der Anwender entweder - per Option oder durch entsprechende Angabe in der {\TeX}-Quelldatei - verändern kann. Bei Verwendung des DVI-Treibers \File{dvips} kann - diese Angabe in Form einer \Macro{special}-Anweisung erfolgen. Bei - {pdf\TeX} werden stattdessen zwei Längen entsprechend gesetzt.\par -\end{Explain} -Mit der Option \Option{dvips} wird erreicht, dass die Papiergröße als -\Macro{special} in die DVI-Datei geschrieben wird. Dieses -\Macro{special} wird beispielsweise von \File{dvips} -ausgewertet. Demgegenüber schreibt die Option \Option{pdftex} die -Papiergröße am Anfang des Dokuments in die {pdf\TeX}-Seitenregister, -so dass später beim Betrachten der erzeugten PDF-Datei das korrekte -Format angegeben wird. Die Option \Option{pagesize} verhält sich -flexibler und verwendet je nachdem, ob eine PDF- oder eine DVI-Datei -ausgegeben wird, den Mechanismus der Option \Option{dvips} oder der -Option \Option{pdftex}. -\begin{Example} - Angenommen es soll ein Dokument sowohl als DVI-Datei verwendet - werden, als auch eine Online-Version im PDF-Format erstellt - werden. Dann könnte die Präambel beispielsweise so beginnen: - \begin{small} -\begin{verbatim} - \documentclass{article} - \usepackage[a4paper,pagesize]{typearea} -\end{verbatim} - \end{small} - Wird nun für die Bearbeitung {pdf\TeX} verwendet \emph{und} die - PDF-Ausgabe aktiviert, so werden die beiden Größen - \Macro{pdfpagewidth} und \Macro{pdfpageheight} entsprechend gesetzt. - Wird jedoch eine DVI-Datei erzeugt -- egal ob mit {\LaTeX} oder - {pdf\LaTeX} --, so wird ein \Macro{special} an den Anfang dieser - Datei geschrieben. -\end{Example}\IndexCmd{pdfpagewidth}\IndexCmd{pdfpagehight} -\EndIndex{Option}{dvips}% -\EndIndex{Option}{pdftex}% -\EndIndex{Option}{pagesize}% - - -\section{Kleinigkeiten ohne direkten Bezug zum Satzspiegel} -\label{sec:typearea.else} - -\begin{Declaration} - \Macro{ifpdfoutput}\Parameter{Dann-Teil}\Parameter{Sonst-Teil} -\end{Declaration}% -\BeginIndex{Cmd}{ifpdfoutput}% -Manchmal ist es wünschenswert, in einem Dokument abhängig vom -Ausgabeformat bestimmte Dinge anders zu machen. Normalerweise -verwendet {\TeX} das Ausgabeformat DVI. Mit {pdf\TeX} ist aber die -Wahlmöglichkeit hinzugekommen, statt einer DVI-Datei eine PDF-Datei -direkt zu erzeugen. Der Befehl \Macro{ifpdfoutput} stellt eine -Verzweigung dar. Wurde die PDF-Ausgabe aktiviert, so wird der -\PName{Dann-Teil} ausgeführt. Wurde die PDF-Ausgabe nicht aktiviert -oder wird überhaupt kein {pdf\TeX} verwendet, so wird der -\PName{Sonst-Teil} ausgeführt. -\begin{Example} - Bekanntlich gibt {pdf\LaTeX} in ebenfalls eine DVI-Datei an Stelle - einer PDF-Datei aus, wenn der Zähler \Macro{pdfoutput} auf 0 gesetzt - ist. Nur bei einem von 0 verschiedenen Wert wird eine PDF-Datei - ausgegeben. Da andererseits \Macro{pdfoutput} unbekannt ist, wenn - {\LaTeX} statt {pdf\LaTeX} verwendet wird, kann man - \Macro{pdfoutput} auch nicht einfach generell auf 0 setzen, um - DVI-Ausgabe zu erhalten. Eine einfache Lösung ist folgende Zeile: - \begin{small} -\begin{verbatim} - \ifpdfoutput{\pdfoutput=0}{} -\end{verbatim} - \end{small} - Übrigens setzten manche Pakete \Macro{pdfoutput} einfach auf 1, - sobald der Zähler existiert. In einigen Fällen ist das aber gar - nicht erwünscht. Auch dann kann obige Zeile nach dem Laden des - entsprechenden Pakets hilfreich sein. Selbstverständlich muss dafür - das \Package{typearea}-Paket geladen sein. Eine Kombination mit der - Anweisung \Macro{AfterPackage}\IndexCmd{AfterPackage} des - \Package{scrlfile}-Paketes ist ebenfalls möglich (siehe dazu - \autoref{cha:scrlfile}). -\end{Example}\IndexCmd{pdfoutput} -\EndIndex{Cmd}{ifpdfoutput} - -\section{Lokale Einstellungen durch die Datei \File{typearea.cfg}} -\label{sec:typearea.cfg} -\BeginIndex{File}{typearea.cfg}% -Noch vor der Abarbeitung der Paketoptionen prüft \Package{typearea}, -ob eine Datei \File{typearea.cfg} existiert und lädt diese -gegebenenfalls. Es ist daher möglich, in dieser Konfigurationsdatei -beispielsweise zusätzliche Optionen für weitere Papierformate zu -definieren. - -\begin{Declaration} - \Macro{SetDIVList}\Parameter{Liste} -\end{Declaration}% -\BeginIndex{Cmd}{SetDIVList}% -\begin{Explain}% -Ebenfalls zur Verwendung in dieser Konfigurationsdatei war -ursprünglich der Befehl \Macro{SetDIVList} vorgesehen. Bevor die -Option \Option{DIVcalc} existierte, war dies die einzige Möglichkeit, -für unterschiedliche Schriftgrößen und Papierformate unterschiedliche -Voreinstellungen für den \Var{DIV}-Wert zu definieren. Die Liste -besteht dabei aus einer Reihe von Werten in geschweiften Klammern. Der -Wert ganz links ist für die Schriftgröße 10\Unit{pt}, der nächste -für 11\Unit{pt}, der dritte für 12\Unit{pt} usw. vorgesehen. -Wird keine Liste mit \Macro{SetDIVList} gesetzt, so entspricht dies -\Macro{SetDIVList}% -\PParameter{\PParameter{8}\PParameter{10}\PParameter{12}}. -Ist für eine Schriftgröße kein Standardwert gesetzt, so wird -stattdessen 10 verwendet.\par -\end{Explain} - -Dieser Befehl sollte nicht mehr verwendet werden. Stattdessen wird -empfohlen, einen günstigen Satzspiegel automatisch berechnen zu lassen -(siehe \autoref{sec:typearea.options}). -% -\EndIndex{Cmd}{SetDIVList} - -% -\EndIndex{File}{typearea.cfg} - - -\section{Tipps} -\label{sec:typearea.tips} -\begin{Explain} - Insbesondere für die Erstellung von schriftlichen Arbeiten während - des Studiums findet man häufig Vorschriften, die einer - typografischen Begutachtung nicht nur in keinster Weise standhalten, - sondern massiv gegen alle Regeln der Typografie verstoßen. Ursache - für solche Regeln ist oft typografische Inkompetenz - derjenigen, die sie herausgeben. Manchmal ist die Ursache auch im - Ausgangspunkt begründet, nämlich der Schreibmaschine. Mit einer - Schreibmaschine oder einer Textverarbeitung von 1980 ist es ohne - erheblichen Aufwand kaum möglich, typografisch perfekte Ergebnisse - zu erzielen. Also wurden einst Vorschriften erlassen, die leicht - erfüllbar schienen und dem Korrektor trotzdem entgegen kommen. Dazu - zählen dann Randeinstellungen, die für einseitigen Druck mit einer - Schreibmaschine zu brauchbaren Zeilenlängen führen. Um nicht extrem - kurze Zeilen zu erhalten, die durch Flattersatz zudem verschlimmert - werden, werden die Ränder schmal gehalten und für Korrekturen - stattdessen ein großer Durchschuss in Form von eineinhalbzeiligem - Satz vorgeschrieben. Bevor moderne Textverarbeitungssysteme - verfügbar wurden, wäre -- außer mit {\TeX} -- einzeiliger Satz die - einzige Alternative gewesen. Dabei wäre dann selbst das Anbringen - von Korrekturzeichen schwierig geworden. Als die Verwendung von - Computern für die Erstellung schriftlicher Arbeiten üblicher wurde, - hat sich manches Mal auch der Spieltrieb des einen oder anderen - Studenten gezeigt, der durch Verwendung einer Schmuckschrift seine - Arbeit aufpeppen und so eine bessere Note mit weniger Einsatz - herausschinden wollte. Nicht bedacht hat er dabei, dass solche - Schriften schlechter zu lesen und deshalb für den Zweck ungeeignet - sind. Damit hielten zwei Brotschriften Einzug in die Vorschriften, - die weder zusammenpassen noch im Falle von Times wirklich gut - geeignet sind. Times ist eine relativ enge Schrift, die Anfang des - 20.~Jahrhunderts speziell für schmale Spalten im englischen - Zeitungssatz entworfen wurde. In modernen Schnitten ist dies etwas - entschärft. Dennoch passt die häufig vorgeschriebene Times meist - nicht zu den gleichzeitig gegebenen Randvorgaben. - - {\LaTeX} setzt bereits von sich aus mit ausreichendem Durchschuss. - Gleichzeitig sind die Ränder bei sinnvollen Zeilenlängen groß - genug, um Platz für Korrekturen zu bieten. Dabei wirkt die Seite - trotz einer Fülle von Text großzügig angelegt. -% Bedarfsteil um den Seitenumbruch zu verbessern: -% Bei Verwendung von -% \Package{typearea} wird dies eher noch verstärkt. Dies gilt -% insbesondere dann, wenn die Berechnung der Zeilenlänge ebenfalls -% \Package{typearea} überlassen oder nur geringfügig davon abgewichen -% wird. Für Schriftarten, die empfindlich auf lange Zeilen reagieren, -% kann der Textkörper außerdem sehr leicht schmaler gewählt werden. - - Oft sind die typografisch mehr als fragwürdigen - Satzvorschriften mit {\LaTeX} auch außerodentlich schwierig - umzusetzen. So kann eine feste Anzahl von "`Anschlägen"' nur dann - eingehalten werden, wenn keine proportionale Schrift verwendet wird. - Es gibt nur wenig gute nichtproportionale Schriften. Kaum ein Text, - der mit einer derartigen Schrift gesetzt ist, wirkt wirklich gut. So - wird häufig versucht, durch ausladende Serifen beispielsweise beim - kleinen "`i"' oder "`l"' die unterschiedliche Breite der Zeichen - auszugleichen. Dies kann nicht funktionieren. Im Ergebnis wirkt der - Text unruhig und zerrissen. Außerdem verträgt sich eine solche - Schrift kaum mit dem im deutschen Sprachraum üblichen und allgemein - vorzuziehenden Blocksatz. Gewisse Vorgaben können daher bei - Verwendung von {\LaTeX} nur ignoriert oder großzügig ausgelegt - werden, etwa indem man "`60~Anschläge pro Zeile"' nicht als feste, - sondern als durchschnittliche oder maximale Angabe interpretiert. - \par -\end{Explain} - -Wie ausgeführt, sind Satzvorschriften meist dazu gedacht, ein -brauchbares Ergebnis zu erhalten, auch wenn der Ausführende selbst -nicht weiß, was dabei zu beachten ist. Brauchbar bedeutet häufig: -lesbar und korrigierbar. Nach meiner Auf"|fassung wird ein mit -{\LaTeX} und dem \Package{typearea}-Paket gesetzter Text bezüglich -des Satzspiegels diesen Anforderungen von vornherein gerecht. Wenn Sie -also mit Vorschriften konfrontiert sind, die offensichtlich erheblich -davon abweichen, so empfehle ich, dem Betreuer einen Textauszug -vorzulegen und nachzufragen, ob es gestattet ist, die Arbeit trotz der -Abweichungen in dieser Form zu liefern. Gegebenenfalls kann durch -Veränderung der Option \Option{DIV} der Satzspiegel moderat angepasst -werden. Von der Verwendung von \Macro{areaset} zu diesem Zweck rate -ich jedoch ab. Schlimmstenfalls verwenden Sie das nicht zu -{\KOMAScript} gehörende \Package{geometry}-Paket (siehe -\cite{package:geometry}) oder verändern Sie die Satzspiegelparameter -von {\LaTeX} selbst. Die von \Package{typearea} ermittelten Werte -finden Sie in der \File{log}-Datei Ihres Dokuments. Damit sollten -moderate Anpassungen möglich sein. Achten Sie jedoch unbedingt darauf, -dass die Proportionen des Textbereichs mit denen der Seite unter -Berücksichtigung der Bindekorrektur annähernd übereinstimmen. - -Sollte es unbedingt erforderlich sein, den Text eineinhalbzeilig -zu setzen, so definieren Sie keinesfalls \Macro{baselinestretch} -um. Dieses Vorgehen wird zwar allzu häufig empfohlen, ist aber -seit der Einführung von {\LaTeXe} im Jahre 1994 obsolet. -Verwenden Sie schlimmstenfalls den Befehl \Macro{linespread}. Ich -empfehle das Paket \Package{setspace},\IndexPackage{setspace} das -nicht zu {\KOMAScript} gehört (siehe \cite{package:setspace}). -Auch sollten Sie \Package{typearea} nach der Umstellung des -Zeilenabstandes den Satzspiegel für diesen Abstand berechnen -lassen jedoch für den Titel, besser auch für die Verzeichnisse -- -sowie das Literaturverzeichnis und den Index -- wieder auf -normalen Satz umschalten. Das \Package{setspace}-Paket bietet -dafür eine spezielle Umgebung und eigene Befehle. - -Das \Package{typearea}-Paket berechnet auch bei der Option -\Option{DIVcalc} einen sehr großzügigen Textbereich. Viele -konservative Typografen werden feststellen, dass die resultierende -Zeilenlänge noch zu groß ist. Der berechnete \Var{DIV}-Wert ist -ebenfalls in der \File{log}-Datei zum jeweiligen Dokument zu -finden. Sie können also leicht nach dem ersten \LaTeX-Lauf einen -kleineren Wert wählen. - -Nicht selten wird mir die Frage gestellt, warum ich eigentlich -kapitelweise auf einer Satzspiegelberechnung herumreite, während es -sehr viel einfacher wäre, nur ein Paket zur Verfügung zu stellen, mit -dem man die Ränder wie bei einer Textverarbeitung einstellen kann. -Oft wird auch behauptet, ein solches Paket wäre ohnehin die bessere -Lösung, da jeder selbst wisse, wie gute Ränder zu wählen seien, und -die Ränder von {\KOMAScript} wären ohnehin nicht gut. Ich erlaube mir -zum Abschluss dieses Kapitels ein passendes Zitat aus -\cite{TYPO:ErsteHilfe}: -\begin{quote} - \textsl{Das Selbermachen ist längst üblich, die Ergebnisse oft - fragwürdig, weil Laien-Typografen nicht sehen, was nicht stimmt - und nicht wissen können, worauf es ankommt. So gewöhnt man sich an - falsche und schlechte Typografie.} [\dots] \textsl{Jetzt könnte der - Einwand kommen, Typografie sei doch Geschmacksache. Wenn es um - Dekoration ginge, könnte man das Argument vielleicht gelten - lassen, da es aber bei Typografie in erster Linie um Information - geht, können Fehler nicht nur stören, sondern sogar Schaden - anrichten.} -\end{quote} - -\section{Autoren} -\label{sec:typearea.authors} -Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die -Vorlage dafür geliefert. -\begin{itemize} -\item Frank Neukam -\item \textbf{Markus Kohm} \TextEMail{Markus.Kohm@gmx.de} -\item Axel Sommerfeldt -\end{itemize} - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "scrguide2" -%%% End: diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.bib b/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.bib deleted file mode 100644 index 9a022fb01de..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.bib +++ /dev/null @@ -1,362 +0,0 @@ -% -% Bibliographie fuer den scrguide -% - -@Article{ DANTE:TK0297:MJK1, - author = {Markus Kohm}, - title = {{\KOMAScript} -- Eine Alternative zu den - Standardklassen?}, - journal = {Die \TeX nische Kom\"odie}, - year = 1996, - volume = {2}, - pages = {14--33}, - note = {{DANTE} e.\,V.} -} - -@Article{ DANTE:TK0402:MJK, - author = {Markus Kohm}, - title = {Satzspiegelkonstruktionen im Vergleich}, - journal = {Die \TeX nische Kom\"odie}, - volume = {4}, - year = 2002, - pages = {28--48}, - note = {{DANTE} e.\,V.} -} - -@Article{ DANTE:TK0203:MJK, - author = {Markus Kohm}, - title = {Moderne Briefe mit {\KOMAScript}}, - journal = {Die \TeX nische Kom\"odie}, - volume = {2}, - year = 2003, - pages = {32--51}, - note = {{DANTE} e.\,V.} -} - -@Book{ DUDEN, - author = {DUDEN}, - title = {Die deutsche Rechtschreibung}, - publisher = {DUDENVERLAG}, - year = 1996, - address = {Mannheim}, - edition = 21 -} - -@Book{ knuth:mfbook, - author = {Donald E. Knuth}, - title = {The {\MF book}}, - publisher = {Addison-Wesley Publishing Company}, - year = 1991, - address = {Reading, Mass.}, - edition = 6, - volume = {C}, - series = {Computers and Typesetting} -} - -@Book{ knuth:texbook, - author = {Donald E. Knuth}, - title = {The {\TeX book}}, - publisher = {Addison-Wesley Publishing Company}, - address = {Reading, Mass.}, - year = 1990, - edition = {19}, - volume = {A}, - series = {Computers and Typesetting} -} - -@Book{ JTsch87, - author = {Jan Tschichold}, - title = {Ausgew{\"a}hlte Aufs{\"a}tze {\"u}ber Fragen der Gestalt des Buches und der Typographie}, - publisher = {Birkh{\"a}user Verlag}, - year = 1987, - address = {Basel}, - edition = 2 -} - -@Book{ TYPO:ErsteHilfe, - author = {Hans Peter Willberg and Friedrich Forssman}, - title = {Erste Hilfe in Typografie}, - subtitle = {Ratgeber f{\"u}r Gestaltung mit Schrift}, - publisher = {Verlag Hermann Schmidt}, - year = 2000, - address = {Mainz} -} - -@Manual{ l2kurz, - author = {Walter Schmidt and J{\"o}rg Knappen and Hubert Partl and Irene -Hyna}, - title = {{\LaTeXe}-Kurzbeschreibung}, - year = 1999, - month = apr, - url = {CTAN://info/lshort/german/} -} - -@Manual{ lshort, - author = {Tobias Oetker and Hubert Partl and Irene Hyna and Elisabeth -Schlegl}, - title = {The Not So Short Introduction to {\LaTeXe}}, - year = 1999, - month = apr, - version = {3.7}, - url = {CTAN://info/lshort/} -} - -@Book{ latexbook, - author = {Leslie Lamport}, - title = {Das {\LaTeX -Handbuch}}, - publisher = {Addison-Wesley Publishing Company}, - address = {Bonn, Paris {u.\,a.}}, - year = 1995 -} - -@Manual{ btxdoc, - author = {Oren Patashnik}, - title = {{Bib\TeX ing}}, - year = 1988, - month = feb, - url = {CTAN://biblio/bibtex/distribs/doc/btxdoc.tex} -} - -@Manual{ btxhak, - author = {Oren Patashnik}, - title = {Designing {Bib\TeX} Styles}, - year = 1988, - month = feb, - url = {CTAN://biblio/bibtex/distribs/doc/btxhak.tex} -} - -@Misc{ DANTE:FAQ, - author = {Bernd Raichle and Rolf Niepraschk and Thomas Hafner}, - title = {DE-{\TeX}-/DANTE-FAQ}, - year = 2002, - month = may, - edition = {71}, - url = {http://www.dante.de/faq/de-tex-faq/} -} - -@Misc{ UK:FAQ, - editor = {Robin Fairbairns}, - title = {TeX Frequently Asked Questions on the Web}, - year = 2002, - month = may, - edition = {3.0b}, - url = {http://www.tex.ac.uk/faq/} -} - -@Misc{ latex:classes, - author = {Leslie Lamport and Frank Mittelbach and Johannes Braams}, - title = {Standard Document Classes for {\LaTeX} version 2e}, - year = 2000, - month = may, - edition = {1.4b}, - url = {CTAN://macros/latex/base/classes.dtx} -} - -@Misc{ package:adrconv, - author = {Axel Kielhorn}, - title = {adrconv}, - year = 1999, - month = nov, - edition = {1.2}, - url = {CTAN://macros/latex/contrib/adrconv/} -} - -@Misc{ url:aka, - author = {Axel Kielhorn}, - title = {{\LaTeX} page}, - url = {http://www-public.tu-bs.de:8080/~i0080108/latex.html} -} - -@Misc{ latex:clsguide, - author = {{\LaTeX3} Project Team}, - title = {{\LaTeXe} for class and package writers}, - year = 1999, - month = sep, - url = {CTAN://macros/latex/doc/clsguide.pdf} -} - -@Misc{ latex:usrguide, - author = {{\LaTeX3} Project Team}, - title = {{\LaTeXe} for authors}, - year = 1999, - month = sep, - url = {CTAN://macros/latex/doc/usrguide.pdf} -} - -@Misc{ latex:fntguide, - author = {{\LaTeX3} Project Team}, - title = {{\LaTeXe} font selection}, - year = 2000, - month = jan, - url = {CTAN://macros/latex/doc/fntguide.pdf} -} - -@Misc{ package:setspace, - author = {Geoffrey Tobin}, - title = {{\Package{setspace}} {\LaTeX} package}, - year = 2000, - month = dec, - edition = {6.7}, - url = {CTAN://macros/latex/contrib/setspace/} -} - -@Misc{ package:geometry, - author = {Hideo Umeki}, - title = {The {\Package{geometry}} package}, - year = 2000, - month = jun, - edition = {2.3}, - url = {CTAN://macros/latex/contrib/geometry/} -} - -@Misc{ package:german, - author = {Bernd Raichle}, - title = {{\Package{german}} package}, - year = 1998, - month = jul, - edition = {2.5e}, - url = {CTAN://language/german/} -} - -@Misc{ package:ngerman, - author = {Bernd Raichle}, - title = {{\Package{ngerman}} package}, - year = 1998, - month = jul, - edition = {2.5e}, - url = {CTAN://language/german/} -} - -@Misc{ package:graphics, - author = {David P. Carlisle}, - title = {Packages in the `graphics' bundle}, - year = 1999, - month = feb, - url = {CTAN://macros/latex/required/graphics/} -} - -@Misc{ package:multicol, - author = {Frank Mittelbach}, - title = {An environment for multicolumn output}, - year = 2000, - month = jul, - edition = {1.5z}, - url = {CTAN://macros/latex/required/tools/} -} - -@Misc{ package:ifthen, - author = {David Carlisle}, - title = {The \textsf{ifthen} package}, - year = 1999, - month = sep, - edition = {1.1b}, - url = {CTAN://macros/latex/base/} -} - -@Misc{ package:french, - author = {Bernard Gaulle}, - title = {Les distributions de fichiers de francisation pour LaTeX}, - year = 2003, - month = dec, - edition = {5,80}, - url = {CTAN://language/french/} -} - -@Misc{ package:babel, - author = {Johannes Braams}, - title = {Babel, a multilangual package for use with \LaTeX's standard -document classes}, - year = 2001, - month = feb, - edition = {3.7}, - url = {CTAN://macros/latex/required/babel/} -} - -@Misc{ package:extsizes, - author = {James Kilfiger}, - title = {{\Package{extsizes}}, a non standard \LaTeX-package}, - year = 1999, - month = nov, - edition = {1.4a}, - url = {CTAN://macros/latex/contrib/extsizes/} -} - -@Misc{ package:natbib, - author = {Patrick W. Daly}, - title = {Natural Sciences Citations an References}, - year = 1999, - month = may, - edition = {7.0}, - url = {CTAN://macros/latex/contrib/natbib/} -} - -@Misc{ package:fancyhdr, - author = {Piet van Oostrum}, - title = {Page layout in \LaTeX}, - year = 2000, - month = oct, - edition = {2.0}, - url = {CTAN://macros/latex/contrib/fancyhdr/} -} - -@Misc{ package:topcapt, - author = {Robin Fairbairns}, - title = {topcapt.sty}, - year = 1999, - month = mar, - edition = {1.1a}, - url = {CTAN://macros/latex/contrib/misc/topcapt.sty} -} - -@Misc{ package:caption2, - author = {Harald Axel Sommerfeldt}, - title = {caption package}, - year = 1995, - month = oct, - edition = {2.0(BETA)}, - url = {CTAN://macros/latex/contrib/caption/} -} - -@Misc{ package:hyperref, - author = {Sebastian Rahtz}, - title = {Hypertext marks in {\LaTeX}: the \textsf{hyperref} package}, - year = 2001, - month = feb, - edition = {6.71c}, - url = {CTAN://macros/latex/contrib/hyperref/} -} - -@Misc{ package:float, - author = {Anselm Lingnau}, - title = {An Improved Environment for Floats}, - year = 2001, - month = jul, - edition = {1.2e}, - url = {CTAN://macros/latex/contrib/float/} -} - -@Misc{ package:longtable, - author = {David Carlise}, - title = {The \textsf{longtable} package}, - year = 1998, - month = may, - edition = {4.09}, - url = {CTAN://macros/latex/required/tools/} -} - -@Misc{ package:ragged2e, - author = {Martin Schr{\"o}der}, - title = {The \textsf{Ragged2e}-package}, - year = 2003, - month = jan, - edition = {2.00}, - url = {CTAN://macros/latex/contrib/ms/} -} - -@Misc{ homepage, - key = {KDP}, - title = {The \KOMAScript{} Documentation Project}, - url = {http://koma-script.net.tf} -} - -% end of file `scrguide.bib' diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.bst b/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.bst deleted file mode 100644 index 044442683b0..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.bst +++ /dev/null @@ -1,1676 +0,0 @@ -%% -%% This is file `scrguide.bst', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% merlin.mbs (with options: `head,exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% german.mbs (with options: `exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% scrguide.mbs (with options: `exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% merlin.mbs (with options: `tail,exlang,alph,vonx,ed-au,nmlm,x2,m2,nmft,nmft-sc,nmfted,nmand-rm,dt-jnl,tit-it,atit-u,trtit-b,volp-sp,jdt-vs,pgsep-s,jwdpg,jwdvol,isbn,issn,url,url-nl,edpar,bkedcap,blk-com,au-col,german,ord,and-xcom,etal-rm,nfss,{}') -%% ---------------------------------------- -%% *** This file was made for creating KOMA-Script scrguide bibliography *** -%% -%% Copyright 1994-1999 Patrick W Daly - % =============================================================== - % IMPORTANT NOTICE: - % This bibliographic style (bst) file has been generated from one or - % more master bibliographic style (mbs) files, listed above. - % - % This generated file can be redistributed and/or modified under the terms - % of the LaTeX Project Public License Distributed from CTAN - % archives in directory macros/latex/base/lppl.txt; either - % version 1 of the License, or any later version. - % =============================================================== - % Name and version information of the main mbs file: - % \ProvidesFile{merlin.mbs}[1999/05/28 3.89 (PWD)] - % For use with BibTeX version 0.99a or later - %------------------------------------------------------------------- - % This bibliography style file is intended for texts in - % GERMAN - % This is a labelled citation style similar to the standard alpha.bst, - % where labels are of the form Dal90 or DBK89. - % It requires no extra package to interface to the main text. - % The form of the \bibitem entries is - % \bibitem[label]{key}... - % Usage of \cite is as follows: - % \cite{key} ==>> [label] - % \cite[chap. 2]{key} ==>> [label, chap. 2] - % The order in the reference list is by label. - %--------------------------------------------------------------------- - -ENTRY - { address - author - booktitle - chapter - edition - editor - howpublished - institution - isbn - issn - journal - key - month - note - number - organization - pages - publisher - school - series - title - type - url - volume - year - } - {} - { label extra.label sort.label } - -INTEGERS { output.state before.all mid.sentence after.sentence after.block } - -FUNCTION {init.state.consts} -{ #0 'before.all := - #1 'mid.sentence := - #2 'after.sentence := - #3 'after.block := -} - -STRINGS { s t } - -FUNCTION {output.nonnull} -{ 's := - output.state mid.sentence = - { ", " * write$ } - { output.state after.block = - { add.period$ write$ - newline$ - "\newblock " write$ - } - { output.state before.all = - 'write$ - { add.period$ " " * write$ } - if$ - } - if$ - mid.sentence 'output.state := - } - if$ - s -} - -FUNCTION {output} -{ duplicate$ empty$ - 'pop$ - 'output.nonnull - if$ -} - -FUNCTION {output.check} -{ 't := - duplicate$ empty$ - { pop$ "empty " t * " in " * cite$ * warning$ } - 'output.nonnull - if$ -} - -FUNCTION {fin.entry} -{ add.period$ - write$ - newline$ -} - -FUNCTION {new.block} -{ output.state before.all = - 'skip$ - { after.block 'output.state := } - if$ -} - -FUNCTION {new.sentence} -{ output.state after.block = - 'skip$ - { output.state before.all = - 'skip$ - { after.sentence 'output.state := } - if$ - } - if$ -} - -FUNCTION {add.blank} -{ " " * before.all 'output.state := -} - -FUNCTION {add.colon} -{ duplicate$ empty$ - 'skip$ - { ":" * add.blank } - if$ -} - -FUNCTION {date.block} -{ - skip$ -} - -FUNCTION {not} -{ { #0 } - { #1 } - if$ -} - -FUNCTION {and} -{ 'skip$ - { pop$ #0 } - if$ -} - -FUNCTION {or} -{ { pop$ #1 } - 'skip$ - if$ -} - -FUNCTION {new.block.checka} -{ empty$ - 'skip$ - 'new.block - if$ -} - -FUNCTION {new.block.checkb} -{ empty$ - swap$ empty$ - and - 'skip$ - 'new.block - if$ -} - -FUNCTION {new.sentence.checka} -{ empty$ - 'skip$ - 'new.sentence - if$ -} - -FUNCTION {new.sentence.checkb} -{ empty$ - swap$ empty$ - and - 'skip$ - 'new.sentence - if$ -} - -FUNCTION {field.or.null} -{ duplicate$ empty$ - { pop$ "" } - 'skip$ - if$ -} - -FUNCTION {emphasize} -{ duplicate$ empty$ - { pop$ "" } - { "\emph{" swap$ * "}" * } - if$ -} - -FUNCTION {scaps} -{ duplicate$ empty$ - { pop$ "" } - { "\textsc{" swap$ * "}" * } - if$ -} - -FUNCTION {bib.name.font} -{ scaps } - -FUNCTION {bib.fname.font} -{ bib.name.font } - -FUNCTION {capitalize} -{ "u" change.case$ "t" change.case$ } - -FUNCTION {space.word} -{ " " swap$ * " " * } - - % Here are the language-specific definitions for explicit words. - % Each function has a name bbl.xxx where xxx is the English word. - %------------------------------------------------------------------- - % Begin module: - % \ProvidesFile{german.mbs}[1999/02/24 1.7 (PWD)] - - % The language selected here is GERMAN -FUNCTION {bbl.and} -{ "und"} - -FUNCTION {bbl.etal} -{ "et~al." } - -FUNCTION {bbl.editors} -{ "Herausgeber" } - -FUNCTION {bbl.editor} -{ "Herausgeber" } - -FUNCTION {bbl.edby} -{ "herausgegeben von" } - -FUNCTION {bbl.edition} -{ "Auf\/lage" } - -FUNCTION {bbl.volume} -{ "Band" } - -FUNCTION {bbl.of} -{ "von" } - -FUNCTION {bbl.number} -{ "Nummer" } - -FUNCTION {bbl.nr} -{ "Nr." } - -FUNCTION {bbl.in} -{ "in" } - -FUNCTION {bbl.pages} -{ "Seiten" } - -FUNCTION {bbl.page} -{ "Seite" } - -FUNCTION {bbl.chapter} -{ "Kapitel" } - -FUNCTION {bbl.techrep} -{ "{Technischer Bericht}" } - -FUNCTION {bbl.mthesis} -{ "Diplomarbeit" } - -FUNCTION {bbl.phdthesis} -{ "Dissertation" } - -FUNCTION {bbl.first} -{ "1." } - -FUNCTION {bbl.second} -{ "2." } - -FUNCTION {bbl.third} -{ "3." } - -FUNCTION {bbl.fourth} -{ "4." } - -FUNCTION {bbl.fifth} -{ "5." } - -FUNCTION {bbl.th} -{ "." } - -MACRO {jan} {"Januar"} - -MACRO {feb} {"Februar"} - -MACRO {mar} {"M\^^b{a}rz"} - -MACRO {apr} {"April"} - -MACRO {may} {"Mai"} - -MACRO {jun} {"Juni"} - -MACRO {jul} {"Juli"} - -MACRO {aug} {"August"} - -MACRO {sep} {"September"} - -MACRO {oct} {"Oktober"} - -MACRO {nov} {"November"} - -MACRO {dec} {"Dezember"} - - % End module: german.mbs - %------------------------------------------------------------------- - % Begin module: - % \ProvidesFile{scrguide.mbs}[2001/03/22 0.1] - % End module: scrguide.mbs -%% Copyright 1994-1999 Patrick W Daly -MACRO {acmcs} {"ACM Computing Surveys"} - -MACRO {acta} {"Acta Informatica"} - -MACRO {cacm} {"Communications of the ACM"} - -MACRO {ibmjrd} {"IBM Journal of Research and Development"} - -MACRO {ibmsj} {"IBM Systems Journal"} - -MACRO {ieeese} {"IEEE Transactions on Software Engineering"} - -MACRO {ieeetc} {"IEEE Transactions on Computers"} - -MACRO {ieeetcad} - {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} - -MACRO {ipl} {"Information Processing Letters"} - -MACRO {jacm} {"Journal of the ACM"} - -MACRO {jcss} {"Journal of Computer and System Sciences"} - -MACRO {scp} {"Science of Computer Programming"} - -MACRO {sicomp} {"SIAM Journal on Computing"} - -MACRO {tocs} {"ACM Transactions on Computer Systems"} - -MACRO {tods} {"ACM Transactions on Database Systems"} - -MACRO {tog} {"ACM Transactions on Graphics"} - -MACRO {toms} {"ACM Transactions on Mathematical Software"} - -MACRO {toois} {"ACM Transactions on Office Information Systems"} - -MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} - -MACRO {tcs} {"Theoretical Computer Science"} - -FUNCTION {write.url} -{ url empty$ - { skip$ } - { "\newline\urlprefix\url{" url * "}" * write$ newline$ } - if$ -} - - -INTEGERS { nameptr namesleft numnames } - -FUNCTION {format.names} -{ 's := - "" 't := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr - "{ff~}{vv~}{ll}{, jj}" format.name$ - bib.name.font - 't := - nameptr #1 > - { - nameptr #2 - #1 + = - numnames #2 - > and - { "others" 't := - #1 'namesleft := } - 'skip$ - if$ - namesleft #1 > - { ", " * t * } - { - s nameptr "{ll}" format.name$ duplicate$ "others" = - { 't := } - { pop$ } - if$ - t "others" = - { - " " * bbl.etal * - } - { bbl.and - space.word * t * - } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {format.names.ed} -{ format.names } - -FUNCTION {format.authors} -{ author empty$ - { "" } - { author format.names } - if$ -} - -FUNCTION {format.editors} -{ editor empty$ - { "" } - { editor format.names - " (" * - editor num.names$ #1 > - 'bbl.editors - 'bbl.editor - if$ - capitalize - * ")" * - } - if$ -} - -FUNCTION {format.in.editors} -{ editor empty$ - { "" } - { editor format.names.ed - editor num.names$ #1 > - { " (" * bbl.editors * ")" * } - { " (" * bbl.editor * ")" * } - if$ - } - if$ -} - -FUNCTION {format.isbn} -{ isbn empty$ - { "" } - { - "ISBN " isbn * } - if$ -} - -FUNCTION {format.issn} -{ issn empty$ - { "" } - { - "ISSN " issn * } - if$ -} - -FUNCTION {format.note} -{ - note empty$ - { "" } - { note #1 #1 substring$ - duplicate$ "{" = - 'skip$ - { output.state mid.sentence = - { "l" } - { "u" } - if$ - change.case$ - } - if$ - note #2 global.max$ substring$ * - } - if$ -} - -FUNCTION {format.title} -{ title empty$ - { "" } - { title - emphasize - } - if$ -} - -FUNCTION {output.bibitem} -{ newline$ - "\bibitem[" label * "]{" * write$ - cite$ write$ - "}" write$ - newline$ - "" - before.all 'output.state := -} - -FUNCTION {if.digit} -{ duplicate$ "0" = - swap$ duplicate$ "1" = - swap$ duplicate$ "2" = - swap$ duplicate$ "3" = - swap$ duplicate$ "4" = - swap$ duplicate$ "5" = - swap$ duplicate$ "6" = - swap$ duplicate$ "7" = - swap$ duplicate$ "8" = - swap$ "9" = or or or or or or or or or -} -FUNCTION {n.separate} -{ 't := - "" - #0 'numnames := - { t empty$ not } - { t #-1 #1 substring$ if.digit - { numnames #1 + 'numnames := } - { #0 'numnames := } - if$ - t #-1 #1 substring$ swap$ * - t #-2 global.max$ substring$ 't := - numnames #5 = - { duplicate$ #1 #2 substring$ swap$ - #3 global.max$ substring$ - "\," swap$ * * - } - 'skip$ - if$ - } - while$ -} -FUNCTION {n.dashify} -{ - n.separate - 't := - "" - { t empty$ not } - { t #1 #1 substring$ "-" = - { t #1 #2 substring$ "--" = not - { "--" * - t #2 global.max$ substring$ 't := - } - { { t #1 #1 substring$ "-" = } - { "-" * - t #2 global.max$ substring$ 't := - } - while$ - } - if$ - } - { t #1 #1 substring$ * - t #2 global.max$ substring$ 't := - } - if$ - } - while$ -} - -FUNCTION {word.in} -{ bbl.in - " " * } - -FUNCTION {format.date} -{ year empty$ - { month empty$ - { "" } - { "there's a month but no year in " cite$ * warning$ - month - } - if$ - } - { month empty$ - 'year - { month "~" * year * } - if$ - } - if$ -} - -FUNCTION{format.year} -{ year duplicate$ empty$ - { "empty year in " cite$ * warning$ pop$ "" } - { " (" swap$ * ")" * } - if$ -} - -FUNCTION {format.btitle} -{ title emphasize -} - -FUNCTION {tie.or.space.connect} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { bbl.volume volume tie.or.space.connect - series empty$ - 'skip$ - { bbl.of space.word * series emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} - -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - { series field.or.null } - { output.state mid.sentence = - { bbl.number } - { bbl.number capitalize } - if$ - number tie.or.space.connect - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { bbl.in space.word * series * } - if$ - } - if$ - } - { "" } - if$ -} - -FUNCTION {is.num} -{ chr.to.int$ - duplicate$ "0" chr.to.int$ < not - swap$ "9" chr.to.int$ > not and -} - -FUNCTION {extract.num} -{ duplicate$ 't := - "" 's := - { t empty$ not } - { t #1 #1 substring$ - t #2 global.max$ substring$ 't := - duplicate$ is.num - { s swap$ * 's := } - { pop$ "" 't := } - if$ - } - while$ - s empty$ - 'skip$ - { pop$ s } - if$ -} - -FUNCTION {convert.edition} -{ edition extract.num "l" change.case$ 's := - s "first" = s "1" = or - { bbl.first 't := } - { s "second" = s "2" = or - { bbl.second 't := } - { s "third" = s "3" = or - { bbl.third 't := } - { s "fourth" = s "4" = or - { bbl.fourth 't := } - { s "fifth" = s "5" = or - { bbl.fifth 't := } - { s #1 #1 substring$ is.num - { s bbl.th * 't := } - { edition 't := } - if$ - } - if$ - } - if$ - } - if$ - } - if$ - } - if$ - t -} - -FUNCTION {format.edition} -{ edition empty$ - { "" } - { output.state mid.sentence = - { convert.edition "l" change.case$ " " * bbl.edition * } - { convert.edition "t" change.case$ " " * bbl.edition * } - if$ - } - if$ -} - -INTEGERS { multiresult } - -FUNCTION {multi.page.check} -{ 't := - #0 'multiresult := - { multiresult not - t empty$ not - and - } - { t #1 #1 substring$ - duplicate$ "-" = - swap$ duplicate$ "," = - swap$ "+" = - or or - { #1 'multiresult := } - { t #2 global.max$ substring$ 't := } - if$ - } - while$ - multiresult -} - -FUNCTION {format.pages} -{ pages empty$ - { "" } - { pages multi.page.check - { bbl.pages pages n.dashify tie.or.space.connect } - { bbl.page pages tie.or.space.connect } - if$ - } - if$ -} - -FUNCTION {format.journal.pages} -{ pages empty$ - 'skip$ - { duplicate$ empty$ - { pop$ format.pages } - { - ": " * - pages multi.page.check - { bbl.pages } - { bbl.page } - if$ - "~" * * - pages n.dashify * - } - if$ - } - if$ -} - -FUNCTION {format.vol.num.pages} -{ volume field.or.null - volume empty$ - 'skip$ - { bbl.volume "~" * swap$ * } - if$ - format.year * - number empty$ - 'skip$ - { - "(" number * ")" * * - volume empty$ - { "there's a number but no volume in " cite$ * warning$ } - 'skip$ - if$ - } - if$ - format.journal.pages -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { bbl.chapter } - { type "l" change.case$ } - if$ - chapter tie.or.space.connect - pages empty$ - 'skip$ - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {format.in.ed.booktitle} -{ booktitle empty$ - { "" } - { editor empty$ - { word.in booktitle emphasize * } - { word.in format.in.editors * ", " * - booktitle emphasize * } - if$ - } - if$ -} - -FUNCTION {empty.misc.check} -{ author empty$ title empty$ howpublished empty$ - month empty$ year empty$ note empty$ - and and and and and - key empty$ not and - { "all relevant fields are empty in " cite$ * warning$ } - 'skip$ - if$ -} - -FUNCTION {format.thesis.type} -{ type empty$ - 'skip$ - { pop$ - type "t" change.case$ - } - if$ -} - -FUNCTION {format.tr.number} -{ type empty$ - { bbl.techrep } - 'type - if$ - number empty$ - { "t" change.case$ } - { number tie.or.space.connect } - if$ -} - -FUNCTION {format.article.crossref} -{ - key empty$ - { journal empty$ - { "need key or journal for " cite$ * " to crossref " * crossref * - warning$ - "" - } - { word.in journal emphasize * } - if$ - } - { word.in key * " " *} - if$ - " \cite{" * crossref * "}" * -} - -FUNCTION {format.crossref.editor} -{ editor #1 "{vv~}{ll}" format.name$ - bib.name.font - editor num.names$ duplicate$ - #2 > - { pop$ - " " * bbl.etal * - } - { #2 < - 'skip$ - { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { - " " * bbl.etal * - } - { bbl.and space.word * editor #2 "{vv~}{ll}" format.name$ - bib.name.font - * } - if$ - } - if$ - } - if$ -} - -FUNCTION {format.book.crossref} -{ volume empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - word.in - } - { bbl.volume volume tie.or.space.connect - bbl.of space.word * - } - if$ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { series empty$ - { "need editor, key, or series for " cite$ * " to crossref " * - crossref * warning$ - "" * - } - { series emphasize * } - if$ - } - { key * } - if$ - } - { format.crossref.editor * } - if$ - " \cite{" * crossref * "}" * -} - -FUNCTION {format.incoll.inproc.crossref} -{ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { booktitle empty$ - { "need editor, key, or booktitle for " cite$ * " to crossref " * - crossref * warning$ - "" - } - { word.in booktitle emphasize * } - if$ - } - { word.in key * " " *} - if$ - } - { word.in format.crossref.editor * " " *} - if$ - " \cite{" * crossref * "}" * -} - -FUNCTION {format.org.or.pub} -{ 't := - "" - address empty$ t empty$ and - 'skip$ - { - t empty$ - { address empty$ - 'skip$ - { address * } - if$ - } - { t * - address empty$ - 'skip$ - { ", " * address * } - if$ - } - if$ - } - if$ -} - -FUNCTION {format.publisher.address} -{ publisher empty$ - { "empty publisher in " cite$ * warning$ - "" - } - { publisher } - if$ - format.org.or.pub -} - -FUNCTION {format.organization.address} -{ organization empty$ - { "" } - { organization } - if$ - format.org.or.pub -} - -FUNCTION {article} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - crossref missing$ - { journal - emphasize - "journal" output.check - format.vol.num.pages output - } - { format.article.crossref output.nonnull - format.pages output - } - if$ - format.issn output - format.note output - fin.entry - write.url -} - -FUNCTION {book} -{ output.bibitem - author empty$ - { format.editors "author and editor" output.check - add.colon - } - { format.authors output.nonnull - add.colon - crossref missing$ - { "author and editor" editor either.or.check } - 'skip$ - if$ - } - if$ - format.btitle "title" output.check - crossref missing$ - { format.bvolume output - format.number.series output - format.publisher.address output - } - { - format.book.crossref output.nonnull - } - if$ - format.edition output - format.date "year" output.check - format.isbn output - format.note output - fin.entry - write.url -} - -FUNCTION {booklet} -{ output.bibitem - format.authors output - add.colon - format.title "title" output.check - howpublished output - address output - format.date output - format.isbn output - format.note output - fin.entry - write.url -} - -FUNCTION {inbook} -{ output.bibitem - author empty$ - { format.editors "author and editor" output.check - add.colon - } - { format.authors output.nonnull - add.colon - crossref missing$ - { "author and editor" editor either.or.check } - 'skip$ - if$ - } - if$ - format.btitle "title" output.check - crossref missing$ - { - format.bvolume output - format.number.series output - format.publisher.address output - } - { - format.book.crossref output.nonnull - } - if$ - format.edition output - crossref missing$ - { format.isbn output } - 'skip$ - if$ - format.date "year" output.check - date.block - add.blank - format.pages "pages" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {incollection} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.bvolume output - format.number.series output - format.publisher.address output - format.edition output - format.isbn output - } - { format.incoll.inproc.crossref output.nonnull - } - if$ - format.date "year" output.check - date.block - add.blank - format.pages "pages" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {inproceedings} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.bvolume output - format.number.series output - publisher empty$ - { format.organization.address output } - { organization output - format.publisher.address output - } - if$ - format.isbn output - format.issn output - } - { format.incoll.inproc.crossref output.nonnull - format.pages output - } - if$ - format.date "year" output.check - date.block - add.blank - format.pages "pages" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {conference} { inproceedings } - -FUNCTION {manual} -{ output.bibitem - author empty$ - { organization empty$ - 'skip$ - { organization output.nonnull - address output - } - if$ - } - { format.authors output.nonnull } - if$ - add.colon - format.btitle "title" output.check - author empty$ - { organization empty$ - { - address output - } - 'skip$ - if$ - } - { - organization output - address output - } - if$ - format.edition output - format.date output - format.note output - fin.entry - write.url -} - -FUNCTION {mastersthesis} -{ output.bibitem - format.authors "author" output.check - add.colon - format.btitle "title" output.check - bbl.mthesis format.thesis.type output.nonnull - school "school" output.check - address output - format.date "year" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {misc} -{ output.bibitem - format.authors output - add.colon - format.title output - howpublished output - format.date output - format.note output - fin.entry - write.url - empty.misc.check -} - -FUNCTION {phdthesis} -{ output.bibitem - format.authors "author" output.check - add.colon - format.btitle "title" output.check - bbl.phdthesis format.thesis.type output.nonnull - school "school" output.check - address output - format.date "year" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {proceedings} -{ output.bibitem - editor empty$ - { organization output } - { format.editors output.nonnull } - if$ - add.colon - format.btitle "title" output.check - format.bvolume output - format.number.series output - editor empty$ - { publisher empty$ - 'skip$ - { - format.publisher.address output - } - if$ - } - { publisher empty$ - { - format.organization.address output } - { - organization output - format.publisher.address output - } - if$ - } - if$ - format.date "year" output.check - format.isbn output - format.issn output - format.note output - fin.entry - write.url -} - -FUNCTION {techreport} -{ output.bibitem - format.authors "author" output.check - add.colon - format.btitle "title" output.check - format.tr.number output.nonnull - institution "institution" output.check - address output - format.date "year" output.check - format.note output - fin.entry - write.url -} - -FUNCTION {unpublished} -{ output.bibitem - format.authors "author" output.check - add.colon - format.title "title" output.check - format.date output - format.note "note" output.check - fin.entry - write.url -} - -FUNCTION {default.type} { misc } - -READ - -FUNCTION {sortify} -{ purify$ - "l" change.case$ -} - -INTEGERS { len } - -FUNCTION {chop.word} -{ 's := - 'len := - s #1 len substring$ = - { s len #1 + global.max$ substring$ } - 's - if$ -} - -INTEGERS { et.al.char.used } - -FUNCTION {initialize.et.al.char.used} -{ #0 'et.al.char.used := -} - -EXECUTE {initialize.et.al.char.used} - -FUNCTION {format.lab.names} -{ 's := - s num.names$ 'numnames := - numnames #1 > - { numnames #4 > - { #3 'namesleft := } - { numnames 'namesleft := } - if$ - #1 'nameptr := - "" - { namesleft #0 > } - { nameptr numnames = - { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { "{\etalchar{+}}" * - #1 'et.al.char.used := - } - { s nameptr "{l{}}" format.name$ * } - if$ - } - { s nameptr "{l{}}" format.name$ * } - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ - numnames #4 > - { "{\etalchar{+}}" * - #1 'et.al.char.used := - } - 'skip$ - if$ - } - { s #1 "{l{}}" format.name$ - duplicate$ text.length$ #2 < - { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ } - 'skip$ - if$ - } - if$ -} - -FUNCTION {author.key.label} -{ author empty$ - { key empty$ - { cite$ #1 #3 substring$ } - { key #3 text.prefix$ } - if$ - } - { author format.lab.names } - if$ -} - -FUNCTION {author.editor.key.label} -{ author empty$ - { editor empty$ - { key empty$ - { cite$ #1 #3 substring$ } - { key #3 text.prefix$ } - if$ - } - { editor format.lab.names } - if$ - } - { author format.lab.names } - if$ -} - -FUNCTION {author.key.organization.label} -{ author empty$ - { key empty$ - { organization empty$ - { cite$ #1 #3 substring$ } - { "The " #4 organization chop.word #3 text.prefix$ } - if$ - } - { key #3 text.prefix$ } - if$ - } - { author format.lab.names } - if$ -} - -FUNCTION {editor.key.organization.label} -{ editor empty$ - { key empty$ - { organization empty$ - { cite$ #1 #3 substring$ } - { "The " #4 organization chop.word #3 text.prefix$ } - if$ - } - { key #3 text.prefix$ } - if$ - } - { editor format.lab.names } - if$ -} - -FUNCTION {calc.label} -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.organization.label - { type$ "manual" = - 'author.key.organization.label - 'author.key.label - if$ - } - if$ - } - if$ - duplicate$ - year field.or.null purify$ #-1 #2 substring$ - * - 'label := - year field.or.null purify$ #-1 #4 substring$ - * - sortify 'sort.label := -} - -FUNCTION {sort.format.names} -{ 's := - #1 'nameptr := - "" - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr - "{ll{ }}{ ff{ }}{ jj{ }}" - format.name$ 't := - nameptr #1 > - { - nameptr #2 - #1 + = - numnames #2 - > and - { "others" 't := - #1 'namesleft := } - 'skip$ - if$ - " " * - namesleft #1 = t "others" = and - { "zzzzz" * } - { t sortify * } - if$ - } - { t sortify * } - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {sort.format.title} -{ 't := - "A " #2 - "An " #3 - "The " #4 t chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -FUNCTION {author.sort} -{ author empty$ - { key empty$ - { "to sort, need author or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { author sort.format.names } - if$ -} - -FUNCTION {author.editor.sort} -{ author empty$ - { editor empty$ - { key empty$ - { "to sort, need author, editor, or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { editor sort.format.names } - if$ - } - { author sort.format.names } - if$ -} - -FUNCTION {author.organization.sort} -{ author empty$ - { organization empty$ - { key empty$ - { "to sort, need author, organization, or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { "The " #4 organization chop.word sortify } - if$ - } - { author sort.format.names } - if$ -} - -FUNCTION {editor.organization.sort} -{ editor empty$ - { organization empty$ - { key empty$ - { "to sort, need editor, organization, or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { "The " #4 organization chop.word sortify } - if$ - } - { editor sort.format.names } - if$ -} - -FUNCTION {presort} -{ calc.label - sort.label - " " - * - type$ "book" = - type$ "inbook" = - or - 'author.editor.sort - { type$ "proceedings" = - 'editor.organization.sort - { type$ "manual" = - 'author.organization.sort - 'author.sort - if$ - } - if$ - } - if$ - * - " " - * - year field.or.null sortify - * - " " - * - title field.or.null - sort.format.title - * - #1 entry.max$ substring$ - 'sort.key$ := -} - -ITERATE {presort} - -SORT - -STRINGS { longest.label last.sort.label next.extra } - -INTEGERS { longest.label.width last.extra.num } - -FUNCTION {initialize.longest.label} -{ "" 'longest.label := - #0 int.to.chr$ 'last.sort.label := - "" 'next.extra := - #0 'longest.label.width := - #0 'last.extra.num := -} - -FUNCTION {forward.pass} -{ last.sort.label sort.label = - { last.extra.num #1 + 'last.extra.num := - last.extra.num int.to.chr$ 'extra.label := - } - { "a" chr.to.int$ 'last.extra.num := - "" 'extra.label := - sort.label 'last.sort.label := - } - if$ -} - -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - 'skip$ - if$ - label extra.label * 'label := - label width$ longest.label.width > - { label 'longest.label := - label width$ 'longest.label.width := - } - 'skip$ - if$ - extra.label 'next.extra := -} - -EXECUTE {initialize.longest.label} - -ITERATE {forward.pass} - -REVERSE {reverse.pass} - -FUNCTION {begin.bib} -{ et.al.char.used - { "\newcommand{\etalchar}[1]{$^{#1}$}" write$ newline$ } - 'skip$ - if$ - preamble$ empty$ - 'skip$ - { preamble$ write$ newline$ } - if$ - "\begin{thebibliography}{" longest.label * "}" * - write$ newline$ - "\expandafter\ifx\csname url\endcsname\relax" - write$ newline$ - " \def\url#1{\texttt{#1}}\fi" - write$ newline$ - "\expandafter\ifx\csname urlprefix\endcsname\relax\def\urlprefix{URL }\fi" - write$ newline$ -} - -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -ITERATE {call.type$} - -FUNCTION {end.bib} -{ newline$ - "\end{thebibliography}" write$ newline$ -} - -EXECUTE {end.bib} -%% End of customized bst file -%% -%% End of file `scrguide.bst'. diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.dbj b/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.dbj deleted file mode 100644 index 3bda1489d11..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.dbj +++ /dev/null @@ -1,319 +0,0 @@ -%% Driver file to produce scrguide.bst from merlin.mbs -%% Generated with makebst, version 3.2 (1999/02/24) -%% Produced on 2001/03/22 at 14:46 -%% -\input docstrip - -\preamble ----------------------------------------- -*** This file was made for creating KOMA-Script scrguide bibliography *** - -\endpreamble - -\postamble -End of customized bst file -\endpostamble - -\keepsilent - -\askforoverwritefalse -\def\MBopts{\from{merlin.mbs}{% - head,\MBopta} -\from{german.mbs}{\MBopta} -\from{scrguide.mbs}{\MBopta} -\from{merlin.mbs}{tail,\MBopta}} -\def\MBopta{% - exlang%: External language file -% ,cite%: Cite key -% ,alfph,alf-f%: Alpha style, Jones90 -% ,alph,alf-1%: Alpha style, Jon90 - ,alph%: Alpha style, Jon90 or JWB90 -% ,ay%: Author-year -% %(def) Numerical -%-------------------- -% ,html,htdes%: Hypertext with keys -% ,html,htlist%: Hypertext list -% ,html%: Hypertext - %: (def) Normal LaTeX -%-------------------- -% ,lang%: Add language field - %: (def) No language field -%-------------------- -% ,annote%: Annotations - %: (def) No annotations -%-------------------- - ,vonx%: Sort without von part -% %(def) Sort on von part -%-------------------- -% ,nm-revv1%: First name reversed, with full names -% ,nm-rev1%: Only first name reversed, initials -% ,nm-rvv%: Surname + spaceless initials -% ,nm-rvx%: Surname + pure initials -% ,nm-rv%: Surname + dotless initials -% ,nm-rev%: Surname + initials -% ,nm-init,ed-au%: Initials + surname -% ,nm-revf%: Full, surname first - ,ed-au%: Full, surname last -%-------------------- -% ,aunm-sl%: Names separated by slash -% ,aunm-semi%: Names separated by semi-colon - %: (def) Author names separated by commas -%-------------------- -% ,nmdash%: Repeated author/editor names replaced by dash - %: (def) Author/editor names always present -%-------------------- - ,nmlm%: Limited authors -% %(def) All authors -%-------------------- - ,x2%: Maximum of 2 authors - ,m2%: Minimum of 2 authors -% ,nmft,nmft-def%: User defined author font -% ,nmft,nmft-bf%: Bold authors -% ,nmft,nmft-it%: Italic authors - ,nmft,nmft-sc%: Small caps authors -% %(def) Normal font for author names -%-------------------- -% ,fnm-def%: First names in user defined font -% ,fnm-rm%: First names in normal font - %: (def) First names same font as surnames -%-------------------- - ,nmfted%: Editors incollection like authors -% %(def) Editors incollection normal font -%-------------------- - ,nmand-rm%: `And' in normal font -% %(def) `And' in author font -%-------------------- -% ,dt-end%: Date at very end - ,dt-jnl%: Date part of journal spec. -% ,dt-beg%: Date after authors -% %(def) Date at end -%-------------------- -% ,yr-blk%: Date preceded by space -% ,yr-com%: Date preceded by comma -% ,yr-per%: Date preceded by period -% ,yr-col%: Date preceded by colon -% ,yr-brk%: Date in brackets -% ,yr-par%: Date in parentheses - %: (def) Plain month and year -%-------------------- -% ,xmth%: Date is year only - %: (def) Date is month and year -%-------------------- -% ,dtrev%: Date as year month - %: (def) Date as month year -%-------------------- -% ,yrp-x%: No punct. after date -% ,yrp-per%: Period after date -% ,yrp-semi%: Semi-colon after date -% ,yrp-col%: Colon after date - %: (def) Date with standard block punctuation -%-------------------- -% ,yrpp-xsp%: No space after date - %: (def) Space after date -%-------------------- -% ,dtbf%: Date in bold face - %: (def) Date in normal font -%-------------------- -% ,tit-qq,qt-g,qx%: Title in guillemets -% ,tit-qq,qx%: Title in double quotes -% ,tit-qq,qt-s,qx%: Title in single quotes -% ,tit-qq,qt-g%: Title and punctuation in guillemets -% ,tit-qq%: Title and punctuation in double quotes -% ,tit-qq,qt-s%: Title and punctuation in single quotes - ,tit-it%: Title italic -% %(def) Title plain -%-------------------- - ,atit-u%: Title style -% %(def) Sentence style -%-------------------- -% ,jtit-x%: No article title - %: (def) Article title present -%-------------------- -% ,jxper%: Dotless journal names - %: (def) Periods in journal names -%-------------------- -% ,jttl-rm%: Journal title normal - %: (def) Journal title italics -%-------------------- -% ,thtit-a%: Thesis title like article - %: (def) Thesis titles like books -%-------------------- - ,trtit-b%: Tech. report title like books -% %(def) Tech. report title like articles -%-------------------- -% ,trnum-it%: Tech. report and number italic - %: (def) Tech. report and number plain -%-------------------- -% ,vol-2bf%: Volume and number bold -% ,vol-bf%: Volume bold -% ,vol-it%: Volume italic - %: (def) Volume plain -%-------------------- -% ,vnum-x%: Journal vol, without number -% ,vnum-b%: Journal vol number -% ,vnum-h%: Journal vol, \# number -% ,vnum-nr%: Journal vol, no. num -% ,vnum-cm%: Journal vol, num -% ,vnum-sp%: Journal vol (num) - %: (def) Journal vol(num) -%-------------------- -% ,volp-blk%: Volume with blank -% ,volp-com%: Volume with comma -% ,volp-semi%: Volume with semi-colon - ,volp-sp%: Volume with colon and space -% %(def) Volume with colon -%-------------------- -% ,jdt-pc%: Year, comma, pages -% ,jdt-p%: Year with pages - ,jdt-vs%: Journal vol (year) -% ,jdt-v%: Journal vol(year) -% %(def) Journal year like others -%-------------------- -% ,jpg-1%: Only start page number - %: (def) Start and stop page numbers -%-------------------- -% ,pgsep-p%: Period inserted over 9999 - ,pgsep-s%: Thin space inserted over 9999 -% ,pgsep-c%: Comma inserted over 9999 -% %(def) No separators for large page numbers -%-------------------- - ,jwdpg%: Include `page' in articles -% %(def) Article pages numbers only -%-------------------- -% ,pp-last%: Pages at end - %: (def) Pages given mid text -%-------------------- - ,jwdvol%: Include `volume' in articles -% %(def) Article volume as number only -%-------------------- -% ,num-xser%: Allows number without series - %: (def) Standard BibTeX -%-------------------- -% ,numser%: Just before publisher - %: (def) After chapter and pages -%-------------------- -% ,jnm-x%: Space after journal - %: (def) Comma after journal -%-------------------- -% ,btit-rm,bt-rm%: Book title plain - %: (def) Book title italic -%-------------------- -% ,bkpg-x%: Pages in book bare -% ,bkpg-par%: Pages in book in parentheses - %: (def) Pages in book plain -%-------------------- -% ,pg-bk%: For book: 345 pages - %: (def) Total book pages not printed -%-------------------- -% ,add-pub%: Address: Publisher - %: (def) Publisher, address -%-------------------- -% ,pub-date,pub-xpar,pub-xc%: Publisher and date, no parentheses, no comma -% ,pub-date,pub-xpar%: Publisher and date without parentheses -% ,pub-date,pub-xc%: Publisher and date in parentheses, no comma -% ,pub-date%: Publisher and date in parentheses -% ,pub-par%: Publisher in parentheses - %: (def) Publisher as normal block -%-------------------- -% ,pre-edn%: Publisher after edition -% ,pre-pub%: Publisher before chapter, pages - %: (def) Publisher after chapter, pages -%-------------------- -% %(def) No ISBN - ,isbn%: Include ISBN -%-------------------- -% %(def) No ISSN - ,issn%: Include ISSN -%-------------------- -% ,url,url-nl%: URL on new line -% ,url,url-nt%: URL as note -% ,url,url-blk%: Include URL - ,url,url-nl%: (def) URL on new line -%-------------------- -% ,edparc,bkedcap%: `Name, (Editor)' -% ,edparc%: `Name, (editor)' - ,edpar,bkedcap%: `Name (Editor),' -% ,edpar%: `Name (editor),' -% %(def) Word `editor' after name -%-------------------- -% ,edby-par,edbyy%: Booktitle (.., editor) -% ,edby,edbyy%: Booktitle, .., editor -% ,edby-parc,edbyx%: Booktitle, (editor..) -% ,edby-par,edbyx%: Booktitle (editor..) -% ,edby,edbyw%: Booktitle, (editor) .. -% ,edby,edbyx%: Booktitle, editor .. -% ,edby-parc%: Booktitle, (edited by ..) -% ,edby-par%: Booktitle (edited by ..) -% ,edby%: Booktitle, edited by .. - %: (def) .., editor, booktitle -%-------------------- -% ,blk-tita%: Period after titles of articles -% ,blk-tit%: Period after titles of articles, books, etc -% ,blk-com,com-blank%: Blanks between blocks -% ,blk-com,com-semi%: Semi-colon between blocks - ,blk-com%: Comma between blocks -% %(def) \newblock after blocks -%-------------------- -% ,blknt%: Notes preceded by period - %: (def) Notes have regular punctuation -%-------------------- - ,au-col%: Author block with colon -% %: (def) Author block normal -%-------------------- -% ,in-x%: No word `in' -% ,in-col%: Colon after `in' - %: (def) Space after `in' -%-------------------- -% ,injnl%: Add `in' before journal name - %: (def) No `in' before journal name -%-------------------- -% ,fin-bare%: No period at end - %: (def) Period at very end -%-------------------- - ,german%: German language -% ,pp%: `Seite' abbreviated - %: (def) `Seite(n)' -%-------------------- -% ,ed%: `Herausgeber' abbreviated - %: (def) `Herausgeber' -%-------------------- -% ,abr%: Abbreviations - %: (def) No abbreviations -%-------------------- - ,ord%: Numerical editions -% %(def) Write out editions -% ,xedn%: Editions as in database -%-------------------- - %: (def) PhD as `Dissertation' -% ,ger-phd%: PhD as `Doktorarbeit -%-------------------- -% ,jabr%: Abbreviated journal names - %: (def) Full journal names -%-------------------- -% ,varand%: Use \BIBand -% ,amper%: Use ampersand - %: (def) Use word `and' -%-------------------- -% ,and-com%: Comma even with 2 authors - ,and-xcom%: No comma before `and' -% %(def) Comma before `and' -%-------------------- -% ,xand%: No `and' - %: (def) With `and' -%-------------------- - ,etal-rm%: Roman et al -% ,etal-it%: Italic et al -% %(def) Plain et al -%-------------------- -% ,em-ul%: Underlining -% ,em-x%: No italics -% ,em-it%: Use true italics - %: (def) Use emphasis -%-------------------- - ,nfss%: NFSS -% %(def) No NFSS -%-------------------- -,{% - }} -\generate{\file{scrguide.bst}{\MBopts}} -\endbatchfile diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.gst b/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.gst deleted file mode 100644 index d00586a733c..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.gst +++ /dev/null @@ -1,33 +0,0 @@ -% MakeIndex-Style fuer die Aenderungsliste der KOMA-Script-Anleitung -% Dies basiert auf "scrguide.ist" -% Aenderungen: -% 2000-06-10 MK: encap wieder auf '|' geaendert, damit hyperref -% problemlos funktioniert. -% 2001-08-11 MK: die Ueberschrift "Symbols" wird unterdrueckt. -% -% Aufruf: -% makeind(e)x -g -r -s scrguide.gst scrguide.glo -oscrguide.chn -% - -level '>' -actual '=' -encap '|' -quote '~' -% -% ein 'small'er Index macht sich irgendwie besser und spart Papier -preamble "\\begin{thechangelist}\n" -postamble "\n\\end{thechangelist}\n" -% -% und Punkte sind sowieso immer gut (es sei denn, sie liegen in Flensburg) -delim_0 "~\\dotfill~" -delim_1 "~\\dotfill~" -delim_2 "~\\dotfill~" -% -% Bitte keine Indexbuchstaben -headings_flag 0 -% -% Wir verwenden ein anderes Schluesselwort -keyword "\\glossaryentry" -% -% Ende der Datei `scrguide.gst' - diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.ist b/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.ist deleted file mode 100644 index 2a415626b24..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.ist +++ /dev/null @@ -1,32 +0,0 @@ -% MakeIndex-Style fuer die KOMA-Script-Anleitung -% Dies ist auf meinen Mist gewachsen (Harald Sommerfeldt) -% Aenderungen: -% 2000-06-10 MK: encap wieder auf '|' geaendert, damit hyperref -% problemlos funktioniert. -% 2001-08-11 MK: die Ueberschrift "Symbols" wird unterdrueckt. -% -% Aufruf: -% makeind(e)x -g -r -s scrguide.ist scrguide.idx -% - -level '>' -actual '=' -encap '|' -quote '~' -% -% ein 'small'er Index macht sich irgendwie besser und spart Papier -preamble "\\begin{theindex}\\small\n" -postamble "\n\\end{theindex}\n" -% -% und Punkte sind sowieso immer gut (es sei denn, sie liegen in Flensburg) -delim_0 "\\ \\hspace{0pt plus 1fil}\\penalty0\\null\\nobreak\\dotfill~" -delim_1 "~\\dotfill\\penalty0\\ " -delim_2 "~\\dotfill\\penalty0\\ " -% -% fehlen nur noch die Indexbuchstaben zu unserem Gl"uck -heading_prefix "\\indexsection{" -heading_suffix "}\n" -headings_flag 1 -symhead_positive "" -% -% Ende der Datei `scrguide.ist' diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.mbs b/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.mbs deleted file mode 100644 index a9041ed07c0..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide.mbs +++ /dev/null @@ -1,145 +0,0 @@ -%\iffalse THIS IS A META COMMENT -% File: scrguide.mbs -% Copyright 2001 Markus Kohm -% E-mail: markus.kohm@gmx.de -% -% This program can be redistributed and/or modified under the terms -% of the LaTeX Project Public License Distributed from CTAN -% archives in directory macros/latex/base/lppl.txt; either -% version 1 of the License, or any later version. -% -% It is part of the KOMA-Script bundle, -%==================================================================== -% A Journal Definition File for extra journals -% to be included with other master bibliography style files -%-------------------------------------------------------------------- -% (See version and date in the \ProvidesFile command below) -%-------------------------------------------------------------------- -% This file is self-documenting: simply LaTeX it! -%==================================================================== -% - %------------------------------------------------------------------- - % Begin module: -%\fi - % \ProvidesFile{scrguide.mbs}[2001/03/22 0.1] -%\iffalse -%<*a&!a> -% The following ensures that the driver part is not seen by makebst -% The driver part must not contain any \end other than \end{document} ! -\ifx\endoptions\undefined\let\tempx=\relax\else - \long\def\tempx#1\end#2{}\fi\tempx -%</a&!a> -%<*driver> - \NeedsTeXFormat{LaTeX2e}% - \documentclass[a4paper,10pt,twoside]{article}% - \usepackage{doc}% - \raggedbottom - \CodelineNumbered - \RecordChanges - % Comment out next line to print coding - \OnlyDescription - \setlength{\oddsidemargin}{0.5\paperwidth} - \addtolength{\oddsidemargin}{-0.5\textwidth} - \addtolength{\oddsidemargin}{-1in} - \setlength{\evensidemargin}{\oddsidemargin} - -\begin{document} - \DocInput{scrguide.mbs} -\end{document} -%</driver> -% END OF META COMMENT \fi -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% -% \setcounter{StandardModuleDepth}{1} -% \setcounter{IndexColumns}{2} -% \setlength{\IndexMin}{10cm} -% -% \changes{0.1}{2001/03/22}{Initial contributed version} -% -% \pagestyle{myheadings} -% \markboth{Markus Kohm}{Extra Journal Names} -% -% \title{{\bfseries Extra Journal Definition File}\\ -% for master bibliographic style files} -% -% \author{Markus Kohm} -% -% \GetFileInfo{scrguide.mbs} -% \date{This paper describes file \texttt{\filename},\\ -% version \fileversion{} from \filedate} -% -% \maketitle -% -% \MakeShortVerb{\|} -% -% \parskip=1ex \parindent=0pt -% -% \newcommand{\btx}{{\sc Bib}\TeX} -% \newcommand{\dtx}{\textsf{docstrip}} -% -% \section{Introduction} -% -% This file adds a list of preprogrammed extra journal names to -% bibliographic style files, in both full and abbreviated versions. -% These defined journal names will be added to those in the main master -% bibliography style file. -% -% This is not a self-sufficient \texttt{.mbs} file, but rather may -% be used together with one that contains support for -% external definition files. -% % -% See the documentation for \texttt{makebst} for formatting details. -% -% \section{The Menu Information} -% -% All the menu information is nested between \dtx{} guard options -% |%<*options>| \dots\ |%</options>|, and the last command is -% |\endoptions|. The rest of the file is nested between |%<*!options>| -% \dots\ |%</!options>| in order to exclude it if \dtx{} is used to -% extract only the menu information. -% -% A journal-names files should contain at most only one option, \texttt{jabr}. -% This is because \texttt{merlin} version~3.5 can now handle several -% journal-name files, but does not look into them for the options, but -% rather asks for \texttt{jabr} from the main file. For compatibility with -% older versions, the option menu must be kept here. -% -% \begin{macrocode} -%<*options> -\mes{^^JEXTRA JOURNAL NAMES:} -\optdef{*}{}{Full extra journal names}{} -\optdef{a}{jabr}{Abbreviate extra names}{for journals} -\getans -\endoptions -%</options> -% \end{macrocode} -% -% \StopEventually{\PrintChanges} -% -% \section{The Coding} -% \begin{macrocode} -%<*!options> -%<*jabr> -MACRO{DTK}{"Die \TeX\-nische Ko\-m\^^b{o}\-die"} -MACRO{TUGboat}{"TUGboat"} -MACRO{TTN}{"\TeX{} and TUG News"} -MACRO{KOMAScript}{\KOMAScript} -%</jabr> -%</!options> - % End module: scrguide.mbs -% \end{macrocode} -% \Finale diff --git a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide2.tex b/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide2.tex deleted file mode 100644 index 3c65a16c78c..00000000000 --- a/Master/texmf-dist/source/latex/koma-script/scrguide/scrguide2.tex +++ /dev/null @@ -1,1081 +0,0 @@ -\ProvidesFile{scrguide2.tex}[2004/09/22 KOMA-Script Anleitung/Manual] -\newcommand*{\mainfilename}{scrguide2.tex} -% ============================================================================ -% scrguide2.tex -% Copyright (c) 2001-2002 Markus Kohm and the authors. -% -% This file is part of the LaTeX2e KOMA-Script-Bundle -% -% This file can be redistributed and/or modified under the terms of the LaTeX -% Project Public License Version 1.0 distributed together with this file. See -% LEGAL.TXT or LEGALDE.TXT. -% -% This bundle is written specialy for use at german-language. So the main -% documentation is german. There may also be an english documentation. See -% readme.txt, if you search for it. -% ---------------------------------------------------------------------------- -% scrclass2.tex -% Copyright (c) 2001-2002 Markus Kohm und bei den weiteren Autoren. -% -% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. -% -% Diese Datei kann nach den Regeln der LaTeX Project Public Licence -% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird, -% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder -% LEGALDE.TXT. -% -% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch -% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine -% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen -% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist. -% ============================================================================ -% -% Module: Hauptdokument -% Authors: Markus Kohm (MJK) <markus.kohm@gmx.de> -% Contents: Alle Definitionen sowie das Grundgeruest des Dokuments. -% Languages: English, Deutsch -% Characterset of comments: -% US-ASCII -% - -% ---------------------------------------------------------------------------- -% Predefinition -% Vorabdefinition -% ---------------------------------------------------------------------------- -\newcommand*{\thisfilename}{\mainfilename} - -% Date of the newest file will become docdate. -\newcommand{\OrigProvidesFile}{} -\let\OrigProvidesFile\ProvidesFile -\makeatletter -\newcommand*{\@SplitDate}{} -\def\@SplitDate#1/#2/#3 #4\eol{% - \def\thisisodate{#1-#2-#3}% - \count0=#1#2#3\relax - \ifnum \count0>\maxdate\relax - \xdef\maxdate{\the\count0}% - \xdef\docdate{\thisisodate} - \fi - \immediate\write\@auxout{% - \string\gdef\string\maxdate{\maxdate}% - \string\gdef\string\docdate{\docdate} - }% -} -\renewcommand*{\ProvidesFile}[1]{% - \renewcommand*{\thisfilename}{#1}% - \OrigProvidesFile{#1}% -} -\newcommand*{\SplitFileName}{} -\def\SplitFileName#1.#2\eol{\def\@tempa{#1}\def\@tempb{#2}}% -\def\@providesfile#1[#2]{% - \wlog{File: #1 #2}% - \edef\@tempa{#1}% - \expandafter\xdef\csname ver@\@tempa\endcsname{#2}% - \expandafter\SplitFileName\@tempa\eol - \def\@tempa{tex}\ifx\@tempa\@tempb - \edef\@tempa{\csname ver@\thisfilename\endcsname}% - \expandafter\@SplitDate\@tempa\eol - \fi - \endgroup -} -\AtBeginDocument{% - \renewcommand*{\thisfilename}{\mainfilename}% - {% - \edef\@tempa{\csname ver@\thisfilename\endcsname}% - \expandafter\@SplitDate\@tempa\eol - }% -} -\makeatother -\newcommand*{\docdate}{\AtEndDocument{% - \typeout{Document Warning: Rerun to get \string\docdate\space right!}}} -\newcommand*{\maxdate}{0} - -% ---------------------------------------------------------------------------- -% Language dependencies -% Sprachabhaengigkeiten - -% The LaTeX names of the supported languages -% Die LaTeX namen der unterstuetzen Sprachen -\providecommand{\NameGerman}{ngerman}% Neue Deutsche Rechtschreibung -\providecommand{\NameEnglish}{english} - -% Primary language is german -% Die Primaere Dokumentation wird auf deutsch erstellt -\ifx\UseLanguage\undefined\let\UseLanguage\NameGerman\fi - -% Some names, if not already defined -\providecommand*{\LanguageShortcut}{} -\providecommand{\AutoRefTextFarAway}{auf } -\providecommand{\MyPrelimText}{% - Diese Dokumentation ist im Entwurfsstadium (\thisfilename: - \docdate).} -\providecommand{\SubTitleName}{ein wandelbares \LaTeXe{}-Paket} -\providecommand{\ExampleName}{Beispiel} -\providecommand{\ClassName}{Klasse} -\providecommand{\PackageName}{Paket} -\providecommand{\EnvironmentName}{Umgebung} -\providecommand{\OptionName}{Option} -\providecommand{\MacroName}{Befehl} -\providecommand{\CounterName}{Z\"ahler} -\providecommand{\LengthName}{L\"ange} -\providecommand{\PseudoPrefix}{Pseudo-} -\providecommand{\PLengthName}{\PseudoPrefix\LengthName} -\providecommand{\VariableName}{Variable} -\providecommand{\PagestyleName}{Seitenstil} -\providecommand{\StyleName}{Stil} -\providecommand{\FloatstyleName}{float-\StyleName} -\providecommand{\FileName}{Datei} -\providecommand{\TitleText}{Das\ \KOMAScript-Paket} -\providecommand{\ManualName}{Anleitung} -\providecommand{\ManualFromText}{Autoren der Anleitung:} -\providecommand{\NoteName}{Notizen} -\providecommand{\FontElementName}{Element} -\providecommand{\genIndexName}{Allgemeiner Index} -\providecommand{\cmdIndexName}{Index der Befehle, Umgebungen und - Variablen} -\providecommand{\cmdIndexShortName}{Index der Befehle etc.} -\providecommand{\lenIndexName}{Index der L\"angen und Z\"ahler} -\providecommand{\lenIndexShortName}{Index der L\"angen etc.} -\providecommand{\elmIndexName}{Index der Elemente mit - M\"oglichkeit zur Schriftumschaltung} -\providecommand{\elmIndexShortName}{Index der Elemente} -\providecommand{\filIndexName}{Index der Dateien, Klassen und Pakete} -\providecommand{\filIndexShortName}{Index der Dateien etc.} -\providecommand{\optIndexName}{Index der Klassen- und - Paketoptionen} -\providecommand{\optIndexShortName}{Index der Optionen} -\providecommand{\ChangeListName}{\"Anderungsliste} -\providecommand{\LegalText}{% - Haftungsauschluss:\\ - Es wird keinerlei Haftung \"ubernommen f\"ur irgendwelche Sch\"aden, - die aus der Benutzung der Bestandteile des hier beschriebenen - Paketes resultieren. Siehe hierzu auch den Text der Datei - \File{LEGALDE.TXT}, die zwingender Bestandteil des Paketes ist.} -\providecommand{\LegalTextB}{% - Vorabversion ohne Optimierung des Seitenumbruchs\par - \vspace{\baselineskip} - Diese Anleitung ist als Bestandteil von \KOMAScript{} frei - im Sinne der \LaTeX{} Project Public License Version 1.0. Eine f\"ur - \KOMAScript{} g\"ultige deutsche \"Ubersetzung liegt \KOMAScript{} in - der Datei \File{LEGALDE.TXT} bei. Diese Anleitung -- auch in - gedruckter Form -- darf nur zusammen mit den \"ubrigen Bestandteilen - von \KOMAScript{} weitergegeben und verteilt werden. Eine Verteilung - der Anleitung unabh\"angig von den \"ubrigen Bestandteilen von - \KOMAScript{} bedarf der ausdr\"ucklichen Genehmigung der Autoren.} -\providecommand{\WhoIsWho}{% - Die folgenden Personen waren an \KOMAScript{} auf die eine oder - andere Art beteiligt: \textbf{Stefan Brill} (Korrektur), - \textbf{Christian Buss} (Korrektur), \textbf{Dr.~Engelbert Buxbaum} - (\"Ubersetzung), \textbf{Jo\~ao Canas Ferreira} (\"Ubersetzung), - \textbf{Michael Dewey} (Sprachanpassung), \textbf{Luzia Dietsche} - (Beta-Test), \textbf{Georg Grandke} (\"Ubersetzung, Korrektur), - \textbf{Ralph J. Hangleiter} (Sprachanpassung), \textbf{Henk - Jongbloets} (Sprachanpassung), \textbf{Axel Kielhorn} - (\Class{scrlettr}, \Package{addrconv}, Ideen), \textbf{Markus Kohm} - (Entwicklung, Dokumentation, Übersetzung, Support, Release), - \textbf{Torsten Kr\"uger} (Beta-Test, Korrektur, kritische Fragen, - Ideen, Motor), \textbf{Enrico Kunz} (Dokumentation, Korrektur), - \textbf{Werner Lemberg} (\"Ubersetzung), \textbf{Branka - Lon\v{c}arevi\'c} (Sprachanpassung), \textbf{Alejandro - L\'opez-Valencia} (Sprachanpassung), \textbf{Colin Marquardt} - (\"Ubersetzung), \textbf{Peter Marx} (Release), \textbf{Jens-Uwe - Morawski} (Dokumentation, \"Ubersetzung, Koordination, Korrektur, - Ideen, Motor), \textbf{Simone Naldi} (Sprachanpassung), - \textbf{Frank Neukam} (\textsc{Script} und \textsc{Script2.0}), - \textbf{Thomas Neumann} (Dokumentation, Korrektur), \textbf{Rolf - Niepraschk} (Korrektur), \textbf{Carsten Schurig} (Beta-Test), - \textbf{Axel Sommerfeldt} (Dokumentation) sowie diverse nette - Menschen, die Bugreports oder aufmunternde Mails geschrieben, - Verbesserungen und Erweiterungen gew\"unscht, beschrieben und - teilweise auch angeboten haben. Wer auch immer meint, ich habe ihn - oder sie vergessen, m\"oge sich auf der Stelle bei mir melden.} -\providecommand{\IndexPreambleText}{% - Fett hervorgehobene Zahlen geben die Seiten der Erkl\"arung zu einem - Stichwort wieder. Normal gedruckte Zahlen verweisen hingegen auf - Seiten mit zus\"atzlichen Informationen zum jeweiligen Stichwort.} -\providecommand{\ChangeListPreambleText}{% - Sie finden im Folgenden eine Auf\/listung aller wesentlichen - \"Anderungen der Benutzerschnittstelle im \KOMAScript-Paket der - neueren Zeit. Die Liste ist sortiert nach Klassen beziehungsweise - Paketen und Versionen. Zu jeder Version ist dann jeweils angegeben, - auf welchen Seiten dieser Dokumentation die \"Anderungen zu finden - sind. Auf den entsprechenden Seiten finden Sie dazu passende - Randmarkierungen.} -\providecommand{\CTANserver}{ftp.dante.de} -\providecommand{\BibPreambleText}{% - Sie finden im Folgenden eine ganze Reihe von Literaturangaben. Auf - all diese wird im Text verwiesen. In vielen F\"allen handelt es sich - um Dokumente oder ganze Verzeichnisse, die im Internet verf\"ugbar - sind. In diesen F\"allen ist statt eines Verlages eine URL angegeben. - Wird auf ein \LaTeX-Paket verwiesen, so findet der Verweis in der - Regel in der Form \glqq \url{CTAN://}\emph{Verweis}\grqq{} statt. - Der Pr\"afix \glqq \url{CTAN://}\grqq{} steht dabei f\"ur das - \TeX-Archiv eines jeden CTAN-Servers oder -Spiegels. Sie k\"onnen - den Pr\"afix beispielsweise durch - \url{ftp://\CTANserver/tex-archive/} ersetzen. Bei - \LaTeX-Paketen ist au\ss erdem zu beachten, dass versucht wurde, - die Version anzugeben, auf die im Text Bezug genommen wurde. Bei - einigen Paketen war es mehr ein Ratespiel, eine einheitliche - Versionsnummer und ein Erscheinungsdatum zu finden. Auch muss die - angegebene Version nicht immer die neueste verf\"ugbare Version sein. - Wenn Sie sich ein Paket neu besorgen und installieren, sollten Sie - jedoch zun\"achst immer die aktuelle Version ausprobieren. Bevor Sie - ein Dokument oder Paket von einem Server herunterladen, sollten Sie - au\ss erdem \"uberpr\"ufen, ob es sich nicht bereits auf Ihrem - Rechner befindet.} -% >>> BEGIN layout.tex TEXT-SAMPLES, german -% CHANGES ONLY BY THE AUTHOR OF layout.tex -% (1) example text command; the default definition (50) returns -% the whole text. -\providecommand{\XmpText}[1][50]{% - \ifnum #1<51 - Dieser Blindtext wird gerade von 130 Millionen Rezeptoren - Ihrer Netzhaut erfasst. - \ifnum #1>1 - Die Zellen werden dadurch in einen Erregungszustand versetzt, - \ifnum #1>2 - der sich vom Sehnerv in den hinteren Teil Ihres - \ifnum #1>3 - Gehirns ausbreitet. - Von dort aus \"ubertr\"agt sich die Erregung in - Sekundenbruchteilen auch in andere Bereiche Ihres - Gro\ss hirns. - Ihr Stirnlappen wird stimuliert. - Von dort aus gehen jetzt Willensimpulse aus, die - \fi\fi\fi - \fi - \ifnum #1>49 - Ihr zentrales Nervensystem in konkrete Handlungen umsetzt. - Kopf und Augen reagieren bereits. - Sie folgen dem Text, nehmen die darin enthaltenen Informationen - auf und leiten diese \"uber den Sehnerv weiter. - \fi} -% -% (2) the next two commands are language-dependent, since -% in some languages additional commands may required -\providecommand{\XmpTopText}{\XmpText[3]} -\providecommand{\XmpBotText}{\XmpText[2]} -% (3) Randnotizen/margin notes -\providecommand{\XmpMarginTextA}{Netzhaut} -\providecommand{\XmpMarginTextB}{(\textit{Retina})} -% (4) scrpage Markierungen/marks -\providecommand{\ScrpageMark}{\marginline{\small\sffamily\slshape scrpage}} -\providecommand{\ScrpageNote}{\marginline{\small\sffamily\slshape scrpage!}} -% -% <<< END layout.tex TEXT-SAMPLES - -% Laden der Kapitel -% Load chapters -\providecommand*{\LoadChapters}{% - \include{einleit} % Einleitung - \include{satzspgl} % Der Satzspiegel mit typearea - \include{hauptcls} % Die Hauptklassen scrbook, scrreprt, scrartcl - \include{layout} % Kopf- und Fusszeilen mit scrpage(2) - \include{datmzeit} % scrdate und scrtime - \include{brief} % Die scrlettr Klasse - \include{adressen} % scraddr - \include{adrkonv} % Adresskonvertierung mit addrconv - \include{datladen} % Paketabh"angigkeiten mit scrlfile beherrschen -} - -% End of language dependencies -% Ende der Sprachabhaengigkeiten -% ---------------------------------------------------------------------------- - -% ---------------------------------------------------------------------------- -% Class and packages / Klasse und Pakete -% You should only use classes and packages from KOMA-Script or base or tools. -% Everything else should be done writing your own macros (see below). -% Nach Moeglichkeit sollten nur solche Klassen und Pakete verwendet werden, -% die entweder zu KOMA-Script oder zu base oder tools gehoeren. Alles andere -% sollte notfalls durch eigene Makrodefinitionen (s. u.) abgedeckt werden. - -\documentclass[% - \UseLanguage,% language setting, used by many packages - pagesize,% write pagesize to DVI or PDF - 10pt,% use this font size - a5paper,% use ISO A5 - headinclude,% head is par of type area - 1headlines,% need only one line for the head - DIV15,% same value as with headexclude -% DIVcalc,% typearea has to calculate DIV for good linewidth - bibtotoc,% write bibliography-chapter to table of contents - idxtotoc,% write index-chapter to table of contents - cleardoubleplain,% \cleardoublepage generates pages with pagestyle plain - smallheadings,% use small version of headings (better at A5) - listsleft,% improved list of tables - final% final version -% draft% draft version -]{scrbook} - -\usepackage[latin1]{inputenc} -\usepackage{% - scrdate,scrtime,% need by the chapter about them - varioref,% posibility of better references - ae,% hope we can change this soon - babel,% we use different languages - graphicx,% -% array,% -% longtable,% - makeidx% must be to create the index -} - -\begingroup - \def\KOMAScript{KOMA-Script} - \xdef\PDFTitleText{\TitleText} -\endgroup -\ifx\BUCH\undefined\else\InputIfFileExists{scrbook}{}{}\fi -\ifpdfoutput{% - \usepackage[pdftex,bookmarks,% - pdfcreator={LaTeX2e, KOMA-Script (scrbook), hyperref},% - pdfkeywords={TeX LaTeX KOMA-Script scrbook scrreprt - scrartcl scrlttr2 typearea scrtime scrdate - scraddr scrpage scrpage2 scrlfile},% - pdftitle=\PDFTitleText]{hyperref} -}{% Make shure, we're using hypertex not dvips - \usepackage[hypertex,bookmarks]{hyperref} -} - -\providecommand*{\eTeX}{\ensuremath{\varepsilon}-\TeX} - -% Add \autopageref to hyperref: -\makeatletter -\DeclareRobustCommand{\autopageref}[1]{% - \expandafter\auto@setpageref\csname r@#1\endcsname - \@secondoffive - {#1}% -} - -\newcommand*{\auto@setpageref}[3]{% - \@safe@activestrue - \ifx#1\relax - \protect\G@refundefinedtrue - \nfss@text{\reset@font\bfseries ??}% - \@latex@warning{% - Reference `#3' on page \thepage \space undefined% - }% - \else - \def\@currentHtag{\pageautorefname~}% - \hyper@@link - {\expandafter\@fifthoffive#1}% - {\expandafter\@fourthoffive#1\@empty\@empty}% -% {\@currentHtag\expandafter#2#1\@empty\@empty\null}% -% {\expandafter\@fifthoffive#1}% -% {page.\expandafter\@secondoffive#1\@empty\@empty}% - {\@currentHtag\expandafter#2#1\@empty\@empty\null}% - \fi - \@safe@activesfalse -} - -\AtBeginDocument{\providecommand*{\pageautorefname}{\pagename}} - -\def\test@reftype#1.#2\\{% - \test@@reftype#1*\\% -} -\def\test@@reftype#1*#2\\{% - \@ifundefined{#1autorefname}{% - \@ifundefined{#1name}{% - \def\@currentHtag{}% - \@latex@warning{no tag name for #1 at \the\inputlineno}% - }{% - \def\@currentHtag{\csname#1name\endcsname~}% - }% - }{% - \def\@currentHtag{\csname#1autorefname\endcsname~}% - }% -} -\makeatother - -% autoname \subsection, \subsubsection ... same like \section -\providecommand*{\autorefnametillsection}{% - \let\subsectionautorefname=\sectionautorefname - \let\subsubsectionautorefname=\sectionautorefname - \let\paragraphautorefname=\sectionrefname - \let\subparagraphautorefname=\sectionrefname - % shouldn't be here, but it is easy this way: - \def\autoreftextfaraway##1{\AutoRefTextFarAway~\autopageref{##1}}% -} -\makeatletter -\addto\captionsenglish{\autorefnametillsection} -\addto\captionsngerman{\autorefnametillsection} -\AtBeginDocument{\autorefnametillsection} -\makeatother - -% Add \autovref to varioref: -\makeatletter -\DeclareRobustCommand\autovref{\@ifstar - {\let\vref@space\relax\autovr@f}% - {\let\vref@space\nobreakspace\autovr@f}} -\def\autovr@f#1{{% - \let\reftextfaraway\autoreftextfaraway - \leavevmode\unskip\vref@space - \autoref{#1}% - \@vpageref[\unskip]{#1}% -}} -\makeatother - -% Make CTAN:// be an alias of ftp://\CTANserver/tex-archive/ -\makeatletter -\def\url@#1{\expandafter\url@@#1\@nil} -\def\url@@#1://#2\@nil{% - \def\@tempa{#1}\def\@tempb{CTAN}\ifx\@tempa\@tempb - \hyper@linkurl{\Hurl{#1://#2}}{ftp://\CTANserver/tex-archive/#2}% - \else - \hyper@linkurl{\Hurl{#1://#2}}{#1://#2}% - \fi -} -\makeatother - -\ifx\UseLanguage\NameGerman -% hyphenation -% Trennung - \hyphenation{% - Stan-dard-an-wei-sung Stan-dard-an-wei-sung-en - Da-tei-na-me Da-tei-na-men Da-tei-na-mens - Pa-pier-rand Pa-pier-ran-des - } -\fi - -\ifdim\overfullrule>0pt - \usepackage{showkeys,prelim2e}% Draft only / nur im Entwurfsstadium - % Hinweis: Mit showkeys funktioniert - % der haengende Einzug (z. B. - % in Bildunterschriften) nicht! - - \renewcommand{\PrelimText}{% - \textnormal{% - \footnotesize% - \PrelimTextStyle% - \PrelimWords{}}% - } - \renewcommand{\PrelimTextStyle}{\sffamily\itshape} - \renewcommand{\PrelimWords}{\MyPrelimText} -% -\fi - -\usepackage{mparhack} -% End of class and packages. -% Ende der Klasse und Pakete. -% ---------------------------------------------------------------------------- - -% ---------------------------------------------------------------------------- -% The markup commands of the hole document. -% Die im Gesamtdokument verwendeten Markup-Anweisungen. -% -% REMARK: Normaly you should not pack as much markup commands and -% definitions into the preamble. And you never should -% redefine or use internal macros of LaTeX kernel, classes or -% packages. It would be better to write your own package or -% class instead of. -% There is only one reason not to do so at this manual: We -% wanted to avoid disappointment of the usual user, having -% one more class or package at the bundle only used by this -% manual. -% Many of the following macros are stolen from other -% packages or classes, which where made to document packages -% and classes -% -% HINWEIS: Normalerweise sollte man die Preambel eines Dokuments nicht derart -% Markup-Anweisungen und Definitionen vollstopfen. Schon gar nicht -% sollte man interne Makros definieren oder verwenden. Stattdessen -% ist es sinnvoller, ein eigenes Paket (engl. package) oder eine -% eigene Klasse (engl. class) hierfuer zu erstellen. -% Im Falle dieser Anleitung wurde dies nur aus einem einzigen Grund -% nicht getan: Der reine Anwender sollte nicht dadurch verwirrt -% werden, dass eine weitere Klasse oder ein weiteres Paket existiert, -% das jedoch nicht dokumentiert ist. -% Diverse Makros, die im folgenden definiert sind, entstammen anderen -% Paketen und Klassen, die speziell fuer die Dokumentation von -% Paketen und Klassen erstellt wurden. - -% New, only defined for scrguide: -% Neu, fuer den scrguide: - -\newcommand*{\textsfrm}[1]{% - \begingroup - \edef\@tempa{\sfdefault}% - \ifx\@tempa\f@family\textrm{#1}\else\textsf{#1}\fi - \endgroup -} - -\DeclareRobustCommand*{\Class}[1]{\textsfrm{#1}} -\DeclareRobustCommand*{\Package}[1]{\textsfrm{#1}} -\DeclareRobustCommand*{\File}[1]{\texttt{#1}} - -\DeclareRobustCommand{\Script}{\textsc{Script}} -\DeclareRobustCommand{\ScriptII}{\textsc{Script-2}} -\ifx\KOMAScript\undefined% - \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% - M\kern.05em A\kern.1em-\kern.1em Script}} -\fi - -\makeatletter -\DeclareRobustCommand{\BibTeX}{B\kern-.05em% - % Der folgende Hack stammt aus der Definition des - % Makros \LaTeX, siehe Datei `ltlogos.dtx' der - % LaTeX2e-Verteilung. - \hbox{$\m@th$% %% force math size calculations - \csname S@\f@size\endcsname \fontsize\sf@size\z@ - \math@fontsfalse\selectfont - I\kern-.025emB}% - \kern-.08em% - \-\TeX% -} -\makeatother - -\newcommand*{\Var}[1]{\ensuremath{\textit{#1}}} -\newcommand*{\Const}[1]{\ensuremath{\textrm{#1}}} -\newcommand*{\Unit}[1]{\ensuremath{\,\textrm{#1}}} - -\DeclareRobustCommand*{\Macro}[1]{\mbox{\texttt{\char`\\#1}}} -\DeclareRobustCommand*{\Option}[1]{\mbox{\texttt{#1}}} -\DeclareRobustCommand*{\Environment}[1]{\mbox{\texttt{#1}}} -\DeclareRobustCommand*{\Counter}[1]{\mbox{\texttt{#1}}} -\DeclareRobustCommand*{\Length}[1]{\mbox{\texttt{\char`\\#1}}} -\DeclareRobustCommand*{\PLength}[1]{\mbox{\PValue{#1}}} -\DeclareRobustCommand*{\Variable}[1]{\mbox{\PValue{#1}}} -\DeclareRobustCommand*{\FontElement}[1]{\PValue{#1}}% use \mbox? - -\DeclareRobustCommand*{\EMail}[1]{\textless #1\textgreater} -\DeclareRobustCommand*{\TextEMail}[1]{{\small\EMail{#1}}} - -% - parameter and argument in different cases: -% - Verschiedene Auftreten von Parametern/Argumenten: -\DeclareRobustCommand*{\PName}[1]{\mbox{\textit{#1}}}% Parametername -\DeclareRobustCommand*{\PValue}[1]{\texttt{#1}}% Parameterwert - -\DeclareRobustCommand*{\Parameter}[1]{% Parameter/Argument - \texttt{\{}\PName{#1}\texttt{\}}} -\DeclareRobustCommand*{\OParameter}[1]{% Parameter/Argument optional - \texttt{[%] - }\PName{#1}\texttt{%[ - ]}} -\DeclareRobustCommand*{\AParameter}[1]{% Parameter/Argument alternative - \texttt{(%) - }\PName{#1}\texttt{%( - )}} -\DeclareRobustCommand*{\PParameter}[1]{% Parameter/Argument as/als - % part of commands / Befehlsbestandteil - \texttt{\{#1\}}} - -\newenvironment{Example}{% - \begin{labeling}{{\sectfont\ExampleName:\ }} - \item[{\sectfont\ExampleName:\ }]} - {\end{labeling}} - -\makeatletter -\newsavebox\ShowOutputBox -\newenvironment{ShowOutput}[1][0pt]{\par - \begin{lrbox}{\ShowOutputBox}% - \begin{minipage}{.9\linewidth}% - \vspace*{\baselineskip}\vspace{-#1}% -}{% - \end{minipage} - \end{lrbox}% - \setlength{\unitlength}{1pt}% - \setlength{\@tempdima}{\ht\ShowOutputBox}% - \addtolength{\@tempdima}{\dp\ShowOutputBox}% - \setlength{\@tempdima}{.75\@tempdima}% - \edef\MidY{\strip@pt\@tempdima}% - \addtolength{\@tempdima}{5pt}% - \edef\HighY{\strip@pt\@tempdima}% - \addtolength{\@tempdima}{-10pt}% - \edef\LowY{\strip@pt\@tempdima}% - \addtolength{\@tempdima}{5pt}% - \setlength{\@tempdima}{.9\linewidth}\edef\QuadIV{\strip@pt\@tempdima}% - \setlength{\@tempdima}{.675\linewidth}\edef\QuadIII{\strip@pt\@tempdima}% - \setlength{\@tempdima}{.45\linewidth}\edef\QuadII{\strip@pt\@tempdima}% - \setlength{\@tempdima}{.225\linewidth}\edef\QuadI{\strip@pt\@tempdima}% - \centering - \begin{picture}(\QuadIV,\MidY) - \qbezier(0,\MidY)(\QuadI,\HighY)(\QuadII,\MidY)% - \qbezier(\QuadII,\MidY)(\QuadIII,\LowY)(\QuadIV,\MidY) - \put(0,0){\makebox(\QuadIV,\MidY)[c]{% - \scalebox{.75}{\usebox{\ShowOutputBox}}% - }% - }% - \put(0,-5){\line(0,1){\HighY}}% - \put(\QuadIV,-5){\line(0,1){\HighY}}% - \qbezier(0,-5)(\QuadI,0)(\QuadII,-5)% - \qbezier(\QuadII,-5)(\QuadIII,-10)(\QuadIV,-5) - \end{picture}\par - \vspace{1ex plus 1ex minus .5ex}% -} -\makeatother - -\newenvironment{Explain}{% - \small\sffamily -}{\normalcolor\par} - - -% Aenderungsmarkierungen f"ur Dinge, die ab einer bestimmten Version -% neu sind oder geaendert wurden. Rein textuelle "Anderungen werden -% hier nicht erfasst. -\providecommand*{\ChangedAt}[2]{% - \marginline{\footnotesize\fbox{\strut#1}}% - \glossary{#2>#1|indexrm}% -} -\newcommand*{\OnlyAt}[1]{% - \marginline{\def\and{,\\}\footnotesize #1}% -} -\makeglossary -\makeatletter -\newcommand\printchangelist{\@input@{\jobname.chn}} -\newenvironment{thechangelist} - {\setchapterpreamble{\ChangeListPreambleText\par\bigskip} - \addchap{\ChangeListName} - \markboth{\ChangeListName}{\ChangeListName} - \setlength{\parindent}{0pt} - \setlength{\parskip}{0pt plus .3pt} - \def\and{,\ } - \let\item\@idxitem} - {\clearpage} -\makeatother - -% >>> BEGIN layout.tex EXAMPLE-COMMANDS -% The commands can also be used in other parts of the guide, -% in order make some examples better readable. -% CHANGES ONLY BY THE AUTHOR OF layout.tex -% -\newenvironment{XmpTopPage} - {\begin{center}\setlength{\unitlength}{1mm}\begin{picture}(100,35)% - \thinlines - \qbezier(0,5)(25,7)(50,5)\qbezier(50,5)(75,3)(100,5) - \put(0,5){\line(0,1){30}} - \thicklines - \put(100,5){\line(0,1){30}}\put(0,35){\line(1,0){100}} - \small}{\end{picture}\end{center}\vspace{-1.5\baselineskip}} -% -\newenvironment{XmpBotPage} - {\begin{center}\setlength{\unitlength}{1mm}\begin{picture}(100,37)% - \thinlines - \qbezier(0,35)(25,37)(50,35)\qbezier(50,35)(75,33)(100,35) - \put(0,5){\line(0,1){30}} - \thicklines - \put(100,5){\line(0,1){30}}\put(0,5){\line(1,0){100}} - \small}{\end{picture}\end{center}\vspace{-1.5\baselineskip}} -% -\newcommand{\XmpSetText}[2][\XmpText]{% - \put(#2){\makebox(0,0)[tl]{\parbox{70mm}{#1}}}} -% -\newcommand{\XmpMarginNote}[1]{% - \put(#1){\makebox(0,5)[tl]{\scriptsize\XmpMarginTextA}} - \put(#1){\makebox(0,5)[bl]{\scriptsize\XmpMarginTextB}}} -% -\newcommand{\XmpRule}[2]{\put(#1){\line(1,0){#2}}} -% -\newcommand{\XmpHeading}[3][\KOMAScript\hfill 3]{% - \put(#2){\makebox(#3,0)[l]{#1}}} -% -% <<< END layout.tex EXAMPLE-COMMANDS - - -% Change defaults of KOMA-Script -% Voreinstellungen von KOMA-Script aendern: -\renewcommand*{\sectfont}{\normalfont\normalcolor\sffamily\bfseries} -\renewcommand*{\capfont}{\normalfont\normalcolor\small} -\renewcommand*{\caplabelfont}{\normalfont\normalcolor\sffamily\bfseries} - -% Bibliography -\newcommand*{\urlprefix}{} - -% From ltxguide.cls with some modifications: -% - Load config file, if found. This is some early, but must be to -% avoid problems with redefinitions at ltxguide.cfg. -% Aus ltxguide.cls uebernommen und teilweise modifiziert: -% - Konfigurationsdatei laden, falls vorhanden. Dies geschieht genaugenommen -% wesentlich zu frueh. Allerdings koennte es sonst zu erheblichen Problemen -% kommen, falls in ltxguide.cfg kritische Redefinitionen vorgenommen werden. -\InputIfFileExists{ltxguide.cfg}{\typeout{``ltxguide.cfg'' loaded.}}{} - -% - macros to declare macros, environments and options. -% - Makros zur Deklaration von Makros, Umgebungen, Optionen. -\newenvironment{Declaration}% - {\par\small\addvspace{2\baselineskip plus .5\baselineskip}% - \vspace{-\baselineskip}% - \noindent\hspace{-1em}% - \begin{tabular}{|l|}\hline\ignorespaces}% - {\\\hline\end{tabular}\nobreak\par\nobreak - \vspace{1.5\baselineskip}\vspace{-\baselineskip}% - \noindent\ignorespacesafterend} - -\iffalse% experimental (needs array-package) -\renewenvironment{Declaration}% - {\par\small\addvspace{2\baselineskip plus .5\baselineskip}% - \vspace{-\baselineskip}% - \noindent -% \ifthispageodd{% -% \hspace*{\fill}% -% \begin{tabular}{@{}r!{\vrule width 1.2pt}} -% \multicolumn{1}{@{}r@{\vrule width 1.2pt}} -% {\rule[2ex]{1em}{1.2pt}}\\[-2ex]\ignorespaces% -% }{% - \hspace{-1em}% - \begin{tabular}{!{\vrule width 1.2pt}l@{}} - \multicolumn{1}{@{\vrule width 1.2pt}l@{}} - {\rule[2ex]{1em}{1.2pt}}\\[-2ex]\ignorespaces% -% }% - } - {\\\end{tabular}% -% \ifthispageodd{\hspace{-1em}}{}% - \nobreak\par\nobreak - \vspace{1.5\baselineskip}\vspace{-\baselineskip}% - \noindent\ignorespacesafterend} -\fi - -% - Index: -\makeindex % Oh, yes, we want one ... -% ... or maybe more -\newif\ifusemultiindex -\IfFileExists{\jobname-gen.ind}{\usemultiindextrue}{\usemultiindexfalse} -\ifusemultiindex -\makeatletter -\usepackage{multicol} - -\newcommand*{\printmultiindex}[3][]{% - \def\indexname{#2}% - \ifx\relax#1\relax\let\index@preamble=\relax - \else\def\index@preamble{#1}% - \fi - \label{idx:#3}% - \@input@{\jobname-#3.ind}% -} -\renewenvironment{theindex}{% - \setchapterpreamble{\index@preamble} - \begin{multicols}{2}[\idx@heading\vspace{-1\baselineskip}]% - \parindent\z@ - \setlength{\parskip}{\z@ \@plus .3\p@}% - \setlength{\parfillskip}{\z@ \@plus 1fil}% - \let\item\@idxitem -}{% - \end{multicols}% -} - -\newcommand*{\CrossIndex}[3]{% - \Index{#1=\UseIndex{#2}\protect#1>#3=\UseIndex{#2}\SeeSign\protect#3}% -} - -\renewcommand*{\printindex}{% - \setchapterpreamble{\index@preamble}% - \addchap{\indexname}% - \let\index@preamble=\relax - \renewcommand*\idx@heading{% - \addsec{\indexname}% - \markright{\indexname}% - \ifx\index@preamble\relax - \else\index@preamble\let\index@preamble=\relax\fi - }% - \printmultiindex{\genIndexName}{gen}% - \printmultiindex[% - \CrossIndex{\MacroName}{gen}{\cmdIndexShortName}% - \CrossIndex{\EnvironmentName}{gen}{\cmdIndexShortName}% - \CrossIndex{\CounterName}{gen}{\cmdIndexShortName}% - \CrossIndex{\LengthName}{gen}{\cmdIndexShortName}% - ]{\cmdIndexName}{cmd}% - \printmultiindex[% - \CrossIndex{\LengthName}{gen}{\lenIndexShortName}% - \CrossIndex{\PLengthName}{gen}{\lenIndexShortName}% - \CrossIndex{\CounterName}{gen}{\lenIndexShortName}% - ]{\lenIndexName}{len}% - \printmultiindex[% - \CrossIndex{\FontElementName}{gen}{\elmIndexShortName}% - ]{\elmIndexName}{elm}% - \printmultiindex[% - \CrossIndex{\FileName}{gen}{\filIndexShortName}% - \CrossIndex{\PackageName}{gen}{\filIndexShortName}% - \CrossIndex{\ClassName}{gen}{\filIndexShortName}% - ]{\filIndexName}{fil}% - \printmultiindex[% - \CrossIndex{\OptionName}{gen}{\optIndexShortName}% - ]{\optIndexName}{opt}% -} -\makeatother -\fi - -\DeclareRobustCommand*{\SeeSign}{\ensuremath{\protect\rightarrow}~} -\newcommand*{\seeindex}[2]{\pageref{idx:#1}} - -\newcommand*{\AddSeeIndex}[4]{% -\ifusemultiindex - \Index[seeindex{#4}]{#1=\UseIndex{#2}#1>#3=\UseIndex{#2}\SeeSign#3}% -\fi -} - -\newcommand*{\indexsection}[1]{% - \ifx\empty#1\empty\else - \hspace{0pt plus 2fil}{{\sectfont #1}}\hspace{0pt plus - 1fil}\nopagebreak - \fi -} - -\makeatletter -\newcommand*{\IndexSeeAt}[6][\relax]{% - % #1 = optional entry note (\PagestyleName) - % #2 = Entry - % #3 = see-from-index to be used (cmd) - % #4 = see-to-index (gen) - % #5 = see-to-index name (\genIndexShortName) - % #6 = output command (\Macro) - \ifusemultiindex -% \edef\@tempa{idx@f@\string#1.\string#2.#3.#4}% - \edef\@tempa{idx@f@\string#2.#3.#4}% - \expandafter\ifx\csname \@tempa\endcsname\relax - \expandafter\gdef\csname \@tempa\endcsname{}% -% \ifx\relax#1\relax - \Index[seeindex{#4}]{% - #2=\UseIndex{#3}#6{#2}>#5=\UseIndex{#3}\SeeSign\protect#5}% -% \else -% \Index[seeindex{#4}]{% -% #2 (#1)=\UseIndex{#3}#6{#2} (\protect#1)>% -% #5=\UseIndex{#3}\SeeSign\protect#5}% -% \fi - \fi - \fi -} -\makeatother - -\newcommand*{\Index}[2][indexother]{\index{#2|#1}} -\newcommand*{\BeginIndex}[3][indexmain]{% - \expandafter\ifx\csname Index#2\endcsname\relax - \GenericError{(scrguide)\@spaces\@spaces\@spaces\@spaces}{% - Document scrguide Error: \string\BeginIndex\space with unknown - index% - }{Check the \string\BeginIndex-command or add a new index type - ``#2''.}{% - See scrguide2.tex for more information.}% - \else - \csname Index#2\endcsname[(%) - #1]{#3}% - \fi - \ignorespaces} -\newcommand*{\EndIndex}[3][indexmain]{% - \expandafter\ifx\csname Index#2\endcsname\relax - \GenericError{(scrguide)\@spaces\@spaces\@spaces\@spaces}{% - Document scrguide Error: \string\EndIndex\space with unknown - index% - }{Check the \string\BeginIndex-command or add a new index type - ``#2''.}{% - See scrguide2.tex for more information.}% - \else - \csname Index#2\endcsname[%( - )#1]{#3}% - \fi} - -\DeclareRobustCommand*{\UseIndex}[1]{\ignorespaces} - -\newcommand*{\DefineSingleIndex}[4][\relax]{% - % #1 = optional entry note (\MacroName) - % #2 = index macro postfix (Cmd) - % #3 = index to be used (cmd) - % #4 = output command (\Macro) - \ifx\relax#1\relax - % n - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2=\UseIndex{#3}#4{##2}}% - }% - \else - % ne - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2 (#1)=\UseIndex{#3}#4{##2} (\protect #1)}% - }% - \fi -} - -\newcommand*{\DefineDoubleIndex}[4][\relax]{% - % #1 = optional entry note (\PagestyleName) - % #2 = index macro postfix (Pagestyle) - % #3 = see-from-index to be used (cmd) - % #4 = output command (\Macro) - \ifx\relax#1\relax - % n,v - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2=\UseIndex{gen}#4{##2}}% - \IndexSeeAt{##2}{#3}{gen}{\genIndexName}{#4}% - }% - \else - % ne+nu,v - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \Index[##1]{##2 (#1)=\UseIndex{gen}#4{##2} (\protect #1)}% - \Index[##1]{#1=\UseIndex{gen}\protect#1>##2=\UseIndex{gen}#4{##2}}% - \IndexSeeAt[#1]{##2}{#3}{gen}{\genIndexName}{#4}% - }% - \fi -} - -\newcommand*{\DefineTripleIndex}[6][\relax]{% - % #1 = optional entry note (\LengthName) - % #2 = index macro postfix (Length) - % #3 = index to be used (len) - % #4 = index name (\lenIndexShortName) - % #5 = also-from-index to be used (cmd) - % #6 = output command (\Macro) - \ifx\relax#1\relax - % v,v,n - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \IndexSeeAt{##2}{gen}{#3}{#4}{#6}% - \IndexSeeAt{##2}{#5}{#3}{#4}{#6}% - \Index[##1]{##2=\UseIndex{len}#6{##2}}% - \IndexSeeAt{##2}{#3}{gen}{\genIndexName}{#4}% - }% - \else - % v+nu,v,ne - \expandafter\newcommand\expandafter*% - \csname Index#2\endcsname[2][indexother]{% - \IndexSeeAt[#1]{##2}{gen}{#3}{#4}{#6}% - \Index[##1]{#1=\UseIndex{gen}\protect#1>##2=\UseIndex{gen}#6{##2}}% - \IndexSeeAt[#1]{##2}{#5}{#3}{#4}{#6}% - \Index[##1]{##2 (#1)=\UseIndex{len}#6{##2} (\protect #1)}% - }% - \fi -} - -\DefineSingleIndex{Cmd}{cmd}{\Macro} -\DefineDoubleIndex[\PagestyleName]{Pagestyle}{cmd}{\PValue} -\DefineDoubleIndex[\FloatstyleName]{Floatstyle}{cmd}{\PValue} -\DefineTripleIndex[\CounterName]{Counter} - {len}{\lenIndexShortName}{cmd}{\Counter} -\DefineTripleIndex[\LengthName]{Length} - {len}{\lenIndexShortName}{cmd}{\Length} -\ifusemultiindex - \DefineSingleIndex[\EnvironmentName]{Env}{cmd}{\Environment} - \DefineSingleIndex{Option}{opt}{\Option} - \DefineSingleIndex[\PackageName]{Package}{fil}{\Package} - \DefineSingleIndex[\ClassName]{Class}{fil}{\Class} - \DefineSingleIndex{File}{fil}{\File} - \DefineSingleIndex[\VariableName]{Variable}{cmd}{\Variable} - \DefineSingleIndex{FontElement}{elm}{\FontElement} - \DefineSingleIndex{PLength}{len}{\PLength} -\else - \DefineDoubleIndex[\EnvironmentName]{Env}{cmd}{\Environment} - \DefineDoubleIndex{Option}{opt}{\Option} - \DefineDoubleIndex[\PackageName]{Package}{fil}{\Package} - \DefineDoubleIndex[\ClassName]{Class}{fil}{\Class} - \DefineDoubleIndex{File}{fil}{\File} - \DefineDoubleIndex[\VariableName]{Variable}{cmd}{\Variable} - \DefineDoubleIndex{FontElement}{elm}{\FontElement} - \DefineDoubleIndex{PLength}{len}{\PLength} - \iffalse - \newcommand*{\IndexPLength}[2][indexother]{% - \Index[#1]{% - \PLengthName=\protect\PLengthName>% - #2=\PLength{#2}}% - \Index[#1]{% - #2 (\PLengthName)=% - \PLength{#2}\hspace{0pt plus .1fil} \penalty100 - \protect\mbox{(\protect\PLengthName)}}} - \fi -\fi - -\newcommand*{\indexrm}[1]{\textrm{\hyperpage{#1}}} -\newcommand*{\indexother}{}\let\indexother\indexrm -\newcommand*{\indexit}[1]{\textit{\hyperpage{#1}}} -\newcommand*{\indexbf}[1]{\textbf{\hyperpage{#1}}} -\newcommand*{\indexmain}{}\let\indexmain\indexbf -\newcommand*{\indexsl}[1]{\textsl{\hyperpage{#1}}} -\newcommand*{\indexsf}[1]{\textsf{\hyperpage{#1}}} -\newcommand*{\indexsc}[1]{\textsc{\hyperpage{#1}}} -\providecommand*{\hyperpage}[1]{#1} - -% End of markup commands -% Ende der Markup Anweisungen. -% ---------------------------------------------------------------------------- - -% ---------------------------------------------------------------------------- -% We want a flushleft bibliography -% Das Literaturverzeichnis soll linksbuendig werden -% ---------------------------------------------------------------------------- -\makeatletter -\g@addto@macro\@openbib@code\raggedright -\makeatother -\setbibpreamble{\BibPreambleText\bigskip} - -\setindexpreamble{\IndexPreambleText\bigskip} - -\InputIfFileExists{koma.scrguide.overload}{}{} - -% ---------------------------------------------------------------------------- -% ??? -% Das Rahmendokument: -\begin{document} - -% - The title -% - Der Titel -\ifpdfoutput{% - \hypersetup{pdfauthor={Markus Kohm, Jens-Uwe Morawski},% - pdfsubject=\ManualName}}{} -\ifx\booktitle\undefined -\title{\TitleText} -\uppertitleback{\LegalText} -\lowertitleback{\LegalTextB} -\dedication{\sffamily\raggedright{\huge\KOMAScript\\} - \SubTitleName\\ - \vspace{5\baselineskip plus 1filll}% - \parbox{\textwidth}{\normalsize\WhoIsWho}} -\author{Frank Neukam\and Markus Kohm\and Axel Kielhorn} -\subject{\ManualName} -\publishers{\textbf{\ManualFromText}\\[1ex] - Markus Kohm\hfil% - \hfil Jens-Uwe Morawski} -\date{\docdate} -\maketitle -\else -\booktitle -\fi - -% - The lists -% - Die Verzeichnisse -\tableofcontents -%\listoffigures -\listoftables - -% - die Kapitel -% - chapters -\LoadChapters - -% - Correction after include -% - Korrektur nach include -\renewcommand*{\thisfilename}{\mainfilename} - -% - bibliography -% - Literaturverzeichnis -\bibliographystyle{scrguide% - \ifx\LanguageShortcut\empty\else-\LanguageShortcut\fi} -\bibliography{scrguide} - -% - index -% - Index -\makeatletter -\ifx\nochangelist\undefined\printchangelist\fi -\printindex -\makeatother - -% This has to be the last thing, so wie do it at \end{document} and -% set this just before \end{document}. The use of the subparagraph -% counter is just a hack. -\AtEndDocument{% - \newcommand\QuadPages{% - \setcounter{subparagraph}{\value{page}}% - \divide\value{subparagraph} by 2\relax% - \multiply\value{subparagraph} by 2\relax% - \ifnum\value{subparagraph}=\value{page}\let\QuadPages=\relax - \null\thispagestyle{empty}\clearpage - \else\null\newpage\fi - \QuadPages} - \clearpage - \markboth{\NoteName}{\NoteName}\QuadPages -} - -\end{document} -% End of ??? -% Ende des Rahmendokuments. -% ---------------------------------------------------------------------------- - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: t -%%% End: |