summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-09-30 21:16:51 +0000
committerKarl Berry <karl@freefriends.org>2015-09-30 21:16:51 +0000
commit21923df0aa733309adbfcc3169c7ffc0e0ab8b1c (patch)
treef81789ab91c6edd088e331eac5983464e7f21c6b /Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
parent197071e9b5aaa66a56c464229f4a9fc81c0c8b1f (diff)
koma-script (30sep15)
git-svn-id: svn://tug.org/texlive/trunk@38504 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx')
-rw-r--r--Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx76
1 files changed, 60 insertions, 16 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx b/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
index dd8d14f48e9..450a28de737 100644
--- a/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
+++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
@@ -1,4 +1,4 @@
-% \CheckSum{2939}
+% \CheckSum{2959}
% \iffalse meta-comment
% ======================================================================
% scrkernel-basics.dtx
@@ -55,13 +55,13 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-basics.dtx 2140 2015-06-17 10:15:52Z kohm $
+%%% From File: $Id: scrkernel-basics.dtx 2190 2015-08-29 17:21:55Z kohm $
%<package&option>\NeedsTeXFormat{LaTeX2e}[1995/06/01]
%<*driver>
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\def\filedate{#2/#3/#4}}
- \filedate$Date: 2015-06-17 12:15:52 +0200 (Wed, 17 Jun 2015) $
+ \filedate$Date: 2015-08-29 19:21:55 +0200 (Sat, 29 Aug 2015) $
\def\filerevision$#1: #2 ${\def\filerevision{r#2}}
\filerevision$Revision: 1638 $
\xdef\fileinfo{\filedate\space\filerevision\space}
@@ -285,6 +285,11 @@
% \changes{v3.00}{2008/04/30}{Neu (intern)}^^A
% \begin{macro}{\scr@if@familymember}
% \changes{v3.00}{2008/04/30}{Neu (intern)}^^A
+% \begin{macro}{\scr@define@family@key}
+% \changes{v3.00}{2008/04/30}{Neu (intern)}^^A
+% \begin{macro}{\scr@define@family@key@nodefault}
+% \changes{v3.00}{2008/04/30}{Neu (intern)}^^A
+% \changes{v3.18a}{2015/07/03}{fehlendes \% ergänzt}^^A
% Familie, Familienmitglied und \textsf{keyval}-Schlüssel für ein
% Familienmitglied definieren. Dabei wird als Familienmitglied per Default der
% (Datei-)Name des aktuellen Pakets bzw. der aktuellen Klasse verwendet.
@@ -364,7 +369,7 @@
\define@key{#2#1}{#3}{%
\def\FamilyOfKey{#2}\def\FamilyMemberOfKey{#1}%
\FamilyKeyStateUnknown
- #4
+ #4%
\def\FamilyOfKey{#2}\def\FamilyMemberOfKey{#1}%
}%
\@namedef{KV@#2#1@#3@default}{%
@@ -375,6 +380,8 @@
}
%</base>
% \end{macrocode}
+% \end{macro}^^A \scr@define@family@key@nodefault
+% \end{macro}^^A \scr@define@family@key
% \end{macro}^^A \scr@if@familymember
% \end{macro}^^A \scr@if@family
% \end{macro}^^A \DefineFamilyKey
@@ -971,7 +978,7 @@
\let\FamilyKeyState\OptionNotUsed
}%
}{%
- \proteced@edef\reserved@b{\noexpand\setkeys{#2}{{\CurrentOption}}%
+ \protected@edef\reserved@b{\noexpand\setkeys{#2}{{\CurrentOption}}%
\noexpand\def\noexpand\CurrentOption{\CurrentOption}}%
\reserved@b
\ifx\FamilyKeyState\FamilyKeyStateUnknown
@@ -1290,8 +1297,25 @@
}
%</base>
% \end{macrocode}
-% \end{macro}
-% \end{macro}
+% \end{macro}^^A \@ifstrstart
+% \end{macro}^^A \ifstrstart
+%
+% \begin{macro}{\IfArgIsEmpty}
+% \changes{v3.19}{2015/08/29}{neu}^^A
+% Falls das erste Argument tatsächlich leer ist, wird das zweite Argument
+% ausgeführt sonst das dritte.
+%<*base>
+% \begin{macrocode}
+\newcommand*{\IfArgIsEmpty}[1]{%
+ \if\relax\detokenize{#1}\relax
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+}
+% \end{macrocode}
+%</base>
+% \end{macro}^^A \IfArgIsEmpty
%
% \begin{macro}{\ifisdimen}
% \changes{v3.12}{2013/11/05}{neu}^^A
@@ -1392,6 +1416,8 @@
%
% \begin{macro}{\ifisskip}
% \changes{v3.12}{2013/11/05}{neu}^^A
+% \changes{v3.18a}{2015/07/07}{\cs{baselineskip} und \cs{parskip} werden als
+% skips akzeptiert}^^A
% Falls die Expansion des ersten Arguments ein \cs{skip} ist, wird das
% zweite Argument ausgeführt, sonst das dritte.
% \begin{macrocode}
@@ -1410,7 +1436,17 @@
}{%
\aftergroup\@secondoftwo
}%
- }{\aftergroup\@secondoftwo}%
+ }{%
+ \ifstr{\reserved@a}{\string\baselineskip}{%
+ \aftergroup\@firstoftwo
+ }{%
+ \ifstr{\reserved@a}{\string\parskip}{%
+ \aftergroup\@firstoftwo
+ }{%
+ \aftergroup\@secondoftwo
+ }%
+ }%
+ }%
\endgroup
}
%</base>
@@ -2817,14 +2853,16 @@
% \end{macrocode}
% \begin{macro}{\FamilySetCounter}
% \changes{v3.12}{2013/11/05}{neu}^^A
-% Über diese Anwesiung wird der Wert dann gesetzt. Dabei ist das erste
-% Argument die Familie, das zweite der Name des Schlüssels, das dritte der
-% Name des \LaTeX-Zählers, das vierte schließlich der gewünschte Wert.
+% \changes{v3.18a}{2015/07/06}{korrekte Verwendung von
+% \cs{FamilyKeyStateProcessed}}^^A
+% Über diese Anwesiung wird der Wert dann gesetzt. Dabei ist das erste
+% Argument die Familie, das zweite der Name des Schlüssels, das dritte der
+% Name des \LaTeX-Zählers, das vierte schließlich der gewünschte Wert.
% \begin{macrocode}
\newcommand*{\FamilySetCounter}[4]{%
\ifiscount{#4}{\value{#3}=#4\FamilyKeyStateProcessed}{%
\ifisdimen{#4}{\value{#3}=#4\FamilyKeyStateProcessed}{%
- \ifisskip{#4}{\value{#3}=#4\FamilyKeyState\Processed}{%
+ \ifisskip{#4}{\value{#3}=#4\FamilyKeyStateProcessed}{%
\ifisnumexpr{#4}{\value{#3}=#4\FamilyKeyStateProcessed}{%
\ifisdimexpr{#4}{\value{#3}=#4\FamilyKeyStateProcessed}{%
\ifisinteger{#4}{\value{#3}=#4\FamilyKeyStateProcessed}{%
@@ -2859,6 +2897,8 @@
% \changes{v3.12}{2013/11/05}{neu}^^A
% \changes{v3.15}{2014/12/17}{\cs{aftergroup} vor
% \cs{FamilyKeyStateProcessed}}^^A
+% \changes{v3.18a}{2015/07/06}{korrekte Verwendung von
+% \cs{FamilyKeyStateProcessed}}^^A
% Diese Anweisung arbeitet fast wie \cs{FamilySetCounter}, allerdings wird
% nicht ein Zähler gesetzt, sondern ein Makro auf einen Wert definiert. Dabei
% ist das erste Argument die Familie, das zweite der Name des Schlüssels, das
@@ -2887,7 +2927,7 @@
\begingroup
\ifiscount{#4}{\@tempcnta=#4\aftergroup\FamilyKeyStateProcessed}{%
\ifisdimen{#4}{\@tempcnta=#4\aftergroup\FamilyKeyStateProcessed}{%
- \ifisskip{#4}{\@tempcnta=#4\aftergroup\FamilyKeyState\Processed}{%
+ \ifisskip{#4}{\@tempcnta=#4\aftergroup\FamilyKeyStateProcessed}{%
\ifisnumexpr{#4}{\@tempcnta=#4\aftergroup\FamilyKeyStateProcessed}{%
\ifisdimexpr{#4}{\@tempcnta=#4\aftergroup\FamilyKeyStateProcessed}{%
\ifisinteger{#4}{%
@@ -2947,14 +2987,16 @@
% \begin{macro}{\FamilySetLength}
% \changes{v3.12}{2013/11/05}{neu}^^A
% \changes{v3.15}{2015/01/02}{\cs{ifglueexpr} hinzugefügt}^^A
-% Über diese Anwesiung wird der Wert dann gesetzt. Dabei ist das erste
+% \changes{v3.18a}{2015/07/06}{korrekte Verwendung von
+% \cs{FamilyKeyStateProcessed}}^^A
+% Über diese Anweisung wird der Wert dann gesetzt. Dabei ist das erste
% Argument die Familie, das zweite der Name des Schlüssels, das dritte der
% Name der \LaTeX-Länge, das vierte schließlich der gewünschte Wert.
% \begin{macrocode}
\newcommand*{\FamilySetLength}[4]{%
\ifiscount{#4}{#3=#4\FamilyKeyStateProcessed}{%
\ifisdimen{#4}{#3=#4\FamilyKeyStateProcessed}{%
- \ifisskip{#4}{#3=#4\FamilyKeyState\Processed}{%
+ \ifisskip{#4}{#3=#4\FamilyKeyStateProcessed}{%
\ifisnumexpr{#4}{#3=#4\FamilyKeyStateProcessed}{%
\ifisdimexpr{#4}{#3=#4\FamilyKeyStateProcessed}{%
\ifisglueexpr{#4}{#3=#4\FamilyKeyStateProcessed}{%
@@ -2986,6 +3028,8 @@
% \changes{v3.15}{2014/12/17}{\cs{aftergroup} vor
% \cs{FamilyKeyStateProcessed}}^^A
% \changes{v3.15}{2015/01/02}{\cs{ifglueexpr} hinzugefügt}^^A
+% \changes{v3.18a}{2015/07/06}{korrekte Verwendung von
+% \cs{FamilyKeyStateProcessed}}^^A
% Diese Anweisungen arbeitet fast wie \cs{FamilyCounterKey} und
% \cs{FamilySetCounter}, allerdings wird nicht ein Zähler gesetzt, sondern
% ein Makro auf einen Wert definiert. Dabei ist das erste Argument die
@@ -3015,7 +3059,7 @@
\begingroup
\ifiscount{#4}{\@tempskipa=#4\aftergroup\FamilyKeyStateProcessed}{%
\ifisdimen{#4}{\@tempskipa=#4\aftergroup\FamilyKeyStateProcessed}{%
- \ifisskip{#4}{\@tempkipa=#4\aftergroup\FamilyKeyState\Processed}{%
+ \ifisskip{#4}{\@tempkipa=#4\aftergroup\FamilyKeyStateProcessed}{%
\ifisnumexpr{#4}{\@tempskipa=#4\aftergroup\FamilyKeyStateProcessed}{%
\ifisdimexpr{#4}{%
\@tempskipa=#4\aftergroup\FamilyKeyStateProcessed