% ======================================================================
% scrlttr2.tex
% Copyright (c) Markus Kohm, 2002-2006
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
% This work may be distributed and/or modified under the conditions of
% the LaTeX Project Public License, version 1.3b of the license.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3b or later is part of all distributions of LaTeX 
% version 2005/12/01 or later and of this work.
%
% This work has the LPPL maintenance status "author-maintained".
%
% The Current Maintainer and author of this work is Markus Kohm.
%
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrlttr2.tex
% Copyright (c) Markus Kohm, 2002-2006
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3b, verteilt und/oder veraendert werden.
% Die neuste Version dieser Lizenz ist
%   http://www.latex-project.org/lppl.txt
% und Version 1.3b ist Teil aller Verteilungen von LaTeX
% Version 2005/12/01 oder spaeter und dieses Werks.
%
% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained"
% (allein durch den Autor verwaltet).
%
% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm.
% 
% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien.
% ======================================================================
%
% Chapter about scrlttr2 of the KOMA-Script guide
% Maintained by Markus Kohm
%
% ----------------------------------------------------------------------
%
% Kapitel über scrlttr2 in der KOMA-Script-Anleitung
% Verwaltet von Markus Kohm
%
% ============================================================================

\ProvidesFile{scrlttr2.tex}[2006/04/24 KOMA-Script guide (chapter: scrlttr2)]

\chapter{Die neue Briefklasse \Class{scrlttr2}}
\labelbase{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{lstlisting}
  latex scrlettr.dtx
  latex scrlettr.dtx
  latex scrlettr.dtx
\end{lstlisting}
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.lcoFile}, \autoref{tab:lcoFiles} 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},
  \autopageref{desc:scrlttr2.environment.letter} 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 die Kompatibilität}
\label{sec:scrlttr2.compatibilityOptions}
\BeginIndex{}{Kompatibilität}

Wer seine Briefe im Quellcode archiviert, legt in der Regel allergrößten Wert
darauf, dass bei zukünftigen \LaTeX{}-Läufen immer wieder exakt dasselbe
Ergebnis erzielt wird. In einigen Fällen ist es aber so, dass Verbesserungen
und Korrekturen an der Klasse zu Änderungen im Verhalten, inbesondere beim
Umbruch, führen.

\begin{Declaration}
  \Option{version}=\PName{Wert}
\end{Declaration}
\BeginIndex{Option}{version}%
Bei\ChangedAt{v2.9t}{\Class{scrlttr2}} \Class{scrlttr2} besteht die Wahl, ob
eine Quelldatei so weit irgend möglich auch zukünftig bei einem \LaTeX{}-Lauf
zu exakt demselben Ergebnis führen soll oder ob jeweils entsprechend der
Anpassungen der neusten Version der Klasse zu setzen ist. Zu welcher Version
Kompatibilität herzustellen ist, wird dabei über die Option
\Option{version} festgelegt. Voreingestellt ist Version 2.9t. Dasselbe
Ergebnis kann mit
\begin{lstlisting}
  version=first
\end{lstlisting}
oder
\begin{lstlisting}
  version=2.9
\end{lstlisting}
oder
\begin{lstlisting}
  version=2.9t
\end{lstlisting}
erreicht werden. Bei Angabe einer unbekannten Version als \PName{Wert} wird
eine Warnung ausgegeben und sicherheitshalber \Option{version=}\PValue{first}
angenommen. Mit
\begin{lstlisting}
  version=last
\end{lstlisting}
kann die jeweils neuste Version ausgewählt werden. In diesem Fall wird also
auf zukünftige Kompatibilität verzichtet. Wird die Option ohne Wertangabe
verwendet, so wird ebenfalls \PValue{last} angenommen.

Die Frage der Kompatiblität betrifft in erster Linie Fragen des Umbruchs. Neue
Möglichkeiten, die sich nicht auf den Umbruch auswirken, sind auch dann
verfügbar, wenn man per Option die Kompatibilität zu einer älteren Version
ausgewählt hat.
%
\EndIndex{Option}{version}%
%
\EndIndex{}{Kompatibilität}

\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:scrlttr2.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}, \autopageref{desc:typearea.macro.typearea}.
%
\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},
\autopageref{desc:scrlttr2.plength.firstfootvpos}. Die Option versteht die
Standardwerte für einfache Schalter, die in
\autoref{tab:scrlttr2.simpleSwitchValues},
\autopageref{tab:scrlttr2.simpleSwitchValues} angegeben sind. Voreingestellt
ist \PValue{false}.
%
\EndIndex{Option}{enlargefirstpage}%

\begin{table}
  \centering
  \caption{Standardwerte für einfache Schalter in der Klasse
    \Class{scrlttr2}}
  \begin{tabular}{ll}
    \toprule
    Wert & Bedeutung \\
    \midrule
    \PValue{true} & aktiviert die Option \\
    \PValue{on}   & aktiviert die Option \\
    \PValue{false}& deaktiviert die Option \\
    \PValue{off}  & deaktiviert die Option \\
    \bottomrule
  \end{tabular}
  \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. Genau genommen sind natürlich alle
Satzspiegeloptionen (siehe \autoref{sec:scrlttr2.typeareaOptions})
Layoutoptionen. Teilweise gilt dies auch umgekehrt.


\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{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},
\autopageref{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, die in \autoref{tab:scrlttr2.cleardoublepage} aufgeführt sind.
Die Seitenstile werden in \autoref{sec:scrlttr2.pageStyle} näher erläutert.
Voreingestellt ist \PValue{standard}.

\begin{table}
  \caption[{Mögliche Werte für Option \Option{cleardoublepage} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{cleardoublepage} zur
    Wahl des Seitenstils von leeren Schaltseiten bei \Class{scrlttr2}}
  \label{tab:scrlttr2.cleardoublepage}
  \begin{desctabular}
    \pventry{empty}{schaltet für die Leerseite auf den
      Seitenstil\Index{Seitenstil} \PValue{empty}\IndexPagestyle{empty}}%
    \pventry{plain}{schaltet für die Leerseite auf den Seitenstil
      \PValue{plain}\IndexPagestyle{plain}}
    \pventry{standard}{behält für die Leerseite den aktuellen
      Seitenstil bei.}
  \end{desctabular}
\end{table}
%
\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},
\autopageref{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},
\autopageref{desc:typearea.option.headinclude}).
%
\EndIndex{Option}{headsepline}%
\EndIndex{Option}{footsepline}%


\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
\autoref{tab:scrlttr2.pagenumber} zu entnehmen. Voreingestellt ist
\PValue{botcenter}.

