From 9b219d1b664067729034647a4b37626cf2bf5e26 Mon Sep 17 00:00:00 2001 From: Karl Berry 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} +% +% \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 +%[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}} +% +% \end{macrocode} +% \end{option} +% \end{option} +% +% \iffalse +% +% \fi +% +% \iffalse +% +%<*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,% +% headings=big% +} +% +\KOMAProcessOptions\relax +% \end{macrocode} +% +% +% \iffalse +% +%<*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> +\scr@ifundefinedorrelax{if@restonecol}{% + \expandafter\newif\csname if@restonecol\endcsname + \@restonecolfalse +}{} +% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \iffalse +% +% \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 +% +% \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@} +% +% \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> +%\@addtoreset{equation}{chapter} +\renewcommand*\theequation{% +%<*book> + \ifnum \scr@compatibility>\@nameuse{scr@v@2.97d}\relax + \if@mainmatter\thechapter.\fi + \else +% +% \thechapter.% +% \fi + \@arabic\c@equation +} +% +% \end{macrocode} +% \end{macro} +% +% \iffalse +% +% \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 +% \ClassWarning{\KOMAClassName}{% +% \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 +} +% +% \end{macrocode} +% \end{macro}^^A \scr@package@not@recommended +% +% +% \iffalse +% +% \fi +% +% \Finale +% +\endinput +% +% end of file `scrkernel-miscellaneous.dtx' +%%% Local Variables: +%%% mode: doctex +%%% TeX-master: t +%%% End: -- cgit v1.2.3