summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/koma-script/scrlayer.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/koma-script/scrlayer.sty')
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrlayer.sty163
1 files changed, 104 insertions, 59 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlayer.sty b/Master/texmf-dist/tex/latex/koma-script/scrlayer.sty
index 9cfcb3e9abd..67954d739d2 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrlayer.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/scrlayer.sty
@@ -43,13 +43,13 @@
%% find a complete unmodified copy of LaTeX2e at
%% <http://www.ctan.org/pub/tex-archive/macros/latex/base/>.
%%
-%%% From File: $Id: scrlayer.dtx 2125 2015-06-09 07:58:46Z kohm $ (identify)
+%%% From File: $Id: scrlayer.dtx 2172 2015-07-30 09:39:05Z kohm $ (identify)
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesPackage{scrlayer}[%
- 2015/07/02 v3.18 KOMA-Script
+ 2015/09/29 v3.19 KOMA-Script
package
(defining layers and page styles)]
-%%% From File: $Id: scrlayer.dtx 2125 2015-06-09 07:58:46Z kohm $ (init)
+%%% From File: $Id: scrlayer.dtx 2172 2015-07-30 09:39:05Z kohm $ (init)
\RequirePackage{scrkbase}[2013/03/05]
\scr@ifundefinedorrelax{scrlayer@AtEndOfPackage}{%
\AtEndOfPackage{\let\scrlayer@AtEndOfPackage\@firstofone}%
@@ -113,7 +113,7 @@
\setlength{\footheight}{\baselineskip}
\fi
}
-%%% From File: $Id: scrlayer.dtx 2125 2015-06-09 07:58:46Z kohm $ (options)
+%%% From File: $Id: scrlayer.dtx 2172 2015-07-30 09:39:05Z kohm $ (options)
\KOMA@key{markcase}{%
\begingroup
\KOMA@set@ncmdkey{markcase}{reserved@a}{%
@@ -265,7 +265,7 @@
\KOMA@ifkey{draft}{scrlayer@draft}
\KOMA@ifkey{forceoverwrite}{scrlayer@forceoverwrite}
\KOMA@ifkey{autoremoveinterfaces}{scrlayer@autoremoveinterfaces}
-%%% From File: $Id: scrlayer.dtx 2125 2015-06-09 07:58:46Z kohm $ (body)
+%%% From File: $Id: scrlayer.dtx 2172 2015-07-30 09:39:05Z kohm $ (body)
\KOMAProcessOptions\relax
\newcommand*{\rightfirstmark}{\expandafter\@rightmark\firstmark\@empty\@empty}
\newcommand*{\rightbotmark}{\expandafter\@rightmark\botmark\@empty\@empty}
@@ -586,6 +586,12 @@
\@namedef{scr@l@\scr@current@layer @w}{#3}%
\@namedef{scr@l@\scr@current@layer @h}{#4}%
}
+\DefineFamilyKey[.definelayer]{KOMAarg}{mode}{%
+ \scr@ifundefinedorrelax{layer#1mode}{\FamilyKeyStateUnknownValue}{%
+ \@namedef{scr@l@\scr@current@layer @mode}{#1}%
+ \FamilyKeyStateProcessed
+ }%
+}
\DefineFamilyKey[.definelayer]{KOMAarg}{hoffset}{%
\@namedef{scr@l@\scr@current@layer @x}{\dimexpr #1\relax}%
\FamilyKeyStateProcessed
@@ -932,6 +938,7 @@
}%
}{%
\FamilyKeyStateProcessed
+ \scrlayer@clone@attribute{\scr@current@layer}{#1}{mode}%
\scrlayer@clone@attribute{\scr@current@layer}{#1}{x}%
\scrlayer@clone@attribute{\scr@current@layer}{#1}{y}%
\scrlayer@clone@attribute{\scr@current@layer}{#1}{w}%
@@ -958,6 +965,7 @@
}
\newcommand{\DeclareLayer}[2][]{%
\def\scr@current@layer{#2}%
+ \@namedef{scr@l@#2@mode}{text}%
\@namedef{scr@l@#2@x}{\z@}%
\@namedef{scr@l@#2@y}{\z@}%
\@namedef{scr@l@#2@w}{\paperwidth}%
@@ -985,7 +993,7 @@
}
\newcommand*{\scr@current@layer}{}
\newcommand*{\IfLayerExists}[1]{%
- \scr@ifundefinedorrelax{scr@l@#1@x}{%
+ \scr@ifundefinedorrelax{scr@l@#1@mode}{%
\expandafter\@secondoftwo
}{%
\expandafter\@firstoftwo
@@ -1022,7 +1030,17 @@
\newcommand{\ModifyLayer}[2][]{%
\IfLayerExists{#2}{%
\def\scr@current@layer{#2}%
- \FamilyExecuteOptions[.definelayer]{KOMAarg}{#1}%
+ \edef\reserved@a{%
+ \unexpanded{%
+ \FamilyExecuteOptions[.definelayer]{KOMAarg}{#1}%
+ \ifstr{\csname scr@l@#2@mode\endcsname}%
+ }{\csname scr@l@#2@mode\endcsname}%
+ }\reserved@a{}{%
+ \PackageWarning{scrlayer}{%
+ change of layer mode could result in unexpected\MessageBreak
+ output and errors%
+ }%
+ }%
\let\scr@current@layer\@empty
}{%
\PackageError{scrlayer}{layer `#2' not yet defined}{%
@@ -1042,6 +1060,7 @@
}
\newcommand*{\DestroyLayer}[1]{%
\IfLayerExists{#1}{%
+ \expandafter\let\csname scr@l@#1@mode\endcsname\relax
\expandafter\let\csname scr@l@#1@x\endcsname\relax
\expandafter\let\csname scr@l@#1@y\endcsname\relax
\expandafter\let\csname scr@l@#1@w\endcsname\relax
@@ -1081,74 +1100,77 @@
}
\newcommand*{\layercontentsmeasure}{%
\smash{\begin{picture}(0,0)
- (0,\if t\scr@l@valign -\ht\strutbox
- \else
- \if b\scr@l@valign -\dimexpr\layerheight-\dp\strutbox\relax
- \else -.5\dimexpr \layerheight+\ht\strutbox-\dp\strutbox\relax
- \fi
- \fi\@gobble)
- \put(0,0){\line(1,0){\layerwidth\@gobble}}%
+ (0,\LenToUnit{%
+ \if t\layervalign -\ht\strutbox
+ \else
+ \if b\layervalign -\dimexpr\layerheight-\dp\strutbox\relax
+ \else -.5\dimexpr \layerheight+\ht\strutbox-\dp\strutbox\relax
+ \fi
+ \fi})
+ \setlength{\unitlength}{1mm}%
+ \put(0,0){\line(1,0){\LenToUnit{\layerwidth}}}%
\@tempcnta=\numexpr \dimexpr\layerwidth + .5mm\relax/\dimexpr 1mm\relax\relax
- \multiput(0,0)(1mm\@gobble,0){\@tempcnta}{%
- \line(0,-1){1mm\@gobble}%
+ \multiput(0,0)(1,0){\@tempcnta}{%
+ \line(0,-1){1}%
}%
\@tempcnta=\numexpr \dimexpr\layerwidth + 2.5mm\relax/\dimexpr 5mm\relax\relax
- \multiput(0,0)(5mm\@gobble,0){\@tempcnta}{%
- \line(0,-1){2mm\@gobble}%
+ \multiput(0,0)(5,0){\@tempcnta}{%
+ \line(0,-1){2}%
}%
\@tempcnta=\numexpr \dimexpr\layerwidth + .5cm\relax/\dimexpr 1cm\relax\relax
- \multiput(0,0)(10mm\@gobble,0){\@tempcnta}{%
- \put(0,0){\line(0,-1){3mm\@gobble}}%
- \put(0,-3.5mm\@gobble){%
+ \multiput(0,0)(10,0){\@tempcnta}{%
+ \put(0,0){\line(0,-1){3}}%
+ \put(0,-3.5){%
\makebox(0,0)[ct]{\the\numexpr\@tempcnta-\@multicnt\relax}}%
}%
- \put(0,-\layerheight\@gobble){\line(1,0){\layerwidth\@gobble}}%
+ \put(0,\LenToUnit{-\layerheight}){\line(1,0){\LenToUnit{\layerwidth}}}%
\@tempcnta=\numexpr \dimexpr\layerwidth + .05in\relax/\dimexpr .1in\relax\relax
- \multiput(0,-\layerheight\@gobble)(.1in\@gobble,0){\@tempcnta}{%
- \line(0,1){1mm\@gobble}%
+ \multiput(0,\LenToUnit{-\layerheight})(2.54,0){\@tempcnta}{%
+ \line(0,1){1}%
}%
\@tempcnta=\numexpr \dimexpr\layerwidth + .25in\relax/\dimexpr .5in\relax\relax
- \multiput(0,-\layerheight\@gobble)(.5in\@gobble,0){\@tempcnta}{%
- \line(0,1){2mm\@gobble}%
+ \multiput(0,\LenToUnit{-\layerheight})(12.7,0){\@tempcnta}{%
+ \line(0,1){2}%
}%
\@tempcnta=\numexpr \dimexpr\layerwidth + .5in\relax/\dimexpr 1in\relax\relax
- \multiput(0,-\layerheight\@gobble)(1in\@gobble,0){\@tempcnta}{%
- \put(0,0){\line(0,1){3mm\@gobble}}%
- \put(0,3.5mm\@gobble){%
+ \multiput(0,\LenToUnit{-\layerheight})(25.4,0){\@tempcnta}{%
+ \put(0,0){\line(0,1){3}}%
+ \put(0,3.5){%
\makebox(0,0)[cb]{\the\numexpr\@tempcnta-\@multicnt\relax}}%
}%
- \put(0,0){\line(0,-1){\layerheight\@gobble}}%
+ \put(0,0){\line(0,-1){\LenToUnit{\layerheight}}}%
\@tempcnta\numexpr \dimexpr\layerheight + .5mm\relax/\dimexpr 1mm\relax\relax
- \multiput(0,0)(0,-1mm\@gobble){\@tempcnta}{%
- \line(1,0){1mm\@gobble}%
+ \multiput(0,0)(0,-1){\@tempcnta}{%
+ \line(1,0){1}%
}%
\@tempcnta\numexpr \dimexpr\layerheight + 2.5mm\relax/\dimexpr 5mm\relax\relax
- \multiput(0,0)(0,-5mm\@gobble){\@tempcnta}{%
- \line(1,0){2mm\@gobble}%
+ \multiput(0,0)(0,-5){\@tempcnta}{%
+ \line(1,0){2}%
}%
\@tempcnta\numexpr \dimexpr\layerheight + .5cm\relax/\dimexpr 1cm\relax\relax
- \multiput(0,0)(0,-1cm\@gobble){\@tempcnta}{%
- \put(0,0){\line(1,0){3mm\@gobble}}%
- \put(3.5mm\@gobble,0){%
+ \multiput(0,0)(0,-10){\@tempcnta}{%
+ \put(0,0){\line(1,0){3}}%
+ \put(3.5,0){%
\makebox(0,0)[cl]{\the\numexpr\@tempcnta-\@multicnt\relax}}%
}%
- \put(\layerwidth\@gobble,0){\line(0,-1){\layerheight\@gobble}}%
+ \put(\LenToUnit{\layerwidth},0){\line(0,-1){\LenToUnit{\layerheight}}}%
\@tempcnta\numexpr \dimexpr\layerheight + .05in\relax/\dimexpr .1in\relax\relax
- \multiput(\layerwidth\@gobble,0)(0,-.1in\@gobble){\@tempcnta}{%
- \line(-1,0){1mm\@gobble}%
+ \multiput(\LenToUnit{\layerwidth},0)(0,-2.54){\@tempcnta}{%
+ \line(-1,0){1}%
}%
\@tempcnta\numexpr \dimexpr\layerheight + .25in\relax/\dimexpr .5in\relax\relax
- \multiput(\layerwidth\@gobble,0)(0,-.5in\@gobble){\@tempcnta}{%
- \line(-1,0){2mm\@gobble}%
+ \multiput(\LenToUnit{\layerwidth},0)(0,-12.7){\@tempcnta}{%
+ \line(-1,0){2}%
}%
\@tempcnta\numexpr \dimexpr\layerheight + .5in\relax/\dimexpr 1in\relax\relax
- \multiput(\layerwidth\@gobble,0)(0,-1in\@gobble){\@tempcnta}{%
- \put(0,0){\line(-1,0){3mm\@gobble}}%
- \put(-3.5mm\@gobble,0){%
+ \multiput(\LenToUnit{\layerwidth},0)(0,-25.4){\@tempcnta}{%
+ \put(0,0){\line(-1,0){3}}%
+ \put(-3.5,0){%
\makebox(0,0)[cr]{\the\numexpr\@tempcnta-\@multicnt\relax}}%
}%
\end{picture}}%
}
+\providecommand*{\LenToUnit}[1]{\strip@pt\dimexpr#1*\p@/\unitlength}
\DefineFamily{KOMAarg}
\DefineFamilyMember[.definelayerpagestyle]{KOMAarg}
\DefineFamilyKey[.definelayerpagestyle]{KOMAarg}{onselect}{%
@@ -1417,7 +1439,9 @@
(\csname scr@l@#3@w\endcsname,%
\csname scr@l@#3@h\endcsname)%
[\csname scr@l@#3@align\endcsname]%
- {\csname scr@l@#3@contents\endcsname}%
+ {\csname layer\csname scr@l@#3@mode\endcsname
+ mode\expandafter\endcsname
+ \csname scr@l@#3@contents\endcsname}%
\fi
\fi
\fi
@@ -1434,26 +1458,26 @@
\edef\layeryoffset{#2}%
\edef\layerwidth{#3}%
\edef\layerheight{#4}%
- \def\scr@l@valign{t}%
- \def\scr@l@halign{l}%
+ \def\layervalign{t}%
+ \def\layerhalign{l}%
\edef\reserved@b{#5}%
\expandafter\@tfor\expandafter\reserved@a\expandafter:\expandafter=%
\reserved@b\do{%
\if t\reserved@a
- \def\scr@l@valign{t}%
+ \def\layervalign{t}%
\else
\if c\reserved@a
- \def\scr@l@valign{c}%
- \def\scr@l@halign{c}%
+ \def\layervalign{c}%
+ \def\layerhalign{c}%
\else
\if b\reserved@a
- \def\scr@l@valign{b}%
+ \def\layervalign{b}%
\else
\if l\reserved@a
- \def\scr@l@halign{l}%
+ \def\layerhalign{l}%
\else
\if r\reserved@a
- \def\scr@l@halign{r}%
+ \def\layerhalign{r}%
\else
\PackageWarning{scrlayer}{%
Unknown alignment `\reserved@a' ignored}%
@@ -1465,12 +1489,12 @@
}%
\parbox[t][\z@][t]{\z@}{%
\vskip\layeryoffset
- \if b\scr@l@valign\vskip-\layerheight\fi
- \if c\scr@l@valign\vskip-.5\dimexpr\layerheight\relax\fi
+ \if b\layervalign\vskip-\layerheight\fi
+ \if c\layervalign\vskip-.5\dimexpr\layerheight\relax\fi
\makebox[\z@][l]{%
\hskip\layerxoffset
- \makebox[\z@][\scr@l@halign]{%
- \parbox[\scr@l@valign][\layerheight][\scr@l@valign]{\layerwidth}{%
+ \makebox[\z@][\layerhalign]{%
+ \parbox[\layervalign][\layerheight][\layervalign]{\layerwidth}{%
\vskip\z@\strut{%
\ifscrlayer@forceignoreuppercase
\expandafter\let\csname MakeUppercase \endcsname\@firstofone
@@ -1485,6 +1509,27 @@
}%
\endgroup
}
+\newcommand{\layerrawmode}[1]{#1}
+\newcommand{\layertextmode}[1]{#1}
+\newcommand{\layerpicturemode}[1]{%
+ \begin{picture}(0,0)
+ (0,\LenToUnit{%
+ \if t\layervalign \dimexpr\layerheight-\ht\strutbox\relax
+ \else
+ \if b\layervalign \dp\strutbox
+ \else .5\dimexpr\layerheight-\ht\strutbox+\dp\strutbox\relax
+ \fi
+ \fi})
+ \long\def\putLL##1{\put(0,0){##1}}%
+ \long\def\putUL##1{\put(0,\LenToUnit{\layerheight}){##1}}%
+ \long\def\putLR##1{\put(\LenToUnit{\layerwidth},0){##1}}%
+ \long\def\putUR##1{\put(\LenToUnit{\layerwidth},%
+ \LenToUnit{\layerheight}){##1}}%
+ \long\def\putC##1{\put(\LenToUnit{.5\dimexpr\layerwidth\relax},%
+ \LenToUnit{.5\dimexpr\layerheight\relax}){##1}}%
+ #1%
+ \end{picture}%
+}
\newcommand*{\DeclareNewPageStyleByLayers}[2][]{%
\@ifundefined{ps@#2}{}{%
\PackageError{scrlayer}{%
@@ -2105,7 +2150,7 @@
\@ifundefined{scrlayer@#1@onremove}{\@namedef{scrlayer@#1@onremove}{}}{}%
\expandafter\l@addto@macro\csname scrlayer@#1@onremove\endcsname{#2}%
}
-%%% From File: $Id: scrlayer.dtx 2125 2015-06-09 07:58:46Z kohm $ (final)
+%%% From File: $Id: scrlayer.dtx 2172 2015-07-30 09:39:05Z kohm $ (final)
\DeclareNewPageStyleByLayers{@everystyle@}{}
\RedeclarePageStyleByLayers{empty}{}
%%% From File: $Id: scrlogo.dtx 1380 2013-10-01 15:31:55Z mjk $