\begin{table}
  \caption[{Mögliche Werte für Option \Option{pagenumber} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{pagenumber} zur
    Positionierung der Paginierung bei den Seitenstilen \PValue{headings}
    und \PValue{plain} von \Class{scrlttr2}}
  \label{tab:scrlttr2.pagenumber}
  \begin{desctabular}
    \entry{\PValue{bot}, \PValue{foot}}{%
      Seitenzahl im Fuß ohne Änderung der horizontalen Position}%
    \entry{\PValue{botcenter}, \PValue{botcentered}, \PValue{botmittle},
      \PValue{footcenter}, \PValue{footcentered}, \PValue{footmiddle}}{%
      Seitenzahl zentriert im Fuß}%
    \entry{\PValue{botleft}, \PValue{footleft}}{%
      Seitenzahl links im Fuß}%
    \entry{\PValue{botright}, \PValue{footright}}{ Seitenzahl rechts im Fuß}%
    \entry{\PValue{center}, \PValue{centered}, \PValue{middle}}{%
      Seitenzahl zentriert ohne Änderung der vertikalen Position}%
    \entry{\PValue{false}, \PValue{no}, \PValue{off}}{%
      keine Seitenzahl}%
    \entry{\PValue{head}, \PValue{top}}{%
      Seitenzahl im Kopf ohne Änderung der horizontalen Position}%
    \entry{\PValue{headcenter}, \PValue{headcentered}, \PValue{headmiddle},
      \PValue{topcenter}, \PValue{topcentered}, \PValue{topmiddle}}{%
      Seitenzahl zentriert im Kopf}%
    \entry{\PValue{headleft}, \PValue{topleft}}{%
      Seitenzahl links im Kopf}%
    \entry{\PValue{headright}, \PValue{topright}}{%
      Seitenzahl rechts im Kopf}%
    \entry{\PValue{left}}{%
      Seitenzahl links ohne Änderung der vertikalen Position}%
    \entry{\PValue{right}}{%
      Seitenzahl rechts ohne Änderung der vertikalen Position}%
  \end{desctabular}
\end{table}
%
\EndIndex{Option}{pagenumber}%


\begin{Explain}%
\begin{Declaration}
  \Option{parskip}=\PName{Wert}
\end{Declaration}%
\BeginIndex{Option}{parskip}%
  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. So gesehen sollten also auch Briefe mit Absatzeinrückung und im
  Blocksatz erstellt werden.
\end{Explain}
\Class{scrlttr2} bietet nicht nur die Möglichkeit, Absätze durch Einrückung
der ersten Zeile zu kennzeichnen, sondern alternativ einen Abstand zwischen
den Absätzen zu verwenden. Dabei kann zwischen einer halben und einer ganzen
Zeile Abstand gewählt werden. Zur Erleichterung der Erkennung des Absatzendes
kann bei der Wahl von Absatzabstand die erlaubte Füllung der letzten Zeile
eines Absatzes eingestellt werden. All diese Möglichkeiten werden über die
Werte der Option \Option{parskip} gesteuert, deren mögliche Werte in
\autoref{tab:scrlttr2.parskip} zu finden sind. Voreingestellt ist
\PValue{false}.

\begin{table}
  \caption[{Mögliche Werte für Option \Option{parskip} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{parskip} zur Wahl der
    Absatzauszeichnung bei \Class{scrlttr2}}
  \label{tab:scrlttr2.parskip}
  \begin{desctabular}
    \entry{\PValue{false}, \PValue{off}}{%
      Absatzeinzug statt Absatzabstand; die letzte Zeile eines Absatzes darf
      beliebig gefüllt sein}%
    \entry{\PValue{full}, \PValue{on}, \PValue{true}}{%
      eine Zeile Abstand zwischen Absätzen; in der letzten Zeile eines
      Absatzes muss mindestens 1\Unit{em} Platz frei bleiben}%
    \pventry{full*}{eine Zeile Abstand zwischen Absätzen; in der letzten Zeile
      eines Absatzes muss mindestens ein Viertel frei bleiben}%
    \pventry{full+}{eine Zeile Abstand zwischen Absätzen; in der letzten Zeile
      eines Absatzes muss mindestens ein Drittel frei bleiben}%
    \pventry{full-}{eine Zeile Abstand zwischen Absätzen; die letzte Zeile
      eines Absatzes darf beliebig gefüllt sein}%
    \pventry{half}{eine halbe Zeile Abstand zwischen Absätzen; in der letzten
      Zeile eines Absatzes muss mindestens 1\Unit{em} Platz frei bleiben}%
    \pventry{half*}{eine halbe Zeile Abstand zwischen Absätzen; in der letzten
      Zeile eines Absatzes muss mindestens ein Viertel frei bleiben}%
    \pventry{half+}{eine halbe Zeile Abstand zwischen Absätzen; in der letzten
      Zeile eines Absatzes muss mindestens ein Drittel frei bleiben}%
    \pventry{half-}{eine halbe Zeile Abstand zwischen Absätzen; die letzte
      Zeile eines Absatzes darf beliebig gefüllt sein}%
  \end{desctabular}
\end{table}
%
\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.


\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. 
%
\iftrue
% Umbruchfülltext
Diese Fähigkeiten waren jedoch weitgehend
schon in der obsoleten Klasse \Class{scrlettr} zu finden.
%
\fi

\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 \autoref{tab:scrlttr2.fromalign} zu
entnehmen. Voreingestellt ist der Wert \PValue{left}.

\begin{table}
  \caption[{Mögliche Werte für Option \Option{fromalign} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{fromalign} zur
    Platzierung des Absenders im Briefkopf von \Class{scrlttr2}}
  \label{tab:scrlttr2.fromalign}
  \begin{desctabular}
    \entry{\PValue{center}, \PValue{centered}, \PValue{middle}}{%
      Absender wird zentriert; ein Logo wird gegebenenfalls am Anfang der
      erweiterten Absenderangabe platziert; die Erweiterungen der
      Briefkopfgestaltung werden aktiviert.}%
    \entry{\PValue{false}, \PValue{no}, \PValue{off}}{%
      die Standardgestalt für den Absender wird verwendet; die Erweiterungen
      der Briefkopfgestaltung werden deaktiviert.}%
    \entry{\PValue{left}}{%
      Absender steht linksbündig; ein Logo wird gegebenenfalls rechtsbündig
      platziert; die Erweiterungen der Briefkopfgestaltung werden aktiviert.}%
    \entry{\PValue{right}}{%
      Absender steht rechtsbündig; ein Logo wird gegebenenfalls linksbündig
      platziert; die Erweiterungen der Briefkopfgestaltung werden aktiviert.}%
  \end{desctabular}
\end{table}
%
\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 die Werte aus \autoref{tab:scrlttr2.fromrule}.
Voreingestellt ist der Wert \PValue{false}. Es können nicht gleichzeitig
mehrere Linien aktiviert werden. Bezüglich der Länge der Linie siehe
\autoref{sec:scrlttr2.other},
\autopageref{desc:scrlttr2.plength.fromrulewidth}).

\begin{table}
  \caption[{Mögliche Werte für Option \Option{fromrule} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{fromrule} zur
    Platzierung einer Linie im Absender von \Class{scrlttr2}}
  \label{tab:scrlttr2.fromrule}
  \begin{desctabular}
  \entry{\PValue{afteraddress}, \PValue{below}, \PValue{on}, \PValue{true},
    \PValue{yes}}{%
    Linie unterhalb des kompletten Absenders}%
  \entry{\PValue{aftername}}{%
    Linie direkt unter dem Namen des Absenders}%
  \entry{\PValue{false}, \PValue{no}, \PValue{off}}{%
    keine Linie}%
  \end{desctabular}
\end{table}
%
\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},
\autopageref{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},
\autopageref{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},
\autopageref{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},
\autopageref{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},
\autopageref{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},
\autopageref{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},
\autopageref{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}, \autopageref{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
\autoref{tab:scrlttr2.subject} zu entnehmen. Voreingestellt sind
\PValue{beforeopening} und \PValue{untitled}.
\begin{table}
  \caption[{Mögliche Werte für Option \Option{subject} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{subject} zur
    Platzierung eines Betreffs bei \Class{scrlttr2}}
  \label{tab:scrlttr2.subject}
  \begin{desctabular}
    \pventry{afteropening}{Betreff nach der Anrede setzen}%
    \pventry{beforeopening}{Betreff vor der Anrede setzen}%
    \pventry{titled}{Betreff mit Titel versehen}%
    \pventry{untitled}{Betreff nicht mit Titel versehen}%
  \end{desctabular}
\end{table}

%
\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:scrlttr2.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},
\autopageref{desc:scrlttr2.plength.locwidth}. Mögliche Werte für die Option
sind \autoref{tab:scrlttr2.locfield} zu entnehmen. Voreingestellt ist
\PValue{narrow}.

\begin{table}
  \caption[{Mögliche Werte für Option \Option{locfield} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{locfield} zur
    Wahl der Breite des Feldes für die Absenderergänzung bei \Class{scrlttr2}}
  \label{tab:scrlttr2.locfield}
  \begin{desctabular}
    \pventry{narrow}{schmales Feld für Absenderergänzungen}%
    \pventry{wide}{breites Feld für Absenderergänzungen}%
  \end{desctabular}
\end{table}
%
\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:scrlttr2.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},
\autopageref{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},
\autopageref{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 das 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 \autoref{tab:scrlttr2.refline} zu
entnehmen. Voreingestellt ist \PValue{narrow}.

\begin{table}
  \caption[{Mögliche Werte für Option \Option{refline} bei
    \Class{scrlttr2}}]{Mögliche Werte für Option \Option{refline} zur Wahl
    der Breite der Geschäftszeile bei \Class{scrlttr2}}
  \label{tab:scrlttr2.refline}
  \begin{desctabular}
    \pventry{narrow}{Geschäftszeile hält den Satzspiegel ein}%
    \pventry{wide}{Geschäftszeile richtet sich nach Anschrift und
      Absenderergänzung}%
  \end{desctabular}
\end{table}
%
\EndIndex{Option}{refline}%

%
\EndIndex{}{Briefkopf}\EndIndex{}{Anschrift}


\subsection{Optionen für die Formatierung}
\label{sec:scrlttr2.formatingOptions}

Optionen für die Formatierung sind solche, 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},
\autopageref{tab:scrlttr2.simpleSwitchValues}
angegeben sind. Voreingestellt ist wie üblich \PValue{false}. 
%
\iffalse
% Umbruchbedarfstext
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.
%
\fi
%
\EndIndex{Option}{draft}%


\subsection{Die \emph{Letter-Class-Option}-Dateien}
\label{sec:scrlttr2.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}, \autopageref{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} im \KOMAScript-Paket). 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 dem \KOMAScript-Autor, Markus Kohm, in
  Verbindung setzen. 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{lstlisting}
  \documentclass{scrlttr2}
\end{lstlisting}
  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{lstlisting}
  \begin{letter}{Markus Kohm\\
      Fichtenstraße 63\\68535 Edingen-Neckarhausen}
    \LoadLetterOption{DINmtext}
    \opening{Hallo,}
\end{lstlisting}
  Da der Aufbau der ersten Seite erst mit \Macro{opening}\IndexCmd{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{lstlisting}
  \ProvidesFile{mkohm.lco}
               [2002/02/25 letter class option]
  \setkomavar{fromname}{Markus Kohm}
  \setkomavar{fromaddress}{Fichtenstra\ss e 63\\
                           68535 Edingen-Neckarhausen}
\end{lstlisting}
  Die dabei verwendete Anweisung \Macro{setkomavar} und das Prinzip der
  Variablen wird in \autoref{sec:scrlttr2.variables},
  \autopageref{desc:scrlttr2.macro.setkomavar} 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{lstlisting}
  \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{lstlisting}
  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{lstlisting}
  \LoadLetterOption{KOMAold}
\end{lstlisting}

  Wie dem auch sei, stellen Sie zukünftig meine Absenderdaten mit
\begin{lstlisting}
  \documentclass[mkohm]{scrlttr2}
\end{lstlisting}
  ein.
\end{Example}

In \autoref{tab:lcoFiles}, \autopageref{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},
\autopageref{desc:scrlttr2.option.refline}). 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},
\autopageref{desc:scrlttr2.plength.toaddrvpos}) dann auf einen kleineren Wert
gesetzt wird.  Verringern Sie dann außerdem \PLength{toaddrwidth}
entsprechend.
%
\EndIndex{Cmd}{LoadLetterOption}%

\begin{table}
  \centering
  \caption{Vordefinierte \File{lco}-Dateien}
  \begin{tabular}{lp{.7\textwidth}}
    \toprule
    \File{lco}-Name & Bedeutung und Besonderheiten \\
    \midrule
    \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)\\[.5\normalbaselineskip]
    \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)\\[.5\normalbaselineskip]
    \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\\[.5\normalbaselineskip]
    \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)\\[.5\normalbaselineskip]
    \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)\\
    \bottomrule
  \end{tabular}
  \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}\IndexCmd{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{lstlisting}
  \ProvidesFile{paper=a5.lco}
               [2002/05/02 letter class option]
  \LetterOptionNeedsPapersize{paper=a5}{a5}
  \@setplength{tfoldmarkvpos}{\paperheight}
  \@setplength{bfoldmarkvpos}{\paperheight}
\end{lstlisting}
  Außerdem muss natürlich die Position des Seitenfußes, also die Pseudolänge
  \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%
  \caption{Elemente, deren Schrift bei der Klasse
    \Class{scrlttr2} mit \Macro{setkomafont} und \Macro{addtokomafont}
    verändert werden kann}
  \begin{desctabular}
    \feentry{backaddress}{Rücksendeadresse für einen Fensterbriefumschlag}%
    \feentry{descriptionlabel}{Labels, also das optionale Argument von
      \Macro{item}, in einer \Environment{description}-Umgebung}%
    \feentry{fromaddress}{Absenderadresse im Briefkopf}%
    \feentry{fromname}{Name des Absenders im Briefkopf abweichend von
      \PValue{fromaddress}}%
    \feentry{pagefoot}{Eigentlich der Fuß einer Seite, jedoch auch der
      Kopf der Seite}%
    \feentry{pagehead}{Eigentlich der Kopf einer Seite, jedoch auch der
      Fuß der Seite}%
    \feentry{pagenumber}{Seitenangabe im Kopf oder Fuß, die mit
      \Macro{pagemark} gesetzt wird}%
    \feentry{subject}{Betreff in der Brieferöffnung}%
    \feentry{title}{Titel in der Brieferöffnung}%
  \end{desctabular}
  \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}\\
  \XMacro{pagestyle}\PParameter{plain}\\
  \XMacro{pagestyle}\PParameter{headings}\\
  \XMacro{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}%
\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}\IndexCmd{opening} (siehe \autoref{sec:scrlttr2.firstHead},
  \autoref{sec:scrlttr2.firstFoot}, sowie \autoref{sec:scrlttr2.opening},
  \autopageref{desc:scrlttr2.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},
  \autopageref{desc:scrlttr2.option.pagenumber}).
\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},
  \autopageref{desc:scrlttr2.variable.fromname} und
  \autoref{sec:scrlttr2.titleSubject},
  \autopageref{desc:scrlttr2.variable.subject}). Wo genau diese Marken und die
  Seitenangabe ausgegeben werden, hängt von der Option \Option{pagenumber} ab
  (siehe \autoref{sec:scrlttr2.layout},
  \autopageref{desc:scrlttr2.option.pagenumber}). Der Autor kann die Marken
  aber auch noch nach \Macro{opening} manuell beeinflussen. Hierzu stehen wie
  üblich die Anweisungen \Macro{markboth} und \Macro{markright}, bei
  Verwendung von \Package{scrpage2} auch \Macro{markleft} (siehe
  \autoref{sec:scrpage.basics.mark},
  \autopageref{desc:scrpage.macro.automark}), zur Verfügung.
\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}. Bei Verwendung von
  \Package{scrpage2} kann außerdem \Macro{markleft}\IndexCmd{markleft}
  verwendet werden.
