From 9b219d1b664067729034647a4b37626cf2bf5e26 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Thu, 26 Dec 2013 23:18:36 +0000
Subject: koma-script (26dec13)

git-svn-id: svn://tug.org/texlive/trunk@32489 c570f23f-e606-0410-a88d-b1316a301751
---
 .../latex/koma-script/scrkernel-miscellaneous.dtx  | 598 +++++++++++++++++++++
 1 file changed, 598 insertions(+)
 create mode 100644 Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx

(limited to 'Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx')

diff --git a/Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx b/Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx
new file mode 100644
index 00000000000..3a3ff52eb79
--- /dev/null
+++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx
@@ -0,0 +1,598 @@
+% \CheckSum{223}
+% \iffalse meta-comment
+% ======================================================================
+% scrkernel-miscellaneous.dtx
+% Copyright (c) Markus Kohm, 2002-2013
+%
+% 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.
+% ----------------------------------------------------------------------
+% scrkernel-miscellaneous.dtx
+% Copyright (c) Markus Kohm, 2002-2013
+%
+% 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.
+% ======================================================================
+% \fi
+%
+% \CharacterTable
+%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%   Digits        \0\1\2\3\4\5\6\7\8\9
+%   Exclamation   \!     Double quote  \"     Hash (number) \#
+%   Dollar        \$     Percent       \%     Ampersand     \&
+%   Acute accent  \'     Left paren    \(     Right paren   \)
+%   Asterisk      \*     Plus          \+     Comma         \,
+%   Minus         \-     Point         \.     Solidus       \/
+%   Colon         \:     Semicolon     \;     Less than     \<
+%   Equals        \=     Greater than  \>     Question mark \?
+%   Commercial at \@     Left bracket  \[     Backslash     \\
+%   Right bracket \]     Circumflex    \^     Underscore    \_
+%   Grave accent  \`     Left brace    \{     Vertical bar  \|
+%   Right brace   \}     Tilde         \~}
+%
+% \iffalse
+%%% From File: $Id: scrkernel-miscellaneous.dtx 1529 2013-12-03 07:36:57Z mjk $
+%<*driver>
+% \fi
+\ProvidesFile{scrkernel-miscellaneous.dtx}[2013/12/08 v3.12 KOMA-Script 
+                            (miscellaneous, maybe everything or nothing)]
+% \iffalse
+\documentclass[halfparskip-]{scrdoc}
+\usepackage[english,ngerman]{babel}
+\usepackage[latin1]{inputenc}
+\CodelineIndex
+\RecordChanges
+\GetFileInfo{scrkernel-miscellaneous.dtx}
+\title{\KOMAScript{} \partname\ \texttt{\filename}%
+  \footnote{Dies ist Version \fileversion\ von Datei
+    \texttt{\filename}.}}
+\date{\filedate}
+\author{Markus Kohm}
+
+\begin{document}
+  \maketitle
+  \tableofcontents
+  \DocInput{\filename}
+\end{document}
+%</driver>
+% \fi
+%
+% \selectlanguage{ngerman}
+%
+% \changes{v2.95}{2002/07/01}{%
+%   erste Version aus der Aufteilung von \texttt{scrclass.dtx}}
+%
+% \section{Verschiedenes}
+%
+% Es gibt eine ganze Menge für das sich einzeln keine eigene Datei
+% lohnt oder eine Einordnunge schwierig ist. All das nennen wird
+% "`Verschiedenes"'.
+%
+% \subsection{Erweiterung der Internationalisierung}
+%
+% \changes{v2.2c}{1995/05/25}{Anpassung an CJK von Werner Lemberg.}
+%
+% Die Standardnamen wie \cs{figurename} etc. sind nicht immer
+% ausreichend, da manche Sprachen Zählwörter vor oder nach dem
+% jeweiligen Zähler einfügen  müssen (man denke da sogar im
+% Deutschen an "`Abbildung~1"' und "`Erste Abbildung"'). Desweiteren
+% werden bei manchen Sprachen die Zwischenräume anders gesetzt
+% bzw. sogar ganz unterdrückt. 
+%
+% Es gibt drei Ebenen, die man modifizieren kann, um verschiedenste
+% Sprachen zu implementieren: Ebene~1 besteht aus den hinl"anglich
+% bekannten Makros wie \cs{figurename} und alle weiteren Makros, die
+% z.\,B. \textsf{german} modifiziert. Desweiteren können die Makros
+% \cs{sectfont} etc. etwaige zusätzliche Fonts aktivieren. Ebene~2 ist
+% die zusätzliche Adaptierung von den Zählern selbst (\cs{thesection}
+% könnte z.\,B. chinesische Schriftzeichen ansprechen anstelle von
+% arabischen Ziffern). Die allgemeinste Form der dritten Ebene
+% besteht aus den Makros \cs{chaptermarkformat},
+% \cs{sectionmarkformat} etc. welche die Änderung der Reihenfolge von
+% Zähler und Titel sowie die genaue Kontrolle der Zwischenräume
+% etc. ermöglichen.
+%
+% Für die gängigen Sprachen können alle Makros für die dritte
+% Ebene identisch definiert werden. Bei Verwendung von "`exotischen"'
+% Sprachen, aber auch speziellen Darstellungen in den gängigen
+% Sprachen können diese Makros umdefiniert werden.
+%
+% Das Konzept für der Internationalisierung mit der dritten Ebene
+% wurde ursprünglich von Werner Lemberg\footnote{Werner Lemberg ist im
+% InterNet unter \texttt{a7621gac@awiuni11.bitnet} zu erreichen.}
+% entwickelt. Die "`caption files"' seines CJK-Pakets
+% (\textbf{C}hinesisch, \textbf{J}apanisch, \textbf{K}oreanisch) bauen
+% auf diesem Konzept auf. Damit ist \KOMAScript{} für alle möglichen
+% Sprachanpassungen bestens gerüstet. In der dritten Ebene wird
+% übrigens auch die Einhaltung der DUDEN-Regeln für die
+% Gliederungsnummern realisiert.
+%
+% \StopEventually{\PrintIndex\PrintChanges}
+%
+% \iffalse
+%<*option>
+% \fi
+%
+% \subsection{Optionen für Entwürfe}
+% 
+% \begin{option}{draft}
+%   \changes{v2.95}{2002/12/05}{mit \textsl{keyval} reimplementiert}
+% \begin{option}{final}
+%   \changes{v2.95}{2002/12/05}{obsolete Option}
+%   \changes{v2.97d}{2007/10/03}{\cs{PackageInfo} durch \cs{PackageInfoNoLine}
+%     ersetzt}
+%   \changes{v3.01a}{2008/11/21}{standard statt obsolet}
+%   \changes{v3.02c}{2008/02/17}{optionales Argument im Fall von
+%     \textsf{scrextend} gesetzt}
+%   \changes{v3.12}{2013/03/05}{Nutzung der Status-Signalisierung mit
+%     \cs{FamilyKeyStateProcessed}}%
+% Der einzige Unterschied zwischen Entwürfen und Endversionen ist aus
+% Sicht der Klassen, ob Zeilenüberhänge mit einem schwarzen Balken
+% angezeigt werden sollen oder nicht.
+%    \begin{macrocode}
+\KOMA@key{draft}[true]{%
+  \KOMA@set@ifkey{draft}{@tempswa}{#1}%
+  \ifx\FamilyKeyState\FamilyKeyStateProcessed
+    \if@tempswa
+      \setlength{\overfullrule}{5pt}%
+    \else
+      \setlength{\overfullrule}{\z@}%
+    \fi
+  \fi
+}
+\KOMA@DeclareStandardOption
+%<package&extend>[scrextend]
+{final}{draft=false}
+%    \end{macrocode}
+% \end{option}
+% \end{option}
+%
+%
+% \subsection{Optionen für Gleichungen}
+%
+% Briefe haben derzeit keine Gleichungen.
+% \iffalse
+%<*!letter>
+% \fi
+%
+%  \begin{option}{leqno}
+%  \begin{option}{fleqno}
+% Es können Gleichungsnummern links oder linksbündige Gleichungen
+% eingestellt werden.
+%    \begin{macrocode}
+%<*!extend>
+\DeclareOption{leqno}{\input{leqno.clo}}
+\DeclareOption{fleqn}{\input{fleqn.clo}}
+%</!extend>
+%    \end{macrocode}
+%  \end{option}
+%  \end{option}
+%
+% \iffalse
+%</!letter>
+% \fi
+%
+% \iffalse
+%</option>
+%<*execoption>
+% \fi
+%
+%
+% \subsection{Standardeinstellungen für die Optionen}
+%
+% Am Ende aller Optionen wird zunächst die Standardeinstellungen der
+% Optionen vorgenommen und dann alle Optionen ausgeführt. Dies
+% geschieht zwischen den Optionen und dem Körper dieser Datei.
+%
+% Es müssen die Standardoptionen festgelegt und alle Optionen
+% ausgewählt werden.
+% \changes{v2.97c}{2007/04/19}{Verwendung von \cs{KOMAExecuteOptions} an
+%   Stelle von \cs{KOMAoptions} und \cs{KOMAProcessOptions} an Stelle von
+%   \cs{ProcessOptions}}
+% \changes{v2.97c}{2007/04/19}{Optionen, die der Voreinstellung ohnehin
+%   entsprechen, werden nicht explizit gesetzt}
+% \changes{v2.97c}{2007/07/18}{Option \texttt{twoside} bei den
+%   Voreinstellungen rausgenommen}
+% \changes{v2.98c}{2008/03/10}{Option \texttt{headings!=big} zu den
+%   Voreinstellungen hinzugefügt}
+% \changes{v3.11c}{2013/03/04}{Option \texttt{headings!=big} nicht für die
+%   Briefklasse}
+%    \begin{macrocode}
+%<*!extend>
+\KOMAExecuteOptions{%
+  parskip=false,%
+%<!letter>  headings=big%
+}
+%</!extend>
+\KOMAProcessOptions\relax
+%    \end{macrocode}
+%
+%
+% \iffalse
+%</execoption>
+%<*body>
+% \fi
+%
+%
+% \subsection{Temporäre Umschaltung zwischen ein- und zweispaltigem
+%   Satz}
+%
+% Briefe sind immer einspaltig, benötigen also den Schalter nicht.
+% \iffalse
+%<*!letter>
+% \fi
+%
+%  \begin{macro}{\if@restonecol}
+%  \begin{macro}{\@restonecoltrue}
+%  \begin{macro}{\@restonecolfalse}
+% Damit innerhalb einer Umgebung lokal auf ein- oder zweispaltigen
+% Satz umgeschaltet werden kann, wird ein Schalter benötigt. Dieser
+% wird dann dafür verwendet, sich zu merken, dass eine Umschaltung
+% stattgefunden hat und am Ende der Umgebung wieder aufzuheben
+% ist. Der Schalter wird nicht in Umgebungen verwendet, die
+% geschachtelt werden. Verwendung findet er beispielsweise für
+% Titelseiten und das Inhaltsverzeichnis.
+%    \begin{macrocode}
+%<*!extend>
+\newif\if@restonecol
+%</!extend>
+%<*extend>
+\scr@ifundefinedorrelax{if@restonecol}{%
+  \expandafter\newif\csname if@restonecol\endcsname
+  \@restonecolfalse
+}{}
+%</extend>
+%    \end{macrocode}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%
+% \iffalse
+%</!letter>
+% \fi
+%
+% \subsection{Definitionen für den schlauen Spruch}
+%
+% Den schlauen Spruch gibt es nicht bei Briefen.
+% \iffalse
+%<*!letter>
+% \fi
+%
+% \begin{macro}{\dictum}
+%   \changes{v2.8q}{2001/20/04}{neu}
+%   \changes{v2.9l}{2003/01/28}{\cs{edef} durch \cs{def} ersetzt}
+%   \changes{v2.9q}{2004/04/19}{zur Vermeidung von Problemen durch
+%     \cs{raggeddictum} Gruppe eingef"ugt}
+% \begin{macro}{\dictumwidth}
+%   \changes{v2.8q}{2001/20/04}{neu}
+% \begin{macro}{\raggeddictum}
+%   \changes{v2.8q}{2001/20/04}{neu}
+% \begin{macro}{\raggeddictumtext}
+%   \changes{v2.8q}{2001/20/04}{neu}
+% \begin{macro}{\raggeddictumauthor}
+%   \changes{v2.8q}{2001/20/04}{neu}
+% \begin{KOMAfont}{dictum}
+%   \changes{v2.8q}{2001/20/04}{neues Element}
+% \begin{KOMAfont}{dictumtext}
+%   \changes{v2.8q}{2001/20/04}{neues Element}
+% \begin{KOMAfont}{dictumauthor}
+%   \changes{v2.8q}{2001/20/04}{neues Element}
+% \begin{macro}{\dictumauthorformat}
+%   \changes{v2.8q}{2001/20/04}{neu}
+% \begin{macro}{\dictumrule}
+%   \changes{v3.10}{2011/09/02}{neu}
+%   Ein \emph{dictum} ist ein Spruch. Er besteht aus dem Spruch selbst
+%   und verfügt optional über einen Autor, der dann mit einer Linie
+%   abgetrennt wird. Gibt es keinen Autor, gibt es auch keine Linie. Die
+%   Schriften für Autor und Spruch können getrennt voneinander
+%   eingestellt werden. Die Anordnung des Spruchs wird durch
+%   \cs{raggeddictumtext} gesetzt. Die des Autors durch
+%   \cs{raggeddictumauthor}. Die Formatierung selbst geschieht mit dem
+%   Makro \cs{dictumauthorformat}. Vordefiniert ist, den Namen des
+%   Autors in runde Klammern zu setzen. Die gesamte Geschichte von Text
+%   und Autor wird in eine Box der Breite \cs{dictumwidth}
+%   gepackt. Diese wird mit \cs{raggeddictum} angeordnet.
+%    \begin{macrocode}
+\newcommand{\dictum}[2][]{\par%
+  \begingroup
+    \raggeddictum\parbox{\dictumwidth}{%
+      {\@dictumfont{\raggeddictumtext #2\strut\par}%
+        \def\@tempa{#1}\ifx\@tempa\@empty\else%
+          {\raggeddictumtext\dictumrule}%
+          \raggeddictumauthor\@dictumauthorfont\dictumauthorformat{#1}%
+          \strut\par%
+        \fi%
+      }%
+    }\par%
+  \endgroup
+}
+\newcommand*{\dictumrule}{\vskip-1ex\hrulefill\par}%
+\newcommand*{\dictumwidth}{.3333\textwidth}
+\newcommand*{\raggeddictum}{\raggedleft}
+\newcommand*{\dictumauthorformat}[1]{(#1)}
+\newcommand*{\raggeddictumtext}{\raggedright}
+\newcommand*{\raggeddictumauthor}{\raggedleft}
+\newkomafont{dictum}{\normalfont\normalcolor\sffamily\small}
+\newkomafont{dictumauthor}{\itshape}
+\aliaskomafont{dictumtext}{dictum}
+%    \end{macrocode}
+%  \end{macro}
+%  \end{macro}
+%  \end{KOMAfont}
+%  \end{KOMAfont}
+%  \end{KOMAfont}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%
+% \iffalse
+%</!letter>
+% \fi
+%
+% \subsection{Längen für Minipages und Rahmen}
+%
+%  \begin{Length}{@mpfootins}
+%  \begin{Length}{fboxsep}
+%  \begin{Length}{fboxrule}
+% \cs{@mpfootins} entspricht \cs{footins} in Minipages. \cs{fboxsep}
+% ist der Abstand zwischen dem Rahmen einer \cs{fbox} oder
+% \cs{framebox} und dem Inhalt, \cs{fboxrule} ist die Dicke des
+% Rahmens.
+%    \begin{macrocode}
+%<*!extend>
+\setlength{\skip\@mpfootins}{\skip\footins}
+\setlength\fboxsep{3\p@}
+\setlength\fboxrule{.4\p@}
+%</!extend>
+%    \end{macrocode}
+%  \end{Length}
+%  \end{Length}
+%  \end{Length}
+%
+%
+% \subsection{Gleichungen}
+%
+% Gleichungen gibt es bei Briefen nicht.
+% \iffalse
+%<*!letter>
+% \fi
+%
+% \begin{macro}{\theequation}
+%   \changes{v2.97e}{2007/11/23}{Kapitelnummer nur im Hauptteil}
+% Darstellung der Gleichungsnummer:
+%    \begin{macrocode}
+%<*!extend>
+%<book|report>\@addtoreset{equation}{chapter}
+\renewcommand*\theequation{%
+%<*book>
+  \ifnum \scr@compatibility>\@nameuse{scr@v@2.97d}\relax
+    \if@mainmatter\thechapter.\fi
+  \else
+%</book>
+%<book|report>  \thechapter.%
+%<book>  \fi
+  \@arabic\c@equation
+}
+%</!extend>
+%    \end{macrocode}
+% \end{macro}
+%
+% \iffalse
+%</!letter>
+% \fi
+%
+% \subsection{Definitionen zur Feststellung von linken und rechten
+%   Seiten}
+%
+%  \begin{macro}{\ifthispageodd}
+%    \changes{v2.8q}{2001/11/22}{neu}
+% Häufig wird mit \cs{ifodd}\cs{value\{page\}} getestet, ob man sich
+% gerade auf einer rechten oder einer linken Seite
+% befindet. Dummerweise funktioniert das aber genaugenommen nur
+% zufällig manchmal. Ob man sich auf einer linken oder einer rechten
+% Seite befindet, ergibt sich nämlich erst bei der Ausgabe. Deshalb
+% wird hier ein Makro definiert, das über eine Art Label-Mechanismus
+% arbeitet. Es werden bewusst keine echten \cs{label} und \cs{pageref}
+% verwendet, weil diese Befehle von verschiedenen Paketen manipuliert
+% werden.
+%
+%  \begin{macro}{\new@tpo@label}
+%    \changes{v2.8q}{2001/11/22}{neu (intern)}
+%    \changes{v2.95b}{2006/07/28}{verwendet jetzt \cs{@newl@bel}}
+% Definition eines neuen \emph{true}-\emph{page}-\emph{odd} Labels.
+% Wird in der \texttt{aux}-Datei verwendet.
+%    \begin{macrocode}
+\newcommand*{\new@tpo@label}{\@newl@bel{tpo}}
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\scr@tpo}
+%    \changes{v2.8q}{2001/11/22}{neu (intern)}
+% Es wird ein Zähler benötigt, der die aktuelle Nummer der Anfrage
+% beinhaltet.
+%    \begin{macrocode}
+\newcommand*{\scr@tpo}{0}
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\is@thispageodd}
+%    \changes{v2.8q}{2001/11/22}{neu (intern)}
+%    \changes{v2.9l}{2003/01/28}{renamed \cs{if@thispageodd}}
+%    \changes{v2.95b}{2006/07/28}{basiert nun auf \cs{@newl@bel}}
+% Dieses Makro macht die eigentliche Arbeit. Es funktioniert nicht wie
+% ein normales \cs{iffalse} oder \cs{iftrue}, denn es kann nicht
+% geschachtelt innerhalb anderer \cs{if\dots} \dots \cs{fi}
+% Klammerungen verwendet werden. Es sollte daher niemals außerhalb von
+% \cs{ifthispageodd} verwendet werden. Da über die \texttt{aux}-Datei
+% gearbeitet wird, funktioniert das Ganze nur, wenn die Datei auch
+% geschrieben wird und min. zwei \LaTeX-Läufe erfolgen.
+%    \begin{macrocode}
+\newcommand*{\is@thispageodd}{%
+  \@bsphack
+  \begingroup
+    \@tempcnta=\scr@tpo
+    \advance\@tempcnta by\@ne
+    \xdef\scr@tpo{\the\@tempcnta}%
+    \protected@write\@auxout{\let\arabic\relax}{%
+      \string\new@tpo@label{\scr@tpo}{\arabic{page}}}%
+    \expandafter\ifx\csname tpo@\scr@tpo\endcsname\relax
+      \protect\G@refundefinedtrue
+%<!extend>      \ClassWarning{\KOMAClassName}{%
+%<extend>      \PackageWarning{scrextend}{%
+        odd/even page label number \scr@tpo\space undefined}%
+      \edef\@tempa{\the\value{page}}%
+    \else
+      \edef\@tempa{\csname tpo@\scr@tpo\endcsname}%
+    \fi
+    \ifodd\number\@tempa
+      \aftergroup\thispagewasoddtrue
+    \else
+      \aftergroup\thispagewasoddfalse
+    \fi
+  \endgroup
+  \@esphack
+}
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\ifthispagewasodd}
+%    \changes{v2.9l}{2003/01/20}{neuer Schalter}
+%  \begin{macro}{\thispagewasoddtrue}
+%  \begin{macro}{\thispagewasoddfalse}
+% Dieser Schalter speichert auf Rolf Niepraschks speziellen Wunsch die
+% letzte Entscheidung von \cs{ifthispageodd}. Vor dem ersten
+% \cs{ifthispageodd} ist der Zustand undefiniert. Es ist auch nicht
+% garantiert, dass die Entscheidung noch zutreffend ist.
+%    \begin{macrocode}
+\newif\ifthispagewasodd
+%    \end{macrocode}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%
+% Nun fehlt nur noch das eigentliche oben versprochene
+% Anwendermacro. Das ist nun aber auch kein Problem mehr:
+%    \begin{macrocode}
+\newcommand{\ifthispageodd}{%
+  \is@thispageodd
+  \ifthispagewasodd
+    \expandafter\@firstoftwo
+  \else
+    \expandafter\@secondoftwo
+  \fi
+}
+%    \end{macrocode}
+%  \end{macro}
+%
+%
+% \subsection{Definitionen für tiefer gestellten Text}
+%
+% \begin{macro}{\textsubscript}
+%   \changes{v2.8h}{2001/07/19}{neu}%
+% \begin{macro}{\@textsubscript}
+%   \changes{v2.8h}{2001/07/19}{neu (intern)}%
+%   \changes{v3.10}{2011/09/05}{\cs{providecommand} statt \cs{newcommand},
+%     damit das auch noch funktioniert, wenn \textsf{scrextend} nach
+%     \textsf{fixltx2e} geladen wird}%
+% Im \LaTeX-Kern wird zwar ein Makro \cs{textsuperscript} definiert,
+% um Texte hochstellen zu können, die entsprechende Anweisung zum
+% Tiefstellen fehlt jedoch. Das wird hier nachgeholt, wobei nahezu
+% unverändert auf die Definition aus dem \LaTeX-Kern zurückgegriffen
+% wird.
+%    \begin{macrocode}
+\DeclareRobustCommand*\textsubscript[1]{%
+  \@textsubscript{\selectfont#1}%
+}
+\providecommand*{\@textsubscript}[1]{%
+  {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}%
+}
+%    \end{macrocode}
+%  \end{macro}
+%  \end{macro}
+%
+%
+%
+% \subsection{Warnung vor Paketen}
+% \label{sec:packagewarning}
+%
+% \changes{v3.12}{2013/07/08}{neue Warnungen vor bestimmten Paketen}
+% \begin{macro}{\scr@package@not@recommended}
+%   \changes{v3.12}{2013/07/08}{neu (intern)}
+% Beim Laden verschiedener Pakete wird nun eine Warnung ausgegeben. In der
+% Regel mit einer Alternativempfehlung.
+%    \begin{macrocode}
+%<*class>
+\newcommand*{\scr@package@not@recommended}[2]{%
+  \BeforePackage{#1}{%
+    \ClassWarning{\KOMAClassName}{%
+      Usage of package `#1' together\MessageBreak
+      with a KOMA-Script class is not recommended.\MessageBreak
+      \if\relax\detokenize{#2}\relax\else
+        I'd suggest to use #2.\MessageBreak
+      \fi
+      Nevertheless, using requested\MessageBreak
+      package `#1'%
+    }%
+  }%
+}
+\scr@package@not@recommended{emptypage}{%
+  option\MessageBreak
+  `cleardoublepage' with one of it's\MessageBreak
+  several values}
+\scr@package@not@recommended{parskip}{%
+  option\MessageBreak
+  `parskip' with one of it's several values}
+\scr@package@not@recommended{fancyhdr}{%
+  \MessageBreak
+  package `scrpage2' or `scrlayer-scrpage'}
+\scr@package@not@recommended{titlesec}{%
+  the package only\MessageBreak
+  if you really need it, because it breaks several\MessageBreak
+  KOMA-Script features, i.e., option `headings' and\MessageBreak
+  the extended optional argument of the section\MessageBreak
+  commands
+}
+%</class>
+%    \end{macrocode}
+% \end{macro}^^A \scr@package@not@recommended
+%
+%
+% \iffalse
+%</body>
+% \fi
+%
+% \Finale
+%
+\endinput
+%
+% end of file `scrkernel-miscellaneous.dtx'
+%%% Local Variables:
+%%% mode: doctex
+%%% TeX-master: t
+%%% End:
-- 
cgit v1.2.3

