diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx | 176 |
1 files changed, 160 insertions, 16 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx b/Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx index 94517c5e516..994dd0f7183 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-miscellaneous.dtx @@ -1,8 +1,8 @@ -% \CheckSum{449} +% \CheckSum{611} % \iffalse meta-comment % ====================================================================== % scrkernel-miscellaneous.dtx -% Copyright (c) Markus Kohm, 2002-2016 +% Copyright (c) Markus Kohm, 2002-2017 % % 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-miscellaneous.dtx -% Copyright (c) Markus Kohm, 2002-2016 +% Copyright (c) Markus Kohm, 2002-2017 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -55,15 +55,15 @@ % Right brace \} Tilde \~} % % \iffalse -%%% From File: $Id: scrkernel-miscellaneous.dtx 2463 2016-05-19 07:27:47Z kohm $ +%%% From File: $Id: scrkernel-miscellaneous.dtx 2605 2017-02-23 19:27:27Z kohm $ %<*driver> % \fi \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \begingroup \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}} - \filedate$Date: 2016-05-19 09:27:47 +0200 (Thu, 19 May 2016) $ + \filedate$Date: 2017-02-23 20:27:27 +0100 (Thu, 23 Feb 2017) $ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}} - \filerevision$Revision: 2463 $ + \filerevision$Revision: 2605 $ \edef\reserved@a{% \noexpand\endgroup \noexpand\ProvidesFile{scrkernel-miscellaneous.dtx}% @@ -73,7 +73,7 @@ }% \reserved@a % \iffalse -\documentclass[halfparskip-]{scrdoc} +\documentclass[parskip=half-]{scrdoc} \usepackage[english,ngerman]{babel} \usepackage[latin1]{inputenc} \CodelineIndex @@ -157,13 +157,39 @@ Cannot detect any KOMA-Script class.\MessageBreak Package `scrletter' is an extension to\MessageBreak KOMA-Script classes.\MessageBreak - Usage with another class is not supported.\MessageBreak - Expect several errors while using it with\MessageBreak - another class.% + Usage with another class is not recommended% + \@ifclassloaded{article}{}{% + \@ifclassloaded{report}{}{% + \@ifclassloaded{book}{}{% + \MessageBreak and can result in several errors% + }% + }% + }% }% + \RequirePackage{scrextend}% +% \end{macrocode} +% +% \begin{macro}{\setparsizes} +% \changes{v3.23}{2017/02/22}{wird notfalls vereinfacht definiert}^^A +% \begin{macro}{\par@updaterelative} +% \changes{v3.23}{2017/02/22}{wird notfalls vereinfacht definiert}^^A +% Diese beiden Befehle werden normalerweise von den \KOMAScript-Klassen +% definiert. Wird das Paket mit einer anderen Klasse verwendet, existieren +% sie nicht. Es wird dann eine vereinfachte Definition verwendet. +% \begin{macrocode} + \providecommand*{\setparsizes}[3]{% + \setlength{\parindent}{#1}% + \setlength{\parskip}{#2}% + \setlength{\parfillskip}{#3}% + } + \providecommand*{\par@updaterelative}{} +% \end{macrocode} +% \end{macro}^^A \par@updaterelative +% \end{macro}^^A \setparsizes +% \begin{macrocode} }{} % \end{macrocode} - +% % \begin{macro}{\scr@renewforletter} % \changes{v3.20}{2014/04/10}{neu Anweisung}^^A % Wird wie \cs{renewcommand} verwendet, verzögert die Umdefinierung aber bis @@ -582,8 +608,9 @@ % \changes{v3.17}{2015/03/23}{in zwei Anweisungen ausgeteilt}^^A % \begin{macro}{\is@thispageodd@setlabel} % \changes{v3.17}{2015/03/23}{neu (intern)}^^A -% \changes{v3.20}{2016/03/25}{write to \texttt{aux}-file only +% \changes{v3.20}{2016/03/25}{schreibe in die \texttt{aux}-Datei nur % \cs{if@filesw}}^^A +% \changes{v3.23}{2017/02/23}{Macro leert sich nach Benutzung selbst}^^A % Diese Makros machen die eigentliche Arbeit. Sie funktionieren nicht wie % ein normales \cs{iffalse} oder \cs{iftrue}, denn es kann nicht % geschachtelt innerhalb anderer \cs{if\dots} \dots \cs{fi} @@ -619,6 +646,8 @@ \noexpand\string \noexpand\new@tpo@label{\scr@tpo}{\noexpand\arabic{page}}}% \fi + \noexpand\def\noexpand\is@thispageodd@setlabel + {\unexpanded\expandafter{\is@thispageodd@setlabel}}% }% #1% \@esphack @@ -755,7 +784,16 @@ % und Optionen von \KOMAScript{} nicht. % \begin{macrocode} \scr@package@not@recommended{titleps}{% - package `scrlayer-scrpage`} + package `scrlayer-scrpage'} +% \end{macrocode} +% \changes{v3.23}{2017/02/04}{Verwendung von \textsf{minitoc} kann nicht +% empfohlen werden}^^A +% \textsf{minitoc} definiert u.\,a. \cs{@sect} hart um und zerstört so diverse +% Erweiterungen von \KOMAScript. Es ist nicht abschließend untersucht, was das +% Paket noch alles zerstört. Derzeit gibt es nur einen Workaround für das +% genannte Problem mit \cs{@sect}. +% \begin{macrocode} +\scr@package@not@recommended{minitoc}{} %</class> % \end{macrocode} % \end{macro}^^A \scr@package@not@recommended @@ -763,8 +801,114 @@ % \subsection{Workarounds für fremde Pakete} % \label{sec:packageworkarounds} % +% \changes{v3.23}{2017/02/04}{\textsf{minitoc} verursacht ein schwerwiegendes +% Problem}^^A +% Das Paket \textsf{minitoc} verursacht ein schwerwiegendes Problem indem es +% \cs{@sect} hart umdefiniert, ohne zuvor zu testen, ob die Definition den +% Erwartungen entspricht. Ich werde hier einmal versuchen, mich darum herum zu +% lavieren. Eine wirklich gute Lösung ist das sicher nicht. Man sollte das +% Paket schlicht besser nicht mit \KOMAScript{} zusammen verwenden. +% \begin{macrocode} +%<*class> +%<*!letter> +\BeforePackage{minitoc}{% + \let\scr@mt@saved@sect\@sect +} +\AfterPackage{minitoc}{% + \def\@tempa#1#2#3#4#5#6[#7]#8{% + \ifnum #2<1 \relax + \addtocontents{toc}{\protect\sectbegin} + \fi + \stc@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{#8}% + }% + \ifx\@sect\@tempa +% \end{macrocode} +% Note: There are several bugs in this definition (e.g. missing +% \cs{expandafter} and orphan spaced). Nevertheless its the original one from +% \textsf{minitoc} 61 and so I have to use it. +% \begin{macrocode} + \def\@tempa#1#2#3#4#5#6[#7]#8{ + \expandafter + \ifx\csname #1\endcsname\section\relax + \addcontentsline{lof}{xsect}{#7}% + \addcontentsline{lot}{xsect}{#7}% + \fi + \ifx\csname #1\endcsname\starsection\relax + \addcontentsline{lof}{xsect}{#7}% + \addcontentsline{lot}{xsect}{#7}% + \fi + \ifnum #2>\c@secnumdepth\relax + \let\@svsec\@empty + \else + \refstepcounter{#1}% + \edef\@svsec{\csname the#1\endcsname\hskip 1em}% + \fi + \@tempskipa #5\relax + \ifdim \@tempskipa>\z@ + \begingroup #6\relax + \@hangfrom{\hskip #3\relax\@svsec}% + {\interlinepenalty \@M #8\par}% + \endgroup + \csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth\relax + \else + \protect\numberline{\csname the#1\endcsname}% + \fi + #7% + }% + \else + \def\@svsechd{#6\hskip #3\relax + \@svsec #8\csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth\relax + \else + \protect\numberline{\csname the#1\endcsname} + \fi + #7}% + }% + \fi + \@xsect{#5}% + }% + \ifx\stc@sect\@tempa + \ClassWarning{\KOMAClassName}{% + Redefining minitoc's internal command + `\string\stc@sect'\MessageBreak + to prevent minitoc to destroy several features\MessageBreak + of KOMA-Script% + }% + \let\stc@sect\scr@mt@saved@sect + \else + \ClassInfo{\KOMAClassName}{% + Deactivating the `minitoc' workaround,\MessageBreak + because of unexpected definition of\MessageBreak + `\string\stc@sect'% + }% + \let\scr@mt@saved@sect\relax + \fi + \else + \ifx\@sect\scr@mt@saved@sect + \ClassInfo{\KOMAClassName}{% + Deactivating the `minitoc' workaround for + `\string\@sect',\MessageBreak + because it is not needed% + }% + \else + \ClassInfo{\KOMAClassName}{% + Deactivating the `minitoc' workaround,\MessageBreak + because of unexpected definition of\MessageBreak + `\string\@sect'% + }% + \fi + \let\scr@mt@saved@sect\relax + \fi +} +%</!letter> +%</class> +% \end{macrocode} +% % \changes{v3.13a}{2014/10/09}{\textsf{titlesec} hat ein schwerwiegendes -% Problem} +% Problem}^^A % Das Paket \textsf{titlesec} hat ein schwerwiegendes Problem, wenn % Überschriften nicht per \cs{@startsection} definiert sind. Ich werde hier % einmal versuchen, mich darum herum zu lavieren. Eine wirklich gute Lösung @@ -791,11 +935,11 @@ % \begin{macrocode} \@ifpackagelater{titlesec}{2016/03/22}{% \ClassInfo{\KOMAClassName}{% - Deactivating the `titlesec` workaround,\MessageBreak + Deactivating the `titlesec' workaround,\MessageBreak because package is newer than expected% }% }{% - \PackageWarning{\KOMAClassName}{% + \ClassWarning{\KOMAClassName}{% Activating an ugly workaround for a missing\MessageBreak feature of package `titlesec`% }% |