% ======================================================================
% common-compatibility.tex
% Copyright (c) Markus Kohm, 2001-2017
%
% 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-compatibility.tex
% Copyright (c) Markus Kohm, 2001-2017
%
% 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
%
% ----------------------------------------------------------------------
%
% Absaetze, die mehreren Kapiteln der KOMA-Script-Anleitung gemeinsam sind
% Verwaltet von Markus Kohm
%
% ======================================================================

\KOMAProvidesFile{common-compatibility.tex}
                 [$Date: 2017-01-02 13:30:07 +0100 (Mon, 02 Jan 2017) $
                  KOMA-Script guide (common paragraphs)]
\translator{Markus Kohm\and Krickette Murabayashi}

% Date of the translated German file: 2017-01-02

\section{Compatibility with Earlier Versions of \KOMAScript}
\seclabel{compatibilityOptions}
\BeginIndexGroup
\BeginIndex{}{Compatibility}

\IfThisCommonFirstRun{}{%
  It applies, mutatis mutandis, what is written in
  \autoref{sec:\ThisCommonFirstLabelBase.compatibilityOptions}.
  \IfThisCommonLabelBase{scrlttr2}{However, this feature exists at
    \Class{scrlttr2} since version~2.9t. }%
  So if you have alread read and understood
  \autoref{sec:\ThisCommonFirstLabelBase.compatibilityOptions} you can
  switch to \autopageref{sec:\ThisCommonLabelBase.compatibilityOptions.next},
  \autopageref{sec:\ThisCommonLabelBase.compatibilityOptions.next}.%
}

\IfThisCommonLabelBase{typearea}{%
  Those who achieve their documents in source code set utmost value to the
  fact that future \LaTeX{} runs will yield exactly the same
  result. Nevertheless, in some cases improvement and bug corrections of
  packages will result in changes of the behaviour and make-up. But sometimes
  this is not wanted.%
}{%
  \IfThisCommonLabelBase{maincls}{%
    Those who achieve their documents in source code set utmost value to the
    fact that future \LaTeX{} runs will yield exactly the same
    result. However, sometimes improvement and bug corrections of classes will
    result in changes of the behaviour and make-up. But sometimes this is not
    wanted.  }{%
    \IfThisCommonLabelBase{scrextend}{%
      Those who achieve their documents in source code set utmost value to the
      fact that future \LaTeX{} runs will yield exactly the same result. In
      some cases improvement and bug corrections of packages will result in
      changes of the behaviour and make-up. But sometimes this is not wanted.%
    }{%
      \IfThisCommonLabelBase{scrlttr2}{%
        In some cases improvement and bug corrections of classes will result
        in changes of the behaviour and make-up. But sometimes this is not
        wanted.%
      }{\InternalCommonFileBaseError}%
    }%
  }%
}

\begin{Declaration}
  \OptionVName{version}{value}%
  \OptionValue{version}{first}%
  \OptionValue{version}{last}
\end{Declaration}
\IfThisCommonLabelBase{scrextend}{At }{Since }%
\ChangedAt{v2.96a}{\Class{scrbook}\and \Class{scrreprt}\and \Class{scrartcl}}%
\ChangedAt{v2.9t}{\Class{scrlttr2}}%
\ChangedAt{v3.01b}{\Package{typearea}}%
\IfThisCommonLabelBase{typearea}{%
  version~3.01b of \Package{typearea} }{%
  \IfThisCommonLabelBase{maincls}{%
    version~2.96a of \KOMAScript{} }{%
    \IfThisCommonLabelBase{scrlttr2}{%
      version~2.9t of \Class{scrlttr2} }{%
      \IfThisCommonLabelBase{scrextend}{%
        \Package{scrextend} }{\InternalCommonFileUsageError}%
    }%
  }%
}%
it's your choice if your source code should result in the same make-up at
future \LaTeX{} runs or if you like to participate in all improvements of new
releases\IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{ of the class}{}. You
may select the compatible version of \KOMAScript{} with option
\Option{version}. Compatibility to the lowest supported \KOMAScript{} release
may be achieved by
\OptionValue{version}{first}\important{\OptionValue{version}{first}} or
\OptionValue{version}{2.9} or \OptionValue{version}{2.9t}. Setting
\PName{value} to an unknown release number will result in a warning message
and selects \OptionValue{version}{first} for safety.

With \OptionValue{version}{last} the most recent version will be selected at
every \LaTeX{} run.  Be warned, though, that using \OptionValue{version}{last}
poses possibilities of compatibility issues for future \LaTeX{} runs. Option
\Option{version} without any \PName{value} means the
same. \ChangedAt{v3.01a}{\Class{scrbook}\and \Class{scrreprt}\and
  \Class{scrartcl}\and \Class{scrlttr2}\and \Package{scrextend}}This is the
default behaviour as long as you do not use any deprecated options.

If\textnote{Attention!} you use a deprecated option of \KOMAScript~2,
\KOMAScript~3 will switch to \OptionValue{version}{first} automatically. This
will also result in a warning message that explains how to prevent this
switching. Alternatively you may select another adjustment using option
\Option{version} with the wanted compatibility after the deprecated option.

Compatibility is primarily make-up compatibility. New features not related to
the mark-up will be available even if you switch compatibility to a version
before first implementation of the feature. Option \Option{version} does not
influence make-up changes that are motivated by bug fixes. If you need bug
compatibility you should physically save the used \KOMAScript{} version
together with your document.

\IfThisCommonLabelBase{scrlttr2}{%
  \begin{Example}
    The letter examples of this chapter should use and show all the features
    of the recent \KOMAScript{} release. To achieve this, we set the
    corresponding compatibility:%
    \lstinputcode[xleftmargin=1em,lastline=1]{letter-0.tex}%
    In this case the symbolic value \PValue{last} has been used to select the
    latest version.%
  \end{Example}%
}{}

Please note\textnote{Attention!} that you cannot change option
\Option{version} anymore after loading the %
\IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{class}{%
  package \IfThisCommonLabelBase{typearea}{\Package{typearea}}{%
    \IfThisCommonLabelBase{scrextend}{\Package{scrextend}}{%
      \InternalCommonFileUsageError }%
  }%
}. Therefore, the usage of option \Option{version} within the argument of
\DescRef{\ThisCommonLabelBase.cmd.KOMAoptions} or
\DescRef{\ThisCommonLabelBase.cmd.KOMAoption} is not recommended and will
cause an error.%
\EndIndexGroup
%
\EndIndexGroup

%%% Local Variables:
%%% mode: latex
%%% coding: us-ascii
%%% TeX-master: "../guide"
%%% End:
