summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/koma-script/source/tocbasic.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/koma-script/source/tocbasic.dtx')
-rw-r--r--macros/latex/contrib/koma-script/source/tocbasic.dtx43
1 files changed, 34 insertions, 9 deletions
diff --git a/macros/latex/contrib/koma-script/source/tocbasic.dtx b/macros/latex/contrib/koma-script/source/tocbasic.dtx
index eae0e3ed91..44a222f81d 100644
--- a/macros/latex/contrib/koma-script/source/tocbasic.dtx
+++ b/macros/latex/contrib/koma-script/source/tocbasic.dtx
@@ -54,7 +54,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: tocbasic.dtx 3508 2020-07-08 08:45:20Z kohm $
+%%% From File: $Id: tocbasic.dtx 3518 2020-08-25 08:26:01Z kohm $
%<identify>%%% (run: identify)
%<prepare>%%% (run: prepare)
%<option>%%% (run: option)
@@ -65,7 +65,7 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2020-07-08 10:45:20 +0200 (Wed, 08 Jul 2020) $
+ \filedate$Date: 2020-08-25 10:26:01 +0200 (Tue, 25 Aug 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
\filerevision$Revision: 1962 $
\endgroup
@@ -764,10 +764,12 @@
% too. Here are basics and high level commands for this.
%
% \begin{macro}{\tocbasic@starttoc}
-% \changes{v3.17}{2015/03/23}{usage of feature \texttt{noparskipfake}}%^^A
-% \changes{v3.27}{2019/07/08}{hack to add \cs{par} at end of (main) file}%^^A
+% \changes{v3.17}{2015/03/23}{usage of feature \texttt{noparskipfake}}
+% \changes{v3.27}{2019/07/08}{hack to add \cs{par} at end of (main) file}
% \changes{v3.28}{2019/11/19}{\cs{iftocfeature} replaced by
-% \cs{Iftocfeature}}%^^A
+% \cs{Iftocfeature}}
+% \changes{v3.32}{2020/08/25}{replace \cs{par} hack by \cs{par} solution}}
+% \changes{v3.32}{2020/08/25}{reentrant warning}
% Some basics are done like setting up \cs{parskip}, \cs{parindent} and
% \cs{parfillskip}, a general hook will be called, an individual hook will
% be called, the toc will be started, an individual hook will be called, an
@@ -776,6 +778,16 @@
%<*body>
\newcommand*{\tocbasic@starttoc}[1]{%
\begingroup
+ \tocbasic@reentrant@warning
+ \def\tocbasic@reentrant@warning{%
+ \PackageWarning{tocbasic}{%
+ Loading one auxiliary file inside the setup context\MessageBreak
+ of another auxiliary file is not recommended.\MessageBreak
+ In this case settings for `\@currext' could also influence\MessageBreak
+ settings of `#1' and local states of `#1' can also\MessageBreak
+ influence local states of `\@currext'%
+ }%
+ }%
\edef\@currext{#1}%
\Iftocfeature{\@currext}{noparskipfake}{}{%
\ifvmode
@@ -790,16 +802,29 @@
\setlength{\parfillskip}{\z@\@plus 1fil}%
\csname tocbasic@@before@hook\endcsname
\csname tb@#1@before@hook\endcsname
- \let\tocbasic@saved@input\@input
- \def\@input##1{%
- \let\@input\tocbasic@saved@input\@input{##1}\par
- }%
\@starttoc{#1}%
+ \BeforeClosingMainAux{%
+ \addtocontents{#1}{%
+ \string\providecommand\string\tocbasic@end@toc@file{}%
+ \string\tocbasic@end@toc@file
+ }%
+ }%
+ \edef\@currext{#1}%
\csname tb@#1@after@hook\endcsname
\csname tocbasic@@after@hook\endcsname
\endgroup
}
% \end{macrocode}
+% \begin{macro]{tocbasic@end@toc@file}
+% \changes{v3.32}{2020/08/25}{new}
+% \begin{macrocode}
+\newcommand*{\tocbasic@end@toc@file}{\par}
+% \end{macrocode}
+% \end{macro}%^^A \tocbasic@end@toc@file
+% \begin{macro}{\tocbasic@reentrant@warning}
+% \changes{v3.32}{2020/08/25}{new}
+\newcommand*{\tocbasic@reentrant@warning}{}
+% \end{macro}
% \begin{macro}{\tocbasic@@before@hook}
% \begin{macro}{\tocbasic@@after@hook}
% These are the general hooks. They may be used by classes and packages for