% ======================================================================
% common-1.tex
% Copyright (c) Markus Kohm, 2001-2009
%
% 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.
% ----------------------------------------------------------------------
% common-1.tex
% Copyright (c) Markus Kohm, 2001-2009
%
% 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.
% ======================================================================
%
% Paragraphs that are common for several chapters of the KOMA-Script guide
% Maintained by Markus Kohm
%
% ----------------------------------------------------------------------
%
% Absätze, die mehreren Kapiteln der KOMA-Script-Anleitung gemeinsam sind
% Verwaltet von Markus Kohm
%
% ======================================================================

\ProvidesFile{common-1.tex}[2009/01/04 KOMA-Script guide (common paragraphs)]
\translator{Gernot Hassenpflug}

\makeatletter
\@ifundefined{ifCommonmaincls}{\newif\ifCommonmaincls}{}%
\@ifundefined{ifCommonscrextend}{\newif\ifCommonscrextend}{}%
\@ifundefined{ifCommonscrlttr}{\newif\ifCommonscrlttr}{}%
\@ifundefined{ifIgnoreThis}{\newif\ifIgnoreThis}{}%
\makeatother


\section{Kompatibilität zu früheren Versionen von \KOMAScript}
\label{sec:\csname label@base\endcsname.compatibilityOptions}
\ifshortversion\IgnoreThisfalse\IfNotCommon{maincls}{\IgnoreThistrue}\fi%
\ifIgnoreThis%
Es gilt sinngemäß, was in \autoref{sec:maincls.compatibilityOptions}
geschrieben wurde. \IfCommon{scrlttr2}{Allerdings existiert diese Möglichkeit
  bei \Class{scrlttr2} bereits seit Version~2.9t}.  
\else
\BeginIndex{}{Kompatibilität}

\IfCommon{maincls}{Wer seine Dokumente 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.}%
\IfCommon{scrextend}{Wer seine Dokumente 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.}%
\IfCommon{scrlttr2}{In einigen Fällen ist es so, dass Verbesserungen und
  Korrekturen an der Klasse zu Änderungen im Verhalten, inbesondere beim
  Umbruch, führen. Dies ist jedoch nicht immer erwünscht.}%


\begin{Declaration}
  \KOption{version}\PName{Wert}\\
  \OptionValue{version}{first}\\
  \OptionValue{version}{last}
\end{Declaration}
\BeginIndex{Option}{version}%
\BeginIndex{Option}{version~=\PName{Wert}}%
\BeginIndex{Option}{version~=last}%
\BeginIndex{Option}{version~=first}%
\IfCommon{maincls}{\ChangedAt{v2.96a}{\Class{scrbook}\and \Class{scrreprt}\and
    \Class{scrartcl}}Seit Version~2.96a besteht bei \KOMAScript\ }%
\IfCommon{scrlttr2}{\ChangedAt{v2.9t}{Seit \Class{scrlttr2}} Version~2.9t
  besteht bei \Class{scrlttr2} }%
\IfCommon{scrextend}{Bei \Package{scrextend} besteht }%
die Wahl, ob eine Quelldatei soweit 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
% Umbruchkorrektur: Unterlängenproblem in listings!
\begin{lstcode}[belowskip=\dp\strutbox]
  version=first
\end{lstcode}
oder
\begin{lstcode}[belowskip=\dp\strutbox]
  version=2.9
\end{lstcode}
oder
\begin{lstcode}[belowskip=\dp\strutbox]
  version=2.9t
\end{lstcode}
erreicht werden. Bei Angabe einer unbekannten Version als \PName{Wert} wird
eine Warnung ausgegeben und sicherheitshalber \Option{version=}\PValue{first}
angenommen. Mit
\begin{lstcode}[belowskip=\dp\strutbox]
  version=last
\end{lstcode}
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 Kompatibilitä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. Die Option hat keine Auswirkungen auf Umbruchänderungen, die
bei Verwendung einer neueren Version durch Beseitigung eindeutiger Fehler
entstehen. Wer auch im Fehlerfall unbedingte Umbruchkompatibilität benötigt,
sollte stattdessen mit dem Dokument auch die verwendete \KOMAScript-Version
archivieren.

\IfCommon{scrlttr2}{\begin{Example}
  Die Beispielbriefe dieses Kapitels sollen alle Möglichkeiten nutzen, die in
  der neusten Version von \KOMAScript{} zur Verfügung stehen. Dazu muss beim
  Laden der Klasse die Kompatibilität entsprechend gesetzt werden:%
  \lstinputcode[xleftmargin=1em,lastline=1]{letter-0.tex}%
  \iftrue% Umbruchkorrektur
    Hier wurde einfach mit dem symbolischen Wert \PValue{last} die neuste
    Version gewählt.%
  \else%
    Um nicht bei jeder neuen Version eine neue Versionsnummer angeben zu
    müssen, wurde hier die Möglichkeit des symbolischen Wertes \PValue{last}
    gewählt.%
  \fi
\end{Example}}

Es ist zu beachten, dass die Option \Option{version} nach dem Laden %
\IfCommon{maincls}{der Klasse }%
\IfCommon{scrlttr2}{der Klasse }%
\IfCommon{scrextend}{des Pakets \Package{scrextend} }%
nicht mehr verändert werden kann.%
%
\EndIndex{Option}{version~=\PName{Wert}}%
\EndIndex{Option}{version~=first}%
\EndIndex{Option}{version~=last}%
\EndIndex{Option}{version}%
%
\EndIndex{}{Kompatibilität}

\fi % IgnoreThis


%%% Local Variables:
%%% mode: latex
%%% coding: iso-latin-1
%%% TeX-master: "../guide"
%%% End:
