summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/koma-script/doc/common-compatibility-en.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/koma-script/doc/common-compatibility-en.tex')
-rw-r--r--macros/latex/contrib/koma-script/doc/common-compatibility-en.tex175
1 files changed, 175 insertions, 0 deletions
diff --git a/macros/latex/contrib/koma-script/doc/common-compatibility-en.tex b/macros/latex/contrib/koma-script/doc/common-compatibility-en.tex
new file mode 100644
index 0000000000..61df7713b7
--- /dev/null
+++ b/macros/latex/contrib/koma-script/doc/common-compatibility-en.tex
@@ -0,0 +1,175 @@
+% ======================================================================
+% common-compatibility-en.tex
+% Copyright (c) Markus Kohm, 2001-2022
+%
+% 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.md.
+% ======================================================================
+%
+% Paragraphs that are common for several chapters of the KOMA-Script guide
+% Maintained by Markus Kohm
+%
+% ======================================================================
+
+\KOMAProvidesFile{common-compatibility-en.tex}
+ [$Date: 2022-06-05 12:40:11 +0200 (So, 05. Jun 2022) $
+ KOMA-Script guide (common paragraphs)]
+\translator{Markus Kohm\and Krickette Murabayashi\and Karl Hagen}
+
+\section{Compatibility with Earlier Versions of \KOMAScript}
+\seclabel{compatibilityOptions}
+\BeginIndexGroup
+\BeginIndex{}{Compatibility}
+
+\IfThisCommonFirstRun{}{%
+ The information in
+ \autoref{sec:\ThisCommonFirstLabelBase.compatibilityOptions} applies equally
+ to this chapter.
+ \IfThisCommonLabelBase{scrlttr2}{However, this feature has existed in
+ \Class{scrlttr2} since version~2.9t, whereas \Package{scrletter} does not
+ offer it. }{}%
+ So if you have already read and understood
+ \autoref{sec:\ThisCommonFirstLabelBase.compatibilityOptions} you can skip
+ ahead to \autopageref{sec:\ThisCommonLabelBase.compatibilityOptions.next},
+ \autopageref{sec:\ThisCommonLabelBase.compatibilityOptions.next}.%
+}
+
+\IfThisCommonLabelBaseOneOf{typearea,maincls,scrlttr2}{%
+ Those who produce their documents from source code typically attach the
+ utmost importance to the fact that future \LaTeX{} runs will yield exactly
+ the same result. In some cases, however, improvements and bug fixes to the
+ \IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{class}{package} will
+ result in changes of behaviour, especially to the layout. This, however,
+ may be undesirable.%
+}{%
+ \IfThisCommonLabelBase{scrextend}{%
+ % In some cases, improvements and bug fixes to the package will result
+ % in changes of behaviour, especially to the layout. This, however,
+ % may be undesirable. Those who produce their documents from source code
+ % typically attach the utmost importance to the fact that future
+ % \LaTeX{} runs will yield exactly the same result.%
+ }{%
+ \ThisCommonLabelBaseFailure
+ % \IfThisCommonLabelBase{scrlttr2}{%
+ % In some cases, improvements and bug fixes to the package will result
+ % in changes of behaviour, especially to the layout. This, however,
+ % may be undesirable.
+ % }{}%
+ }%
+}%
+
+
+\begin{Declaration}
+ \OptionVName{version}{value}%
+ \OptionValue{version}{first}%
+ \OptionValue{version}{last}
+\end{Declaration}
+%\ChangedAt{v2.96a}{\Class{scrbook}\and \Class{scrreprt}\and \Class{scrartcl}}%
+%\ChangedAt{v2.9t}{\Class{scrlttr2}}%
+%\ChangedAt{v3.01b}{\Package{typearea}}%
+\IfThisCommonLabelBase{scrextend}{With \Package{scrextend}, you can}{Since
+ \IfThisCommonLabelBase{typearea}{%
+ Version~3.01b, \Package{typearea}\ChangedAt{v3.01b}{\Package{typearea}}}{%
+ \IfThisCommonLabelBase{maincls}{%
+ Version~2.96a, \KOMAScript{}\ChangedAt{v2.96a}{\Class{scrbook}\and
+ \Class{scrreprt}\and \Class{scrartcl}}}{%
+ \IfThisCommonLabelBase{scrlttr2}{%
+ Version~2.9t, \Class{scrlttr2}\OnlyAt{\Class{scrlttr2}}%
+ \ChangedAt{v2.9t}{\Class{scrlttr2}}}{%
+ \InteralCommonFileUsageError}%
+ }%
+ }%
+\ has been able to} %
+choose whether the source file should, as much as possible,
+continue to produce exactly the same result within a \LaTeX{} run or should
+be formatted according to the modifications of the latest version%
+\IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{ of the class}{}. You
+can specify the version with which you want your file to be compatible by
+using the \Option{version} option. Compatibility with the oldest supported
+\KOMAScript{} version can be achieved with
+\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}\important{\OptionValue{version}{last}}%
+\textnote{default}, you can select the latest version. In this case, you give
+up backwards compatibility. If the option is used without a value,
+\PValue{last} is assumed. This\ChangedAt{v3.01a}{\Class{scrbook}\and
+ \Class{scrreprt}\and \Class{scrartcl}\and \Class{scrlttr2}\and
+ \Package{scrextend}} also corresponds to the default setting, as long as you
+do not use any deprecated options.
+
+\IfThisCommonLabelBase{scrextend}{% scrextend doesn't recognize obsolete 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 switch. Alternatively, you can choose a different setting for
+ \Option{version} with the desired compatibility after the deprecated
+ option.%
+}
+
+Compatibility is primarily a question of line and page breaks (wrapping). If
+you choose compatibility with an older version, new options that do not affect
+wrapping are still available. The \Option{version} option does not affect any
+wrapping changes that are the result of fixing unambiguous errors.
+If\textnote{Hint!} you need unconditional wrapping compatibility even in the
+case of bugs, you should physically save the old \KOMAScript{} version you
+need together with your document.
+
+\IfThisCommonLabelBase{scrlttr2}{%
+ \begin{Example}
+ The example letters in this chapter should use all the features of the
+ latest version of \KOMAScript{}. For this, the we set the compatibility
+ correspondingly when loading the class:%
+ \lstinputcode[xleftmargin=1em,lastline=1]{letter-example-00-en.tex}%
+ In this case the symbolic value \PValue{last} has been used to select the
+ latest version.%
+ \iftrue% Umbruchkorrektur
+ Here, the latest version was simply chosen with the symbolic value
+ \PValue{last}.%
+ \else%
+ In order not to have to specify a new version number for each new version,
+ the symbolic value \PValue{last} was chosen here.%
+ \fi
+ \end{Example}}{}
+
+Note\textnote{Attention!} that you cannot change the \Option{version} option
+after loading the %
+\IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{class}{%
+ \IfThisCommonLabelBase{typearea}{\Package{typearea}}{%
+ \IfThisCommonLabelBase{scrextend}{\Package{scrextend}}{%
+ \InternalCommonFileUsageError }%
+ }%
+\ package}. Setting this option with
+\DescRef{\ThisCommonLabelBase.cmd.KOMAoptions} or
+\DescRef{\ThisCommonLabelBase.cmd.KOMAoption} will
+therefore cause an error.%
+\EndIndexGroup
+%
+\EndIndexGroup
+
+\phantomsection
+\label{sec:\ThisCommonLabelBase.compatibilityOptions.end}
+\endinput
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "scrguide-en.tex"
+%%% coding: utf-8
+%%% ispell-local-dictionary: "en_GB"
+%%% eval: (flyspell-mode 1)
+%%% End: