You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
202 lines
8.6 KiB
202 lines
8.6 KiB
% ======================================================================
|
|
% common-compatibility.tex
|
|
% Copyright (c) Markus Kohm, 2001-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.
|
|
% ----------------------------------------------------------------------
|
|
% common-compatibility.tex
|
|
% Copyright (c) Markus Kohm, 2001-2019
|
|
%
|
|
% 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
|
|
%
|
|
% ======================================================================
|
|
|
|
\KOMAProvidesFile{common-compatibility.tex}
|
|
[$Date: 2019-10-31 08:38:01 +0100 (Thu, 31 Oct 2019) $
|
|
KOMA-Script guide (common paragraphs)]
|
|
|
|
\section{Kompatibilität zu früheren Versionen von \KOMAScript}
|
|
\seclabel{compatibilityOptions}
|
|
\BeginIndexGroup
|
|
\BeginIndex{}{Kompatibilität}
|
|
|
|
\IfThisCommonFirstRun{}{%
|
|
Es gilt sinngemäß, was in
|
|
\autoref{sec:\ThisCommonFirstLabelBase.compatibilityOptions} geschrieben
|
|
wurde.\IfThisCommonLabelBase{scrlttr2}{ Allerdings existiert diese
|
|
Möglichkeit bei \Class{scrlttr2}\OnlyAt{\Class{scrlttr2}} bereits seit
|
|
Version~2.9t, während \Package{scrletter} sie nicht bietet, sondern
|
|
sozusagen immer von \OptionValue{version}{last} ausgeht.}{} Falls Sie also
|
|
\autoref{sec:\ThisCommonFirstLabelBase.compatibilityOptions} bereits gelesen
|
|
und verstanden haben, können Sie in
|
|
\autoref{sec:\ThisCommonLabelBase.compatibilityOptions.next} auf
|
|
\autopageref{sec:\ThisCommonLabelBase.compatibilityOptions.next}
|
|
fortfahren.%
|
|
}
|
|
|
|
\IfThisCommonLabelBaseOneOf{typearea,maincls,scrlttr2}{%
|
|
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 führen aber Verbesserungen
|
|
und Korrekturen \IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{an der
|
|
Klasse}{am Paket} zu Änderungen im Verhalten, inbesondere beim
|
|
Umbruch. Dies ist jedoch manchmal eher unerwünscht.%
|
|
}{%
|
|
\IfThisCommonLabelBase{scrextend}{%
|
|
% In einigen Fällen ist es so, dass Verbesserungen und Korrekturen am Paket
|
|
% zu Änderungen im Verhalten, inbesondere beim Umbruch, führen. Dies ist
|
|
% jedoch nicht immer erwünscht.%
|
|
% 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.%
|
|
}{%
|
|
\ThisCommonLabelBaseFailure
|
|
% \IfThisCommonLabelBase{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}
|
|
\OptionVName{version}{Wert}
|
|
\OptionValue{version}{first}
|
|
\OptionValue{version}{last}
|
|
\end{Declaration}
|
|
\IfThisCommonLabelBase{scrextend}{Bei }{Seit }%
|
|
\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 besteht bei \Package{typearea} }{%
|
|
\IfThisCommonLabelBase{maincls}{%
|
|
Version~2.96a besteht bei \KOMAScript{} }{%
|
|
\IfThisCommonLabelBase{scrlttr2}{%
|
|
Version~2.9t besteht bei \Class{scrlttr2}\OnlyAt{\Class{scrlttr2}} }{%
|
|
\IfThisCommonLabelBase{scrextend}{\Package{scrextend} besteht }{%
|
|
\InteralCommonFileUsageError }%
|
|
}%
|
|
}%
|
|
}%
|
|
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 sie jeweils
|
|
entsprechend der Anpassungen der neusten
|
|
Version\IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{ der Klasse}{} zu setzen
|
|
ist. Zu welcher Version Kompatibilität herzustellen ist, wird dabei über die
|
|
Option \Option{version} festgelegt. Kompatibilität zur ältesten unterstützten
|
|
\KOMAScript-Version kann mit
|
|
\OptionValue{version}{first}\important{\OptionValue{version}{first}} oder
|
|
\OptionValue{version}{2.9} oder \OptionValue{version}{2.9t} erreicht
|
|
werden. Bei Angabe einer unbekannten Version als \PName{Wert} wird eine
|
|
Warnung ausgegeben und sicherheitshalber \OptionValue{version}{first}
|
|
angenommen.
|
|
|
|
Mit \OptionValue{version}{last}\important{\OptionValue{version}{last}}%
|
|
\textnote{Voreinstellung} kann die jeweils neuste Version ausgewählt
|
|
werden. In diesem Fall wird also auf rückwirkende Kompatibilität
|
|
verzichtet. Wird die Option ohne Wertangabe verwendet, so wird ebenfalls
|
|
\PValue{last} angenommen. \ChangedAt{v3.01a}{\Class{scrbook}\and
|
|
\Class{scrreprt}\and \Class{scrartcl}\and \Class{scrlttr2}\and
|
|
\Package{scrextend}}Dies entspricht auch der
|
|
Voreinstellung\IfThisCommonLabelBase{scrextend}{}{, solange keine obsolete
|
|
Option verwendet wird}.
|
|
|
|
\IfThisCommonLabelBase{scrextend}{% scrextend kennt keine obsoleten Optionen
|
|
}{%
|
|
Bei\textnote{Achtung!} der Verwendung einer obsoleten Option von
|
|
\KOMAScript~2 setzt \KOMAScript~3 automatisch
|
|
\OptionValue{version}{first}. In der dabei ausgegebenen Warnung wird
|
|
erklärt, wie man diese Kompatibilitätsumschaltung verhindern
|
|
kann. Alternativ kann man auch nach der obsoleten Option selbst eine
|
|
abweichende Einstellung für Option \Option{version} wählen.%
|
|
}
|
|
|
|
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\textnote{Tipp!} auch im Fehlerfall
|
|
unbedingte Umbruchkompatibilität benötigt, sollte stattdessen mit dem Dokument
|
|
auch die verwendete \KOMAScript-Version archivieren.
|
|
|
|
\IfThisCommonLabelBase{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\textnote{Achtung!} ist zu beachten, dass die Option \Option{version} nach
|
|
dem Laden %
|
|
\IfThisCommonLabelBaseOneOf{maincls,scrlttr2}{der Klasse}{%
|
|
des Pakets \IfThisCommonLabelBase{typearea}{\Package{typearea}}{%
|
|
\IfThisCommonLabelBase{scrextend}{\Package{scrextend}}{%
|
|
\InternalCommonFileUsageError }%
|
|
}%
|
|
} nicht mehr verändert werden kann. Das Setzen mit
|
|
\DescRef{\ThisCommonLabelBase.cmd.KOMAoptions} oder
|
|
\DescRef{\ThisCommonLabelBase.cmd.KOMAoption} ist
|
|
% Umbruchkorrektur!!!!
|
|
\IfThisCommonLabelBaseNotOneOf{maincls,scrlttr2,typearea}{für diese Option }{}%
|
|
daher nicht vorgesehen.%
|
|
%
|
|
\EndIndexGroup
|
|
%
|
|
\EndIndexGroup
|
|
|
|
\phantomsection
|
|
\label{sec:\ThisCommonLabelBase.compatibilityOptions.end}
|
|
\endinput
|
|
|
|
%%% Local Variables:
|
|
%%% mode: latex
|
|
%%% coding: utf-8
|
|
%%% TeX-master: "../guide"
|
|
%%% End:
|
|
|