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

\KOMAProvidesFile{scrlttr2-experts.tex}%
                 [$Date: 2019-12-03 09:41:21 +0100 (Tue, 03 Dec 2019) $
                  KOMA-Script guide (chapter: scrlttr2 for experts)]

\chapter{Zusätzliche Informationen zur
  Klasse \Class{scrlttr2} und Paket \Package{scrletter}}
\labelbase{scrlttr2-experts}

\BeginIndexGroup%
\BeginIndex{Class}{scrlttr2}%
In diesem Kapitel finden Sie zusätzliche Informationen zu der
\KOMAScript-Klasse \Class{scrlttr2}\important{\Class{scrlttr2}}. %
\iffree{Einige Teile des Kapitels sind dabei dem \KOMAScript-Buch
  \cite{book:komascript} vorbehalten. Dies sollte kein Problem sein, denn
  der}{Der} %
Anwender, der die Klasse einfach nur verwenden will, wird diese Informationen
normalerweise nicht benötigen. Ein Teil der Informationen richtet sich an
Anwender, denen die vordefinierten Möglichkeiten nicht genügen. So
befasst sich beispielsweise der erste Abschnitt ausführlich mit der Definition
und Verwendung von Variablen.%
\iffalse% Es wird Zeit das komplett rauszuwerfen!
\ Darüber hinaus finden sich in diesem Kapitel auch Informationen über
Möglichkeiten, die aus Gründen der Verbesserung der Kompatibilität zur
obsoleten \KOMAScript-Klasse \Class{scrlettr} geschaffen wurden. Es wird auch
ausführlich erklärt, wie man einen Brief dieser veralteten Klasse auf die
aktuelle Briefklasse übertragen kann.  \fi

\BeginIndex{Package}{scrletter}%
Darüber hinaus gibt es seit
\KOMAScript~3.15\ChangedAt[2014/11]{v3.15}{\Package{scrletter}} das Paket
\Package{scrletter}\important{\Package{scrletter}}, das zusammen mit einer der
\KOMAScript-Klassen \Class{scrartcl}, \Class{scrreprt} oder \Class{scrbook}
verwendet werden kann. Es stellt nahezu die komplette Funktionalität von
\Class{scrlttr2} für die drei genannten Klassen zur Verfügung. Einige wenige
Unterschiede gibt es jedoch, die ebenfalls in diesem Kapitel genannt werden.%


\section{Variablen für fortgeschrittene Anwender}
\seclabel{variables}
\BeginIndexGroup
\BeginIndex{}{Variablen}

Neben der Möglichkeit, vordefinierte Variablen zu verwenden, bietet
\KOMAScript{} auch Anweisungen, um neue Variablen zu definieren oder deren
automatische Verwendung innerhalb der Geschäftszeile zu beeinflussen.


\begin{Declaration}
  \Macro{newkomavar}\OParameter{Bezeichnung}\Parameter{Name}
  \Macro{newkomavar*}\OParameter{Bezeichnung}\Parameter{Name}
  \Macro{addtoreffields}\Parameter{Name}
  \Macro{removereffields}
  \Macro{defaultreffields}
\end{Declaration}
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. Eine \PName{Bezeichnung} wird dabei im
Unterschied zu \PName{Name} nicht verwendet, um auf eine Variable
zuzugreifen. Vielmehr ist die \PName{Bezeichnung} eine Ergänzung zum Inhalt
einer Variable, die ähnlich ihrem Inhalt ausgegeben werden kann. 

Mit der Anweisung \Macro{addtoreffields} kann die Variable \PName{Name} der
Geschäftszeile\Index{Geschaeftszeile=Geschäftszeile}\textnote{Geschäftszeile}
(siehe \autoref{sec:scrlttr2.firstpage},
\DescPageRef{scrlttr2.option.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{lstcode}
  \newkomavar[Durchwahl]{myphone}
  \addtoreffields{myphone}
\end{lstcode}
  oder kürzer mit
\begin{lstcode}
  \newkomavar*[Durchwahl]{myphone}
\end{lstcode}
  definieren.
\end{Example}
Im\textnote{Achtung!} 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 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
selbst definierten Variablen aus der Geschäftszeile entfernt.

Das\textnote{Achtung!} Datum sollte der Geschäftszeile nicht über die
Anweisung \Macro{addtoreffields} hinzugefügt werden. Stattdessen stellt man
mit Option \DescRef{scrlttr2.option.refline}%
\important{\OptionValueRef{scrlttr2}{refline}{dateleft}\\
  \OptionValueRef{scrlttr2}{refline}{dateright}\\
  \OptionValueRef{scrlttr2}{refline}{nodate}}%
\IndexOption{refline~=\textKValue{dateleft}}%
\IndexOption{refline~=\textKValue{dateright}}%
\IndexOption{refline~=\textKValue{nodate}} ein, ob das Datum links, rechts oder
gar nicht in der Geschäftszeile erscheinen soll. Diese Einstellungen haben
darüber hinaus auch einen Einfluss auf die Position des Datums, wenn gar keine
Geschäftszeile verwendet wird.%
%
\EndIndexGroup


\begin{Declaration}
  \Macro{usekomavar}\OParameter{Anweisung}\Parameter{Name}
  \Macro{usekomavar*}\OParameter{Anweisung}\Parameter{Name}
\end{Declaration}
Die Anweisungen \DescRef{scrlttr2.cmd.usekomavar} und
\DescRef{scrlttr2.cmd.usekomavar*} sind wie alle Anweisungen, von denen es
eine Sternvariante gibt oder die ein optionales Argument besitzen, nicht voll
expandierbar.  Bei Verwendung innerhalb von
\DescRef{scrlttr2.cmd.markboth}\IndexCmd{markboth},
\DescRef{scrlttr2.cmd.markright}\IndexCmd{markright} oder ähnlichen
Anweisungen muss dennoch kein \Macro{protect}\IndexCmd{protect} vorangestellt
werden. Selbstverständlich gilt dies bei Verwendung von
\hyperref[cha:scrlayer-scrpage]{\Package{scrlayer-scrpage}}%
\IndexPackage{scrlayer-scrpage} auch für
\DescRef{scrlayer-scrpage.cmd.markleft}\IndexCmd{markleft} (siehe
\autoref{sec:scrlayer-scrpage.pagestyle.content},
\DescPageRef{scrlayer-scrpage.cmd.markleft}).  Allerdings\textnote{Achtung!}
können die Anweisungen nicht innerhalb von
\Macro{MakeUppercase}\important{\Macro{MakeUppercase}}\IndexCmd{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:
\begin{lstcode}[escapeinside=><]
  \usekomavar[\MakeUppercase]{>\PName{Name}<}
\end{lstcode}
%
\EndIndexGroup


\begin{Declaration}
  \Macro{Ifkomavarempty}\Parameter{Name}\Parameter{Wahr}\Parameter{Falsch}
  \Macro{Ifkomavarempty*}\Parameter{Name}\Parameter{Wahr}\Parameter{Falsch}
\end{Declaration}
Für die exakte Funktion 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\textnote{Achtung!} diese Anweisung kann nicht innerhalb von
\Macro{MakeUppercase} oder ähnlichen Anweisungen verwendet werden. Sie ist
jedoch robust genug, um beispielsweise als Argument von
\DescRef{scrlttr2.cmd.markboth} oder \DescRef{scrlttr2.cmd.footnote} zu
funktionieren.%
\EndIndexGroup


\begin{Declaration}
  \Macro{foreachkomavar}\Parameter{Variablenliste}\Parameter{Befehl}
  \Macro{foreachnonemptykomavar}\Parameter{Variablenliste}\Parameter{Befehl}
  \Macro{foreachemptykomavar}\Parameter{Variablenliste}\Parameter{Befehl}
  \Macro{foreachkomavarifempty}\Parameter{Variablenliste}
                               \Parameter{Dann-Befehl}\Parameter{Sonst-Befehl}
\end{Declaration}
Mit\ChangedAt{v3.27}{\Class{scrlttr2}\and \Package{scrletter}} der Anweisung
\Macro{foreachkomavar} wird der angegebene \PName{Befehl} für jede Variable
aus der durch Komma separierten \PName{Variablenliste} ausgeführt. Dabei wird
der Name der jeweiligen Variablen als Argument an den \PName{Befehl}
angehängt.

Die Anweisung \Macro{foreachnonemptykomavar} führt im Unterschied dazu
\PName{Befehl} nur aus, wenn \DescRef{\LabelBase.cmd.Ifkomavarempty} sie als
nicht leer erkennt. Leere Variablen in der \PName{Variablenliste} haben
dagegen keine Auswirkungen.

Dagegen führt \Macro{foreachemptykomavar} den \PName{Befehl} aus, wenn die
Variable im Sinne von \DescRef{\LabelBase.cmd.Ifkomavarempty} leer ist. Nicht
leere Variablen in der \PName{Variablenliste} haben entsprechend keine
Auswirkungen.

Die Anweisung \Macro{foreachkomavarifempty} ist quasi eine Verschmelzung
beider vorgenannten. Sie führt \PName{Dann-Befehl} für alle leeren Variablen
aus, während \PName{Sonst-Befehl} für die nicht leeren Variablen zur Anwendung
kommt. Wie bei \PName{Befehl} wird in beiden Fällen der Name der jeweiligen
Variable als Argument angehängt.%
\EndIndexGroup
%
\EndIndexGroup


\section{Ergänzende Informationen zu den Seitenstilen}
\seclabel{pagestyleatscrletter}
\BeginIndexGroup
\BeginIndex{}{Seiten>Stil}

\LoadNonFree{scrlttr2-experts}{0}%
\EndIndexGroup

\iffalse% Wurde bereits in Kapitel 4.21 behandelt
\section{Unterschiede in der Behandlung von \File{lco}-Dateien bei
  \Package{scrletter}}
\seclabel{lcoatscrletter}
\BeginIndexGroup
\BeginIndex{File}{lco}
\BeginIndex{}{lco-Datei=\File{lco}-Datei}

In\ChangedAt{v3.15}{\Package{scrletter}} \autoref{sec:scrlttr2.lcoFile} wurde
erklärt, dass man \File{lco}-Dateien direkt über \Macro{documentclass} laden
kann. Für \Package{scrletter}\OnlyAt{\Package{scrlttr2}} wurde auf diese
Möglichkeit verzichtet.

\begin{Declaration}
  \Macro{LoadLetterOption}\Parameter{Name}
  \Macro{LoadLetterOptions}\Parameter{Liste von Namen}
\end{Declaration}
Während für \Class{scrlttr2} lediglich empfohlen wird, \File{lco}-Dateien über
\DescRef{scrlttr2.cmd.LoadLetterOption} oder
\DescRef{scrlttr2.cmd.LoadLetterOptions} zu laden, ist dies für
\Package{scrletter} zwingend. Natürlich können die \File{lco}-Dateien auch
erst nach \Package{scrletter} geladen werden.
%
\EndIndexGroup
%
\EndIndexGroup
%
\fi


\section{\File{lco}-Dateien für fortgeschrittene Anwender}
\seclabel{lcoFile}
\BeginIndexGroup
\BeginIndex{File}{lco}
\BeginIndex{}{lco-Datei=\File{lco}-Datei}

\BeginIndexGroup%
\BeginIndex{}{Papier>Format}%
Obwohl jedes von \hyperref[cha:typearea]{\Package{typearea}}%
\IndexPackage{typearea} einstellbare Format verwendbar ist, kann es bei der
Ausgabe der ersten Briefseite mit manchen Formaten zu unerwünschten
Ergebnissen kommen. Leider gibt es
keine allgemein gültigen Regeln, um die Position von Anschriftfeldern und
Ähnlichem für beliebige Papierformate zu berechnen. Vielmehr werden für
unterschiedliche Papierformate unterschiedliche Parameter benötigt.%

%\subsection{Überwachung des Papierformats}
%\seclabel{papersize}

Derzeit existieren Parametersätze und \File{lco}-Dateien für A4-Papier und
letter-Papier. Die Klasse \Class{scrlttr2} versteht aber theoretisch sehr viel
mehr Papierformate. Daher ist es notwendig zu überwachen, ob die korrekte
Papiergröße eingestellt ist. Dies gilt umso mehr, wenn \Package{scrletter}
verwendet wird, da die Einstellung der Papiergröße dann in erster Linie von
der verwendeten Klasse abhängt.

\begin{Declaration}
  \Macro{LetterOptionNeedsPapersize}%
    \Parameter{Optionsname}\Parameter{Papiergröße}
\end{Declaration}
Damit man bei Verwendung einer in der \File{lco}-Datei nicht vorgesehenen
\PName{Papiergröße} zumindest gewarnt wird, sind in den
mit \KOMAScript{} ausgelieferten \File{lco}-Dateien
\Macro{LetterOptionNeedsPapersize}-Anweisungen 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 \iffalse nacheinander \fi % Umbruchoptimierung
mehrere \File{lco}-Dateien geladen, so kann jede dieser
\File{lco}-Dateien eine Anweisung \Macro{LetterOptionNeedsPapersize}
enthalten. Innerhalb von \DescRef{scrlttr2.cmd.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. %
\iffalse% Umbruchoptimierung!!!
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.%
\fi
\begin{Example}
  \iffalse% Umbruchkorrektur
  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. %
  \else%
  Angenommen, Sie schreiben Briefe auf A5-Papier und stecken diese in
  Fensterbriefumschläge im Format C6. %
  \fi%
  Damit wäre prinzipiell die Position des Adressfeldes die gleiche wie bei
  einem %
  \iffalse normalen Brief in A4 nach DIN\else Brief in A4\fi % Umbruchkorrektur
  . Der Unterschied besteht \iffalse im Wesentlichen \fi% Umbruchkorrektur
  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 beispielsweise, indem Sie die Marken außerhalb des
  Papiers platzieren.
\begin{lstcode}
  \ProvidesFile{a5.lco}
               [2002/05/02 letter class option]
  \LetterOptionNeedsPapersize{a5}{a5}
  \setplength{tfoldmarkvpos}{\paperheight}
  \setplength{bfoldmarkvpos}{\paperheight}
  \endinput
\end{lstcode}
  Eleganter wäre es natürlich, die Marken mit Hilfe der Option
  \DescRef{scrlttr2.option.foldmarks} abzuschalten.  Außerdem muss auch noch
  die Position des Seitenfußes, also die Pseudolänge
  \DescRef{scrlttr2.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 Laden von
  »\File{a5.lco}«, angegeben werden.
\end{Example}
%
\EndIndexGroup%
\EndIndexGroup%
\ExampleEndFix


%\subsection{Positionen sichtbar machen}
%\seclabel{visualize}
%\BeginIndexGroup
\begin{Declaration}
  \File{visualize.lco}
\end{Declaration}
\BeginIndex{Option}{visualize}%
Wenn man selbst \File{lco}-Dateien entwickelt, %
\iffalse beispielsweise \fi % Umbruchkorrektur
um die Positionen von %
\iffalse verschiedenen \fi % Umbruchkorrektur
Feldern des Briefbogens an eigene Wünsche %
\iffalse oder Notwendigkeiten \fi % Umbruchkorrektur
anzupassen, ist es hilfreich, wenn %
\iffalse zumindest \fi % Umbruchkorrektur
einige Elemente %
\iffalse direkt \fi % Umbruchkorrektur
sichtbar gemacht werden können. Zu diesem Zweck existiert die \File{lco}-Datei
\File{visualize.lco}\ChangedAt{v3.04}{\Class{scrlttr2}}%
\iffalse , die wie jede \File{lco}-Datei geladen werden
kann\fi % Umbruchkorrektur
. Allerdings ist das Laden dieser %
\iffalse \emph{Letter Class Option} \else \File{lco}-Datei
\fi% Umbruchkorrektur
auf die Dokumentpräambel beschränkt und seine Auswirkungen können nicht wieder
rückgängig gemacht werden. Die \File{lco}-Datei %
\iffalse bedient sich der \else benötigt die \fi % Umbruchkorrektur
Pakete \Package{eso-pic}\IndexPackage{eso-pic}%
\important[i]{\Package{eso-pic}, \Package{graphicx}} und
\Package{graphicx}\IndexPackage{graphicx}, die nicht zu \KOMAScript{} gehören.

\begin{Declaration}
  \Macro{showfields}\Parameter{Feldliste}
\end{Declaration}
Mit dieser Anweisung kann bei Verwendung von \File{visualize.lco} die
Visualisierung von Feldern des Briefbogens aktiviert werden. Das Argument
\PName{Feldliste} ist dabei eine durch Komma separierte Liste der Felder, die
visualisiert werden sollen. Folgende Felder werden derzeit unterstützt:
% \begin{labeling}[~--]{\PValue{location}}
\begin{description}\setkomafont{descriptionlabel}{}
\item[\PValue{test}] ist ein Testfeld der Größe 10\Unit{cm} auf 15\Unit{cm},
  das jeweils 1\Unit{cm} vom oberen und linken Papierrand entfernt ist. Dieses
  Testfeld existiert zu Debuggingzwecken. Es dient als Vergleichsmaß für den
  Fall, dass im Dokumenterstellungsprozess die Maße verfälscht werden.
\item[\PValue{head}] ist der Kopfbereich des Briefbogens. Es handelt sich hier
  um ein nach unten offenes Feld.
\item[\PValue{foot}] ist der Fußbereich des Briefbogens. Es handelt sich hier
  um ein nach unten offenes Feld.
\item[\PValue{address}] ist das Anschriftfenster.
\item[\PValue{location}] ist das Feld der Absenderergänzung.
\item[\PValue{refline}] ist die Geschäftszeile. Es handelt sich hier um ein
  nach unten offenes Feld.
\end{description}
%\end{labeling}%
\BeginIndex{FontElement}{field}\LabelFontElement{field}%
Mit den Anweisungen \DescRef{scrlttr2.cmd.setkomafont} und
\DescRef{scrlttr2.cmd.addtokomafont} (siehe \autoref{sec:scrlttr2.textmarkup},
\DescPageRef{scrlttr2.cmd.setkomafont}) für das Element
\FontElement{field}\important{\FontElement{field}} kann die Farbe der
Visualisierung geändert werden. Voreingestellt ist \Macro{normalcolor}.%
\EndIndex{FontElement}{field}%
%
\EndIndexGroup


\iffree{\begin{Declaration}}{\begin{Declaration}[0]}% Umbruchkorrektur
  \Macro{setshowstyle}\Parameter{Stil}
  \Macro{edgesize}
\end{Declaration}
In der Voreinstellung werden von \File{visualize.lco} die einzelnen Felder
durch Rahmen\important{\PValue{frame}} markiert. Dies entspricht dem
\PName{Stil} \PValue{frame}. Nach unten offene Felder werden nicht komplett
umrahmt, sondern unten offen mit kleinen Pfeilen dargestellt. Als Alternative
hierzu steht auch der \PName{Stil} \PValue{rule}\important{\PValue{rule}} zur
Verfügung. Dabei wird das Feld farbig hinterlegt. Hierbei kann nicht zwischen
geschlossenen und nach unten offenen Feldern unterschieden werden. Stattdessen
werden nach unten offene Felder mit einer Mindesthöhe dargestellt. Der
dritte\important{\PValue{edges}} verfügbare \PName{Stil} ist
\PValue{edges}. Dabei werden die Ecken der Felder markiert. Bei nach unten
offenen Feldern entfallen die unteren Eckmarkierungen. Die Größe der
Eckmarkierungen ist im Makro \Macro{edgesize} abgelegt und mit 1\Unit{ex}
voreingestellt.%
\EndIndexGroup


\begin{Declaration}
  \Macro{showenvelope}\AParameter{Breite\textup{,}Höhe}
                      \AParameter{HOffset\textup{,}VOffset}
                      \OParameter{Zusatz}
  \Macro{showISOenvelope}\Parameter{Format}\OParameter{Zusatz}
  \Macro{showUScommercial}\Parameter{Format}\OParameter{Zusatz}
  \Macro{showUScheck}\OParameter{Zusatz}
  \Macro{unitfactor}
\end{Declaration}
\iffalse% Umbruchkorrektur
Diese Anweisungen dienen bei Verwendung von \File{visualize.lco} dazu, eine
Seite mit einer Zeichnung eines Umschlags auszugeben. Der Umschlag wird dabei
immer um 90° gedreht auf einer eigenen Seite im Maßstab~1:1 ausgegeben. Das
Anschriftfenster wird automatisch aus den aktuellen Daten für die
Anschriftposition auf dem Briefbogen: \DescRef{scrlttr2.plength.toaddrvpos},
\DescRef{scrlttr2.plength.toaddrheight},
\DescRef{scrlttr2.plength.toaddrwidth} und
\DescRef{scrlttr2.plength.toaddrhpos}, erzeugt. Hierfür ist es notwendig zu
wissen, um welchen Wert der gefaltete Briefbogen auf jeder Seite kleiner als
die \PName{Breite} und \PName{Höhe} des Briefbogens ist. Sind diese beiden
Werte, \PName{HOffset} und \PName{VOffset}, bei \Macro{showenvelope} nicht
angegeben, so wird versucht, sie aus den Faltmarken und der Papiergröße selbst
zu berechnen.%
\else%
Diese Anweisungen von \File{visualize.lco} dienen dazu, eine Seite mit einer
um 90° gedrehten Zeichnung eines Umschlags im Maßstab~1:1 auszugeben. Das
Anschriftfenster wird automatisch aus den aktuellen Daten für die
Anschriftposition auf dem Briefbogen: \DescRef{scrlttr2.plength.toaddrvpos},
\DescRef{scrlttr2.plength.toaddrheight},
\DescRef{scrlttr2.plength.toaddrwidth} und
\DescRef{scrlttr2.plength.toaddrhpos}, erzeugt. Hierfür ist es notwendig zu
wissen, um welchen Wert der gefaltete Briefbogen auf jeder Seite kleiner als
die \PName{Breite} und \PName{Höhe} des Briefbogens ist. Sind diese beiden
Werte, \PName{HOffset} und \PName{VOffset}, bei \Macro{showenvelope} nicht
angegeben, so wird versucht, sie aus den Faltmarken und der Papiergröße zu
berechnen.%
\fi%

Die Anweisungen \Macro{showISOenvelope}, \Macro{showUScommercial} und
\Macro{showUScheck} basieren auf \Macro{showenvelope}. Mit
\Macro{showISOenvelope} kann ein ISO-Umschlag im \PName{Format} C4, C5, C5/6,
DL\iffree{ (auch bekannt als C5/6)}{} oder C6 erzeugt werden. Mit
\Macro{showUScommercial} wird hingegen ein US-Commercial-Umschlag im
\PName{Format} 9 oder 10 ausgegeben. \Macro{showUScheck} schließlich ist für
Umschläge im US-Check-Format zuständig.

\BeginIndex{FontElement}{letter}\LabelFontElement{letter}%
Innerhalb des Umschlags wird die Lage des Briefbogens gestrichelt
angedeutet. Die dabei verwendete Farbe kann mit Hilfe der Anweisungen
\DescRef{scrlttr2.cmd.setkomafont} und \DescRef{scrlttr2.cmd.addtokomafont}
(siehe \autoref{sec:scrlttr2.textmarkup},
\DescPageRef{scrlttr2.cmd.setkomafont}) für das Element
\FontElement{letter}\important{\FontElement{letter}} verändert
werden. Voreingestellt ist \Macro{normalcolor}.%
\EndIndex{FontElement}{letter}

\BeginIndex{FontElement}{measure}\LabelFontElement{measure}%
Die Umschlagzeichnung wird automatisch bemaßt. Die Farbe der Bemaßung und die
Größe von deren Beschriftung kann mit Hilfe der Anweisungen
\DescRef{scrlttr2.cmd.setkomafont} und \DescRef{scrlttr2.cmd.addtokomafont}
(siehe \autoref{sec:scrlttr2.textmarkup},
\DescPageRef{scrlttr2.cmd.setkomafont}) für das Element
\FontElement{measure}\important{\FontElement{measure}} verändert
werden. Voreingestellt ist hier \Macro{normalcolor}. Die Bemaßung erfolgt in
Vielfachen von \Length{unitlength} mit einer maximalen Genauigkeit von
$1/\Macro{unitfactor}$, wobei die Genauigkeit der \TeX-Arithmetik die
tatsächliche Grenze darstellt. Voreingestellt ist 1. Eine Umdefinierung ist
mit \Macro{renewcommand} möglich.%
\EndIndex{FontElement}{measure}

\begin{Example}
  Es wird ein Beispielbrief im Format ISO~A4 erzeugt. Die unterstützten Felder
  sollen zwecks Überprüfung ihrer Position mit gelben Rahmenlinien markiert
  werden. Des Weiteren soll die Position des Fensters in einem Umschlag der
  Größe~DL mit Hilfe einer Zeichnung überprüft werden. Die Maßlinien in dieser
  Zeichnung sollen rot und die Maßzahlen in kleinerer Schrift ausgegeben
  werden, wobei die Maßzahlen in cm mit einer Genauigkeit von 1\Unit{mm}
  ausgegeben werden sollen. Der gestrichelte Briefbogen im Umschlag soll
  hingegen grün eingefärbt werden.
\begin{lstcode}
  \documentclass[visualize]{scrlttr2}
  \usepackage{xcolor}
  \setkomafont{field}{\color{yellow}}
  \setkomafont{measure}{\color{red}\small}
  \setkomafont{letter}{\color{green}}
  \showfields{head,address,location,refline,foot}
  \usepackage[ngerman]{babel}
  \usepackage{lipsum}
  \begin{document}
  \setkomavar{fromname}{Peter Musterfrau}
  \setkomavar{fromaddress}{Hinter dem Tal 2\\
                           54321 Musterheim}
  \begin{letter}{%
      Petra Mustermann\\
      Vor dem Berg 1\\
      12345 Musterhausen%
    }
  \opening{Hallo,}
  \lipsum[1]
  \closing{Bis dann}
  \end{letter}
  \setlength{\unitlength}{1cm}
  \renewcommand*{\unitfactor}{10}
  \showISOenvelope{DL}
  \end{document}
\end{lstcode}
  Auf der ersten Seite findet sich nun der Briefbogen, auf der zweiten Seite
  wird die Zeichnung des Umschlags ausgegeben.
\end{Example}

Bezüglich der Bemaßung ist zu beachten, dass ungünstige Kombinationen von
\Length{unitlength} und \Macro{unitfactor} sehr schnell einen \TeX-Fehler der
Art \emph{arithmetic overflow} provozieren. Ebenso kann es geschehen, dass
ausgegebene Maßzahlen geringfügig vom tatsächlichen Wert abweichen. Beides
sind keine Fehler von \Option{visualize}, sondern lediglich
Implementierungsgrenzen.
%
\EndIndexGroup
%
\EndIndexGroup
%
\EndIndexGroup


\section{Unterstützung verschiedener Sprachen}
\seclabel{languages}%
\BeginIndexGroup%
\BeginIndex{}{Sprachen}%
\iffalse % Umbruchkorrektur
Die Klasse \Class{scrlttr2} und das Paket \Package{scrletter} unterstützen
viele Sprachen. Dazu zählen Deutsch (\PValue{german} für alte deutsche
Rechtschreibung, \PValue{ngerman} für neue deutsche Rechtschreibung,
\PValue{austrian} für Österreichisch mit alter deutscher Rechtschreibung und
\PValue{naustrian}\ChangedAt{v3.09}{\Class{scrlttr2}} für Österreichisch mit
neuer deutscher Rechtschreibung),
\PValue{nswissgerman}\ChangedAt{v3.13}{\Class{scrlttr2}} für Schweizer Deutsch
mit neuer Rechtschreibung und \PValue{swissgerman} für Schweizer Deutsch mit
alter Rechtschreibung, Englisch (unter anderem \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, Niederländisch, Kroatisch,
Finnisch, Norwegisch\ChangedAt{v3.02}{\Class{scrlttr2}},
Schwedisch\ChangedAt{v3.08}{\Class{scrlttr2}},
Polnisch\ChangedAt{v3.13}{\Class{scrlttr2}},
Tschechisch\ChangedAt{v3.13}{\Class{scrlttr2}} und Slowakisch.

Zwischen den Sprachen wird bei Verwendung des
\Package{babel}-Pakets\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 Pakets.
\iffalse% Umbruchkorrekturtext!!!
Näheres entnehmen Sie bitte der jeweiligen Anleitung.%
\fi%
\else% Diese neue Einleitung ist vorzuziehen!
Die Klasse \Class{scrlttr2} und das Paket \Package{scrletter} sind
multilingual angelegt. Sie unterstützen also die Verwendung von Paketen wie
\Package{babel} oder \Package{polyglossia}. Derzeit verfügbar sind Deutsch,
Englisch, Finnisch, Französisch, Italienisch, Kroatisch, Niederländisch,
Norwegisch\ChangedAt{v3.02}{\Class{scrlttr2}},
Polnisch\ChangedAt{v3.13}{\Class{scrlttr2}},
Schwedisch\ChangedAt{v3.08}{\Class{scrlttr2}}, Slowakisch, Spanisch und
Tschechisch\ChangedAt{v3.13}{\Class{scrlttr2}} in den Varianten, die durch die
auf \DescPageRef{\LabelBase.cmd.captionsenglish} und
\DescPageRef{\LabelBase.cmd.dateenglish} dokumentieren Befehle bestimmt sind.%
\fi%

\iffalse% Umbruchkorrektur
Erlauben\textnote{Achtung!} Sie mir noch einen Hinweis zu den
Sprachumschaltpaketen. Das Paket
\Package{french}\IndexPackage{french}\important{\Package{french}} (siehe
\cite{package:french}) nimmt neben der Umdefinierung der Begriffe aus
\autoref{tab:\LabelBase.languageTerms},
\autopageref{tab:\LabelBase.languageTerms} weitere Änderungen vor. So
definiert es etwa die Anweisung \DescRef{scrlttr2.cmd.opening} um. Dabei geht
es einfach davon aus, dass \DescRef{scrlttr2.cmd.opening} immer wie in der
Standardbriefklasse \Class{letter} definiert ist. Dies ist bei \KOMAScript{}
jedoch nicht der Fall. Das Paket \Package{french} zerstört deshalb die
Definition und arbeitet nicht korrekt mir \KOMAScript{} zusammen. Ich
betrachte dies als Fehler des Pakets \Package{french}, der obwohl schon vor
Jahrzehnten gemeldet, leider nie beseitigt wurde.%
\else% Diese neue Einleitung ist vorzuziehen!
Es gibt leider auch inkompatible Sprachpakete wie
\Package{french}\IndexPackage{french}\important{\Package{french}} (siehe
\cite{package:french}). Dieses definiert beispielsweise
\DescRef{scrlttr2.cmd.opening} in einer Weise um, die nicht für
\Class{scrlttr2} oder \Package{scrletter} geeignet ist. Das ist ein vor
Jahrzehnten gemeldeter Fehler von \Package{french}.%
\fi

Wird das Paket \Package{babel}\IndexPackage{babel} für die
Umschaltung auf die Sprache verwendet, können vereinzelt ebenfalls
Probleme auftreten. Bei \Package{babel} lassen sich problematische Änderungen
einer Sprache jedoch meist gezielt abschalten.%
\iffalse% Das ist eigentlich überholt!
\ 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} anstelle der Sprache \PValue{french}
  eine der Sprachen \PValue{acadian}, \PValue{canadien} oder \PValue{francais}
  verwendet.
\fi

\iffalse% Das ist ebenfalls überholt!
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
  % Umbruchoptimierungspassage
  Kann nicht sicher gestellt werden, dass nicht eine alte Version von
  \Package{babel} verwendet wird, so empfehle ich%
  \iftrue
    , mit
\begin{lstcode}
  \usepackage[...,francais,...]{babel}
\end{lstcode}
    französische Sprache auszuwählen. 
    \iffalse %
      Gegebenenfalls ist dann aber trotzdem  mit
      \Macro{selectlanguage}\PParameter{french} auf Französisch umzuschalten.%
    \fi%
  \else %
    \space bei \Package{babel} die Option \Option{frenchb}.%
  \fi 
\fi
\fi  

\iffalse
  %\enlargethispage*{\baselineskip}%
  Es ist nicht auszuschließen, dass mit anderen Sprachen und Paketen ähnliche
  Probleme auf"|treten.
%  \iffalse
  \iftrue 
    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.
  \else
    Für Deutsch treten solche Probleme mit den Paketen
    \Package{german}\IndexPackage{german},
    \Package{ngerman}\IndexPackage{ngerman} oder \Package{babel} jedoch nicht
    auf.
  \fi
%  \fi
\fi

% Hinweis: Der folgende Block kann je nach Umbruch vor oder nach
%          \captions... und \date... (aber bitte nicht dazwischen) stehen.
\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{mobilephonename}
  \Macro{phonename}
  \Macro{faxname}
  \Macro{emailname}
  \Macro{wwwname}
  \Macro{bankname}
\end{Declaration}
Die aufgeführten Anweisungen enthalten die jeweiligen sprachtypischen
Begriffe. Diese\important[i]{%
  \DescRef{scrbase.cmd.newcaptionname}\\
  \DescRef{scrbase.cmd.renewcaptionname}\\
  \DescRef{scrbase.cmd.providecaptionname}} können für die Realisierung einer
weiteren Sprache oder aber auch zur eigenen freien Gestaltung, wie in
\autoref{sec:scrbase.languageSupport} erklärt, angepasst werden. Von
\KOMAScript{} 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:\LabelBase.languageTerms},
\autopageref{tab:\LabelBase.languageTerms} sind die Voreinstellungen
für \Option{english} und \Option{ngerman} zu finden.%
\begin{table}[p]% Umbruchkorrektur
  \begin{minipage}{\textwidth}
%  \centering
    \KOMAoptions{captions=topbeside}%
    \setcapindent{0pt}%
    %\caption
    \begin{captionbeside}[{%
        Voreinstellungen für die sprachabhängigen Begriffe in Briefen%
      }]{%
        \hskip 0pt plus 1ex
        Voreinstellung
        für die sprachabhängigen Begriffe bei \iffalse Verwendung der \else
        den \fi Sprachen
        \Option{english} und \Option{ngerman} soweit nicht durch die Pakete
        zur Sprachumschaltung bereits definiert%
        \label{tab:\LabelBase.languageTerms}%
      }[l]
      \begin{tabular}[t]{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{mobilephonename} & Mobile phone & Mobiltelefon \\
        \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}{1\ }% brutal aber effektiv
      \footnotetext[1000]{Diese Begriffe werden normalerweise bereits von
        Sprachpaketen wie \Package{babel} definiert und dann von
        \KOMAScript{} nicht überschrieben. Abweichungen im Wortlaut sind
        daher möglich und der Anleitung des verwendeten Sprachpakets zu
        entnehmen.}
    \end{captionbeside}
  \end{minipage}
\end{table}%
\EndIndexGroup


\begin{Declaration}
  \Macro{captionsacadian}
  \Macro{captionsamerican}
  \Macro{captionsaustralien}
  \Macro{captionsaustrian}
  \Macro{captionsbritish}
  \Macro{captionscanadian}
  \Macro{captionscanadien}
  \Macro{captionscroatian}
  \Macro{captionsczech}
  \Macro{captionsdutch}
  \Macro{captionsenglish}
  \Macro{captionsfinnish}
  \Macro{captionsfrancais}
  \Macro{captionsfrench}
  \Macro{captionsgerman}
  \Macro{captionsitalian}
  \Macro{captionsnaustrian}
  \Macro{captionsnewzealand}
  \Macro{captionsngerman}
  \Macro{captionsnorsk}
  \Macro{captionsnswissgerman}
  \Macro{captionspolish}
  \Macro{captionsslovak}
  \Macro{captionsspanish}
  \Macro{captionsswedish}
  \Macro{captionsswissgerman}
  \Macro{captionsUKenglish}
  \Macro{captionsUSenglish}
\end{Declaration}
Wird die Sprache eines Briefes gewechselt, so werden über diese
Anweisungen die Begriffe aus \autoref{tab:\LabelBase.languageTerms},
\autopageref{tab:\LabelBase.languageTerms} umdefiniert. Sollte das
verwendete Sprachumschaltpaket dies nicht unterstützen, so können die
Anweisungen notfalls auch direkt verwendet werden.%
%
\EndIndexGroup
%\iffree{}{\clearpage}% Umbruchkorrektur


\begin{Declaration}
  \Macro{dateacadian}
  \Macro{dateamerican}
  \Macro{dateaustralien}
  \Macro{dateaustrian}
  \Macro{datebritish}
  \Macro{datecanadian}
  \Macro{datecanadien}
  \Macro{datecroatian}
  \Macro{dateczech}
  \Macro{datedutch}
  \Macro{dateenglish}
  \Macro{datefinnish}
  \Macro{datefrancais}
  \Macro{datefrench}
  \Macro{dategerman}
  \Macro{dateitalian}
  \Macro{datenaustrian}
  \Macro{datenewzealand}
  \Macro{datengerman}
  \Macro{datenorsk}
  \Macro{datenswissgerman}
  \Macro{datepolish}
  \Macro{dateslovak}
  \Macro{datespanish}
  \Macro{dateswedish}
  \Macro{dateswissgerman}  
  \Macro{dateUKenglish}
  \Macro{dateUSenglish}
\end{Declaration}
Je nach verwendeter Sprache werden die Datumsangaben\Index{Datum} des
numerischen Datums (siehe Option \DescRef{scrlttr2.option.numericaldate},
\autoref{sec:scrlttr2.firstpage}, \DescPageRef{scrlttr2.option.numericaldate})
in unterschiedlicher Form umgesetzt. Die genauen Angaben sind
\autoref{tab:date}, \autopageref{tab:date} zu entnehmen.%
\begin{table}[p]% Umbruchoptimierung
%  \centering
  \KOMAoptions{captions=topbeside}%
  \setcapindent{0pt}%
%  \caption
  \begin{captionbeside}{Sprachabhängige Ausgabeformate für das Datum}[l]
    \begin{tabular}[t]{ll}
      \toprule
      Anweisung             & Ausgabebeispiel \\
      \midrule
      \Macro{dateacadian}   & 24.\,12.\,1993\\
      \Macro{dateamerican}  & 12/24/1993\\
      \Macro{dateaustralien}& 24/12/1993\\
      \Macro{dateaustrian}  & 24.\,12.\,1993\\
      \Macro{datebritish}   & 24/12/1993\\
      \Macro{datecanadian}  & 1993/12/24\\
      \Macro{datecanadien}  & 1993/12/24\\
      \Macro{datecroatian}  & 24.\,12.\,1993.\\
      \Macro{dateczech}     & 24.\,12.\,1993\\
      \Macro{datedutch}     & 24.\,12.\,1993\\
      \Macro{dateenglish}   & 24/12/1993\\
      \Macro{datefinnish }  & 24.12.1993.\\
      \Macro{datefrancais}  & 24.\,12.\,1993\\
      \Macro{datefrench}    & 24.\,12.\,1993\\
      \Macro{dategerman}    & 24.\,12.\,1993\\
      \Macro{dateitalian}   & 24.\,12.\,1993\\
      \Macro{datenaustrian} & 24.\,12.\,1993\\
      \Macro{datenewzealand}& 24/12/1993\\
      \Macro{datengerman}   & 24.\,12.\,1993\\
      \Macro{datenorsk}     & 24.12.1993\\
      \Macro{datenswissgerman}   & 24.\,12.\,1993\\
      \Macro{datepolish}    & 24.\,12.\,1993\\
      \Macro{dateslovak}    & 24.\,12.\,1993\\
      \Macro{datespanish}   & 24.\,12.\,1993\\
      \Macro{dateswedish}   & 24/12 1993\\
      \Macro{dateswissgerman}    & 24.\,12.\,1993\\
      \Macro{dateUKenglish} & 24/12/1993\\
      \Macro{dateUSenglish} & 12/24/1993\\
      \bottomrule
    \end{tabular}
  \end{captionbeside}
  \label{tab:date}
\end{table}%
\EndIndexGroup%
%
\EndIndexGroup

\iffree{}{\clearpage}% Umbruchkorrektur zwecks Ausgabe der Tabellen

\section{Obsolete Anweisungen}
\seclabel{obsolete}
\BeginIndexGroup

\LoadNonFree{scrlttr2-experts}{1}
\EndIndexGroup
%
\iffalse% Es wird Zeit das komplett rauszuwerfen!
\section{Von der obsoleten \Class{scrlettr} zur 
aktuellen  \Class{scrlttr2}}
\seclabel{fromscrlettr}
\BeginIndexGroup
\BeginIndex{Class}{scrlettr}

Die\textnote{Achtung!} alte Briefklasse \Class{scrlettr} wurde mit Einführung
von \Class{scrlttr2} (siehe \autoref{cha:scrlttr2}) 2002
obsolet und ist auch nicht mehr Bestandteil von \KOMAScript{}. Wer die Klasse
oder Informationen dazu dennoch benötigt, findet sie in
\cite{package:koma-script-obsolete}.

Um den Umstieg von der alten auf die neue Klasse zu erleichtern, existiert mit
\Option{KOMAold} eine Kompatibilitätseinstellung. Grundsätzlich ist in der
neuen Klasse die gesamte alte Funktionalität enthalten. Ohne \Option{KOMAold}
ist jedoch die Benutzerschnittstelle eine andere und auch die Voreinstellungen
stimmen nicht überein. Näheres dazu ist \autoref{sec:scrlttr2.lcoFile},
\autoref{tab:lcoFiles} zu entnehmen.

\LoadNonFree{scrlttr2-experts}{2}
%
\EndIndexGroup
\fi
%
\EndIndexGroup

\endinput

%%% Local Variables:
%%% mode: latex
%%% mode: flyspell
%%% coding: utf-8
%%% ispell-local-dictionary: "de_DE"
%%% TeX-master: "guide.tex"
%%% End:

% LocalWords:  Pseudolänge Pseudolängen Rücksendeadresse Faltmarke Briefseite
% LocalWords:  Sternvariante Geschäftszeile Testfeld Kopfbereich Vergleichsmaß
% LocalWords:  Dokumenterstellungsprozess Fußbereich Anschriftfenster Falt
% LocalWords:  Absenderergänzung Kundennummer Rechnungsnummer Falzmarken
% LocalWords:  Sprachumschaltpaketen Standardbriefklasse Seitenstilen
% LocalWords:  Paginierung Paginierungen Papiergröße Anschriftfeldes
%  LocalWords:  Versandart Anschriftfensters Anschriftfeld Briefköpfe
%  LocalWords:  Variableninhalt Schlussgruß Briefbogenfuß