\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},
\autopageref{desc:scrlttr2.option.headsepline}). 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}{myheadings}%
\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},
\autopageref{tab:maincls.defaultFontsHeadFoot} zu finden. Beachten Sie dazu
auch das Beispiel aus \autoref{sec:maincls.pageStyle},
\autopageref{sec:maincls.pageStyle.example}.
%
\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 die Erklärung in
\autoref{sec:maincls.pageStyle}\Index{Seitenstil},
\autopageref{desc:maincls.macro.clearpage}, wobei die Arbeitsweise von
\Macro{cleardoublepage} bei \Class{scrlttr2} von der Option
\Option{cleardoublepage} abhängt, die in \autoref{sec:scrlttr2.layout},
\autopageref{desc:scrlttr2.option.cleardoublepage} 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{desctable}
  \caption{Von der Klasse \Class{scrlttr2} unterstützte
    Variablen\label{tab:scrlttr2.variables}}\\
  \Endfirsthead
  \caption[]{Von der Klasse \Class{scrlttr2} unterstützte Variablen
    (\emph{Fortsetzung})}\\
  \Endhead%
  \standardfoot%
  \ventry{backaddress}{Rücksendeadresse für Fensterbriefumschläge
    (\autoref{sec:scrlttr2.addressee}, 
     \autopageref{desc:scrlttr2.variable.backaddress})}%
  \ventry{backaddressseparator}{Trennzeichen innerhalb der Rücksendeadresse
    (\autoref{sec:scrlttr2.addressee}, 
     \autopageref{desc:scrlttr2.variable.backaddressseparator})}%
  \ventry{ccseparator}{Trennzeichen zwischen Verteilertitel und Verteiler
    (\autoref{sec:scrlttr2.afterClosing}, 
     \autopageref{desc:scrlttr2.variable.ccseparator})}%
  \ventry{customer}{Geschäftszeilenfeld "`Kundennummer"'
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.customer})}%
  \ventry{date}{Datum
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.date})}%
  \ventry{emailseparator}{Trennzeichen zwischen E-Mail-Bezeichner und
    E-Mail-Adresse
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.emailseparator})}%
  \ventry{enclseparator}{Trennzeichen zwischen Anlagetitel und Anlagen
    (\autoref{sec:scrlttr2.afterClosing}, 
     \autopageref{desc:scrlttr2.variable.enclseparator})}%
  \ventry{faxseparator}{Trennzeichen zwischen Faxbezeichner und Faxnummer
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.faxseparator})}%
  \ventry{fromaddress}{Absenderadresse ohne Absendername
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.fromaddress})}%
  \ventry{frombank}{Bankverbindung des Absenders
    (\autoref{sec:scrlttr2.other}, 
     \autopageref{desc:scrlttr2.variable.frombank})}%
  \ventry{fromemail}{E-Mail-Adresse des Absenders
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.fromemail})}%
  \ventry{fromfax}{Faxnummer des Absenders
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.fromfax})}%
  \ventry{fromlogo}{Anweisungen zum Setzen des Absenderlogos
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.fromlogo})}%
  \ventry{fromname}{vollständiger Absendername
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.fromname})}%
  \ventry{fromphone}{Telefonnummer des Absenders
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.fromphone})}%
  \ventry{fromurl}{eine URL des Absenders
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.fromurl})}%
  \ventry{invoice}{Geschäftszeilenfeld "`Rechnungsnummer"'
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.invoice})}%
  \ventry{location}{erweiterte Absenderangabe
    (\autoref{sec:scrlttr2.locationField}, 
     \autopageref{desc:scrlttr2.variable.location})}%
  \ventry{myref}{Geschäftszeilenfeld "`Mein Zeichen"'
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.myref})}%
  \ventry{place}{Ort
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.place})}%
  \ventry{placeseparator}{Trennzeichen zwischen Ort und Datum
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.placeseparator})}%
  \ventry{phoneseparator}{Trennzeichen zwischen Telefonbezeichner und
    Telefonnummer
    (\autoref{sec:scrlttr2.firstHead}, 
     \autopageref{desc:scrlttr2.variable.phoneseparator})}%
  \ventry{signature}{Signatur unter Unterschrift und Grußformel
    (\autoref{sec:scrlttr2.closing}, 
     \autopageref{desc:scrlttr2.variable.signature})}%
  \ventry{specialmail}{Versandart
    (\autoref{sec:scrlttr2.addressee}, 
     \autopageref{desc:scrlttr2.variable.specialmail})}%
  \ventry{subject}{Betreff
    (\autoref{sec:scrlttr2.titleSubject}, 
     \autopageref{desc:scrlttr2.variable.subject})}%
  \ventry{subjectseparator}{Trennzeichen zwischen Betreff"|titel und Betreff
    (\autoref{sec:scrlttr2.titleSubject}, 
     \autopageref{desc:scrlttr2.variable.subjectseparator})}%
  \ventry{title}{Brief"|titel
    (\autoref{sec:scrlttr2.titleSubject}, 
     \autopageref{desc:scrlttr2.variable.title})}%
  \ventry{toname}{vollständiger Empfängername
    (\autoref{sec:scrlttr2.addressee}, 
     \autopageref{desc:scrlttr2.variable.toname})}%
  \ventry{toaddress}{Empfängeradresse ohne Empfängername
    (\autoref{sec:scrlttr2.addressee}, 
     \autopageref{desc:scrlttr2.variable.toaddress})}%
  \ventry{yourmail}{Geschäftszeilenfeld "`Ihr Schreiben"'
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.yourmail})}%
  \ventry{yourref}{Geschäftszeilenfeld "`Ihr Zeichen"'
    (\autoref{sec:scrlttr2.refLine}, 
     \autopageref{desc:scrlttr2.variable.yourref})}%
\end{desctable}


\begin{Declaration}
  \Macro{newkomavar}\OParameter{Bezeichnung}\Parameter{Name}\\
  \Macro{newkomavar*}\OParameter{Bezeichnung}\Parameter{Name}\\
  \Macro{removereffields}\\
  \Macro{defaultreffields}\\
  \Macro{addtoreffields}\Parameter{Name}
\end{Declaration}
\BeginIndex{Cmd}{newkomavar}\BeginIndex{Cmd}{newkomavar*}%
\BeginIndex{Cmd}{addtoreffields}\BeginIndex{Cmd}{removereffields}%
\BeginIndex{Cmd}{defaultreffields}%
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{lstlisting}
  \newkomavar[Durchwahl]{myphone}
  \addtoreffields{myphone}
\end{lstlisting}
  oder kürzer mit
\begin{lstlisting}
  \newkomavar*[Durchwahl]{myphone}
\end{lstlisting}
  definieren.
\end{Example}
Im Fall, dass eine Variable für die Geschäftszeile definiert wird,
sollten Sie immer eine Bezeichnung dafür angeben.%

Mit der Anweisung \Macro{removereffields} können alle Variablen aus der
Geschäftszeile entfernt werden. Dies betrifft auch die in der Klasse
vordefinierten Variablen. Die Geschäftszeile ist dann bis auf das Datum,
das immer hinten angehängt wird, leer. Sie können dies beispielsweise nutzen,
wenn Sie die Reihenfolge der Variablen in der Geschäftszeile ändern
wollen.

Zur Wiederherstellung der Reihenfolge der vordefinierten Variablen in der
Geschäftszeile dient \Macro{defaultreffields}. Dabei werden auch alle
selbstdefinierten Variablen aus der Geschäftszeile entfernt.%
%
\EndIndex{Cmd}{defaultreffields}%
\EndIndex{Cmd}{newkomavar}\EndIndex{Cmd}{newkomavar*}%
\EndIndex{Cmd}{addtoreffields}\EndIndex{Cmd}{removereffields}%


\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{lstlisting}
  \setkomavar{myphone}{-11}
\end{lstlisting}
  Sie wollen außerdem, dass statt "`Durchwahl"' der Begriff
  "`Apparat"' ausgegeben wird. Also setzen Sie zusätzlich die
  Bezeichnung mit:
\begin{lstlisting}
  \setkomavar*{myphone}{Apparat}
\end{lstlisting}
  oder fassen beide Angaben zu einer Anweisung zusammen:
\begin{lstlisting}
  \setkomavar{myphone}[Apparat]{-11}
\end{lstlisting}
  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{lstlisting}
  \setkomavar*{myphone}{}
\end{lstlisting}
  löschen. Sie können aber auch wieder zwei Fliegen mit einer Klappe
  schlagen und verwenden:
\begin{lstlisting}
  \setkomavar{myphone}[]{-11}
\end{lstlisting}
  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}

Eine Liste aller in \Class{scrlttr2} definierten Pseudolängen findet sich in
\autoref{tab:scrlttr2.pseudoLength} ab
\autopageref{tab:scrlttr2.pseudoLength}. Eine grafische Darstellung der
Bedeutungen ist \autoref{fig:scrlttr2.pseudoLength} zu entnehmen. Die
verwendeten Maße sind dabei an die Voreinstellungen von \Class{scrlttr2}
angelehnt. Nähere Beschreibungen zu den einzelnen Pseudolängen finden sich in
den einzelnen Abschnitten dieses Kapitels.

\begin{figure}
  \centering
  \includegraphics{plenDIN}
  \caption{Schematische Darstellung der Pseudolängen für den Briefbogen}
  \label{fig:scrlttr2.pseudoLength}
\end{figure}

\begin{desctable}
  \caption{Von der Klasse \Class{scrlttr2} verwendete Pseudolängen%
    \label{tab:scrlttr2.pseudoLength}}\\
  \Endfirsthead %
  \caption[]{Von der Klasse \Class{scrlttr2} verwendete Pseudolängen
    (\emph{Fortsetzung})}\\%
  \Endhead%
  \standardfoot%
  \pentry{foldmarkhpos}{%
    Abstand der Faltmarken von der linken Kante des Papiers
    (\autoref{sec:scrlttr2.other},
    \autopageref{desc:scrlttr2.plength.foldmarkhpos})}%
  \pentry{tfoldmarkvpos}{%
    Abstand der oberen Faltmarke von der oberen Kande des Papiers
    (\autoref{sec:scrlttr2.other},
    \autopageref{desc:scrlttr2.plength.tfoldmarkvpos})}%
  \pentry{bfoldmarkvpos}{%
    Abstand der unteren Faltmarke von der oberen Kante des Papiers
    (\autoref{sec:scrlttr2.other},
    \autopageref{desc:scrlttr2.plength.bfoldmarkvpos})}%
  \pentry{firstheadvpos}{%
    Abstand des Briefkopfes von der oberen Kante des Papiers
    (\autoref{sec:scrlttr2.firstHead},
    \autopageref{desc:scrlttr2.plength.firstheadvpos})}%
  \pentry{firstheadwidth}{%
    Breite des Briefkopfes, wobei dieser relativ zur Papierbreite zentriert
    wird (\autoref{sec:scrlttr2.firstHead},
    \autopageref{desc:scrlttr2.plength.firstheadwidth})}%
  \pentry{fromrulewidth}{%
    Länge einer optionalen horizontalen Linie im Briefkopf
    (\autoref{sec:scrlttr2.firstHead},
    \autopageref{desc:scrlttr2.plength.fromrulewidth})}%
  \pentry{toaddrvpos}{%
    Abstand des Anschriftfeldes von der oberen Kante des Papiers
    (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.toaddrvpos})}%
  \pentry{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 (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.toaddrhpos})}%
  \pentry{toaddrindent}{%
    linker Einzug der Anschrift innerhalb des Anschriftfeldes
    (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.toaddrindent})}%
  \pentry{toaddrwidth}{%
    Breite des Anschriftfeldes (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.toaddrwidth})}%
  \pentry{toaddrheight}{%
    Höhe des Anschriftfeldes (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.toaddrheight})}%
  \pentry{backaddrheight}{%
    Höhe der Rücksendeadresse am oberen Rand des Anschriftfeldes
    (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.backaddrheight})}%
  \pentry{specialmailindent}{%
    linker Einzug der Versandart innerhalb des Anschriftfeldes
    (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.specialmailindent})}%
  \pentry{specialmailrightindent}{%
    rechter Einzug der Versandart innerhalb des Anschriftfeldes
    (\autoref{sec:scrlttr2.addressee},
    \autopageref{desc:scrlttr2.plength.specialmailrightindent})}%
  \pentry{locwidth}{%
    Breite des Feldes für die Absenderergänzung, wobei bei einem Wert von 0
    die Breite automatisch aufgrund der in \autoref{sec:scrlttr2.headoptions}
    beschriebenen Option \Option{locfield} berechnet wird
    (\autoref{sec:scrlttr2.locationField},
    \autopageref{desc:scrlttr2.plength.locwidth})}%
  \pentry{refvpos}{%
    Abstand der Geschäftszeile von der oberen Kante des Papiers
    (\autoref{sec:scrlttr2.refLine},
    \autopageref{desc:scrlttr2.plength.refvpos})}%
  \pentry{refwidth}{%
    Breite der Geschäftszeile    
    (\autoref{sec:scrlttr2.refLine},
    \autopageref{desc:scrlttr2.plength.refwidth})}%
  \pentry{refhpos}{%
    Abstand der Geschäftszeile von der linken Papierkante, wobei bei einem
    Wert von 0 automatisch relativ zur Papierbreite zentriert wird
    (\autoref{sec:scrlttr2.refLine},
    \autopageref{desc:scrlttr2.plength.refhpos})}%
  \pentry{refaftervskip}{%
    vertikaler Abstand nach der Geschäftszeile
    (\autoref{sec:scrlttr2.refLine},
    \autopageref{desc:scrlttr2.plength.refaftervskip})}%
  \pentry{sigbeforevskip}{%
    vertikaler Abstand zwischen Gruß und Signatur
    (\autoref{sec:scrlttr2.closing},
    \autopageref{desc:scrlttr2.plength.sigbeforevskip})}%
  \pentry{sigindent}{%
    Einzug der Signatur gegenüber dem Textkörper
    (\autoref{sec:scrlttr2.closing},
    \autopageref{desc:scrlttr2.plength.sigindent})}%
  \pentry{firstfootvpos}{%
    Abstand des Brief"|fußes von der oberen Kante des Papiers
    (\autoref{sec:scrlttr2.firstFoot},
    \autopageref{desc:scrlttr2.plength.firstfootvpos})}%
  \pentry{firstfootwidth}{%
    Breite des Brief"|fußes, der automatisch innerhalb der Papierbreite
    zentriert wird 
    (\autoref{sec:scrlttr2.firstFoot},
    \autopageref{desc:scrlttr2.plength.firstfootwidth})}%
\end{desctable}

\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. 
%
\iffalse
% Umbruchoptimierungstext
Es wird sichergestellt, dass jeder \PName{Name} nur
einmal vergeben wird.%
\else
Wird versucht, eine bereits vorhandene Pseudolänge erneut
zu definieren, so wird dies mit einer Fehlermeldung quitiert.%
%
\fi

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{@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}%

\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{Explain}%
\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}%
  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}%
%
\EndIndex{}{Pseudolängen}%

\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.

\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}\\
    }}\\[2pt]
  \parbox{.667\linewidth}{\raggedright\vspace{-.5ex}\vdots\vspace{1ex}}\\
  \fbox{\parbox{.667\linewidth}{\raggedright%
      \Macro{end}\PParameter{document}\\
    }}\\[\dp\strutbox]
  \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}
