diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/interfaces/interfaces-fancyhdr.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/interfaces/interfaces-fancyhdr.sty | 313 |
1 files changed, 313 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/interfaces/interfaces-fancyhdr.sty b/Master/texmf-dist/tex/latex/interfaces/interfaces-fancyhdr.sty new file mode 100644 index 00000000000..081b65e52a2 --- /dev/null +++ b/Master/texmf-dist/tex/latex/interfaces/interfaces-fancyhdr.sty @@ -0,0 +1,313 @@ +%% +%% This is file `interfaces-fancyhdr.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% interfaces.dtx (with options: `fancyhdr') +%% +%% This is a generated file. +%% +%% interfaces : 2010/10/20 v1.0 - interfaces : interfaces with keys for other packages (FC) +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% +%% This work consists of the main source file interfaces.dtx +%% and the derived files +%% interfaces.sty, interfaces.pdf, interfaces.ins, +%% interfaces-base.sty, +%% interfaces-LaTeX.sty, +%% interfaces-tikz.sty, +%% interfaces-titlesec.sty, +%% interfaces-hyperref.sty, +%% interfaces-bookmark.sty, +%% interfaces-hypbmsec.sty,interfaces-hypbmsec.code.tex, +%% interfaces-fancyhdr.sty, +%% interfaces-marks.sty, +%% interfaces-tocloft.sty, +%% interfaces-makecell.sty, +%% interfaces-enumitem.sty, +%% interfaces-truncate.sty, +%% interfaces-appendix.sty, +%% interfaces-embedfile.sty, +%% interfaces-environ.sty, +%% interfaces-umrand.sty, +%% interfaces-scrlfile.sty, +%% interfaces-pgfkeys.sty, +%% interfaces-etoolbox.sty, +%% interfaces-fancyvrb.sty +%% +%% interfaces: interfaces with keys for other packages (FC) +%% Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> +%% +\ProvidesPackage{interfaces-fancyhdr} + [2010/07/22 v1.0 pgfkeys macros for fancyhdr (FC)] +\RequirePackage{interfaces-base} +\itf@Check@Package{fancyhdr} +\itf@pgfkeys +\robustify\fancyhf +\robustify\fancyhfoffset +\newrobustcmd*\pagesetup{% + \let\fancy@gbl\relax % Just in case... + \@ifstar + {\itf@pagesetup{}} + {\itf@pagesetup{reset,}}% +}% \pagesetup +\def\itf@pagesetup#1{\@testopt + {\itf@p@gesetup{#1}}{}% +}% \itf@pagesetup +\def\itf@p@gesetup#1[#2]#3{\ifblank{#2} + {% modifies the current page style + \itf@pgfkeys\pgfqkeys{/itf/fancyhdr}{#1#3}\relax\ps@@fancy}% + {% defines or modifies a given page style + \ifblank{#1} + \csappto% star form: keep existing value (if not overwritten) + \csdef% no star form: overwrite (+ reset at \pagestyle time) + {ps@#2}{\itf@pgfkeys\pgfqkeys{/itf/fancyhdr}{#1#3}\relax\ps@@fancy}% + }% +}% \itf@p@gesetup +\pgfqkeys{/itf/pagesetup}{% + @current/.is private=interfaces-fancyhdr,% + @style/.is private=interfaces-fancyhdr,% +} +\renewrobustcmd*\pagestyle[1]{\ifcsundef{ps@#1} + {\itf@undefinedpagestyle{#1}} + {\csname ps@#1\endcsname}% +}% \pagestyle +\renewrobustcmd*\thispagestyle[1]{\ifcsundef{ps@#1} + {\itf@undefinedpagestyle{#1}} + {\global\@specialpagetrue\gdef\@specialstyle{#1}}% +}% \thispagestyle +\newcommand*\itf@undefinedpagestyle[1]{% + \@latex@error{Undefined page style: #1 + \MessageBreak your command will be ignored}\@eha +}% \itf@undefinedpagestyle +\pgfkeys{% + /handlers/.fancy@hf/.code=% + \pgfkeysalso{\pgfkeyscurrentpath/.store as code=}% + \csedef{f@ncy#1}{% + \noexpand\pgfkeysvalueof{\pgfkeyscurrentpath/font} + \noexpand\pgfkeysvalueof{\pgfkeyscurrentpath}\strut},% +}% handler for fancyhdr interface +\pgfqkeys{/itf/fancyhdr}{% keys for \pagesetup + code/.code={#1},% execution at expansion of \ps@... => \pgfqkeys{...,code={...},...} + pagestyle/.style={code=\pagestyle{#1}},% + page style/.alias=pagestyle,% + load style/.alias=pagestyle,% + head/rule/.store as dimen in cs=headrulewidth,% + head/rule/.default=.4pt,% + head/rule/.blank=\z@,% + head/rulewidth/.alias*=head/rule,% + headrulewidth/.alias*=head/rule,% + head/rule/width/.alias*=head/rule,% + head/rule/font/.store as code,% + head/rule/color/.style={head/rule/font+=\color{#1}},% + headruler/.code=% + \let\headrule\pgfkeyscurrentvalue + \ifx\headrule\@empty\else + \preto\headrule{\bgroup\pgfkeysvalueof{/itf/fancyhdr/head/rule/font}}% + \appto\headrule{\egroup}% + \fi,% + headruler/.default=% + \if@fancyplain\let\headrulewidth\plainheadrulewidth\fi + \hrule\@height\headrulewidth \@width\headwidth + \vskip-\headrulewidth\relax,% + headrule/.alias=headruler,% + headrule,% sets default + foot/rule/.store as dimen in cs=footrulewidth,% + foot/rule/.default=.4pt,% + foot/rule/.blank=\z@,% + foot/rulewidth/.alias*=foot/rule,% + footrulewidth/.alias*=foot/rule,% + foot/rule/width/.alias*=foot/rule,% + foot/rule/font/.store as code,% + foot/rule/color/.style={foot/rule/font+=\color{#1}},% + footruler/.code=% + \let\footrule\pgfkeyscurrentvalue + \ifx\footrule\@empty\else + \preto\footrule{\bgroup\pgfkeysvalueof{/itf/fancyhdr/head/rule/font}}% + \appto\footrule{\egroup} + \fi,% + footruler/.default=% + \if@fancyplain\let\footrulewidth\plainfootrulewidth\fi + \vskip-2\footrulewidth + \hrule\@height\footrulewidth \@width\headwidth\vskip\footrulewidth,% + footrule/.alias=footruler,% + footrule,% sets default + rule/.style={head/rule={#1},foot/rule={#1}},% + rule+/.style={head/rule+={#1},foot/rule+={#1}},% + rule-/.style={head/rule-={#1},foot/rule-={#1}},% + rule*/.style={head/rule*={#1},foot/rule*={#1}},% + rules/.alias*=rule,rulewidth/.alias*=rule,% + rule/width/.alias*=rule,rules/width/.alias*=rule,% + norule/.style={rule=\z@},% + norule/.value forbidden,% + norules/.alias=norule,% + rule/font/.style={head/rule/font={#1},foot/rule/font={#1}},% + rule/font+/.style={head/rule/font+={#1},foot/rule/font+={#1}},% + rule/font*/.alias=rule/font+,% + rule/color/.style={head/rule/color={#1},foot/rule/color={#1}},% + foot/rule/skip/.store as glue in cs=footruleskip,% + foot/rule/skip/.default=.3\normalbaselineskip,% + foot/rule/skip/.blank=\z@,% + foot/ruleskip/.alias*=foot/rule/skip,% => puis les alias&style: /.alias 2 args=/foot/rule/skip{/subkey1,/subkey2,/sub/key3,/sub/key4,...} + footruleskip/.alias*=foot/rule/skip,% crée aussi les alias pour les sous clés + font/.style={head/font={#1},foot/font={#1}},% + head/.style={head/left={#1},head/center={#1},head/right={#1}},% + head/font/.style={head/left/font={#1},head/center/font={#1},head/right/font={#1}},% + head/font+/.style={head/left/font+={#1},head/center/font+={#1},head/right/font+={#1}},% + nohead/.style={head=,head/font=,head/rule=}, + foot/.style={foot/left={#1},foot/center={#1},foot/right={#1}},% + foot/font/.style={foot/left/font={#1},foot/center/font={#1},foot/right/font={#1}},% + foot/font+/.style={foot/left/font+={#1},foot/center/font+={#1},foot/right/font+={#1}},% + nofoot/.style={foot=,foot/font=,foot/rule=}, + left/.style={head/left={#1},foot/left={#1}},% + left/font/.style={head/left/font={#1},foot/left/font={#1}},% + left/font+/.style={head/left/font+={#1},foot/left/font+={#1}},% + center/.style={head/center={#1},foot/center={#1}},% + center/font/.style={head/center/font={#1},foot/center/font={#1}},% + center/font+/.style={head/center/font+={#1},foot/center/font+={#1}},% + right/.style={head/right={#1},foot/right={#1}},% + right/font/.style={head/right/font={#1},foot/right/font={#1}},% + right/font+/.style={head/right/font+={#1},foot/right/font+={#1}},% + head/left/.style={head/left/even={#1},head/left/odd={#1}},% + head/left/font/.style={head/left/even/font={#1},head/left/odd/font={#1}},% + head/left/font+/.style={head/left/even/font+={#1},head/left/odd/font+={#1}},% + head/center/.style={head/center/even={#1},head/center/odd={#1}},% + head/center/font/.style={head/center/even/font={#1},head/center/odd/font={#1}},% + head/center/font+/.style={head/center/even/font+={#1},head/center/odd/font+={#1}},% + head/right/.style={head/right/even={#1},head/right/odd={#1}},% + head/right/font/.style={head/right/even/font={#1},head/right/odd/font={#1}},% + head/right/font+/.style={head/right/even/font+={#1},head/right/odd/font+={#1}},% + foot/left/.style={foot/left/even={#1},foot/left/odd={#1}},% + foot/left/font/.style={foot/left/even/font={#1},foot/left/odd/font={#1}},% + foot/left/font+/.style={foot/left/even/font+={#1},foot/left/odd/font+={#1}},% + foot/center/.style={foot/center/even={#1},foot/center/odd={#1}},% + foot/center/font/.style={foot/center/even/font={#1},foot/center/odd/font={#1}},% + foot/center/font+/.style={foot/center/even/font+={#1},foot/center/odd/font+={#1}},% + foot/right/.style={foot/right/even={#1},foot/right/odd={#1}},% + foot/right/font/.style={foot/right/even/font={#1},foot/right/odd/font={#1}},% + foot/right/font+/.style={foot/right/even/font+={#1},foot/right/odd/font+={#1}},% + head/left/odd/.fancy@hf=olh,% + head/left/odd/font/.store as code=+,% + odd/head/left/.alias=head/left/odd,% + odd/head/left/font/.alias*=head/left/odd/font,% + head/odd/left/.alias=head/left/odd,% + head/odd/left/font/.alias*=head/left/odd/font,% + head/center/odd/.fancy@hf=och,% + head/center/odd/font/.store as code=+,% + odd/head/center/.alias=head/center/odd,% + odd/head/center/font/.alias*=head/center/odd/font,% + head/odd/center/.alias=head/center/odd,% + head/odd/center/font/.alias*=head/center/odd/font,% + head/right/odd/.fancy@hf=orh,% + head/right/odd/font/.store as code=+,% + odd/head/right/.alias=head/right/odd,% + odd/head/right/font/.alias*=head/right/odd/font,% + head/odd/right/.alias=head/right/odd,% + head/odd/right/font/.alias*=head/right/odd/font,% + head/left/even/.fancy@hf=elh,% + head/left/even/font/.store as code=+,% + even/head/left/.alias=head/left/even,% + even/head/left/font/.alias*=head/left/even/font,% + head/even/left/.alias=head/left/even,% + head/even/left/font/.alias*=head/left/even/font,% + head/center/even/.fancy@hf=ech,% + head/center/even/font/.store as code=+,% + even/head/center/.alias=head/center/even,% + even/head/center/font/.alias*=head/center/even/font,% + head/even/center/.alias=head/center/even,% + head/even/center/font/.alias*=head/center/even/font,% + head/right/even/.fancy@hf=erh,% + head/right/even/font/.store as code=+,% + even/head/right/.alias=head/right/even,% + even/head/right/font/.alias*=head/right/even/font,% + head/even/right/.alias=head/right/even,% + even/head/right/font/.alias*=head/right/even/font,% + foot/left/odd/.fancy@hf=olf,% + foot/left/odd/font/.store as code=+,% + odd/foot/left/.alias=foot/left/odd,% + odd/foot/left/font/.alias*=foot/left/odd/font,% + foot/odd/left/.alias=foot/left/odd,% + foot/odd/left/font/.alias*=foot/left/odd/font,% + foot/center/odd/.fancy@hf=ocf,% + foot/center/odd/font/.store as code=+,% + odd/foot/center/.alias=foot/center/odd,% + odd/foot/center/font/.alias*=foot/center/odd/font,% + foot/odd/center/.alias=foot/center/odd,% + foot/odd/center/font/.alias*=foot/center/odd/font,% + foot/right/odd/.fancy@hf=orf,% + foot/right/odd/font/.store as code=+,% + odd/foot/right/.alias=foot/right/odd,% + odd/foot/right/font/.alias*=foot/right/odd/font,% + odd/foot/right/.alias=foot/right/odd,% + odd/foot/right/font/.alias*=foot/right/odd/font,% + foot/left/even/.fancy@hf=elf,% + foot/left/even/font/.store as code=+,% + even/foot/left/.alias=foot/left/even,% + even/foot/left/font/.alias*=foot/left/even/font,% + foot/even/left/.alias=foot/left/even,% + foot/even/left/font/.alias*=foot/left/even/font,% + foot/center/even/.fancy@hf=ecf,% + foot/center/even/font/.store as code=+,% + even/foot/center/.alias=foot/center/even,% + even/foot/center/font/.alias*=foot/center/even/font,% + foot/even/center/.alias=foot/center/even,% + foot/even/center/font/.alias*=foot/center/even/font,% + foot/right/even/.fancy@hf=erf,% + foot/right/even/font/.store as code=+,% + even/foot/right/.alias=foot/right/even,% + even/foot/right/font/.alias*=foot/right/even/font,% + foot/even/right/.alias=foot/right/even,% + foot/even/right/font/.alias*=foot/right/even/font,% + offset/.style={head/offset={#1},foot/offset={#1}},% + head/offset/.style={head/left/offset={#1},head/right/offset={#1}},% + offset/head/.alias=head/offset,% + foot/offset/.style={foot/left/offset={#1},foot/right/offset={#1}},% + offset/foot/.alias=foot/offset,% + head/left/offset/.style={head/left/even/offset={#1},head/left/odd/offset={#1}},% + offset/head/left/.alias=head/left/offset,% + head/right/offset/.style={head/right/even/offset={#1},head/right/odd/offset={#1}},% + offset/head/right/.alias=head/right/offset,% + foot/left/offset/.style={foot/left/even/offset={#1},foot/left/odd/offset={#1}},% + offset/foot/left/.alias=foot/left/offset,% + foot/right/offset/.style={foot/right/even/offset={#1},foot/right/odd/offset={#1}},% + offset/foot/right/.alias=foot/right/offset,% + head/left/even/offset/.store in skip cs=f@ncyO@elh,% + offset/head/left/even/.alias=head/left/even/offset,% + head/left/odd/offset/.store in skip cs=f@ncyO@olh,% + offset/head/left/odd/.alias=head/left/odd/offset,% + head/right/even/offset/.store in skip cs=f@ncyO@erh,% + offset/head/right/even/.alias=head/right/even/offset,% + head/right/odd/offset/.store in skip cs=f@ncyO@orh,% + offset/head/right/odd/.alias=head/right/odd/offset,% + foot/left/even/offset/.store in skip cs=f@ncyO@elf,% + offset/foot/left/even/.alias=foot/left/even/offset,% + foot/left/odd/offset/.store in skip cs=f@ncyO@olf,% + offset/foot/left/odd/.alias=foot/left/odd/offset,% + foot/right/even/offset/.store in skip cs=f@ncyO@erf,% + offset/foot/right/even/.alias=foot/right/even/offset,% + foot/right/odd/offset/.store in skip cs=f@ncyO@orf,% + offset/foot/right/odd/.alias=foot/right/odd/offset,% + reset/.style={norule,head=,foot=,offset=\z@,foot/rule/skip,rule/font=,font=},% + reset/.value forbidden,% +}% keys for \pagesetup (stored into token \itf@tk) +\AtBeginDocument{% +\ifdim\headwidth<\z@ +%% This catches the case that \headwidth hasn't been initialized and the +%% case that the user added something to \headwidth in the expectation that +%% it was initialized to \textwidth. We compensate this now. This loses if +%% the user intended to multiply it by a factor. But that case is more +%% likely done by saying something like \headwidth=1.2\textwidth. +%% The doc says you have to change \headwidth after the first call to +%% \pagestyle{fancy}. This code is just to catch the most common cases were +%% that requirement is violated. + \global\advance\headwidth123456789sp\global\advance\headwidth\textwidth +\fi} +\endinput +%% +%% End of file `interfaces-fancyhdr.sty'. |