You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1944 lines
70 KiB
1944 lines
70 KiB
%%
|
|
%% This is file `scrlayer-scrpage.sty',
|
|
%% generated with the docstrip utility, extended by scrdocstrip.
|
|
%%
|
|
%% The original source files were:
|
|
%%
|
|
%% scrlayer-scrpage.dtx (with options: `interface,trace,scrpage,identify')
|
|
%% scrlayer.dtx (with options: `interface,trace,scrpage,init')
|
|
%% scrlayer-scrpage.dtx (with options: `interface,trace,scrpage,init')
|
|
%% scrlayer.dtx (with options: `interface,trace,scrpage,options')
|
|
%% scrlayer-scrpage.dtx (with options: `interface,trace,scrpage,options')
|
|
%% scrlayer.dtx (with options: `interface,trace,scrpage,body')
|
|
%% scrlayer-scrpage.dtx (with options: `interface,trace,scrpage,body')
|
|
%% scrlogo.dtx (with options: `logo')
|
|
%%
|
|
%% Copyright (c) 2012-2019 Markus Kohm [komascript at gmx info]
|
|
%%
|
|
%% This file was generated from file(s) of the KOMA-Script bundle.
|
|
%% ---------------------------------------------------------------
|
|
%%
|
|
%% It may be distributed under the conditions of the
|
|
%% LaTeX Project Public License in the version distributed together
|
|
%% with KOMA-Script, see file `lppl.txt' or `lppl-de.txt'.
|
|
%%
|
|
%% This file may only be distributed together with a copy of the
|
|
%% KOMA-Script bundle. You may however distribute the
|
|
%% KOMA-Script bundle without all such generated files. See also
|
|
%% `lppl.txt' or `lppl-de.txt' for additional information.
|
|
%%
|
|
%% The list of files belonging to KOMA-Script distribution is given in
|
|
%% the file `manifest.txt'. See also `lppl.txt' or `lppl-de.txt' for
|
|
%% additional information.
|
|
%%
|
|
%% If this file is a beta version, you may not be allowed to distribute
|
|
%% it. Look at the comments below to see if this is the case.
|
|
%%
|
|
%% English and German manuals are part of KOMA-Script bundle.
|
|
%% ----------------------------------------------------------
|
|
%%
|
|
%% See `README'.
|
|
%%
|
|
%% The KOMA-Script bundle (but maybe not this file) was based upon the
|
|
%% LaTeX 2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
|
|
%% standard classes created by The LaTeX3 Project 1994-1996. You can
|
|
%% find a complete unmodified copy of LaTeX2e at
|
|
%% <http://mirror.ctan.org/tex-archive/macros/latex/base/>.
|
|
%%
|
|
%%% From File: $Id: scrlayer-scrpage.dtx 3390 2019-11-18 17:09:35Z kohm $
|
|
%%% (run: identify)
|
|
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
|
\ProvidesPackage{scrlayer-scrpage}[%
|
|
2020/07/22 v3.31 KOMA-Script
|
|
package
|
|
(end user interface for scrlayer)]
|
|
%%% From File: $Id: scrlayer.dtx 3411 2019-11-28 09:11:27Z kohm $
|
|
%%% (run: init)
|
|
\RequirePackage{scrlayer}
|
|
\scr@ifundefinedorrelax{scrlayer@AtEndOfPackage}{%
|
|
\AtEndOfPackage{\let\scrlayer@AtEndOfPackage\@firstofone}%
|
|
}{%
|
|
\ifx\scrlayer@AtEndOfPackage\@firstofone
|
|
\AtEndOfPackage{\let\scrlayer@AtEndOfPackage\@firstofone}%
|
|
\fi
|
|
}
|
|
\let\scrlayer@AtEndOfPackage\AtEndOfPackage
|
|
\scrlayerInitInterface
|
|
%%% From File: $Id: scrlayer-scrpage.dtx 3390 2019-11-18 17:09:35Z kohm $
|
|
%%% (run: init)
|
|
\AtEndOfPackage{%
|
|
\sls@auto@pagestyleset%
|
|
}
|
|
\newcommand*{\sls@auto@pagestyleset}{%
|
|
\scr@ifundefinedorrelax{KOMAClassName}{%
|
|
\PackageInfoNoLine{scrlayer-scrpage}{%
|
|
auto-selection of `pagestyleset=standard'}%
|
|
\FamilyExecuteOptions[.scrlayer-scrpage.sty]{KOMA}{pagestyleset=standard}%
|
|
}{%
|
|
\PackageInfoNoLine{scrlayer-scrpage}{%
|
|
auto-selection of `pagestyleset=KOMA-Script'}%
|
|
\FamilyExecuteOptions[.scrlayer-scrpage.sty]{KOMA}%
|
|
{pagestyleset=KOMA-Script}%
|
|
}%
|
|
}
|
|
%%% From File: $Id: scrlayer.dtx 3411 2019-11-28 09:11:27Z kohm $
|
|
%%% (run: options)
|
|
\KOMA@key{markcase}{%
|
|
\scrlayer@AtEndOfPackage{%
|
|
\begingroup
|
|
\KOMA@set@ncmdkey{markcase}{reserved@a}{%
|
|
{upper}{0},{lower}{1},{used}{2},%
|
|
{ignoreuppercase}{3},{nouppercase}{3},%
|
|
{ignoreupper}{3},{noupper}{3}%
|
|
}{#1}%
|
|
\ifx\FamilyKeyState\FamilyKeyStateProcessed
|
|
\aftergroup\FamilyKeyStateProcessed
|
|
\ifnum \reserved@a>\m@ne
|
|
\aftergroup\let\aftergroup\MakeMarkcase
|
|
\ifcase \reserved@a
|
|
\aftergroup\MakeUppercase
|
|
\aftergroup\scrlayer@forceignoreuppercasefalse
|
|
\or
|
|
\aftergroup\MakeLowercase
|
|
\aftergroup\scrlayer@forceignoreuppercasefalse
|
|
\or
|
|
\aftergroup\@firstofone
|
|
\aftergroup\scrlayer@forceignoreuppercasefalse
|
|
\else
|
|
\aftergroup\scrlayer@ignoreuppercase
|
|
\aftergroup\scrlayer@forceignoreuppercasetrue
|
|
\fi
|
|
\fi
|
|
\else
|
|
\aftergroup\FamilyKeyStateUnknownValue
|
|
\fi
|
|
\endgroup
|
|
\ifx\FamilyKeyState\FamilyKeyStateProcessed
|
|
\KOMA@kav@removekey{.scrlayer.sty}{markcase}%
|
|
\KOMA@kav@xadd{.scrlayer.sty}{markcase}{#1}%
|
|
\fi
|
|
}%
|
|
}
|
|
\KOMA@key{autooneside}[true]{%
|
|
\KOMA@set@ifkey{autooneside}{scrlayer@autooneside}{#1}%
|
|
\KOMA@kav@replacebool{.scrlayer.sty}{autooneside}{scrlayer@autooneside}%
|
|
}
|
|
\KOMA@key{automark}[]{%
|
|
\scrlayer@testunexpectedarg{automark}{#1}%
|
|
\scrlayer@AtEndOfPackage{%
|
|
\if@chapter
|
|
\scr@ifundefinedorrelax{section}{%
|
|
\automark{chapter}%
|
|
}{%
|
|
\automark[section]{chapter}%
|
|
}%
|
|
\else
|
|
\scr@ifundefinedorrelax{section}{%
|
|
\automark{}%
|
|
}{%
|
|
\scr@ifundefinedorrelax{subsection}{%
|
|
\automark{section}%
|
|
}{%
|
|
\automark[subsection]{section}%
|
|
}
|
|
}%
|
|
\fi
|
|
}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@removekey{.scrlayer.sty}{automark}%
|
|
\KOMA@kav@removekey{.scrlayer.sty}{manualmark}%
|
|
\KOMA@kav@add{.scrlayer.sty}{automark}{}%
|
|
}
|
|
\KOMA@key{manualmark}[]{%
|
|
\scrlayer@testunexpectedarg{manualmark}{#1}%
|
|
\scrlayer@AtEndOfPackage{\manualmark}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@removekey{.scrlayer.sty}{automark}%
|
|
\KOMA@kav@removekey{.scrlayer.sty}{manualmark}%
|
|
\KOMA@kav@add{.scrlayer.sty}{manualmark}{}%
|
|
}
|
|
\KOMA@key{onpsselect}{%
|
|
\l@addto@macro{\@ps@initialhook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsselect}{#1}%
|
|
}
|
|
\KOMA@key{onpsinit}{%
|
|
\l@addto@macro{\@ps@hook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsinit}{#1}%
|
|
}
|
|
\KOMA@key{onpsoneside}{%
|
|
\l@addto@macro{\@ps@onesidehook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsoneside}{#1}%
|
|
}
|
|
\KOMA@key{onpstwoside}{%
|
|
\l@addto@macro{\@ps@twosidehook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpstwoside}{#1}%
|
|
}
|
|
\KOMA@key{onpsoddpage}{%
|
|
\l@addto@macro{\@ps@oddpagehook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsoddpage}{#1}%
|
|
}
|
|
\KOMA@key{onpsevenpage}{%
|
|
\l@addto@macro{\@ps@evenpagehook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsevenpage}{#1}%
|
|
}
|
|
\KOMA@key{onpsfloatpage}{%
|
|
\l@addto@macro{\@ps@floatpagehook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsfloatpage}{#1}%
|
|
}
|
|
\KOMA@key{onpsnonfloatpage}{%
|
|
\l@addto@macro{\@ps@nonfloatpagehook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsnonfloatpage}{#1}%
|
|
}
|
|
\KOMA@key{onpsbackground}{%
|
|
\l@addto@macro{\@ps@backgroundhook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsbackground}{#1}%
|
|
}
|
|
\KOMA@key{onpsforeground}{%
|
|
\l@addto@macro{\@ps@foregroundhook}{#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@add{.scrlayer.sty}{onpsforeground}{#1}%
|
|
}
|
|
\KOMA@ifkey{singlespacing}{@ps@singlespacing}
|
|
\KOMA@key{deactivatepagestylelayers}[true]{%
|
|
\KOMA@set@ifkey{deactivatepagestylelayers}{scrlayer@deactivate@layers}{#1}%
|
|
\KOMA@kav@replacebool{.scrlayer.sty}{deactivatepagestylelayers}
|
|
{scrlayer@deactivate@layers}%
|
|
}
|
|
\KOMA@key{draft}[true]{%
|
|
\KOMA@set@ifkey{draft}{scrlayer@draft}{#1}%
|
|
\KOMA@kav@replacebool{.scrlayer.sty}{draft}{scrlayer@draft}%
|
|
}
|
|
\KOMA@key{forceoverwrite}[true]{%
|
|
\KOMA@set@ifkey{forceoverwrite}{scrlayer@forceoverwrite}{#1}%
|
|
\KOMA@kav@replacebool{.scrlayer.sty}{forceoverwrite}{scrlayer@forceoverwrite}%
|
|
}
|
|
\KOMA@key{autoremoveinterfaces}[true]{%
|
|
\KOMA@set@ifkey{autoremoveinterfaces}{scrlayer@autoremoveinterfaces}{#1}%
|
|
\KOMA@kav@replacebool{.scrlayer.sty}{autoremoveinterfaces}
|
|
{scrlayer@autoremoveinterfaces}%
|
|
}
|
|
%%% From File: $Id: scrlayer-scrpage.dtx 3390 2019-11-18 17:09:35Z kohm $
|
|
%%% (run: options)
|
|
\KOMA@key{headwidth}{%
|
|
\begingroup
|
|
\sls@split@at@iicolons#1:::\@nil
|
|
\ifx\reserved@a\@empty \let\reserved@a\sls@headwidth\fi
|
|
\edef\reserved@a{%
|
|
\noexpand\endgroup
|
|
\noexpand\sls@set@hf@width{head}{\reserved@b}{\reserved@c}{\reserved@a}%
|
|
\noexpand\FamilyKeyStateProcessed
|
|
\noexpand\KOMA@kav@replacevalue{.scrlayer-scrpage.sty}{headwidth}{%
|
|
\reserved@a:\reserved@b:\reserved@c
|
|
}%
|
|
}%
|
|
\reserved@a
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@headwidth}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@headwidth@default}
|
|
\KOMA@key{footwidth}{%
|
|
\begingroup
|
|
\sls@split@at@iicolons#1:::\@nil
|
|
\ifx\reserved@a\@empty \let\reserved@a\sls@footwidth\fi
|
|
\edef\reserved@a{%
|
|
\noexpand\endgroup
|
|
\noexpand\sls@set@hf@width{foot}{\reserved@b}{\reserved@c}{\reserved@a}%
|
|
\noexpand\FamilyKeyStateProcessed
|
|
\noexpand\KOMA@kav@replacevalue{.scrlayer-scrpage.sty}{footwidth}{%
|
|
\reserved@a:\reserved@b:\reserved@c
|
|
}%
|
|
}%
|
|
\reserved@a
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@footwidth}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@footwidth@default}
|
|
\scrlayerAddToInterface\sls@split@at@iicolons{%
|
|
\def\sls@split@at@iicolons#1:#2:#3:#4\@nil{%
|
|
\Ifstr{#4}{}{}{%
|
|
\Ifstr{#4}{:}{}{%
|
|
\Ifstr{#4}{::}{}{%
|
|
\PackageWarning{scrlayer}{extra `:' found!\MessageBreak
|
|
You've used more than two colons at the argument\MessageBreak
|
|
of a two value option.\MessageBreak
|
|
The extra value(s) will be ignored%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
\def\reserved@a{#1}%
|
|
\def\reserved@b{#2}%
|
|
\def\reserved@c{#3}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@set@hf@width{%
|
|
\newcommand*{\sls@set@hf@width}[4]{%
|
|
\sls@settowidthof{\@tempdima}{#4}%
|
|
\ifdim\@tempdima>\paperwidth
|
|
\PackageWarning
|
|
{scrlayer-scrpage}%
|
|
{You've set width of #1 to a value\MessageBreak
|
|
greater than width of page!\MessageBreak%
|
|
I'll reduce width of #1 to width of page}%
|
|
\setlength{\@tempdima}{\paperwidth}%
|
|
\else
|
|
\ifdim\@tempdima<\z@
|
|
\PackageWarning
|
|
{scrlayer-scrpage}%
|
|
{You've set width of #1 to negative value!\MessageBreak%
|
|
I'll set it to 0pt}%
|
|
\setlength{\@tempdima}{\z@}%
|
|
\fi
|
|
\fi
|
|
\expandafter\edef\csname sls@#1width\endcsname{\the\@tempdima}%
|
|
\setlength{\@tempdima}{\textwidth}%
|
|
\addtolength{\@tempdima}{-\csname sls@#1width\endcsname}%
|
|
\Ifstr{#2}{}{%
|
|
\ifdim \csname sls@#1width\endcsname
|
|
= \dimexpr \textwidth+\marginparwidth+\marginparsep\relax
|
|
\setlength{\@tempdimb}{\z@}
|
|
\else
|
|
\if@twoside
|
|
\setlength{\@tempdimb}{.3333333333\@tempdima}%
|
|
\else
|
|
\setlength{\@tempdimb}{.5\@tempdima}%
|
|
\fi
|
|
\fi
|
|
}{%
|
|
\sls@settowidthof{\@tempdimb}{#2}%
|
|
}%
|
|
\Ifstr{#3}{}{%
|
|
\addtolength{\@tempdima}{-\@tempdimb}%
|
|
}{%
|
|
\sls@settowidthof{\@tempdima}{#3}%
|
|
\setlength{\@tempdima}{-\@tempdima}%
|
|
}%
|
|
\ifdim\@tempdimb<\z@
|
|
\setlength{\@tempdimb}{-\@tempdimb}%
|
|
\expandafter\edef\csname sls@odd#1shift\endcsname{-\the\@tempdimb}%
|
|
\else
|
|
\expandafter\edef\csname sls@odd#1shift\endcsname{\the\@tempdimb}%
|
|
\fi
|
|
\ifdim\@tempdima<\z@
|
|
\setlength{\@tempdima}{-\@tempdima}%
|
|
\expandafter\edef\csname sls@even#1shift\endcsname{-\the\@tempdima}%
|
|
\else
|
|
\expandafter\edef\csname sls@even#1shift\endcsname{\the\@tempdima}%
|
|
\fi
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@headwidth{%
|
|
\scr@ifundefinedorrelax{@headwidth}{%
|
|
\newcommand*{\sls@headwidth}{\textwidth}%
|
|
\KOMA@kav@add{.scrlayer-scrpage.sty}{headwidth}{\textwidth:0pt:0pt}%
|
|
}{%
|
|
\newcommand*{\sls@headwidth}{\@headwidth}%
|
|
\KOMA@kav@xadd{.scrlayer-scrpage.sty}{headwidth}{\@headwidth:0pt:0pt}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@oddheadshift{\newcommand*{\sls@oddheadshift}{0pt}}
|
|
\scrlayerAddToInterface\sls@evenheadshift{\newcommand*{\sls@evenheadshift}{0pt}}
|
|
\scrlayerAddToInterface\sls@footwidth{%
|
|
\scr@ifundefinedorrelax{@footwidth}{%
|
|
\newcommand*{\sls@footwidth}{\textwidth}%
|
|
\KOMA@kav@add{.scrlayer-scrpage.sty}{footwidth}{\textwidth:0pt:0pt}
|
|
}{%
|
|
\newcommand*{\sls@footwidth}{\@footwidth}%
|
|
\KOMA@kav@xadd{.scrlayer-scrpage.sty}{footwidth}{\@footwidth:0pt:0pt}
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@oddfootshift{\newcommand*{\sls@oddfootshift}{0pt}}
|
|
\scrlayerAddToInterface\sls@evenfootshift{\newcommand*{\sls@evenfootshift}{0pt}}
|
|
\scrlayerAddToInterface\sls@settotwidthof{%
|
|
\newcommand*{\sls@settowidthof}[2]{%
|
|
\Ifstr{#2}{paper}{%
|
|
\setlength{#1}{\paperwidth}%
|
|
}{%
|
|
\Ifstr{#2}{text}{%
|
|
\setlength{#1}{\textwidth}%
|
|
}{%
|
|
\Ifstr{#2}{marginpar}{%
|
|
\setlength{#1}{\dimexpr \marginparwidth+\marginparsep\relax}%
|
|
}{%
|
|
\Ifstr{#2}{textwithmarginpar}{%
|
|
\setlength{#1}{\dimexpr\textwidth
|
|
+\marginparwidth
|
|
+\marginparsep\relax}%
|
|
}{%
|
|
\Ifstr{#2}{head}{%
|
|
\setlength{#1}{\sls@headwidth}%
|
|
}{%
|
|
\Ifstr{#2}{foot}{%
|
|
\setlength{#1}{\sls@footwidth}%
|
|
}{%
|
|
\Ifstr{#2}{headtopline}{%
|
|
\setlength{#1}{\sls@headabove@linelength}%
|
|
}{%
|
|
\Ifstr{#2}{headsepline}{%
|
|
\setlength{#1}{\sls@headbelow@linelength}%
|
|
}{%
|
|
\Ifstr{#2}{footsepline}{%
|
|
\setlength{#1}{\sls@footabove@linelength}%
|
|
}{%
|
|
\Ifstr{#2}{footbotline}{%
|
|
\setlength{#1}{\sls@footbelow@linelength}%
|
|
}{%
|
|
\Ifstr{#2}{page}{%
|
|
\setlength{#1}{\paperwidth}%
|
|
\begingroup
|
|
\expandafter\expandafter\expandafter\endgroup
|
|
\expandafter\ifx\csname ta@bcor\endcsname\relax\else
|
|
\addtolength{#1}{-\ta@bcor}%
|
|
\fi
|
|
}{%
|
|
\setlength{#1}{\dimexpr #2\relax}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@deftowidthof{%
|
|
\newcommand*{\sls@deftowidthof}[2]{%
|
|
\Ifstr{#2}{autohead}{%
|
|
\expandafter\def\csname #1\endcsname{\sls@headwidth}%
|
|
}{%
|
|
\Ifstr{#2}{autofoot}{%
|
|
\expandafter\def\csname #1\endcsname{\sls@footwidth}%
|
|
}{%
|
|
\sls@settowidthof{\@tempdima}{#2}%
|
|
\expandafter\edef\csname #1\endcsname{\the\@tempdima}%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\KOMA@key{headtopline}[:]{%
|
|
\sls@set@values[headtopline]{head}{above}{#1}%
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@headtopline}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@headtopline@default}
|
|
\KOMA@key{headsepline}[:]{%
|
|
\sls@set@values[headsepline]{head}{below}{#1}%
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@headsepline}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@headsepline@default}
|
|
\KOMA@key{footsepline}[:]{%
|
|
\sls@set@values[footsepline]{foot}{above}{#1}%
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@footsepline}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@footsepline@default}
|
|
\KOMA@key{footbotline}[:]{%
|
|
\sls@set@values[footbotline]{foot}{below}{#1}%
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@footbotline}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@footbotline@default}
|
|
\scrlayerAddToInterface\sls@set@values{%
|
|
\newcommand*{\sls@set@values}[4][]{%
|
|
\begingroup
|
|
\Ifstr{#1}{}{%
|
|
\FamilyKeyStateUnknown
|
|
}{%
|
|
\KOMA@set@ifkey{#1}{@tempswa}{#4}%
|
|
}%
|
|
\ifx\FamilyKeyState\FamilyKeyStateProcessed
|
|
\if@tempswa
|
|
\edef\reserved@b{%
|
|
\noexpand\endgroup
|
|
\noexpand\@namedef{sls@#2#3@linethickness}{.4pt}%
|
|
\noexpand\@namedef{sls@#2#3@linelength}{%
|
|
\expandafter\noexpand\csname sls@#2width\endcsname
|
|
}%
|
|
}%
|
|
\else
|
|
\def\reserved@b{%
|
|
\endgroup
|
|
\@namedef{sls@#2#3@linethickness}{0pt}%
|
|
\@namedef{sls@#2#3@linelength}{0pt}%
|
|
}%
|
|
\fi
|
|
\else
|
|
\let\reserved@a\@empty
|
|
\let\reserved@b\@empty
|
|
\sls@split@at@colon#4::\@nil
|
|
\ifx\reserved@a\@empty
|
|
\def\reserved@a{\endgroup\@namedef{sls@#2#3@linethickness}{.4pt}}%
|
|
\else
|
|
\setlength{\@tempdima}{\dimexpr\reserved@a\relax}%
|
|
\edef\reserved@a{%
|
|
\noexpand\endgroup
|
|
\noexpand\@namedef{sls@#2#3@linethickness}{\the\@tempdima}%
|
|
}%
|
|
\fi
|
|
\ifx\reserved@b\@empty
|
|
\def\reserved@b{%
|
|
\reserved@a
|
|
\@namedef{sls@#2#3@linelength}{\@nameuse{sls@#2width}}%
|
|
}%
|
|
\else
|
|
\edef\reserved@b{%
|
|
\noexpand\reserved@a
|
|
\noexpand\sls@deftowidthof{sls@#2#3@linelength}{\reserved@b}%
|
|
}%
|
|
\fi
|
|
\fi
|
|
\reserved@b
|
|
\FamilyKeyStateProcessed
|
|
\Ifstr{#1}{}{}{%
|
|
\KOMA@kav@xreplacevalue{.scrlayer-scrpage.sty}{#1}{%
|
|
\csname sls@#2#3@linethickness\endcsname
|
|
:\csname sls@#2#3@linelength\endcsname
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@split@at@colon{%
|
|
\def\sls@split@at@colon#1:#2:#3\@nil{%
|
|
\Ifstr{#3}{}{}{%
|
|
\Ifstr{#3}{:}{}{%
|
|
\PackageWarning{scrlayer}{extra `:' found!\MessageBreak
|
|
You've used more than one colon at the argument\MessageBreak
|
|
of a two value option.\MessageBreak
|
|
The extra value(s) will be ignored%
|
|
}%
|
|
}%
|
|
}%
|
|
\def\reserved@a{#1}%
|
|
\def\reserved@b{#2}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@headabove@linelength{%
|
|
\newcommand*{\sls@headabove@linelength}{\sls@headwidth}%
|
|
}
|
|
\scrlayerAddToInterface\sls@headabove{%
|
|
\newcommand*{\sls@headabove@linethickness}{0pt}%
|
|
}
|
|
\KOMA@kav@xadd{.scrlayer-scrpage.sty}{headtopline}{%
|
|
\expandafter\noexpand\sls@headabove@linethickness:%
|
|
\expandafter\noexpand\sls@headabove@linelength}
|
|
\scrlayerAddToInterface\sls@headbelow@linelength{%
|
|
\newcommand*{\sls@headbelow@linelength}{\sls@headwidth}%
|
|
}
|
|
\scrlayerAddToInterface\sls@headbelow@linethickness{%
|
|
\newcommand*{\sls@headbelow@linethickness}{0pt}%
|
|
}
|
|
\KOMA@kav@xadd{.scrlayer-scrpage.sty}{headsepline}{%
|
|
\expandafter\noexpand\sls@headbelow@linethickness:%
|
|
\expandafter\noexpand\sls@headbelow@linelength}
|
|
\scrlayerAddToInterface\sls@footabove@linelength{%
|
|
\newcommand*{\sls@footabove@linelength}{\sls@footwidth}%
|
|
}
|
|
\scrlayerAddToInterface\sls@footabove@linethickness{%
|
|
\newcommand*{\sls@footabove@linethickness}{0pt}%
|
|
}
|
|
\KOMA@kav@xadd{.scrlayer-scrpage.sty}{footsepline}{%
|
|
\expandafter\noexpand\sls@footabove@linethickness:%
|
|
\expandafter\noexpand\sls@footabove@linelength}
|
|
\scrlayerAddToInterface\sls@footbelow@linelength{%
|
|
\newcommand*{\sls@footbelow@linelength}{\sls@footwidth}%
|
|
}
|
|
\scrlayerAddToInterface\sls@footbelow@linethickness{%
|
|
\newcommand*{\sls@footbelow@linethickness}{0pt}%
|
|
}
|
|
\KOMA@kav@xadd{.scrlayer-scrpage.sty}{footbotline}{%
|
|
\expandafter\noexpand\sls@footbelow@linethickness:%
|
|
\expandafter\noexpand\sls@footbelow@linelength}
|
|
\scrlayerAddCsToInterface{ifsls@plain@head@above@line}{%
|
|
\KOMA@ifkey{plainheadtopline}{sls@plain@head@above@line}%
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@plainheadtopline}%
|
|
\scrlayer@AddCsToInterface{%
|
|
KV@KOMA.scrlayer-scrpage.sty@plainheadtopline@default}%
|
|
\scrlayer@AddCsToInterface{sls@plain@head@above@linetrue}
|
|
\scrlayer@AddCsToInterface{sls@plain@head@above@linefalse}
|
|
}
|
|
\scrlayerAddCsToInterface{ifsls@plain@head@sbelow@line}{%
|
|
\KOMA@ifkey{plainheadsepline}{sls@plain@head@below@line}%
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@plainheadsepline}%
|
|
\scrlayer@AddCsToInterface{%
|
|
KV@KOMA.scrlayer-scrpage.sty@plainheadsepline@default}%
|
|
\scrlayer@AddCsToInterface{sls@plain@head@below@linetrue}%
|
|
\scrlayer@AddCsToInterface{sls@plain@head@below@linefalse}%
|
|
}
|
|
\scrlayerAddCsToInterface{ifsls@plain@foot@above@line}{%
|
|
\KOMA@ifkey{plainfootsepline}{sls@plain@foot@above@line}%
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@plainfootsepline}%
|
|
\scrlayer@AddCsToInterface{%
|
|
KV@KOMA.scrlayer-scrpage.sty@plainfootsepline@default}%
|
|
\scrlayer@AddCsToInterface{sls@plain@foot@above@linetrue}%
|
|
\scrlayer@AddCsToInterface{sls@plain@foot@above@linefalse}%
|
|
}
|
|
\scrlayerAddCsToInterface{ifsls@plain@foot@below@line}{%
|
|
\KOMA@ifkey{plainfootbotline}{sls@plain@foot@below@line}%
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@plainfootbotline}%
|
|
\scrlayer@AddCsToInterface{%
|
|
KV@KOMA.scrlayer-scrpage.sty@plainfootbotline@default}%
|
|
\scrlayer@AddCsToInterface{sls@plain@foot@below@linetrue}%
|
|
\scrlayer@AddCsToInterface{sls@plain@foot@below@linefalse}%
|
|
}
|
|
\scrlayerAddToInterface\sls@hfline@adjust{%
|
|
\newcommand*{\sls@hfline@adjust}{0}%
|
|
}
|
|
\KOMA@kav@add{.scrlayer-scrpage.sty}{ilines}{}
|
|
\KOMA@key{ilines}[]{%
|
|
\ifx\relax#1\relax
|
|
\renewcommand*{\sls@hfline@adjust}{0}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{ilines}%
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{clines}%
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{olines}%
|
|
\KOMA@kav@add{.scrlayer-scrpage.sty}{ilines}{}%
|
|
\else
|
|
\def\FamilyKeyStateProcessed{unexpected value}%
|
|
\fi
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@ilines}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@ilines@default}
|
|
\KOMA@key{clines}[]{%
|
|
\ifx\relax#1\relax
|
|
\renewcommand*{\sls@hfline@adjust}{1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{ilines}%
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{clines}%
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{olines}%
|
|
\KOMA@kav@add{.scrlayer-scrpage.sty}{clines}{}%
|
|
\else
|
|
\def\FamilyKeyStateProcessed{unexpected value}%
|
|
\fi
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@clines}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@clines@default}
|
|
\KOMA@key{olines}[]{%
|
|
\ifx\relax#1\relax
|
|
\renewcommand*{\sls@hfline@adjust}{2}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{ilines}%
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{clines}%
|
|
\KOMA@kav@removekey{.scrlayer-scrpage.sty}{olines}%
|
|
\KOMA@kav@add{.scrlayer-scrpage.sty}{olines}{}%
|
|
\else
|
|
\def\FamilyKeyStateProcessed{unexpected value}%
|
|
\fi
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@olines}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@olines@default}
|
|
\KOMA@kav@add{.scrlayer-scrpage.sty}{ilines}{}
|
|
\KOMA@key{pagestyleset}{%
|
|
\scr@ifundefinedorrelax{sls@ps@style@#1}{%
|
|
\FamilyKeyStateUnknownValue
|
|
}{%
|
|
\let\sls@auto@pagestyleset\relax
|
|
\@nameuse{sls@ps@style@#1}%
|
|
\FamilyKeyStateProcessed
|
|
\KOMA@kav@replacevalue{.scrlayer-scrpage.sty}{pagestyleset}{#1}%
|
|
}%
|
|
}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@pagestyleset}
|
|
\scrlayerAddToInterface\sls@ps@style@standard{%
|
|
\newcommand*{\sls@ps@style@standard}{%
|
|
\let\MakeMarkcase\MakeUppercase
|
|
\scrlayer@AtEndOfPackage{%
|
|
\pagestyle{scrheadings}%
|
|
\clearpairofpagestyles
|
|
\ihead{\headmark}%
|
|
\ohead{\pagemark}%
|
|
\cfoot[\if@twoside\else\pagemark\fi]{}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddCsToInterface{sls@ps@style@KOMA-Script}{%
|
|
\@namedef{sls@ps@style@KOMA-Script}{%
|
|
\let\MakeMarkcase\@firstofone
|
|
\scrlayer@AtEndOfPackage{%
|
|
\pagestyle{scrheadings}%
|
|
\clearpairofpagestyles
|
|
\ohead{\if@twoside\headmark\fi}%
|
|
\chead{\if@twoside\else\headmark\fi}%
|
|
\ofoot[\if@twoside\pagemark\fi]{\if@twoside\pagemark\fi}%
|
|
\cfoot[\if@twoside\else\pagemark\fi]{\if@twoside\else\pagemark\fi}%
|
|
\scr@ifundefinedorrelax{KOMAClassName}{}{%
|
|
\Ifstr{\KOMAClassName}{scrlttr2}{%
|
|
\clearpairofpagestyles
|
|
\lehead[\ifnum\@pageat=\z@\pagemark\fi]
|
|
{\ifnum\@pageat=\z@\pagemark\else\leftmark\fi}%
|
|
\lohead[\ifnum\@pageat=\z@\pagemark\fi]
|
|
{\ifnum\@pageat=\z@\pagemark\else\leftmark\fi}%
|
|
\chead[\ifnum\@pageat=\@ne\pagemark\fi]
|
|
{\ifcase\@pageat \rightmark\or \pagemark\or \rightmark\fi}%
|
|
\rehead[\ifnum\@pageat=\tw@\pagemark\fi]
|
|
{\ifcase\@pageat \leftmark\or \rightmark\or \pagemark
|
|
\else \rightmark\fi}%
|
|
\rohead[\ifnum\@pageat=\tw@\pagemark\fi]
|
|
{\ifcase\@pageat \leftmark\or \rightmark\or \pagemark
|
|
\else \rightmark\fi}%
|
|
\lefoot[\ifnum\@pageat=\thr@@\pagemark\fi]
|
|
{\ifnum\@pageat=\thr@@\pagemark\fi}%
|
|
\lofoot[\ifnum\@pageat=\thr@@\pagemark\fi]
|
|
{\ifnum\@pageat=\thr@@\pagemark\fi}%
|
|
\cfoot[\ifnum\@pageat=4 \pagemark\fi]
|
|
{\ifnum\@pageat=4 \pagemark\fi}%
|
|
\refoot[\ifnum\@pageat=5 \pagemark\fi]
|
|
{\ifnum\@pageat=5 \pagemark\fi}%
|
|
\rofoot[\ifnum\@pageat=5 \pagemark\fi]
|
|
{\ifnum\@pageat=5 \pagemark\fi}%
|
|
}{}%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\KOMA@DeclareDeprecatedOption[scrlayer-scrpage]{komastyle}{%
|
|
pagestyleset=KOMA-Script}
|
|
\KOMA@DeclareDeprecatedOption[scrlayer-scrpage]{standardstyle}{%
|
|
pagestyleset=standard}
|
|
\KOMA@DeclareDeprecatedOption[scrlayer-scrpage]{markuppercase}{markcase=upper}
|
|
\KOMA@DeclareDeprecatedOption[scrlayer-scrpage]{markusedcase}{markcase=used}
|
|
\KOMA@DeclareDeprecatedOption[scrlayer-scrpage]{nouppercase}{%
|
|
markcase=ignoreuppercase%
|
|
}
|
|
\KOMA@ifkey{hmode}{sls@leavevmode}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@hmode}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@hmode@default}
|
|
\scrlayer@AddCsToInterface{sls@leavevmode@linetrue}
|
|
\scrlayer@AddCsToInterface{sls@leavevmode@linefalse}
|
|
\KOMA@ifkey{autoenlargeheadfoot}{sls@autoenlarge}
|
|
\KOMAExecuteOptions{autoenlargeheadfoot=true}
|
|
\scrlayer@AddCsToInterface{KV@KOMA.scrlayer-scrpage.sty@autoenlargeheadfoot}
|
|
\scrlayer@AddCsToInterface{%
|
|
KV@KOMA.scrlayer-scrpage.sty@autoenlargeheadfoot@default}
|
|
\scrlayer@AddCsToInterface{sls@autoenlargetrue}
|
|
\scrlayer@AddCsToInterface{sls@autoenlargefalse}
|
|
%%% From File: $Id: scrlayer.dtx 3411 2019-11-28 09:11:27Z kohm $
|
|
%%% (run: body)
|
|
\KOMAProcessOptions\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @markcase\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @autooneside\endcsname\relax
|
|
\expandafter\let\csname KV@KOMA.\@currname.\@currext @automark\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @automark@default\endcsname\relax
|
|
\expandafter\let\csname KV@KOMA.\@currname.\@currext @manualmark\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @manualmark@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsselect\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsselect@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsinit\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsinit@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsoneside\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsoneside@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpstwoside\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpstwoside@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsoddpage\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsoddpage@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsevenpage\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsevenpage@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsfloatpage\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsfloatpage@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsnonfloatpage\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsnonfloatpage@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsbackground\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsbackground@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsforeground\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @onpsforeground@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @deactivatepagestylelayers\endcsname
|
|
\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @deactivatepagestylelayers@default\endcsname
|
|
\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @draft\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @draft@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @forceoverwrite\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @forceoverwrite@default\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @autoremoveinterfaces\endcsname\relax
|
|
\expandafter\let
|
|
\csname KV@KOMA.\@currname.\@currext @autoremoveinterfaces@default\endcsname
|
|
\relax
|
|
%%% From File: $Id: scrlayer-scrpage.dtx 3390 2019-11-18 17:09:35Z kohm $
|
|
%%% (run: body)
|
|
\scrlayerAddToInterface\setheadwidth{%
|
|
\newcommand*{\setheadwidth}[2][]{%
|
|
\KOMAoptions{headwidth=#2:#1}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\setfootwidth{%
|
|
\newcommand*{\setfootwidth}[2][]{%
|
|
\KOMAoptions{footwidth=#2:#1}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\setheadtopline{%
|
|
\newcommand*{\setheadtopline}{\sls@setline{head}{above}}%
|
|
}
|
|
\scrlayerAddToInterface\setheadsepline{%
|
|
\newcommand*{\setheadsepline}{\sls@setline{head}{below}}%
|
|
}
|
|
\scrlayerAddToInterface\setfootsepline{%
|
|
\newcommand*{\setfootsepline}{\sls@setline{foot}{above}}%
|
|
}
|
|
\scrlayerAddToInterface\setfootbotline{%
|
|
\newcommand*{\setfootbotline}{\sls@setline{foot}{below}}%
|
|
}
|
|
\scrlayerAddToInterface\sls@setline{%
|
|
\newcommand*\sls@setline[2]{%
|
|
\kernel@ifnextchar[%]
|
|
{\sls@@setline{#1}{#2}}{\sls@@@setline{#1#2}}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@setline{%
|
|
\def\sls@@setline#1#2[#3]{%
|
|
\Ifstr{#3}{auto}{%
|
|
\sls@deftowidthof{sls@#1#2@linelength}{#3#1}%
|
|
}{%
|
|
\sls@deftowidthof{sls@#1#2@linelength}{#3}%
|
|
}%
|
|
\sls@@@setline{#1#2}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@@setline{%
|
|
\def\sls@@@setline#1#2{%
|
|
\edef\@tempa{#2}\edef\@tempb{current}%
|
|
\Ifstr{#2}{}{}{%
|
|
\Ifstr{#2}{current}{}{%
|
|
\setlength{\@tempdima}{#2}%
|
|
\Ifstr{#1}{headabove}{%
|
|
\KOMAExecuteOptions[.scrlayer-scrpage.sty]%
|
|
{headtopline=\@tempdima:\csname sls@#1@linelength\endcsname}%
|
|
}{\Ifstr{#1}{headbelow}{%
|
|
\KOMAExecuteOptions[.scrlayer-scrpage.sty]%
|
|
{headsepline=\@tempdima:\csname sls@#1@linelength\endcsname}%
|
|
}{%
|
|
\Ifstr{#1}{footabove}{%
|
|
\KOMAExecuteOptions[.scrlayer-scrpage.sty]%
|
|
{footsepline=\@tempdima:\csname sls@#1@linelength\endcsname}%
|
|
}{%
|
|
\KOMAExecuteOptions[.scrlayer-scrpage.sty]%
|
|
{footbotline=\@tempdima:\csname sls@#1@linelength\endcsname}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
\PackageWarning{scrlayer-scrpage}{%
|
|
Command deprecated!\MessageBreak
|
|
Usage of `\string\setheadtopline',
|
|
`\string\setheadsepline',\MessageBreak
|
|
`\string\setfootsepline', and `\string\setfootbotline'\MessageBreak
|
|
became deprecated with scrlayer-scrpage.\MessageBreak
|
|
You should use KOMA-Script options\MessageBreak
|
|
`headsepline', `headtopline', `footsepline',\MessageBreak
|
|
or `footbotline' with values\MessageBreak
|
|
`<line thickness>:<line length>' to setup\MessageBreak
|
|
the line length and thickness, and\MessageBreak
|
|
`\string\setkomafont' or `\string\addtokomafont' to\MessageBreak
|
|
setup the colour%
|
|
}%
|
|
\kernel@ifnextchar[%]
|
|
{%
|
|
\sls@@@@setline{#1}%
|
|
}{%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@@@setline{%
|
|
\def\sls@@@@setline#1[#2]{%
|
|
\Ifstr{#1}{headabove}{\setkomafont{headtopline}{#2}}{%
|
|
\Ifstr{#1}{headbelow}{\setkomafont{headsepline}{#2}}{%
|
|
\Ifstr{#1}{footabove}{\setkomafont{footsepline}{#2}}{%
|
|
\setkomafont{footbotline}{#2}%
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\@ifundefined{scr@fnt@headtopline}{%
|
|
\@ifundefined{@headtoplinefont}{%
|
|
\scrlayer@AddCsToInterface{@headtoplinefont}%
|
|
}{}%
|
|
\newkomafont{headtopline}{}%
|
|
\scrlayer@AddCsToInterface{scr@fnt@headtopline}%
|
|
}{}
|
|
\@ifundefined{scr@fnt@headsepline}{%
|
|
\@ifundefined{@headseplinefont}{%
|
|
\scrlayer@AddCsToInterface{@headseplinefont}%
|
|
}{}%
|
|
\newkomafont{headsepline}{}%
|
|
\scrlayer@AddCsToInterface{scr@fnt@headsepline}%
|
|
}{}
|
|
\@ifundefined{scr@fnt@footsepline}{%
|
|
\@ifundefined{@footseplinefont}{%
|
|
\scrlayer@AddCsToInterface{@footseplinefont}%
|
|
}{}%
|
|
\newkomafont{footsepline}{}%
|
|
\scrlayer@AddCsToInterface{scr@fnt@footsepline}%
|
|
}{}
|
|
\@ifundefined{scr@fnt@footbotline}{%
|
|
\@ifundefined{@footbotlinefont}{%
|
|
\scrlayer@AddCsToInterface{@footbotlinefont}%
|
|
}{}%
|
|
\newkomafont{footbotline}{}%
|
|
\scrlayer@AddCsToInterface{scr@fnt@footbotline}%
|
|
}{}
|
|
\AtBeginDocument{%
|
|
\ifdim \headheight
|
|
<\if@ps@singlespacing\f@baselineskip\else\baselineskip\fi\relax
|
|
\PackageWarningNoLine{scrlayer-scrpage}{Very small head height
|
|
detected!\MessageBreak
|
|
Using scrlayer-scrpage the head height\MessageBreak
|
|
should be at least \string\baselineskip, which is\MessageBreak
|
|
\if@ps@singlespacing\f@baselineskip\else\the\baselineskip\fi\space
|
|
currently.\MessageBreak
|
|
But head height is currently
|
|
\the\headheight\space only.\MessageBreak
|
|
You may use\MessageBreak
|
|
\@ifpackageloaded{geometry}{%
|
|
geometry option
|
|
`head=\if@ps@singlespacing\f@baselineskip\else\the\baselineskip\fi'%
|
|
}{%
|
|
\@ifpackageloaded{typearea}{%
|
|
typearea option `headheight=%
|
|
\if@ps@singlespacing\f@baselineskip\else\the\baselineskip\fi'%
|
|
}{%
|
|
\string\setlength{\string\headheight}%
|
|
{\if@ps@singlespacing\f@baselineskip\else\the\baselineskip\fi}%
|
|
}%
|
|
}\MessageBreak
|
|
\if@ps@singlespacing\else\ifdim \headheight<\f@baselineskip\else
|
|
or load package `scrlayer-scrpage' with\MessageBreak
|
|
option `singlespacing=true'\MessageBreak
|
|
\fi\fi
|
|
to avoid this warning%
|
|
}%
|
|
\else
|
|
\ifdim \footheight
|
|
<\if@ps@singlespacing\f@baselineskip\else\baselineskip\fi\relax
|
|
\PackageWarningNoLine{scrlayer-scrpage}{Very small foot height
|
|
detected!\MessageBreak
|
|
Using scrlayer-scrpage the foot height\MessageBreak
|
|
should be at least \string\baselineskip, which is\MessageBreak
|
|
\if@ps@singlespacing\f@baselineskip\else\the\baselineskip\fi\space
|
|
currently.\MessageBreak
|
|
But foot height is currently
|
|
\the\footheight\space only.\MessageBreak
|
|
You may use\MessageBreak
|
|
\@ifpackageloaded{typearea}{%
|
|
typearea option `footheight=%
|
|
\if@ps@singlespacing\f@baselineskip\else\the\baselineskip\fi'%
|
|
}{%
|
|
\string\setlength{\string\footheight}%
|
|
{\if@ps@singlespacing\f@baselineskip\else\the\baselineskip\fi}%
|
|
}%
|
|
\MessageBreak
|
|
\if@ps@singlespacing\else\ifdim \footheight<\f@baselineskip\else
|
|
or load package `scrlayer-scrpage' with\MessageBreak
|
|
option `singlespacing=true'\MessageBreak
|
|
\fi\fi
|
|
to avoid this warning%
|
|
}%
|
|
\fi
|
|
\fi
|
|
}
|
|
\@ifundefined{LaTeXcentering}{\let\LaTeXcentering\centering}{}
|
|
\@ifundefined{LaTeXraggedleft}{\let\LaTeXraggedleft\raggedleft}{}
|
|
\@ifundefined{LaTeXraggedright}{\let\LaTeXraggedright\raggedright}{}
|
|
\scrlayerAddToInterface\defpagestyle{%
|
|
\newcommand*{\defpagestyle}[3]{%
|
|
\sls@defhead{#1}#2\@empty\@empty\@empty
|
|
\sls@deffoot{#1}#3\@empty\@empty\@empty
|
|
\DeclarePageStyleByLayers{#1}{%
|
|
#1.head.odd,#1.head.even,#1.head.oneside,%
|
|
#1.head.above.line,#1.head.below.line,%
|
|
#1.foot.odd,#1.foot.even,#1.foot.oneside,%
|
|
#1.foot.above.line,#1.foot.below.line%
|
|
}%
|
|
\edef\reserved@a{%
|
|
\noexpand\scrlayerOnAutoRemoveInterface[scrlayer-scrpage.sty]{%
|
|
\noexpand\DestroyLayer{#1.head.odd}%
|
|
\noexpand\DestroyLayer{#1.head.even}%
|
|
\noexpand\DestroyLayer{#1.head.oneside}%
|
|
\noexpand\DestroyLayer{#1.head.above.line}%
|
|
\noexpand\DestroyLayer{#1.head.below.line}%
|
|
\noexpand\DestroyLayer{#1.foot.odd}%
|
|
\noexpand\DestroyLayer{#1.foot.even}%
|
|
\noexpand\DestroyLayer{#1.foot.oneside}%
|
|
\noexpand\DestroyLayer{#1.foot.above.line}%
|
|
\noexpand\DestroyLayer{#1.foot.below.line}%
|
|
\noexpand\Ifstr{\noexpand\currentpagestyle}{#1}{%
|
|
\noexpand\PackageWarning{scrlayer-scrpage}{%
|
|
page style `#1' not longer valid.\noexpand\MessageBreak
|
|
The page style has been defined using\noexpand\MessageBreak
|
|
interface `scrlayer-scrpage.sty', that\noexpand\MessageBreak
|
|
has been removed%
|
|
}%
|
|
}{}%
|
|
\noexpand\DestroyRealLayerPageStyle{#1}%
|
|
}%
|
|
}\reserved@a
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@defhead{%
|
|
\newcommand*\sls@defhead[1]{%
|
|
\kernel@ifnextchar(%)
|
|
{\sls@@defhead{#1}}%
|
|
{\sls@@defhead{#1}(\sls@headabove@linelength,\sls@headabove@linethickness)}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@defhead{%
|
|
\def\sls@@defhead#1(#2,#3)#4#5#6{%
|
|
\kernel@ifnextchar(%)
|
|
{\sls@@@defhead{#1}({#2},{#3}){#4}{#5}{#6}}%
|
|
{\sls@@@defhead{#1}%
|
|
({#2},{#3})%
|
|
{#4}{#5}{#6}%
|
|
(\sls@headbelow@linelength,\sls@headbelow@linethickness)}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@@defhead{%
|
|
\def\sls@@@defhead#1(#2,#3)#4#5#6(#7,#8){%
|
|
\DeclareLayer[%
|
|
background,%
|
|
hoffset=\sls@leftmargin{head},%
|
|
voffset=\sls@topmargin+\dp\strutbox,%
|
|
width=\sls@headwidth,%
|
|
height=0pt,%
|
|
align=bl,%
|
|
contents={%
|
|
{\normalfont\usekomafont{pageheadfoot}{\usekomafont{pagehead}{%
|
|
\sls@hf@rule{headtop}{#2}{#3}}}}%
|
|
}%
|
|
]{#1.head.above.line}%
|
|
\DeclareLayer[%
|
|
background,%
|
|
hoffset=\sls@leftmargin{head},%
|
|
voffset=\sls@topmargin+\headheight-\ht\strutbox+#8,%
|
|
width=\sls@headwidth,%
|
|
height=0pt,%
|
|
align=tl,%
|
|
contents={%
|
|
{\normalfont\usekomafont{pageheadfoot}{\usekomafont{pagehead}{%
|
|
\sls@hf@rule{headsep}{#7}{#8}}}}%
|
|
}%
|
|
]{#1.head.below.line}%
|
|
\DeclareLayer[%
|
|
background,evenpage,twoside,%
|
|
head,%
|
|
hoffset=\sls@leftmargin{head},%
|
|
width=\sls@headwidth,%
|
|
contents={%
|
|
\sls@secure@box\headheight{%
|
|
\normalfont{\usekomafont{pageheadfoot}{\usekomafont{pagehead}{#4}}}}}%
|
|
]{#1.head.even}%
|
|
\DeclareLayer[%
|
|
background,oddpage,twoside,%
|
|
head,%
|
|
hoffset=\sls@leftmargin{head},%
|
|
width=\sls@headwidth,%
|
|
contents={%
|
|
\sls@secure@box\headheight{%
|
|
\normalfont{\usekomafont{pageheadfoot}{\usekomafont{pagehead}{#5}}}}}%
|
|
]{#1.head.odd}%
|
|
\DeclareLayer[%
|
|
background,oddpage,oneside,%
|
|
head,%
|
|
hoffset=\sls@leftmargin{head},%
|
|
width=\sls@headwidth,%
|
|
contents={%
|
|
\sls@secure@box\headheight{%
|
|
\normalfont{\usekomafont{pageheadfoot}{\usekomafont{pagehead}{#6}}}}}%
|
|
]{#1.head.oneside}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@deffoot{%
|
|
\newcommand*\sls@deffoot[1]{%
|
|
\kernel@ifnextchar(%)
|
|
{\sls@@deffoot{#1}}%
|
|
{\sls@@deffoot{#1}(\sls@footabove@linelength,\sls@footabove@linethickness)}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@deffoot{%
|
|
\def\sls@@deffoot#1(#2,#3)#4#5#6{%
|
|
\kernel@ifnextchar(%)
|
|
{\sls@@@deffoot{#1}({#2},{#3}){#4}{#5}{#6}}%
|
|
{\sls@@@deffoot{#1}%
|
|
({#2},{#3})%
|
|
{#4}{#5}{#6}%
|
|
(\sls@footbelow@linelength,\sls@footbelow@linethickness)}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@@deffoot{%
|
|
\def\sls@@@deffoot#1(#2,#3)#4#5#6(#7,#8){%
|
|
\DeclareLayer[%
|
|
foreground,%
|
|
hoffset=\sls@leftmargin{foot},%
|
|
voffset=\sls@topmargin
|
|
+\headheight+\headsep
|
|
+\textheight
|
|
+\footskip-\footheight
|
|
+2\dp\strutbox,%
|
|
width=\sls@footwidth,%
|
|
height=0pt,%
|
|
align=bl,%
|
|
contents={%
|
|
{\normalfont\usekomafont{pageheadfoot}{\usekomafont{pagefoot}{%
|
|
\sls@hf@rule{footsep}{#2}{#3}}}}%
|
|
}%
|
|
]{#1.foot.above.line}%
|
|
\DeclareLayer[%
|
|
foreground,%
|
|
hoffset=\sls@leftmargin{foot},%
|
|
voffset=\sls@topmargin
|
|
+\headheight+\headsep
|
|
+\textheight
|
|
+\footskip
|
|
+2\dp\strutbox
|
|
+#8,%
|
|
width=\sls@footwidth,%
|
|
height=0pt,%
|
|
align=bl,%
|
|
contents={%
|
|
{\normalfont\usekomafont{pageheadfoot}{\usekomafont{pagefoot}{%
|
|
\sls@hf@rule{footbot}{#7}{#8}}}}%
|
|
}%
|
|
]{#1.foot.below.line}%
|
|
\DeclareLayer[%
|
|
foreground,evenpage,twoside,%
|
|
foot,%
|
|
hoffset=\sls@leftmargin{foot},%
|
|
width=\sls@footwidth,%
|
|
contents={%
|
|
\sls@secure@box\footheight{%
|
|
\normalfont\usekomafont{pageheadfoot}{\usekomafont{pagefoot}{#4}}}}%
|
|
]{#1.foot.even}%
|
|
\DeclareLayer[%
|
|
foreground,oddpage,twoside,%
|
|
foot,%
|
|
hoffset=\sls@leftmargin{foot},%
|
|
width=\sls@footwidth,%
|
|
contents={%
|
|
\sls@secure@box\footheight{%
|
|
\normalfont\usekomafont{pageheadfoot}{\usekomafont{pagefoot}{#5}}}}%
|
|
]{#1.foot.odd}%
|
|
\DeclareLayer[%
|
|
foreground,oddpage,oneside,%
|
|
foot,%
|
|
hoffset=\sls@leftmargin{foot},%
|
|
width=\sls@footwidth,%
|
|
contents={%
|
|
\sls@secure@box\footheight{%
|
|
\normalfont\usekomafont{pageheadfoot}{\usekomafont{pagefoot}{#6}}}}%
|
|
]{#1.foot.oneside}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@secure@box{%
|
|
\newcommand*{\sls@secure@box}[2]{%
|
|
\begingroup
|
|
\setbox\z@\vbox{%
|
|
\ifsls@leavevmode\leavevmode\expandafter\ignorespaces\fi
|
|
#2%
|
|
}%
|
|
\ifdim #1<\dimexpr \ht\z@+\dp\z@\relax
|
|
\PackageWarning{scrlayer-scrpage}{%
|
|
\string#1 to low.\MessageBreak
|
|
At least \the\dimexpr \ht\z@+\dp\z@\relax\space needed,\MessageBreak
|
|
but only \the#1 found.\MessageBreak
|
|
\ifsls@autoenlarge
|
|
I'll enlarge \string#1, for further\MessageBreak
|
|
processing, but you should do this yourself,\MessageBreak
|
|
\else
|
|
You should enlarge \string#1,\MessageBreak
|
|
\fi
|
|
e.g.,
|
|
\scr@ifundefinedorrelax{geometry}{%
|
|
\scr@ifundefinedorrelax{typearea}{%
|
|
using\MessageBreak
|
|
\space\space\string\setlength{\string#1}{%
|
|
\the\dimexpr \ht\z@+\dp\z@\relax}\MessageBreak
|
|
in your preamble%
|
|
}{%
|
|
setting typearea's option\MessageBreak
|
|
`\expandafter\@gobble\string#1=\the\dimexpr \ht\z@+\dp\z@\relax'%
|
|
}%
|
|
}{%
|
|
\ifx #1\headheight
|
|
setting geometry's option\MessageBreak
|
|
`head=\the\dimexpr \ht\z@+\dp\z@\relax'%
|
|
\else
|
|
using\MessageBreak
|
|
\space\space\string\setlength{\string#1}{%
|
|
\the\dimexpr \ht\z@+\dp\z@\relax}\MessageBreak
|
|
in your preamble%
|
|
\fi
|
|
}%
|
|
\ifsls@autoenlarge
|
|
.\MessageBreak
|
|
I'll also
|
|
\ifx #1\headheight decrease \string\topmargin
|
|
\else increase \string\footskip\fi
|
|
\fi
|
|
}%
|
|
\ifsls@autoenlarge
|
|
\@tempdima\dimexpr \ht\z@+\dp\z@\relax
|
|
\ifx #1\headheight
|
|
\global\advance\topmargin by \dimexpr #1-(\ht\z@+\dp\z@)\relax
|
|
\dp\z@\dimexpr \dp\z@+\ht\z@+\dp\z@-\headheight\relax
|
|
\else
|
|
\global\advance\footskip by \dimexpr \ht\z@+\dp\z@-#1\relax
|
|
\fi
|
|
\global#1\@tempdima
|
|
\fi
|
|
\fi
|
|
\usebox\z@
|
|
\endgroup
|
|
}%
|
|
}
|
|
\@ifundefined{scr@fnt@pagehead}{%
|
|
\scr@ifundefinedorrelax{scr@fnt@instead@pagehead}{}{%
|
|
\PackageInfo{scrlayer-scrpage}{%
|
|
Makeing stand-alone element `pagehead' from\MessageBreak
|
|
alias to `pageheadfoot'%
|
|
}%
|
|
\let\scr@fnt@instead@pagehead\relax
|
|
}%
|
|
\scrlayer@AddCsToInterface{scr@fnt@pagehead}%
|
|
\@ifundefined{@pageheadfont}{%
|
|
\newcommand*{\@pageheadfont}{}%
|
|
\scrlayer@AddCsToInterface{@pageheadfont}%
|
|
}{}%
|
|
\newcommand*{\scr@fnt@pagehead}{\@pageheadfont}%
|
|
}{}
|
|
\@ifundefined{scr@fnt@pageheadfoot}{%
|
|
\newcommand*{\scr@fnt@pageheadfoot}{\headfont}%
|
|
\scrlayer@AddCsToInterface{scr@fnt@pageheadfoot}%
|
|
\@ifundefined{headfont}{%
|
|
\newcommand*{\headfont}{\normalcolor\slshape}%
|
|
}{}
|
|
}{}
|
|
\scr@ifundefinedorrelax{scr@fnt@wrn@pagehead}{}{%
|
|
\PackageInfo{scrlayer-scrpage}{%
|
|
deactivating warning for font element\MessageBreak
|
|
`pagehead'}%
|
|
\let\scr@fnt@wrn@pagehead\relax
|
|
}
|
|
\@ifundefined{scr@fnt@pagefoot}{%
|
|
\scrlayer@AddCsToInterface{scr@fnt@pagefoot}%
|
|
\def\scr@fnt@pagefoot{\footfont}%
|
|
\@ifundefined{footfont}{%
|
|
\newcommand*{\footfont}{}%
|
|
\scrlayer@AddCsToInterface{footfont}%
|
|
}{}%
|
|
}{}
|
|
\scr@ifundefinedorrelax{scr@fnt@wrn@pagefoot}{}{%
|
|
\PackageInfo{scrlayer-scrpage}{%
|
|
deactivating warning for font element\MessageBreak
|
|
`pagefoot'}%
|
|
\let\scr@fnt@wrn@pagefoot\relax
|
|
}
|
|
\scrlayerAddToInterface\sls@hf@rule{%
|
|
\newcommand*\sls@hf@rule[3]{%
|
|
\begingroup
|
|
\normalfont\usekomafont{#1line}{%
|
|
\vbox to \z@{%
|
|
\kern -\dimexpr #3\relax
|
|
\ifnum \sls@hfline@adjust>\z@ \@tempswatrue \else \@tempswafalse\fi
|
|
\if@twoside\ifodd\value{page}\else
|
|
\ifnum \sls@hfline@adjust<\tw@ \@tempswatrue\else \@tempswafalse\fi
|
|
\fi\fi
|
|
\if@tempswa
|
|
\hskip \z@\@plus 1fill\@minus \paperwidth
|
|
\fi
|
|
\vrule \@width\dimexpr #2\relax \@height\dimexpr #3\relax \@depth\z@
|
|
\ifnum \sls@hfline@adjust<\tw@ \@tempswatrue\else \@tempswafalse\fi
|
|
\if@twoside\ifodd\value{page}\else
|
|
\ifnum \sls@hfline@adjust>\z@ \@tempswatrue \else \@tempswafalse\fi
|
|
\fi\fi
|
|
\if@tempswa
|
|
\hskip \z@\@plus 1fill\@minus \paperwidth\null
|
|
\fi
|
|
}%
|
|
}%
|
|
\endgroup
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@topmargin{%
|
|
\newcommand*{\sls@topmargin}{\dimexpr\topmargin+1in\relax}%
|
|
}
|
|
\scrlayerAddToInterface\sls@leftmargin{%
|
|
\newcommand*{\sls@leftmargin}[1]{%
|
|
\dimexpr
|
|
\if@twoside
|
|
\ifodd\value{page}
|
|
\oddsidemargin+\csname sls@odd#1shift\endcsname
|
|
\else
|
|
\evensidemargin+\csname sls@even#1shift\endcsname
|
|
\fi
|
|
\else
|
|
\oddsidemargin+\csname sls@odd#1shift\endcsname
|
|
\fi
|
|
+1in\relax
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\newpagestyle{%
|
|
\newcommand*\newpagestyle[3]{%
|
|
\@ifundefined{ps@#1}{\defpagestyle{#1}{#2}{#3}}{%
|
|
\PackageError{scrlayer-scrpage}{Page style `#1' already defined}{%
|
|
Only not yet defined page style may be defined using
|
|
\string\newpagestyle.\MessageBreak
|
|
You may use either \string\renewpagestyle, \string\providepagestyle,
|
|
or \string\defpagestyle\MessageBreak
|
|
with already defined page styles.\MessageBreak
|
|
If you'll continue, your command will be ignored.%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\renewpagestyle{%
|
|
\newcommand*\renewpagestyle[3]{%
|
|
\@ifundefined{ps@#1}{%
|
|
\PackageError{scrlayer-scrpage}{Undefined page style `#1'}{%
|
|
Only already defined page style may be re-defined using
|
|
\string\renewpagestyle.\MessageBreak
|
|
You may use either \string\newpagestyle, \string\providepagestyle,
|
|
or \string\defpagestyle\MessageBreak
|
|
with not yet defined page styles.\MessageBreak
|
|
If you'll continue, your command will be ignored.%
|
|
}%
|
|
}{%
|
|
\defpagestyle{#1}{#2}{#3}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\providepagestyle{%
|
|
\newcommand*\providepagestyle[3]{%
|
|
\@ifundefined{ps@#1}{%
|
|
\defpagestyle{#1}{#2}{#3}%
|
|
}{%
|
|
\PackageInfo{scrlayer-scrpage}{%
|
|
page style `#1' already defined.\MessageBreak
|
|
New definition ignored%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface{\deftriplepagestyle}{%
|
|
\newcommand*{\deftriplepagestyle}[1]{%
|
|
\let\@tempa\defpagestyle
|
|
\scrlayer@triplestyle{#1}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface{\newtriplepagestyle}{%
|
|
\newcommand*{\newtriplepagestyle}[1]{%
|
|
\let\@tempa\newpagestyle
|
|
\scrlayer@triplestyle{#1}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface{\renewtriplepagestyle}{%
|
|
\newcommand*{\renewtriplepagestyle}[1]{%
|
|
\let\@tempa\renewpagestyle
|
|
\scrlayer@triplestyle{#1}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface{\providetriplepagestyle}{%
|
|
\newcommand*{\providetriplepagestyle}[1]{%
|
|
\let\@tempa\providepagestyle
|
|
\scrlayer@triplestyle{#1}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\scrlayer@triplestyle{%
|
|
\def\scrlayer@triplestyle#1{%
|
|
\kernel@ifnextchar[%]
|
|
{\scrlayer@@triplestyle{#1}}%
|
|
{\scrlayer@@triplestyle{#1}[\z@]}%
|
|
}
|
|
}
|
|
\scrlayerAddToInterface\scrlayer@@triplestyle{%
|
|
\def\scrlayer@@triplestyle#1[#2]{%
|
|
\kernel@ifnextchar[%]
|
|
{\scrlayer@@@triplestyle{#1}[#2]}%
|
|
{\scrlayer@@@triplestyle{#1}[\z@][#2]}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\scrlayer@@@triplestyle{%
|
|
\def\scrlayer@@@triplestyle#1[#2][#3]#4#5#6#7#8#9{%
|
|
\@tempa{#1}{%
|
|
(\sls@headwidth,#2)%
|
|
{%
|
|
\makebox[\z@][l]{#6}\hfill
|
|
\makebox[\z@][c]{#5}\hfill
|
|
\makebox[\z@][r]{#4}%
|
|
}{%
|
|
\makebox[\z@][l]{#4}\hfill
|
|
\makebox[\z@][c]{#5}\hfill
|
|
\makebox[\z@][r]{#6}%
|
|
}{%
|
|
\makebox[\z@][l]{#4}\hfill
|
|
\makebox[\z@][c]{#5}\hfill
|
|
\makebox[\z@][r]{#6}%
|
|
}%
|
|
(\sls@headwidth,#3)%
|
|
}{%
|
|
(\sls@footwidth,#3)%
|
|
{%
|
|
\makebox[\z@][l]{#9}\hfill
|
|
\makebox[\z@][c]{#8}\hfill
|
|
\makebox[\z@][r]{#7}%
|
|
}{%
|
|
\makebox[\z@][l]{#7}\hfill
|
|
\makebox[\z@][c]{#8}\hfill
|
|
\makebox[\z@][r]{#9}%
|
|
}{%
|
|
\makebox[\z@][l]{#7}\hfill
|
|
\makebox[\z@][c]{#8}\hfill
|
|
\makebox[\z@][r]{#9}%
|
|
}%
|
|
(\sls@footwidth,#2)%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface{\deftripstyle}{%
|
|
\newcommand*{\deftripstyle}{%
|
|
\PackageWarning{scrlayer-scrpage}{%
|
|
Command \string\deftripstyle\space is deprecate.\MessageBreak
|
|
You should replace it by \string\deftriplepagestyle,\MessageBreak
|
|
e.g.,%
|
|
}%
|
|
\let\deftripstyle\deftriplepagestyle
|
|
\deftripstyle
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\defpairofpagestyles{%
|
|
\newcommand*{\defpairofpagestyles}[3][]{%
|
|
\def\reserved@a##1##2##3##4##5##6##7\@nil{##1##2##3##4##5##6}%
|
|
\edef\reserved@a{\expandafter\reserved@a #2xxxxxx\@nil}%
|
|
\Ifstr\reserved@a{plain.}{%
|
|
\PackageError{scrlayer-scrpage}{plain page style `#2' not allowed}{%
|
|
You may not define a plain page style using
|
|
\string\defpairofpagestyles, \string\newpairofpagestyles,
|
|
\string\renewpairofpagestyles, or\MessageBreak
|
|
\string\providepairofpagestyles. I'd suggest to simply define the
|
|
corresponding\MessageBreak
|
|
non-plain page style to also define the plain one.\MessageBreak
|
|
If you'll continue, your command will be ignored.}%
|
|
}{%
|
|
\sls@init@pair@page@style*{#2}%
|
|
\sls@init@pair@page@style*{plain.#2}%
|
|
\ifx\relax #1\relax\else
|
|
\scr@ifundefinedorrelax{sls@ps@#1@even@left@head}{%
|
|
\PackageError{scrlayer-scrpage}{`#1' not a pair page style}{%
|
|
Only pair page styles may be used to initialise new pairs of page
|
|
styles. So\MessageBreak
|
|
optional argument of \string\defpairofpagestyles,
|
|
\string\newpairofpagestyles,\MessageBreak
|
|
\string\renewpairofpagestyles, or \string\providepairofpagestyle has
|
|
to be a pair\MessageBreak
|
|
page style or should be unused.\MessageBreak
|
|
If you'll continue, the initialisation will be ignored.}%
|
|
}{%
|
|
\sls@init@pair@page@style{#2}{#1}%
|
|
\scr@ifundefinedorrelax{sls@ps@plain.#1@even@left@head}{%
|
|
\sls@init@pair@page@style{plain.#2}{#1}%
|
|
}{%
|
|
\sls@init@pair@page@style{plain.#2}{plain.#1}%
|
|
}%
|
|
}%
|
|
\fi
|
|
\edef\reserved@a{%
|
|
\noexpand\scrlayerOnAutoRemoveInterface[scrlayer-scrpage.sty]{%
|
|
\noexpand\sls@init@pair@page@style**{#2}%
|
|
\noexpand\sls@init@pair@page@style**{plain.#2}%
|
|
\noexpand\expandafter\noexpand\ifx\noexpand
|
|
\csname ps@plain.#2\noexpand\endcsname\noexpand\ps@plain
|
|
\noexpand\PackageWarning{scrlayer-scrpage}{%
|
|
page style `#2' not longer valid.\noexpand\MessageBreak
|
|
This was the current plain page style.\noexpand\MessageBreak
|
|
Making current plain page style empty.\noexpand\MessageBreak
|
|
The page style has been defined using\noexpand\MessageBreak
|
|
interface `scrlayer-scrpage.sty', that\noexpand\MessageBreak
|
|
has been removed%
|
|
}%
|
|
\noexpand\def\noexpand\ps@plain{%
|
|
\noexpand\def\noexpand\@oddhead{}\noexpand\def\noexpand\@evenhead{}%
|
|
\noexpand\def\noexpand\@oddhead{}\noexpand\def\noexpand\@evenhead{}%
|
|
}%
|
|
\noexpand\fi
|
|
}%
|
|
}\reserved@a
|
|
\sls@def@pair@page@style@member{#2}%
|
|
\AddToLayerPageStyleOptions{#2}{%
|
|
onselect={%
|
|
\DeclarePageStyleAlias{plain}{plain.#2}%
|
|
\DeclarePageStyleAlias{headings}{#2}%
|
|
\def\sls@currentheadings{#2}%
|
|
\def\sls@currentplain{plain.#2}%
|
|
#3%
|
|
}%
|
|
}%
|
|
\sls@def@pair@page@style@member{plain.#2}%
|
|
\AddToLayerPageStyleOptions{plain.#2}{%
|
|
onselect={%
|
|
\DeclarePageStyleAlias{plain}{plain.#2}%
|
|
\DeclarePageStyleAlias{headings}{#2}%
|
|
\def\sls@currentheadings{#2}%
|
|
\def\sls@currentplain{plain.#2}%
|
|
#3%
|
|
},%
|
|
oninit={%
|
|
\expandafter
|
|
\ifx\csname ifsls@plain@head@above@line\expandafter\endcsname
|
|
\csname iftrue\endcsname\else
|
|
\let\sls@headabove@linelength\z@
|
|
\let\sls@headabove@linethickness\z@
|
|
\fi
|
|
\expandafter
|
|
\ifx\csname ifsls@plain@head@below@line\expandafter\endcsname
|
|
\csname iftrue\endcsname\else
|
|
\let\sls@headbelow@linelength\z@
|
|
\let\sls@headbelow@linethickness\z@
|
|
\fi
|
|
\expandafter
|
|
\ifx\csname ifsls@plain@foot@above@line\expandafter\endcsname
|
|
\csname iftrue\endcsname\else
|
|
\let\sls@footabove@linelength\z@
|
|
\let\sls@footabove@linethickness\z@
|
|
\fi
|
|
\expandafter
|
|
\ifx\csname ifsls@plain@foot@below@line\expandafter\endcsname
|
|
\csname iftrue\endcsname\else
|
|
\let\sls@footbelow@linelength\z@
|
|
\let\sls@footbelow@linethickness\z@
|
|
\fi
|
|
}%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@currentheadings{%
|
|
\newcommand*\sls@currentheadings{scrheadings}%
|
|
}
|
|
\scrlayerAddToInterface\sls@currentplain{%
|
|
\newcommand*\sls@currentplain{plain.scrheadings}%
|
|
}
|
|
\scrlayerAddToInterface\sls@init@pair@page@style{%
|
|
\newcommand*{\sls@init@pair@page@style}{%
|
|
\kernel@ifstar {%
|
|
\kernel@ifstar {%
|
|
\sls@let@pair@page@style\relax
|
|
}{%
|
|
\sls@let@pair@page@style\@empty
|
|
}
|
|
}{%
|
|
\sls@init@@pair@page@style
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@init@@pair@page@style{%
|
|
\newcommand*{\sls@init@@pair@page@style}[2]{%
|
|
\expandafter\let\csname sls@ps@#1@even@left@head\expandafter\endcsname
|
|
\csname sls@ps@#2@even@left@head\endcsname
|
|
\expandafter\let\csname sls@ps@#1@even@middle@head\expandafter\endcsname
|
|
\csname sls@ps@#2@even@middle@head\endcsname
|
|
\expandafter\let\csname sls@ps@#1@even@right@head\expandafter\endcsname
|
|
\csname sls@ps@#2@even@right@head\endcsname
|
|
\expandafter\let\csname sls@ps@#1@odd@left@head\expandafter\endcsname
|
|
\csname sls@ps@#2@odd@left@head\endcsname
|
|
\expandafter\let\csname sls@ps@#1@odd@middle@head\expandafter\endcsname
|
|
\csname sls@ps@#2@odd@middle@head\endcsname
|
|
\expandafter\let\csname sls@ps@#1@odd@right@head\expandafter\endcsname
|
|
\csname sls@ps@#2@odd@right@head\endcsname
|
|
\expandafter\let\csname sls@ps@#1@even@left@foot\expandafter\endcsname
|
|
\csname sls@ps@#2@even@left@foot\endcsname
|
|
\expandafter\let\csname sls@ps@#1@even@middle@foot\expandafter\endcsname
|
|
\csname sls@ps@#2@even@middle@foot\endcsname
|
|
\expandafter\let\csname sls@ps@#1@even@right@foot\expandafter\endcsname
|
|
\csname sls@ps@#2@even@right@foot\endcsname
|
|
\expandafter\let\csname sls@ps@#1@odd@left@foot\expandafter\endcsname
|
|
\csname sls@ps@#2@odd@left@foot\endcsname
|
|
\expandafter\let\csname sls@ps@#1@odd@middle@foot\expandafter\endcsname
|
|
\csname sls@ps@#2@odd@middle@foot\endcsname
|
|
\expandafter\let\csname sls@ps@#1@odd@right@foot\expandafter\endcsname
|
|
\csname sls@ps@#2@odd@right@foot\endcsname
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@let@pair@page@style{%
|
|
\newcommand*{\sls@let@pair@page@style}[2]{%
|
|
\expandafter\let\csname sls@ps@#2@even@left@head\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@even@middle@head\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@even@right@head\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@odd@left@head\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@odd@middle@head\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@odd@right@head\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@even@left@foot\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@even@middle@foot\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@even@right@foot\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@odd@left@foot\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@odd@middle@foot\endcsname #1%
|
|
\expandafter\let\csname sls@ps@#2@odd@right@foot\endcsname #1%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@def@pair@page@style@member{%
|
|
\newcommand*{\sls@def@pair@page@style@member}[1]{%
|
|
\defpagestyle{#1}{%
|
|
{%
|
|
\makebox[0pt][\IfRTL{r}{l}]{\parbox{\sls@headwidth}{\LaTeXraggedright
|
|
\strut\@nameuse{sls@ps@#1@even@left@head}\strut}}%
|
|
\parbox{\sls@headwidth}{\LaTeXcentering
|
|
\strut\@nameuse{sls@ps@#1@even@middle@head}\strut}%
|
|
\makebox[0pt][\IfRTL{l}{r}]{\parbox{\sls@headwidth}{\LaTeXraggedleft
|
|
\strut\@nameuse{sls@ps@#1@even@right@head}\strut}}%
|
|
}{%
|
|
\makebox[0pt][\IfRTL{r}{l}]{\parbox{\sls@headwidth}{\LaTeXraggedright
|
|
\strut\@nameuse{sls@ps@#1@odd@left@head}\strut}}%
|
|
\parbox{\sls@headwidth}{\LaTeXcentering
|
|
\strut\@nameuse{sls@ps@#1@odd@middle@head}\strut}%
|
|
\makebox[0pt][\IfRTL{l}{r}]{\parbox{\sls@headwidth}{\LaTeXraggedleft
|
|
\strut\@nameuse{sls@ps@#1@odd@right@head}\strut}}%
|
|
}{%
|
|
\makebox[0pt][\IfRTL{r}{l}]{\parbox{\sls@headwidth}{\LaTeXraggedright
|
|
\strut\@nameuse{sls@ps@#1@odd@left@head}\strut}}%
|
|
\parbox{\sls@headwidth}{\LaTeXcentering
|
|
\strut\@nameuse{sls@ps@#1@odd@middle@head}\strut}%
|
|
\makebox[0pt][\IfRTL{l}{r}]{\parbox{\sls@headwidth}{\LaTeXraggedleft
|
|
\strut\@nameuse{sls@ps@#1@odd@right@head}\strut}}%
|
|
}%
|
|
}{%
|
|
{%
|
|
\makebox[0pt][\IfRTL{r}{l}]{\parbox{\sls@footwidth}{\LaTeXraggedright
|
|
\strut\@nameuse{sls@ps@#1@even@left@foot}\strut}}%
|
|
\parbox{\sls@footwidth}{\LaTeXcentering
|
|
\strut\@nameuse{sls@ps@#1@even@middle@foot}\strut}%
|
|
\makebox[0pt][\IfRTL{l}{r}]{\parbox{\sls@footwidth}{\LaTeXraggedleft
|
|
\strut\@nameuse{sls@ps@#1@even@right@foot}\strut}}%
|
|
}{%
|
|
\makebox[0pt][\IfRTL{r}{l}]{\parbox{\sls@footwidth}{\LaTeXraggedright
|
|
\strut\@nameuse{sls@ps@#1@odd@left@foot}\strut}}%
|
|
\parbox{\sls@footwidth}{\LaTeXcentering
|
|
\strut\@nameuse{sls@ps@#1@odd@middle@foot}\strut}%
|
|
\makebox[0pt][\IfRTL{l}{r}]{\parbox{\sls@footwidth}{\LaTeXraggedleft
|
|
\strut\@nameuse{sls@ps@#1@odd@right@foot}\strut}}%
|
|
}{%
|
|
\makebox[0pt][\IfRTL{r}{l}]{\parbox{\sls@footwidth}{\LaTeXraggedright
|
|
\strut\@nameuse{sls@ps@#1@odd@left@foot}\strut}}%
|
|
\parbox{\sls@footwidth}{\LaTeXcentering
|
|
\strut\@nameuse{sls@ps@#1@odd@middle@foot}\strut}%
|
|
\makebox[0pt][\IfRTL{l}{r}]{\parbox{\sls@footwidth}{\LaTeXraggedleft
|
|
\strut\@nameuse{sls@ps@#1@odd@right@foot}\strut}}%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\newpairofpagestyles{%
|
|
\newcommand*{\newpairofpagestyles}[3][]{%
|
|
\scr@ifundefinedorrelax{ps@#2}{%
|
|
\@ifundefined{ps@plain.#2}{\defpairofpagestyles[#1]{#2}{#3}}{%
|
|
\PackageError{scrlayer-scrpage}{%
|
|
Plain page style of `#2' already defined}{%
|
|
You may only define a new pair of page styles, if neither the style
|
|
itself\MessageBreak
|
|
nor it's plain page style has already been defined.\MessageBreak
|
|
You may use only \string\defpairofpagestyles\space or
|
|
\string\providepairofpagestyles\space with partly\MessageBreak
|
|
already defined page styles.\MessageBreak
|
|
If you'll continue, your command will be ignored.%
|
|
}%
|
|
}%
|
|
}{%
|
|
\PackageError{scrlayer-scrpage}{%
|
|
Page style `#2' already defined}{%
|
|
You may only define a new pair of page styles, if neither the style
|
|
itself\MessageBreak
|
|
nor it's plain page style has already been defined.\MessageBreak
|
|
You may use either \string\renewpairsofpagestyles,
|
|
\string\defpairofpagestyles, or\MessageBreak
|
|
\string\providepairofpagestyles\space with already defined page
|
|
styles.\MessageBreak
|
|
If you'll continue, your command will be ignored.%
|
|
}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\renewpairofpagestyles{%
|
|
\newcommand*{\renewpairofpagestyles}[3][]{%
|
|
\scr@ifundefinedorrelax{ps@#2}{%
|
|
\PackageError{scrlayer-scrpage}{%
|
|
Undefined page style `#2'}{%
|
|
You may only redefine existing pairs of page styles. You may use
|
|
either\MessageBreak
|
|
\string\newpairsofpagestyles, \string\defpairofpagestyles, or
|
|
\string\providepairofpagestyles\MessageBreak
|
|
with not yet defined page styles.\MessageBreak
|
|
If you'll continue, your command will be ignored.%
|
|
}%
|
|
}{%
|
|
\@ifundefined{ps@plain.#2}{%
|
|
\PackageError{scrlayer-scrpage}{%
|
|
Undefined plain page style of `#2'}{%
|
|
You may only redefine existing pairs of page styles. You may use
|
|
either\MessageBreak
|
|
\string\defpairofpagestyles\space or
|
|
\string\providepairofpagestyles\space with partly already
|
|
defined\MessageBreak
|
|
page styles.\MessageBreak
|
|
If you'll continue, your command will be ignored.%
|
|
}%
|
|
}{\defpairofpagestyles[#1]{#2}{#3}}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\providepairofpagestyles{%
|
|
\newcommand*{\providepairofpagestyles}[3][]{%
|
|
\scr@ifundefinedorrelax{ps@#2}{%
|
|
\@ifundefined{ps@plain.#2}{\defpairofpagestyles[#1]{#2}{#3}}{%
|
|
\PackageInfo{scrlayer-scrpage}{%
|
|
Plain page style of `#2' already\MessageBreak
|
|
defined. Definition ignored}%
|
|
}%
|
|
}{%
|
|
\PackageInfo{scrlayer-scrpage}{%
|
|
Page style of `#2' already defined.\MessageBreak
|
|
Definition ignored}%
|
|
}%
|
|
}%
|
|
}
|
|
\newpairofpagestyles{scrheadings}{}%
|
|
\DeclarePageStyleAlias{scrplain}{plain.scrheadings}
|
|
\scrlayerOnAutoRemoveInterface{\DestroyPageStyleAlias{scrplain}}
|
|
\scrlayerAddToInterface\ihead{%
|
|
\newcommand*{\ihead}{\kernel@ifstar {\@dblarg\@@@ihead}{\@ihead}}%
|
|
}
|
|
\scrlayerAddToInterface\@ihead{%
|
|
\newcommand*{\@ihead}{\kernel@ifnextchar[{\@@@ihead}{\@@ihead}}%
|
|
}
|
|
\scrlayerAddToInterface\@@ihead{%
|
|
\newcommand{\@@ihead}[1]{\rehead{#1}\lohead{#1}}%
|
|
}
|
|
\scrlayerAddToInterface\@@@ihead{%
|
|
\newcommand{\@@@ihead}[2][]{\rehead[{#1}]{#2}\lohead[{#1}]{#2}}%
|
|
}
|
|
\scrlayerAddToInterface\ohead{%
|
|
\newcommand*{\ohead}{\kernel@ifstar {\@dblarg\@@@ohead}{\@ohead}}%
|
|
}
|
|
\scrlayerAddToInterface\@ohead{%
|
|
\newcommand*{\@ohead}{\kernel@ifnextchar[{\@@@ohead}{\@@ohead}}%
|
|
}
|
|
\scrlayerAddToInterface\@@ohead{%
|
|
\newcommand{\@@ohead}[1]{\lehead{#1}\rohead{#1}}%
|
|
}
|
|
\scrlayerAddToInterface\@@@ohead{%
|
|
\newcommand{\@@@ohead}[2][]{\lehead[{#1}]{#2}\rohead[{#1}]{#2}}%
|
|
}
|
|
\scrlayerAddToInterface\chead{%
|
|
\newcommand*{\chead}{\kernel@ifstar {\@dblarg\@@@chead}{\@chead}}%
|
|
}
|
|
\scrlayerAddToInterface\@chead{%
|
|
\newcommand*{\@chead}{\kernel@ifnextchar[{\@@@chead}{\@@chead}}%
|
|
}
|
|
\scrlayerAddToInterface\@@chead{%
|
|
\newcommand{\@@chead}[1]{\cehead{#1}\cohead{#1}}%
|
|
}
|
|
\scrlayerAddToInterface\@@@chead{%
|
|
\newcommand{\@@@chead}[2][]{\cehead[{#1}]{#2}\cohead[{#1}]{#2}}%
|
|
}
|
|
\scrlayerAddToInterface\lehead{%
|
|
\newcommand*{\lehead}{\sls@renewelement{even}{left}{head}}%
|
|
}
|
|
\scrlayerAddToInterface\lohead{%
|
|
\newcommand*{\lohead}{\sls@renewelement{odd}{left}{head}}%
|
|
}
|
|
\scrlayerAddToInterface\rehead{%
|
|
\newcommand*{\rehead}{\sls@renewelement{even}{right}{head}}%
|
|
}
|
|
\scrlayerAddToInterface\rohead{%
|
|
\newcommand*{\rohead}{\sls@renewelement{odd}{right}{head}}%
|
|
}
|
|
\scrlayerAddToInterface\cehead{%
|
|
\newcommand*{\cehead}{\sls@renewelement{even}{middle}{head}}%
|
|
}
|
|
\scrlayerAddToInterface\cohead{%
|
|
\newcommand*{\cohead}{\sls@renewelement{odd}{middle}{head}}%
|
|
}
|
|
\scrlayerAddToInterface\ifoot{%
|
|
\newcommand*{\ifoot}{\kernel@ifstar {\@dblarg\@@@ifoot}{\@ifoot}}%
|
|
}
|
|
\scrlayerAddToInterface\@ifoot{%
|
|
\newcommand*{\@ifoot}{\kernel@ifnextchar[{\@@@ifoot}{\@@ifoot}}%
|
|
}
|
|
\scrlayerAddToInterface\@@ifoot{%
|
|
\newcommand{\@@ifoot}[1]{\refoot{#1}\lofoot{#1}}%
|
|
}
|
|
\scrlayerAddToInterface\@@@ifoot{%
|
|
\newcommand{\@@@ifoot}[2][]{\refoot[{#1}]{#2}\lofoot[{#1}]{#2}}%
|
|
}
|
|
\scrlayerAddToInterface\ofoot{%
|
|
\newcommand*{\ofoot}{\kernel@ifstar {\@dblarg\@@@ofoot}{\@ofoot}}%
|
|
}
|
|
\scrlayerAddToInterface\@ofoot{%
|
|
\newcommand*{\@ofoot}{\kernel@ifnextchar[{\@@@ofoot}{\@@ofoot}}%
|
|
}
|
|
\scrlayerAddToInterface\@@ofoot{%
|
|
\newcommand{\@@ofoot}[1]{\lefoot{#1}\rofoot{#1}}%
|
|
}
|
|
\scrlayerAddToInterface\@@@ofoot{%
|
|
\newcommand{\@@@ofoot}[2][]{\lefoot[{#1}]{#2}\rofoot[{#1}]{#2}}%
|
|
}
|
|
\scrlayerAddToInterface\cfoot{%
|
|
\newcommand*{\cfoot}{\kernel@ifstar {\@dblarg\@@@cfoot}{\@cfoot}}%
|
|
}
|
|
\scrlayerAddToInterface\@cfoot{%
|
|
\newcommand*{\@cfoot}{\kernel@ifnextchar[{\@@@cfoot}{\@@cfoot}}%
|
|
}
|
|
\scrlayerAddToInterface\@@cfoot{%
|
|
\newcommand{\@@cfoot}[1]{\cefoot{#1}\cofoot{#1}}%
|
|
}
|
|
\scrlayerAddToInterface\@@@cfoot{%
|
|
\newcommand{\@@@cfoot}[2][]{\cefoot[{#1}]{#2}\cofoot[{#1}]{#2}}%
|
|
}
|
|
\scrlayerAddToInterface\lefoot{%
|
|
\newcommand*{\lefoot}{\sls@renewelement{even}{left}{foot}}%
|
|
}
|
|
\scrlayerAddToInterface\lofoot{%
|
|
\newcommand*{\lofoot}{\sls@renewelement{odd}{left}{foot}}%
|
|
}
|
|
\scrlayerAddToInterface\refoot{%
|
|
\newcommand*{\refoot}{\sls@renewelement{even}{right}{foot}}%
|
|
}
|
|
\scrlayerAddToInterface\rofoot{%
|
|
\newcommand*{\rofoot}{\sls@renewelement{odd}{right}{foot}}%
|
|
}
|
|
\scrlayerAddToInterface\cefoot{%
|
|
\newcommand*{\cefoot}{\sls@renewelement{even}{middle}{foot}}%
|
|
}
|
|
\scrlayerAddToInterface\cofoot{%
|
|
\newcommand*{\cofoot}{\sls@renewelement{odd}{middle}{foot}}%
|
|
}
|
|
\scrlayerAddToInterface\sls@renewelement{%
|
|
\newcommand*{\sls@renewelement}[3]{%
|
|
\kernel@ifstar{\@dblarg{\sls@@@@renewelement{#1}{#2}{#3}}}%
|
|
{\sls@@renewelement{#1}{#2}{#3}}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@renewelement{%
|
|
\newcommand*{\sls@@renewelement}[3]{%
|
|
\kernel@ifnextchar[%]
|
|
{\sls@@@@renewelement{#1}{#2}{#3}}%
|
|
{\sls@@@renewelement{#1}{#2}{#3}}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@@renewelement{%
|
|
\newcommand{\sls@@@renewelement}[4]{%
|
|
\scr@ifundefinedorrelax{sls@ps@\sls@currentheadings @#1@#2@#3}{%
|
|
\@namedef{sls@ps@scrheadings@#1@#2@#3}{#4}%
|
|
}{%
|
|
\@namedef{sls@ps@\sls@currentheadings @#1@#2@#3}{#4}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@@@renewelement{%
|
|
\long\def\sls@@@@renewelement#1#2#3[#4]#5{%
|
|
\sls@@renewplainelement{#1}{#2}{#3}{#4}%
|
|
\sls@@@renewelement{#1}{#2}{#3}{#5}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\sls@@renewplainelement{%
|
|
\newcommand{\sls@@renewplainelement}[4]{%
|
|
\scr@ifundefinedorrelax{sls@ps@\sls@currentplain @#1@#2@#3}{%
|
|
\@namedef{sls@ps@plain.scrheadings@#1@#2@#3}{#4}%
|
|
}{%
|
|
\@namedef{sls@ps@\sls@currentplain @#1@#2@#3}{#4}%
|
|
}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\clearmainofpairofpagestyles{%
|
|
\newcommand*{\clearmainofpairofpagestyles}{%
|
|
\ihead{}\chead{}\ohead{}\ifoot{}\cfoot{}\ofoot{}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\clearscrheadings{%
|
|
\let\clearscrheadings\clearmainofpairofpagestyles
|
|
}
|
|
\scrlayerAddToInterface\clearplainofpairofpagestyles{%
|
|
\newcommand*{\clearplainofpairofpagestyles}{%
|
|
\sls@@renewplainelement{odd}{left}{head}{}%
|
|
\sls@@renewplainelement{odd}{right}{head}{}%
|
|
\sls@@renewplainelement{odd}{middle}{head}{}%
|
|
\sls@@renewplainelement{even}{left}{head}{}%
|
|
\sls@@renewplainelement{even}{right}{head}{}%
|
|
\sls@@renewplainelement{even}{middle}{head}{}%
|
|
\sls@@renewplainelement{odd}{left}{foot}{}%
|
|
\sls@@renewplainelement{odd}{right}{foot}{}%
|
|
\sls@@renewplainelement{odd}{middle}{foot}{}%
|
|
\sls@@renewplainelement{even}{left}{foot}{}%
|
|
\sls@@renewplainelement{even}{right}{foot}{}%
|
|
\sls@@renewplainelement{even}{middle}{foot}{}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\clearscrplain{%
|
|
\let\clearscrplain\clearplainofpairofpagestyles
|
|
}
|
|
\scrlayerAddToInterface\clearpairofpagestyles{%
|
|
\newcommand*{\clearpairofpagestyles}{%
|
|
\ihead[]{}\chead[]{}\ohead[]{}\ifoot[]{}\cfoot[]{}\ofoot[]{}%
|
|
}%
|
|
}
|
|
\scrlayerAddToInterface\clearscrheadfoot{%
|
|
\let\clearscrheadfoot\clearpairofpagestyles
|
|
}
|
|
\scrlayerAddToInterface\ps@useheadings{%
|
|
\newcommand*\ps@useheadings{%
|
|
\PackageWarning{scrlayer-scrpage}{incompatible page style!\MessageBreak
|
|
Page styles like `headings' and `plain'\MessageBreak
|
|
are incompatible with the page styles\MessageBreak
|
|
of scrlayer-scrpage. You shouldn't mix\MessageBreak
|
|
them up. Therefore page style\MessageBreak
|
|
`useheadings' is not longer provided.\MessageBreak
|
|
Usage is deprecated and will be replaced\MessageBreak
|
|
by `scrheadings'%
|
|
}%
|
|
\let\ps@useheadings\ps@scrheadings
|
|
\ps@useheadings
|
|
}%
|
|
}
|
|
\scrlayerAddCsToInterface{ps@plain.useheadings}{%
|
|
\@namedef{ps@plain.useheadings}{\@nameuse{ps@plain.scrheadings}}%
|
|
}
|
|
%%% From File: $Id: scrlogo.dtx 2640 2017-05-08 09:36:55Z kohm $
|
|
\@ifundefined{KOMAScript}{%
|
|
\DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
|
|
M\kern.05em A\kern.1em-\kern.1em Script}}}{}
|
|
\endinput
|
|
%%
|
|
%% End of file `scrlayer-scrpage.sty'.
|
|
|