\end{figure}

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},
\autopageref{desc:scrlttr2.option.fontsize}). 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
  \fbox{\parbox{.667\linewidth}{\raggedright%
      \Macro{begin}\PParameter{letter}%
      \OParameter{Optionen}\Parameter{Empfänger}\\
      \dots\\[\dp\strutbox]
      {\centering\emph{Einstellungen für diesen Brief}\\}
      \dots\\
      \Macro{opening}\Parameter{Anrede}\\
    }}\\[1pt]
  \fbox{\parbox{.667\linewidth}{\raggedright%
      \dots\\[\dp\strutbox]
      {\centering\emph{Brief"|text}\\}
      \dots\\
    }}\\[1pt]
  \fbox{\parbox{.667\linewidth}{\raggedright%
      \Macro{closing}\Parameter{Grußformel}\\
      \Macro{ps}\\
      \dots\\[\dp\strutbox]
      {\centering\emph{Postscriptum}\\}
      \dots\\
      \Macro{encl}\Parameter{Anlagen}\\
      \Macro{cc}\Parameter{Verteiler}\\
      \Macro{end}\PParameter{letter}\\
    }}\\[\dp\strutbox]
  \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}\IndexCmd{opening} endet. Ebenso beginnt
der Schlussteil immer mit \Macro{closing}\IndexCmd{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%
\iftrue
% Umbruchergänzungstext
, da die Suche nach Einstellungen dadurch erschwert wird%
\fi
%
.
%\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}\IndexCmd{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},
\autopageref{desc:scrlttr2.option.fromalign}) ü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},
\autopageref{tab:scrlttr2.fromTerm} zu entnehmen.
%
\begin{table}
  \centering
  \caption[{Vordefinierte Bezeichnungen der Variablen für die\newline
    Absenderangaben im Briefkopf}]{Vordefinierte Bezeichnungen der Variablen
    für die Absenderangaben im Briefkopf}
  \begin{desctabular}[1.8em]
    \ventry{fromemail}{\Macro{usekomavar*}\PParameter{emailseparator}%
      \Macro{usekomavar}\PParameter{emailseparator}}%
    \ventry{fromfax}{\Macro{usekomavar*}\PParameter{faxseparator}%
      \Macro{usekomavar}\PParameter{faxseparator}}%
    \ventry{fromname}{\Macro{headfromname}}%
    \ventry{fromphone}{\Macro{usekomavar*}\PParameter{phoneseparator}%
      \Macro{usekomavar}\PParameter{phoneseparator}}%
    \ventry{fromurl}{\Macro{usekomavar*}\PParameter{urlseparator}%
      \Macro{usekomavar}\PParameter{urlseparator}}%
  \end{desctabular}
  \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. Außerdem sollte
man unbedingt die Variablen für Rücksendeadresse (siehe
\autoref{sec:scrlttr2.addressee},
\autopageref{desc:scrlttr2.variable.backaddress}) und Signatur (siehe
\autoref{sec:scrlttr2.closing},
\autopageref{desc:scrlttr2.variable.signature}) selbst setzen.

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}
  \PLength{fromrulewidth}
\end{Declaration}
\BeginIndex{PLength}{fromrulewidth}%
Wie bereits bei Option \Option{fromrule}\IndexOption{fromrule} in
\autoref{sec:scrlttr2.headoptions}, \autopageref{desc:scrlttr2.option.fromrule}
erwähnt wurde, kann in den vordefinierten Briefköpfen eine Linie im oder unter
dem Absender gesetzt werden. Hat die Pseudolänge \PLength{fromrulewidth} die
Länge 0, so wird dabei die Länge dieser Linie automatisch bestimmt. Dies ist
die Voreinstellung bei den vordefinierten \File{lco}-Dateien. Der Wert kann
mit \Macro{\@setplength} (siehe \autoref{sec:scrlttr2.pseudoLength},
\autopageref{desc:scrlttr2.macro.@setplength}) in eigenen \File{lco}-Dateien
aber auch abweichend gesetzt werden.
%
\EndIndex{PLength}{fromrulewidth}

\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
  \caption{Vordefinierte Bezeichnungen und Inhalte der Trennzeichen
    für die Absenderangaben im Briefkopf}
  \begin{tabular}{lll}
    \toprule
    Name                      & Bezeichnung & Inhalt \\
    \midrule
    \Variable{emailseparator} & \Macro{emailname} & \texttt{:\~} \\
    \Variable{faxseparator}   & \Macro{faxname}   & \texttt{:\~} \\
    \Variable{phoneseparator} & \Macro{phonename} & \texttt{:\~} \\
    \Variable{urlseparator}   & \Macro{wwwname}   & \texttt{:\~} \\
    \bottomrule
  \end{tabular}
  \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 vielen Fällen reichen die Möglichkeiten aus, die \Class{scrlttr2} über
Optionen und obige Variablen für die Gestaltung des Briefkopfes bietet. In
einigen 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{Briefbogenfuß}
\label{sec:scrlttr2.firstFoot}%
\BeginIndex{}{Briefbogenfuss=Briefbogenfuß}%

Die erste Seite eines Briefes, der Briefbogen, enthält nicht nur einen eigenen
Kopf, den Briefkopf. Diese Seite enthält auch einen eigenen
Fuß\Index{Fuss=Fuß}. Auch dieser wird nicht über den Seitenstil,
sondern direkt von \Macro{opening}\IndexCmd{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. 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},
\autopageref{desc:scrlttr2.option.enlargefirstpage}. 

Bei einer Kompatibilitätseinstellung\ChangedAt{2.9t}{\Class{scrlttr2}} bis
Version 2.9t (siehe \Option{version} in
\autoref{sec:scrlttr2.compatibilityOptions},
\autopageref{desc:scrlttr2.option.version}) wird außer bei \Option{KOMAold} in
allen vordefinierten \File{lco}-Dateien (siehe
\autoref{sec:scrlttr2.lcoFile}) der Fuß abhängig vom Satzspiegel gesetzt.
Damit hat dann auch \Option{enlargefirstpage} keine Wirkung. Ab Version 2.9u
bekommt der Fuß eine Position am unteren Ende des Papiers. Damit ist dann die
Höhe des Satzspiegels des Briefbogens eventuell auch von der Option
\Option{enlargefirstpage} abhängig.
%
\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 stimmt in den vordefinierten \File{lco}-Dateien mit
\PLength{firstheadwidth} überein.%
%
\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{lstlisting}
  \firstfoot{%
    \parbox[b]{\linewidth}{%
      \centering\def\\{, }\usekomavar{frombank}%
    }%
  }
\end{lstlisting}
  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{lstlisting}
  \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{lstlisting}
  Das Beispiel stammt übrigens ursprünglich von Torsten Krüger. Mit
\begin{lstlisting}
  \setkomavar{frombank}{Konto 12\,345\,678\\
                        bei der HansWurstBank\\
                        BLZ 876\,543\,21}
\end{lstlisting}
kann die Bankverbindung passend dazu gesetzt werden.  Abhängig von den
Voreinstellungen ist ein solch hoher Fuß nicht vorgesehen und wird deshalb
möglicherweise zu tief platziert. In einem solchen Fall kann die vertikale
Position über die Pseudolänge
\PLength{firstfootvpos}\IndexPLength{firstfootvpos}, die weiter oben in diesem
Abschnitt beschrieben ist, angepasst 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}

Im letzten Beispiel wurde ein mehrzeiliger Fuß gesetzt. Bei einer
Kompatibilitätseinstellung aber Version 2.9u (siehe \Option{version} in
\autoref{sec:scrlttr2.compatibilityOptions},
\autopageref{desc:scrlttr2.option.version}) reicht der Platz dafür in der
Regel nicht aus. Sie sollten dann \PLength{firstfootvpos} (siehe
\autopageref{desc:scrlttr2.plength.firstfootvpos}) entsprechend verringern.%
%
\EndIndex{Cmd}{firstfoot}%
%
\EndIndex{}{Briefbogenfuss=Briefbogenfuß}%


\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},
\autopageref{desc:scrlttr2.option.addrfield}).
%
\EndIndex{PLength}{toaddrhpos}%
\EndIndex{PLength}{toaddrvpos}%

\begin{Declaration}
  \PLength{toaddrheight}
\end{Declaration}
\BeginIndex{PLength}{toaddrheight}%
Diese Pseudolänge gibt die Höhe des Anschriftenfeldes einschließlich der
Versandart an. Ist keine Versandart angegeben, so wird die Anschrift vertikal
innerhalb dieses Feldes zentriert. Ist eine Versandart angegeben, so wird die
Anschrift unterhalb der Versandart vertikal im Rest des Anschriftenfeldes
zentriert.%
\EndIndex{PLength}{toaddrheight}

\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{lstlisting}
  \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{lstlisting}
  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 automatisch aus den Variablen \Variable{fromname} und
