summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/koma-script/scrkernel-footnotes.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrkernel-footnotes.dtx')
-rw-r--r--Master/texmf-dist/source/latex/koma-script/scrkernel-footnotes.dtx204
1 files changed, 125 insertions, 79 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrkernel-footnotes.dtx b/Master/texmf-dist/source/latex/koma-script/scrkernel-footnotes.dtx
index f1745e3e565..51d0a99df1a 100644
--- a/Master/texmf-dist/source/latex/koma-script/scrkernel-footnotes.dtx
+++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-footnotes.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{401}
+% \CheckSum{434}
% \iffalse meta-comment
% ======================================================================
% scrkernel-footnotes.dtx
-% Copyright (c) Markus Kohm, 2002-2013
+% Copyright (c) Markus Kohm, 2002-2015
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-footnotes.dtx
-% Copyright (c) Markus Kohm, 2002-2013
+% Copyright (c) Markus Kohm, 2002-2015
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,11 +55,23 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-footnotes.dtx 1380 2013-10-01 15:31:55Z mjk $
+%%% From File: $Id: scrkernel-footnotes.dtx 2011 2015-03-17 11:39:55Z kohm $
%<*driver>
% \fi
-\ProvidesFile{scrkernel-footnotes.dtx}[2013/03/05 v3.12 KOMA-Script
- (footnotes)]
+\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
+\begingroup
+ \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
+ \filedate$Date: 2015-03-17 12:39:55 +0100 (Tue, 17 Mar 2015) $
+ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
+ \filerevision$Revision: 1962 $
+ \edef\reserved@a{%
+ \noexpand\endgroup
+ \noexpand\ProvidesFile{scrkernel-footnotes.dtx}%
+ [\filedate\space\filerevision\space
+ KOMA-Script source
+ (footnotes)]
+ }%
+\reserved@a
% \iffalse
\documentclass[halfparskip-]{scrdoc}
\usepackage[english,ngerman]{babel}
@@ -100,11 +112,12 @@
% \subsection{Option}
%
% \begin{option}{footnotes}
-% \changes{v2.98c}{2008/02/01}{Neue Option für Mehrfachfußnoten}%
+% \changes{v2.98c}{2008/02/01}{Neue Option für Mehrfachfußnoten}^^A
% \changes{v3.10}{2011/09/13}{\cs{let} durch \cs{def} ersetzt, damit die
-% Option auch als Klassenoption funktioniert}%
+% Option auch als Klassenoption funktioniert}^^A
% \changes{v3.12}{2013/03/05}{Status-Signalisierung mit
-% \cs{FamilyKeyStateProcessed}}%
+% \cs{FamilyKeyStateProcessed}}^^A
+% \changes{v3.17}{2015/03/11}{interne Wert-Speicherung}^^A
% Mehrfachfußnoten gibt es dann, wenn zu einer Textstelle mehrere Fußnoten
% hintereinander gesetzt werden. Normalerweise werden die einfach ohne
% Abstand hintereinander geklatscht. Man kann dann aber die beiden Fußnoten
@@ -132,20 +145,49 @@
\def\FN@mf@prepare{\scr@mf@prepare}%
\def\scr@footmisc@options{multiple}%
\FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{footnotes}{multiple}%
}{%
\ifstr{#1}{nomultiple}{%
\let\@footnotemark\scr@saved@footnotemark
\let\FN@mf@prepare\relax
\let\scr@footmisc@options\@empty
\FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{footnotes}{nomultiple}%
}{%
\KOMA@unknown@keyval{footnotes}{#1}{`multiple' and `nomultiple'}%
}%
}%
}
+\AtBeginDocument{%
+ \ifx\@footnotemark\scr@saved@footnotemark
+ \KOMA@kav@removekey{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{footnotes}%
+ \KOMA@kav@add{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{footnotes}{nomultiple}%
+ \else\ifx\@footnotemark\scr@footnotemark
+ \KOMA@kav@removekey{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{footnotes}%
+ \KOMA@kav@add{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{footnotes}{multiple}%
+ \fi\fi
+}
% \end{macrocode}
% \begin{macro}{\scr@footmisc@options}
-% \changes{v2.98c}{2008/02/14}{Neuer (intern)}
+% \changes{v2.98c}{2008/02/14}{Neuer (intern)}^^A
% Für etwas mehr Kompatibilität mit \textsf{footmisc}, wird die aktuelle
% Einstellung der \texttt{multifootnotes} an das Paket weitergereicht.
% \begin{macrocode}
@@ -154,9 +196,9 @@
% \end{macrocode}
% \end{macro}
% \begin{macro}{\scr@saved@footnotemark}
-% \changes{v2.98c}{2008/02/01}{Neu (intern)}
+% \changes{v2.98c}{2008/02/01}{Neu (intern)}^^A
% \begin{macro}{\scr@footnotemark}
-% \changes{v2.98c}{2008/02/01}{Neu (intern)}
+% \changes{v2.98c}{2008/02/01}{Neu (intern)}^^A
% \begin{macrocode}
\newcommand*{\scr@saved@footnotemark}{%
\leavevmode
@@ -192,7 +234,7 @@
% eingefügt}
% \changes{v2.95}{2002/01/07}{\texttt{.05fil} statt
% \texttt{.005fil}}
-% \changes{v3.06}{2010/04/03}{die neuen Längenmakros werden genutzt}
+% \changes{v3.06}{2010/04/03}{die neuen Längenmakros werden genutzt}^^A
% \changes{v3.07}{2010/09/14}{neues Font-Element \texttt{footnoterule} wird
% verwendet}
% Im Fall, dass \cs{raggedbottom} verwendet wird, die Fußnotenlinie
@@ -213,20 +255,22 @@
%</class>
% \end{macrocode}
% \begin{macro}{\ftn@rule@test@values}
-% \changes{v3.06}{2010/04/03}{neu (intern)}
+% \changes{v3.06}{2010/04/03}{neu (intern)}^^A
% Test, ob die Einstellungen für die Längen der Fußnotenlinie halbwegs
% vernünftig sind.
% \begin{macrocode}
\newcommand*{\ftn@rule@test@values}{%
\ifdim\ftn@rule@height <\z@
- \ClassWarning{\KOMAClassName}{%
+%<package&extend> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
You might get into trouble, because the\MessageBreak
height of the footnote rule has a value\MessageBreak
less than 0%
}%
\else
\ifdim\ftn@rule@height >\dimexpr\skip\footins -2.6\p@\relax
- \ClassWarning{\KOMAClassName}{%
+%<package&extend> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
You might get into trouble, because the\MessageBreak
height of the footnote rule has a value\MessageBreak
greater than \the\dimexpr\skip\footins -2.6\p@\relax
@@ -234,14 +278,16 @@
\fi
\fi
\ifdim\ftn@rule@width <\z@
- \ClassWarning{\KOMAClassName}{%
+%<package&extend> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
You might get into trouble, because the width\MessageBreak
or length of the footnote rule has a value\MessageBreak
less than 0pt%
}%
\else
\ifdim\ftn@rule@width >\columnwidth
- \ClassWarning{\KOMAClassName}{%
+%<package&extend> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
You might get into trouble, because the width\MessageBreak
or length of the footnote rule has a value\MessageBreak
greater than \string\columnwidth
@@ -261,21 +307,21 @@
% \end{macrocode}
% \end{KOMAfont}
% \begin{macro}{\ftn@rule@width}
-% \changes{v3.06}{2010/04/03}{neu (intern)}
+% \changes{v3.06}{2010/04/03}{neu (intern)}^^A
% Die Länge der Fußnotentrennlinie.
% \begin{macrocode}
\newcommand*{\ftn@rule@width}{.4\columnwidth}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\ftn@rule@height}
-% \changes{v3.06}{2010/04/03}{neu (intern)}
+% \changes{v3.06}{2010/04/03}{neu (intern)}^^A
% Die Höhe der Fußnotentrennlinie (die Tiefe ist immer 0).
% \begin{macrocode}
\newcommand*{\ftn@rule@height}{.4\p@}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\setfootnoterule}
-% \changes{v3.06}{2010/04/03}{neue Anweisung}
+% \changes{v3.06}{2010/04/03}{neue Anweisung}^^A
% Das erste, optionale Argument ist die Höhe der Linie, das zweite nicht
% optionale die Länge.
% \begin{macrocode}
@@ -292,19 +338,19 @@
% \end{macro}
% \end{macro}
%
-% \begin{Counter}{footnote}
+% \begin{Counter}{footnote}
% Der Fußnotenzähler wird mit \cs{chapter} zurückgesetzt, die Fußnoten
% werden also kapitelweise nummeriert.
% \begin{macrocode}
%<book|report>\@addtoreset{footnote}{chapter}
% \end{macrocode}
-% \end{Counter}
+% \end{Counter}
%
-% \begin{macro}{\deffootnote}
-% \changes{v2.4l}{1997/02/06}{neu}
-% \changes{v2.95}{2002/07/09}{Absatzeinzug korrigiert}
-% \changes{v2.9l}{2003/01/28}{\cs{edef}\cs{@tempa} ersetzt}
-% \changes{v2.9q}{2004/01/31}{\cs{ftn@font} erlaubt aus Gr"unden der
+% \begin{macro}{\deffootnote}
+% \changes{v2.4l}{1997/02/06}{neu}^^A
+% \changes{v2.95}{2002/07/09}{Absatzeinzug korrigiert}^^A
+% \changes{v2.9l}{2003/01/28}{\cs{edef}\cs{@tempa} ersetzt}
+% \changes{v2.9q}{2004/01/31}{\cs{ftn@font} erlaubt aus Gr"unden der
% Kompatibilität mit dem \textsl{footnote} Paket kein Argument mehr}
% Dieses Makro zur Definition der Gestalt von Fußnoten erlaubt einen
% optionalen und erwartet drei weitere Parameter. Der erste, optionale
@@ -342,31 +388,31 @@
\ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
}%
% \end{macrocode}
-% \begin{macro}{\@@makefnmark}
-% \changes{v2.4l}{1997/02/06}{neu}
+% \begin{macro}{\@@makefnmark}
+% \changes{v2.4l}{1997/02/06}{neu}^^A
% Makro zum Setzen der Fußnotenmarkierung in der Fußnote:
% \begin{macrocode}
\def\@@makefnmark{\hbox{\ftnm@font{#4}}}%
% \end{macrocode}
-% \end{macro}
+% \end{macro}
% \begin{macrocode}
}
% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\ftn@font}
-% \changes{v2.8q}{2001/11/16}{neu (intern)}
-% \begin{macro}{\scr@fnt@footnote}
-% \changes{v2.8q}{2001/11/16}{neues Element \texttt{footnote}}
-% \begin{macro}{\ftnm@font}
-% \changes{v2.8q}{2001/11/16}{neu (intern)}
-% \begin{macro}{\scr@fnt@footnotenumber}
-% \changes{v2.8q}{2001/11/16}{neues Element
+% \end{macro}
+%
+% \begin{macro}{\ftn@font}
+% \changes{v2.8q}{2001/11/16}{neu (intern)}^^A
+% \begin{macro}{\scr@fnt@footnote}
+% \changes{v2.8q}{2001/11/16}{neues Element \texttt{footnote}}
+% \begin{macro}{\ftnm@font}
+% \changes{v2.8q}{2001/11/16}{neu (intern)}^^A
+% \begin{macro}{\scr@fnt@footnotenumber}
+% \changes{v2.8q}{2001/11/16}{neues Element
% \texttt{footnotenumber}}
-% \begin{macro}{\scr@fnt@footnotenlabel}
-% \changes{v2.8q}{2001/11/16}{neues Element \texttt{footnotelabel}}
-% \begin{macro}{\scr@fnt@instead@footnotetext}
-% \changes{v2.8q}{2001/11/16}{neuer Ersatz für Element
+% \begin{macro}{\scr@fnt@footnotenlabel}
+% \changes{v2.8q}{2001/11/16}{neues Element \texttt{footnotelabel}}
+% \begin{macro}{\scr@fnt@instead@footnotetext}
+% \changes{v2.8q}{2001/11/16}{neuer Ersatz für Element
% \texttt{footnotetext}}
% Das erste Element gibt die Schrift an, in der die Fußnote gesetzt
% wird. Davon abweichend kann mit dem zweiten Element die Schriftart
@@ -381,15 +427,15 @@
\newcommand*{\scr@fnt@footnotelabel}{\ftnm@font}
\newcommand*{\scr@fnt@instead@footnotetext}{footnote}
% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\deffootnotemark}
-% \changes{v2.4l}{1997/02/06}{neu}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\deffootnotemark}
+% \changes{v2.4l}{1997/02/06}{neu}^^A
% Makro zur Definition der Fußnotenmarkierung im Text:
% \begin{macrocode}
\newcommand*\deffootnotemark[1]{%
@@ -397,13 +443,13 @@
}
% \end{macrocode}
%
-% \begin{macro}{\ftntm@font}
-% \changes{v2.8q}{2001/11/16}{neu (intern)}
-% \begin{macro}{\scr@fnt@footnotereference}
-% \changes{v2.8q}{2001/11/16}{neues Element
+% \begin{macro}{\ftntm@font}
+% \changes{v2.8q}{2001/11/16}{neu (intern)}^^A
+% \begin{macro}{\scr@fnt@footnotereference}
+% \changes{v2.8q}{2001/11/16}{neues Element
% \texttt{footnotereference}}
-% \begin{macro}{\scr@fnt@footnoteref}
-% \changes{v2.8q}{2001/11/16}{neues Element \texttt{footnoteref}}
+% \begin{macro}{\scr@fnt@footnoteref}
+% \changes{v2.8q}{2001/11/16}{neues Element \texttt{footnoteref}}
% Dies ist die Schriftart der Fußnotenreferenz im Text. Auch hier kann
% ggf. ein Makro verwendet werden, das ein Argument erwartet.
% \begin{macrocode}
@@ -411,13 +457,13 @@
\newcommand*{\scr@fnt@footnotereference}{\ftntm@font}
\newcommand*{\scr@fnt@footnoteref}{\ftntm@font}
% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
%
% \begin{macro}{\FN@mf@check}
-% \changes{v2.98c}{2008/02/01}{Neu (intern)}
+% \changes{v2.98c}{2008/02/01}{Neu (intern)}^^A
% Dafür sorgen, dass hier ggf. der Trenner eingefügt wird.
% \begin{macrocode}
%<package>\providecommand*{\FN@mf@check}{%
@@ -432,7 +478,7 @@
% \end{macro}
%
% \begin{macro}{\scr@mf@prepare}
-% \changes{v2.98c}{2008/02/01}{Neu (intern)}
+% \changes{v2.98c}{2008/02/01}{Neu (intern)}^^A
% Damit |\FN@mf@check| informiert ist, dass es etwas zu tun hat.
% \begin{macrocode}
\newcommand*{\scr@mf@prepare}{%
@@ -441,7 +487,7 @@
}
% \end{macro}
% \begin{macro}{\F@mf@prepare}
-% \changes{v2.98c}{2008/02/14}{Neu (intern)}
+% \changes{v2.98c}{2008/02/14}{Neu (intern)}^^A
% Aus Gründen der Kompatibilität mit \textsf{footmisc} wird das dann
% vorsoglich auch noch definiert (und zwar als \cs{relax}, wenn es bisher noch
% nicht definiert ist).
@@ -450,10 +496,10 @@
% \end{macro}
%
% \begin{macro}{\@footnotetext}
-% \changes{v3.01a}{2008/11/22}{long}
+% \changes{v3.01a}{2008/11/22}{long}^^A
% \begin{macro}{\scr@saved@footnotetext}
-% \changes{v2.98c}{2008/02/01}{Neu (intern)}
-% \changes{v3.01a}{2008/11/22}{long}
+% \changes{v2.98c}{2008/02/01}{Neu (intern)}^^A
+% \changes{v3.01a}{2008/11/22}{long}^^A
% Auch hier muss dafür gesorgt werden, dass die Markierung erfolgt.
% \begin{macrocode}
\newcommand{\scr@saved@footnotetext}{}
@@ -496,7 +542,7 @@
% \end{macro}
%
% \begin{macro}{\multiplefootnoteseparator}
-% \changes{v2.98c}{2008/02/01}{Neu}
+% \changes{v2.98c}{2008/02/01}{Neu}^^A
% Das ist der formatierte Separator!
% \begin{macrocode}
\newcommand*{\multiplefootnoteseparator}{%
@@ -506,7 +552,7 @@
% \end{macro}
%
% \begin{macro}{\multfootsep}
-% \changes{v2.98c}{2008/02/01}{Neu}
+% \changes{v2.98c}{2008/02/01}{Neu}^^A
% Und hier \textsf{footmisc}-kompatibel unformatiert
% \begin{macrocode}
%<class>\newcommand*{\multfootsep}{,}
@@ -515,24 +561,24 @@
% \end{macro}
%
% \begin{macro}{\multiplefootnotemarker}
-% \changes{v2.98c}{2008/02/01}{Neu}
+% \changes{v2.98c}{2008/02/01}{Neu}^^A
% Das Markierungskerning wieder \textsf{footmisc}-kompatibel.
% \begin{macrocode}
\newcommand*{\multiplefootnotemarker}{3sp}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\thefootnotemark}
-% \changes{v2.4l}{1997/02/06}{neu}
+% \begin{macro}{\thefootnotemark}
+% \changes{v2.4l}{1997/02/06}{neu}^^A
% Makro, damit \cs{@thefnmark} auf Anwenderebene verfügbar wird:
% \begin{macrocode}
%<class>\newcommand*{\thefootnotemark}{\@thefnmark}
%<package>\providecommand*{\thefootnotemark}{\@thefnmark}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
% \changes{v2.4l}{1997/02/06}{Verwendung der neuen Makros zur
-% Fußnotengestaltgebung}
+% Fußnotengestaltgebung}^^A
% \begin{macro}{\@makefnmark}
% \changes{v3.10}{2011/09/27}{\textsf{scrextend} redefines \cs{@makefnmark}
% to use \cs{thefootnotemark}}
@@ -547,7 +593,7 @@
\deffootnotemark{\textsuperscript{\thefootnotemark}}
%<*package>
\else
- \IfFileExists{etoolbox.sty}{%
+ \IfFileExists{etoolbox.\@pkgextension}{%
\PackageInfo{scrextend}{%
unexpected definition of `\string\@makefnmark'.\MessageBreak
Trying to patch it%
@@ -577,7 +623,7 @@
% \subsection{Fußnotenreferenz}
%
% \begin{macro}{\footref}
-% \changes{v2.98c}{2008/02/01}{Neue Anweisung}
+% \changes{v2.98c}{2008/02/01}{Neue Anweisung}^^A
% Damit man nicht nur zu diesem Zweck das Paket \textsf{footmisc} laden muss,
% kann man jetzt auch mit \KOMAScript{} alleine Fußnoten setzen, die
% Referenzen auf andere Fußnoten sind. Der Code stammt einerseits aus footmisc