\Variable{fromaddress} gebildet.  Innerhalb der Rücksendeadresse wird der
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} (siehe \autoref{sec:scrlttr2.headoptions},
\autopageref{desc:scrlttr2.option.addrfield} und \Option{backaddress} (siehe
\autoref{sec:scrlttr2.headoptions},
\autopageref{desc:scrlttr2.option.backaddress}).
%
\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},
\autopageref{desc:scrlttr2.variable.fromname}.
%
\EndIndex{Variable}{toname}%
\EndIndex{Variable}{toaddress}%


\begin{Declaration}
  \Environment{letter}\OParameter{Optionen}\Parameter{Anschrift}
\end{Declaration}
\BeginIndex{Env}{letter}%
Die Briefumgebung, \Environment{letter}, 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\IndexCmd{opening}.%
\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}\Index{hook=\emph{hook}}, 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{lstlisting}
  \newcounter{Frage}
  \newcommand{\Frage}[1]{%
    \refstepcounter{Frage}\par
    \@hangfrom{\makebox[2em][r]{\theFrage:~}}{#1}}
  \AtBeginLetter{\setcounter{Frage}{0}}
\end{lstlisting}
  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},
  \autopageref{fig:scrlttr2.document}) oder in ein eigenes Paket oder eine
  \File{lco}-Datei (siehe \autoref{sec:scrlttr2.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}\IndexCmd{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},
\autopageref{desc:scrlttr2.option.locfield}) 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},
\autopageref{desc:scrlttr2.option.fromalign} und
\autopageref{desc:scrlttr2.option.fromlogo}).
%
\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{lstlisting}
  \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{lstlisting}
  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 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. Informationen, wie Variablen zur Geschäftszeile
hinzugefügt oder entfernt werden, sind in \autoref{sec:scrlttr2.variables},
\autopageref{desc:scrlttr2.macro.removereffields} zu finden.


\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}\\
  \PLength{refhpos}
\end{Declaration}
\BeginIndex{PLength}{refwidth}%
\BeginIndex{PLength}{refhpos}%
Die Pseudolänge \PLength{refwidth} 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}\IndexCmd{opening} ermittelt wird.  Die dort ermittelte Breite
richtet sich dann nach der Einstellung der Option \Option{refline} (siehe
\autoref{sec:scrlttr2.headoptions},
\autopageref{desc:scrlttr2.option.refline}). Gleichzeitig wird dann auch
\PLength{refhpos} entsprechend der Option gesetzt. Bei
\Option{refline=}\PValue{wide} wird die Geschäftszeile zentriert, wohingegen
sie bei \Option{refline=}\PValue{narrow} am Satzspiegel links ausgerichtet
wird.

Ist \PLength{refwidth} von Null verschieden, wird die Breite der
Geschäftszeile also nicht von der Option \Option{refline} bestimmt, so gibt
\PLength{refhpos} den Abstand der Geschäftszeile von der linken Papierkante
an. Ist dieser Abstand Null, so wird die Geschäftszeile so ausgerichtet, dass
das Verhältnis zwischen ihrem Abstand von der linken Papierkante zu ihrem
Abstand von der rechten Papierkante dem Verhältnis zwischen dem Abstand des
Satzspiegels von der linken Papierkante zu seinem Abstand von der rechten
Papierkante entspricht. Bei auf dem Papier horizontal zentriertem Satzspiegel
wird also auch die Geschäftszeile zentriert.

In der Regel werden diese Sonderfälle für den normalen Anwender von geringem
Interesse sein. Die einfachste Regel lautet hier: Entweder wird
\PLength{refwidth} auf Null belassen und die Breite und Ausrichtung der
Geschäftszeile über die Option \Option{refline} überlassen, oder sowohl
\PLength{refwidth} als auch \PLength{refhpos} werden vom Anwender vorgegeben.
%
\EndIndex{PLength}{refwidth}%
\EndIndex{PLength}{refhpos}%


\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{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}%
\looseness=-1 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.%


\EndIndex{Variable}{yourref}%
\EndIndex{Variable}{yourmail}%
\EndIndex{Variable}{myref}%
\EndIndex{Variable}{customer}%
\EndIndex{Variable}{invoice}%
\EndIndex{Variable}{date}%
%
\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},
\autopageref{desc:scrlttr2.option.numericaldate}).
%
\EndIndex{Variable}{place}%
\EndIndex{Variable}{placeseparator}%
%
\EndIndex{}{Geschäftszeile}%

\begin{table}
  \centering
  \caption[{Vordefinierte Bezeichnungen der Variablen der
    Geschäftszeile}]{Vordefinierte Bezeichnungen der typischen Variablen der
    Geschäftszeile unter Verwendung sprachabhängiger Anweisungen}
  \begin{tabular}{lll}
    \toprule
    Name                & Bezeichnung  & bei deutscher Sprache \\
    \midrule
    \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 \\
    \bottomrule
  \end{tabular}
  \label{tab:scrlttr2.reflineTerm}
\end{table}


\subsection{Titel und Betreff}
\label{sec:scrlttr2.titleSubject}
\begin{samepage}
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.
\end{samepage}


\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 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{lstlisting}
  \setkomavar{title}{Mahnung}
\end{lstlisting}
  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},
\autopageref{desc:scrlttr2.option.subject}).  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
  \caption{Vordefinierte Bezeichnungen der Variablen für den Betreff}
  \begin{tabular}{lll}
    \toprule
    Name               & Bezeichnung \\
    \midrule
    \Variable{subject} & \Macro{usekomavar*}\PParameter{subjectseparator}%
                         \texttt{\%} \\ 
                       & \texttt{\quad}%
                         \Macro{usekomavar}\PParameter{subjectseparator} \\
    \Variable{subjectseparator} & \Macro{subjectname} \\
    \bottomrule
  \end{tabular}
  \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 Vereinsvorstand 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{lstlisting}
  \setkomavar{subject}[Betrifft ]{%
    vereinsinterne Angelegenheiten}
\end{lstlisting}
  Sie können es sich aber auch einfach machen:
\begin{lstlisting}
  \setkomavar{subject}[]{%
    Betrifft vereinsinterne Angelegenheiten}
\end{lstlisting}
  Außerdem wollen Sie, dass der Betreff nicht nur fett sondern
  auch in einer serifenlosen Schriftart erscheint:
\begin{lstlisting}
  \addtokomafont{subject}{\sffamily}
\end{lstlisting}
  Wie Sie sehen, ist das alles ganz einfach zu lösen.
\end{Example}
%
\EndIndex{Variable}{subject}%
\EndIndex{Variable}{subjectseparator}%


\subsection{Andere Angaben}
\label{sec:scrlttr2.other}
Sie finden hier Variablen und Einstellungen, die keinem anderen
Bereich der Briefeinleitung zugeordnet werden konnten, 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},
\autopageref{desc:scrlttr2.option.foldmarks}).
%
\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 Briefbogen freier gestalten. In diesen Fällen muss auf
die vordefinierten Möglichkeiten, die per Option
\Option{pagenumber}\IndexOption{pagenumber} (siehe
\autoref{sec:scrlttr2.layout}, \autopageref{desc:scrlttr2.option.pagenumber})
auswählbar sind, verzichtet werden. 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 im Argument \PName{Aufbau} mit Hilfe von
\Macro{usekomavar} auch auf Variablen zugegriffen werden.
%
\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,
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 erstellten Briefen wurde früher häufig auf eine Anrede
  verzichtet. Das lag daran, dass die Möglichkeiten für individualisierte
  Serienbriefe noch kaum vorhanden 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 geehrte Frau \dots"', 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 leider immer wieder 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ß}\Index{Schlussgruß}. 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ß}\Index{Schlussgruß} 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ß}\Index{Schlussgruß}, 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}\Index{Schlussgruß} 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 durch die Pseudolänge \PLength{sigindent} bestimmen
Einzug gesetzt. 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},
\autopageref{desc:maincls.macro.raggedsection}).

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{lstlisting}
  \setkomavar{signature}{Karl-Heinz zu Krähenfeld\\
   {\small (2. Vorsitzender "`Rotkehlchen e.\,V."')}}
  \closing{Mit freundlichen Grüßen\\
    (für den Vorstand)}
\end{lstlisting}
  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{Explain}%
\begin{Declaration}
  \Macro{ps}
\end{Declaration}%
\BeginIndex{Cmd}{ps}%
  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 doppelten Backslash voneinander zu trennen.
\begin{Example}
  Sie wollen angeben, dass Ihr Brief an alle Vereinsmitglieder und den
  Vorstand geht:
\begin{lstlisting}
   \cc{%
     der Vorstand\\
     alle Vereinsmitglieder}
\end{lstlisting}
  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, Kroatisch und Finnisch.

\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.
\iftrue
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}.
  
  \looseness=1 
  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 eventuell genau dieselben
  Probleme, weil in diesem Fall Teile des Paketes \Package{french} verwendet
  werden. 
  %
  \iftrue
  % Umbruchergänzungstext
  Ist das Paket \Package{french} nicht installiert, ergibt sich das
  Problem mit \Package{babel} nicht.  Ebenfalls existiert das Problem
  normalerweise 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

  Mit Babel ab Version 3.7j tritt dieses Problem jedoch nur noch auf, wenn per
  Option explizit angegeben wird, dass \Package{babel} das
  \Package{french}-Paket verwenden soll.
  %
  \iftrue
  % Umbruchoptimierungstext
  Kann nicht sicher gestellt werden, dass nicht eine alte Version von
  \Package{babel} verwendet wird, so empfehle ich%
  \iftrue
  % Umbruchoptimierungstext
  , mit
  \begin{lstlisting}
    \usepackage[...,frenchb,...]{babel}
  \end{lstlisting}
  französische Sprache auszuwählen. Gegebenenfalls ist dann aber trotzdem mit
  \Macro{selectlanguage}\PParameter{french} auf Französisch umzuschalten.%
  \else
  \space bei \Package{babel} die Option \Option{frenchb}.%
  \fi
  \fi

  \iftrue
  \looseness=1
  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}\\
  \Macro{captionsfinnish}
\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}%
\BeginIndex{Cmd}{captionsfinnish}%
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}
\EndIndex{Cmd}{captionsfinnish}%

\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}\\
  \Macro{datefinnish}
\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}%
\BeginIndex{Cmd}{datefinnish}%
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
  \caption{Sprachabhängige Ausgabeformate für das Datum}
  \begin{tabular}{ll}
    \toprule
    \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.\\
    \Macro{datefinnish }  & 1.\,12.\,1993.\\
    \bottomrule
  \end{tabular}
  \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}%
\EndIndex{Cmd}{datefinnish}%


\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}
  \begin{minipage}{\textwidth}
  \centering
  \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}
  \begin{tabular}{lll}
    \toprule
    Anweisung         & \Option{english} & \Option{ngerman} \\
    \midrule
    \Macro{bankname}     & Bank account   & Bankverbindung \\
    \Macro{ccname}\footnotemark[1]       & cc             & Kopien an \\
    \Macro{customername} & Customer no.   & Kundennummer \\
    \Macro{datename}     & Date           & Datum \\
    \Macro{emailname}    & Email          & E-Mail \\
    \Macro{enclname}\footnotemark[1]     & encl           & Anlagen \\
    \Macro{faxname}      & Fax            & Fax \\
    \Macro{headfromname} & From           & Von \\
    \Macro{headtoname}\footnotemark[1]   & To             & An \\
    \Macro{invoicename}  & Invoice no.    & Rechnungsnummer \\
    \Macro{myrefname}    & Our ref.       & Unser Zeichen \\
    \Macro{pagename}\footnotemark[1]     & 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 \\
    \bottomrule
  \end{tabular}
  \deffootnote{1em}{1em}{\textsuperscript{1}}% brutal aber effektiv
  \footnotetext[1000]{Diese Begriffe werden normalerweise bereits von
    Sprachpaketen wie \Package{babel} definiert und dann von \Class{scrlttr2}
    nicht überschrieben. Abweichungen im Wortlaut sind daher möglich und der
    Anleitung des verwendeten Sprachpakets zu entnehmen.}
  \end{minipage}
\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 bei ihr
die \PName{Sprache} nicht definiert, dann wird diese 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{lstlisting}
  \renewcaptionname{ngerman}{\yourmailname}{%
    Ihre Nachricht vom}
\end{lstlisting}
  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{Tel.}\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{lstlisting}
  \adrentry{Maier}
           {Herbert}
           {Wiesenweg 37\\ 09091 Blumental}
           {0\,23\,34 / 91\,12\,74}
           {Bauunternehmer}
           {}
           {kauft alles}
           {MAIER}
\end{lstlisting}
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{lstlisting}
  \input{partner.adr}
  \begin{letter}{\MAIER}
    Der Brief ...
  \end{letter}
\end{lstlisting}
  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 \Macro{adrentry}"~ und
\Macro{addrentry}-Anweisungen nebeneinander verwendet werden. Ich weise jedoch
darauf hin, dass Zusatzpakete wie das \Package{adrconv}-Paket von Axel
Kielhorn eventuell 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{lstlisting}
  \documentclass{scrlttr2}
  \usepackage{ngerman}
  \usepackage[utf8]{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{lstlisting}
  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{lstlisting}
    \renewcommand*{\addrentry}[9]{%
      \adrentry{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#9}%
    }
\end{lstlisting}
  Bei diesem Beispiel wird kein Gebrauch von dem zusätzlichen freien
  Feld gemacht und deshalb \Macro{addrentry} mit Hilfe von \Macro{adrentry}
  definiert.
\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{lstlisting}
  \renewcommand*{\adrentry}[8]{
    \ifdim #6pt>0pt\relax
      % #6 ist ein Betrag (Gleitkommazahl) größer 0.
      % Es werden also die Säumigen erfasst.
      \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{lstlisting}
\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 lstlisting-Umgebung je nach Umbruchbedarf einzelne
% Elemente löschen oder hinzufügen. MICHAEL und GABRIEL sollten jedoch
% erhalten bleiben.
\begin{lstlisting}
  \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{lstlisting}
  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,58)
      \put(0,58){\line(1,0){80}}
      \put(0,3){\line(0,1){55}}
      \put(80,3){\line(0,1){55}}
      \thicklines
      \put(10,43){\line(1,0){60}}
      \put(70,46){\makebox(0,0)[r]{\textsf{\textbf{E}}}}
      \put(10,23){\makebox(0,20)[l]{\parbox{5cm}{\raggedright
            \textbf{Engel}, Gabriel\\\quad\small Wolke 3\\
            \quad 12345 Himmelreich\\
            \quad (Erzengel)}}}
      \put(70,23){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\
            \small~\\{\footnotesize GABRIEL}\\000\,01\,02\,03}}}
      \put(10,4){\makebox(0,20)[l]{\parbox{5cm}{\raggedright
            \textbf{Engel}, Michael\\\quad\small Wolke 3a\\
            \quad 12345 Himmelreich\\
            \quad (Erzengel)}}}
      \put(70,4){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\
            \small~\\{\footnotesize 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 einmal 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{lstlisting}
  \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{lstlisting}

Der nächste Schritt kann dann darin bestehen, dass man trotz Verwendung der
alten Anweisungen nicht mehr das Layout der alten Klasse nachbilden will. Soll
beispielsweise das Layout der Letter-Class-Option \Option{DIN} verwendet
werden, so gibt man einfach diese Option zusätzlich und \emph{nach} der Option
\Option{KOMAold} an:
\begin{lstlisting}
  \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{lstlisting}
Durch weitere Optionen kann das Aussehen auch weiter beeinflusst werden. Ich
empfehle, 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{lstlisting}
  \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{lstlisting}
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.%
%
\EndIndex{Class}{scrlttr2}\EndIndex{}{Briefe}

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: "../guide.tex"
%%% End: 
