summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/titlesec/ttlps.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/titlesec/ttlps.def')
-rw-r--r--Master/texmf-dist/tex/latex/titlesec/ttlps.def739
1 files changed, 0 insertions, 739 deletions
diff --git a/Master/texmf-dist/tex/latex/titlesec/ttlps.def b/Master/texmf-dist/tex/latex/titlesec/ttlps.def
deleted file mode 100644
index 6f95d0c2b6b..00000000000
--- a/Master/texmf-dist/tex/latex/titlesec/ttlps.def
+++ /dev/null
@@ -1,739 +0,0 @@
-% +--------------------------------------------------+
-% | Typeset titlesec.tex to get the documentation. |
-% +--------------------------------------------------+
-%
-% Copyright (c) 1998-2016 by Javier Bezos.
-% All Rights Reserved.
-%
-% This file is part of the titlesec distribution release 2.10.2
-% -----------------------------------------------------------
-%
-% It 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
-% and version 1.3 or later is part of all distributions of LaTeX
-% version 2003/12/01 or later.
-%
-% This work has the LPPL maintenance status "maintained".
-%
-% The Current Maintainer of this work is Javier Bezos.
-
-% History of v1.0 (actually not 1.0)
-% ~~~~~~~~~~~~~~~
-% 99/11/03: Split from titlesec.sty
-% 99/11/03: Changed \setmarks, \ttl@sethead, \ttl@setfoot to follow
-% the new scheme
-% 99/11/03: Removed the redefinition of \markboth. The arguments are
-% expanded on the fly by the corresponding \...mark.
-% 00/01/06: Added the \newtitlemark device.
-% 00/01/19: Rejected the idea of a separate package (for the time
-% being). Now it's ttlps.def.
-% 00/01/20: Starred versions of \widenhead, \sethead, \setfoot.
-% 00/01/23: Added \ifthe..., \iftitle, etc.
-% 00/02/05: Modified \ifthe... mechanism
-% 00/02/25: Fixed a bug which made enter in an endless loop.
-% Now \ttl@marks is just \relax. The new scheme made
-% compatible with babel. (2.3.1)
-% 00/03/01: Fixed a bug in the previous bug fix. (2.3.2)
-% 00/03/08: Removed the code for AMS and babel. A general procedure
-% to catch the changes of \markboth is introduced, with
-% \ttl@enccode and \ttl@running. (2.3.3)
-% 00/05/05: \setmarks may be used outside of \newpagestyle, with
-% the help of \ttl@setmarks and \ttl@marksset (2.3.4)
-% 00/05/25: Tests for \ttl@toclabel moved to the redefinition of
-% \secdef in titlesec. (2.3.5)
-% 00/06/07: Added the first attempt for pagestyles with floats.
-% With slight changes, it will become the final form
-% for that. (2.3.5)
-% 00/06/14: The default \ifthe... are now defined with \ttl@setifthe
-% so that they are robust from the very beginning. (2.3.5)
-% 01/01/21: Replaced some \defs by \newcommand
-% 10/12/03: A little addition to the warning, for those who don't
-% read the docs.
-%
-% History of v1.1
-% ~~~~~~~~~~~~~~~
-% 11/11/26: Add the extra mark mechanim
-% 11/12/07: Enlarged, eg, multilevel \newtitlemark, \newtitlemark*,
-% premarks
-%
-% As before, all marks has two parts but now they don't refer to left or
-% right pages at all. There are some issues related to top marks which
-% are explained by Knuth in \textit{The \TeX book}, pp. 259f, as well
-% as an uncompatibility between them and \LaTeX{} floats. To overcome
-% both limitations, in the \textsf{titleps} page styles, the second
-% part in |\cs{firstmark}| is a \emph{fixed} top mark and the first one
-% the actual first mark; the right way to get the bot mark is from the
-% second part. Marks are stored at each section and used before and
-% after the title (straight class); the first part contains the values
-% of current title, but the second one contains the previolusly stored
-% values in the mark before the title, and the current values in the
-% mark after.
-
-\ProvidesFile{ttlps.def}[2016/03/15]
-
-%
-% Page Styles
-% ~~~~~~~~~~~
-
-\ifx\ttl@compatps\@undefined\else
- \PackageWarningNoLine{titlesec}
- {You are using an old interface for page styles\MessageBreak
- (or you forgot the package option 'pagestyles').\MessageBreak
- You could proceed but don't complain if you run\MessageBreak
- into errors}
-\fi
-
-\ttl@pstrue
-
-\let\parttitle\@empty
-\let\chaptertitle\@empty
-\let\sectiontitle\@empty
-\let\subsectiontitle\@empty
-\let\subsubsectiontitle\@empty
-\let\paragraphtitle\@empty
-\let\subparagraphtitle\@empty
-
-\newcommand\iftitle[1]{%
- \expandafter\ifx\csname #1title\endcsname\@empty
- \expandafter\@secondoftwo
- \else
- \expandafter\@firstoftwo
- \fi}
-
-% \newtitlemarks belongs to a nameless markset (ie, \@empty).
-% For named extra marksets see below.
-
-\newcommand\newtitlemark{%
- \@ifstar{\@tempswafalse\ttl@newmk@i\@empty}%
- {\@tempswatrue\ttl@newmk@i\@empty}}
-
-\def\ttl@newmk@i#1#2{% markset, macro/var
- \edef\ttl@a{\expandafter\@gobble\string#2}%
- \expandafter\ifx\csname\ttl@a\endcsname#2\else
- \edef\ttl@a{c@#2}%
- \fi
- \expandafter\ttl@newmk@ii\expandafter{\ttl@a}{#1}}
-
-\def\ttl@newmk@ii#1#2{% macro/var, markset
- \expandafter\let\expandafter\ttl@a\csname ttl@mks@#2\endcsname
- \if@tempswa
- \expandafter\def\expandafter\ttl@a\expandafter{%
- \ttl@a
- \protect\@namedef{#1}{\@nameuse{#1}}}%
- \else
- \expandafter\def\expandafter\ttl@a\expandafter{%
- \ttl@a
- \protect\@nameuse{#1}=\the\@nameuse{#1}\relax}%
- \fi
- \expandafter\let\csname ttl@mks@#2\endcsname\ttl@a}
-
-\let\ttl@mks@\@empty
-\def\ttl@moremarks{\ttl@mks@} % backward compat
-
-\def\ttl@prevmarks{\ttl@marks}
-\let\ttl@marks\relax
-
-% The following command sets the ifthe... commands to
-% be used in heads. When the call is from inside a sectioning
-% command, toclabel is either true (in most of cases) or false
-% (a chapter in the front matter, for example). Otherwise (an
-% explicit \...mark) is false
-
-\def\ttl@setifthe#1{%
- \expandafter\protected@edef\csname ifthe#1\endcsname{%
- \ifttl@toclabel
- \protect\@firstoftwo
- \else
- \protect\@secondoftwo
- \fi}}
-
-% At this point \ttl@toclabel is always false
-
-\ttl@setifthe{part}
-\ttl@setifthe{chapter}
-\ttl@setifthe{section}
-\ttl@setifthe{subsection}
-\ttl@setifthe{subsubsection}
-\ttl@setifthe{paragraph}
-\ttl@setifthe{subparagraph}
-
-% Putting marks
-% -------------
-
-\newtitlemark{\ttl@running}
-\let\ttl@enccode\relax
-\def\ttl@running{\ttl@enccode}
-
-% \ttl@markboth redefines temporarily \mark to fetch changes made by
-% babel or ams, saved in \ttl@running. When this is done, the actual
-% \mark es emitted, which has \ttl@running as part of the markset (see
-% the \newtitlemark above).
-
-\def\ttl@mb@mark{\markboth}
-\def\ttl@mb@warn{%
- \PackageWarningNoLine{titleps}
- {Direct use of \string\markboth\space and \string\markleft\space
- can lead\MessageBreak
- to unpredictable results. Please, read the manual\MessageBreak
- for an explanation of this warning.}}
-
-\def\ttl@markboth#1{%
- \begingroup
- \let\protect\@unexpandable@protect
- \let\@mkboth\@gobbletwo
- \let\ttl@enccode\relax
- \let\label\relax
- \let\index\relax
- \let\glossary\relax
- \let\ttl@c\mark
- \def\mark##1{\xdef\ttl@running{\expandafter\@gobble##1}}%
- \ttl@mb@mark{}{\ttl@enccode}%
- \expandafter\let\csname#1mark\endcsname\@gobble
- \xdef\ttl@marks{\ttl@marks}%
- \gdef\@themark{{\ttl@marks}{\ttl@prevmarks}}%
- \ttl@c{\@themark\let\noexpand\ttl@mb@warn\relax}%
- \@nameuse{ttl@tem@#1}%
- \if@nobreak\ifvmode\nobreak\fi\fi
- \endgroup}
-
-\newcommand\settitlemarks{\@ifstar\ttl@svmarks@s\ttl@svmarks@x}
-
-\def\ttl@svmarks@x#1{\def\ttl@marksset{{#1}}}
-\def\ttl@svmarks@s#1{\def\ttl@marksset{*{#1}}}
-
-\newcommand\setmarks[2]{\settitlemarks{#1,#2}} % back compat
-
-\def\ttl@settopmark#1\@@{%
- \expandafter\def\csname#1mark\endcsname##1{%
- \expandafter\gdef\csname#1title\endcsname{##1}%
- \ttl@setifthe{#1}%
- \expandafter\let\expandafter\ttl@marks\csname ttl@tm@#1\endcsname
- \ttl@markboth{#1}}%
- \global\@namedef{ttl@tm@#1}{%
- \protect\@namedef{#1title}{\@nameuse{#1title}}%
- \protect\@namedef{the#1}{\@nameuse{the#1}}%
- \protect\@namedef{ifthe#1}{\@nameuse{ifthe#1}}}%
- \def\ttl@elt##1{%
- \expandafter\ttl@setsubmark\ttl@a\@@{##1}}%
- \ttl@c}%
-
-\def\ttl@setsubmark#1\@@#2{%
- \expandafter\g@addto@macro\csname ttl@tm@#2\endcsname{%
- \protect\@namedef{#1title}{}%
- \protect\@namedef{the#1}{}%
- \protect\@namedef{ifthe#1}{\protect\@secondoftwo}}
- \expandafter\g@addto@macro\csname ttl@tm@#1\endcsname{%
- \protect\@namedef{#2title}{\@nameuse{#2title}}%
- \protect\@namedef{the#2}{\@nameuse{the#2}}%
- \protect\@namedef{ifthe#2}{\@nameuse{ifthe#2}}}}%
-
-\def\ttl@setmarks@x#1{%
- \let\ttl@c\@empty % sub list
- \@for\ttl@a:=#1\do{%
- \expandafter\ttl@settopmark\ttl@a\@@
- \let\ttl@elt\relax
- \xdef\ttl@c{\ttl@c\ttl@elt{\ttl@a}}}%
- \@for\ttl@a:=#1\do{%
- \expandafter\g@addto@macro\csname ttl@tm@\ttl@a\endcsname{%
- \ttl@moremarks}}}
-
-\def\ttl@setmarks@s#1{% Solo con extramarks
- \PackageError{titleps}%
- {You need `extramarks' for \string\settitlemarks*}%
- {\string\settitlemarks* requires the package option `extramarks'}}
-
-\newcommand\pretitlemark{%
- \global\ttl@premarktrue
- \@ifstar{\ttl@pretitlemark\z@}%
- {\ttl@pretitlemark\@ne}}
-
-\def\ttl@pretitlemark#1#2#3{%
- \addtocounter{#2}#1%
- \ttl@premark{#2}{#3}%
- \addtocounter{#2}{-#1}}
-
-% Rules
-% -----
-
-\newcommand\headrule{\setheadrule{.4\p@}}
-\newcommand\footrule{\setfootrule{.4\p@}}
-
-\newcommand\setheadrule[1]{%
- \ifdim#1=\z@
- \let\makeheadrule\@empty
- \else
- \def\makeheadrule{\rule[-.3\baselineskip]{\linewidth}{#1}}%
- \fi}
-\newcommand\setfootrule[1]{%
- \ifdim#1=\z@
- \let\makefootrule\@empty
- \else
- \def\makefootrule{\rule[.7\baselineskip]{\linewidth}{#1}}%
- \fi}
-
-\renewcommand\newpagestyle[1]{%
- \begingroup
- \catcode`\^^M=9
- \@ifnextchar[%
- {\ttl@pagestyle\newcommand{#1}}%
- {\ttl@pagestyle\newcommand{#1}[]}}
-
-\renewcommand\renewpagestyle[1]{%
- \begingroup
- \catcode`\^^M=9
- \@ifnextchar[%
- {\ttl@pagestyle\renewcommand{#1}}%
- {\ttl@pagestyle\renewcommand{#1}[]}}
-
-\def\ttl@pagestyle#1#2[#3]#4{%
- \endgroup
- \expandafter#1\csname ps@#2\endcsname{%
- \ttl@defaultps
- \def\ttl@headfmt{#3}%
- #4%
- \def\settitlemarks{\@ifstar\ttl@svmarks@s\ttl@svmarks@x}}}
-
-\def\ttl@userunning#1#2{\csname ttlr@#1#2\endcsname}
-
-\def\ttl@defaultps{%
- \let\makeheadrule\@empty
- \let\makefootrule\@empty
- \def\@mkboth{\ttl@savemark\@gobbletwo}%
- \def\@oddfoot{\ttl@userunning of}%
- \def\@evenfoot{\ttl@userunning ef}%
- \def\@oddhead{\ttl@userunning oh}%
- \def\@evenhead{\ttl@userunning eh}%
- \def\ttlr@of{\ttl@makefoot\@empty\@@\ttl@hiol\ttl@hior}%
- \def\ttlr@ef{\ttl@makefoot\@empty\@@\ttl@hiel\ttl@hier}%
- \def\ttlr@oh{\ttl@makehead\@empty\@@\ttl@hiol\ttl@hior}%
- \def\ttlr@eh{\ttl@makehead\@empty\@@\ttl@hiel\ttl@hier}%
- \let\ttlr@of@b\relax \let\ttlr@of@p\relax
- \let\ttlr@ef@b\relax \let\ttlr@ef@p\relax
- \let\ttlr@oh@t\relax \let\ttlr@oh@p\relax
- \let\ttlr@eh@t\relax \let\ttlr@eh@p\relax
- \def\settitlemarks{\@ifstar\ttl@setmarks@s\ttl@setmarks@x}%
- \expandafter\settitlemarks\ttl@marksset}
-
-\@ifundefined{chapter}%
- {\settitlemarks{section,subsection}}%
- {\settitlemarks{chapter,section}}
-
-\newcommand\usepage{\protect\thepage} % back compat
-
-\newcommand\toptitlemarks{\expandafter\@secondoftwo\firstmark{}{}{}}
-\def\firsttitlemarks{%
- \toks@\expandafter\expandafter\expandafter{%
- \expandafter\@secondoftwo \firstmark{}{}{}}%
- \@temptokena\expandafter\expandafter\expandafter{%
- \expandafter\@secondoftwo \botmark{}{}{}}%
- \edef\ttl@a{\the\toks@}%
- \edef\ttl@b{\the\@temptokena}%
- \ifx\ttl@a\ttl@b
- \expandafter\@secondoftwo\firstmark{}{}{}%
- \else
- \expandafter\@firstoftwo \firstmark{}{}{}%
- \fi}
-\newcommand\bottitlemarks{\expandafter\@secondoftwo\botmark{}{}{}}
-\newcommand\nexttoptitlemarks{\expandafter\@firstoftwo\botmark{}{}{}}
-\newcommand\outertitlemarks{%
- \if@twoside
- \ifodd\c@page\relax
- \bottitlemarks
- \else
- \toptitlemarks
- \fi
- \else
- \toptitlemarks
- \fi}
-\newcommand\innertitlemarks{%
- \if@twoside
- \ifodd\c@page\relax
- \firsttitlemarks
- \else
- \bottitlemarks
- \fi
- \else
- \bottitlemarks
- \fi}
-
-\def\ttl@duplthreeargs#1#2#3#4{#1[#2][#3][#4]{#2}{#3}{#4}}
-\def\ttl@dupltwoargs#1#2#3{#1[#2][#3]{#2}{#3}}
-\def\ttl@duplthreeargsrev#1#2#3#4{#1[#4][#3][#2]{#2}{#3}{#4}}
-\def\ttl@dupltwoargsrev#1#2#3{#1[#3][#2]{#2}{#3}}
-
-\def\ttl@setany#1{%
- \@ifstar{\ttl@duplthreeargsrev#1}%
- {\@ifnextchar[{#1}{\ttl@duplthreeargs#1}}}
-
-\newcommand\setfoot{\ttl@setany\ttl@setfoot}
-\newcommand\sethead{\ttl@setany\ttl@sethead}
-
-\def\ttl@setfoot[#1][#2][#3]#4#5#6{%
- \def\ttlr@ef{\ttl@makefoot{#1}{#2}{#3}\@@\ttl@hiel\ttl@hier}%
- \def\ttlr@of{\ttl@makefoot{#4}{#5}{#6}\@@\ttl@hiol\ttl@hior}}
-
-\def\ttl@sethead[#1][#2][#3]#4#5#6{%
- \def\ttlr@eh{\ttl@makehead{#1}{#2}{#3}\@@\ttl@hiel\ttl@hier}%
- \def\ttlr@oh{\ttl@makehead{#4}{#5}{#6}\@@\ttl@hiol\ttl@hior}}
-
-\def\ttl@headinline#1#2#3{%
- \ttl@headfmt
- \def\ttl@a{#1#3}\def\ttl@b{#2}%
- \ifx\ttl@a\@empty
- \hfil{#2}\hfil
- \else\ifx\ttl@b\@empty
- {#1}\hfil{#3}%
- \else
- \sbox\z@ {#1}%
- \sbox\tw@{#3}%
- \copy\z@
- \ifdim\wd\z@<\wd\tw@
- \kern-\wd\z@\kern\wd\tw@
- \fi
- \hfil{#2}\hfil
- \ifdim\wd\z@>\wd\tw@
- \kern-\wd\tw@\kern\wd\z@
- \fi
- \box\tw@
- \fi\fi}
-
-\def\ttl@makeboth#1#2#3#4{%
- \ttl@calcneg\hspace{#3}%
- \normalsize
- \linewidth\textwidth
- \addtolength\linewidth{#3}%
- \addtolength\linewidth{#4}%
- \ifx#2\@empty\else
- \setbox\z@\hb@xt@\linewidth{%
- \color@begingroup
- #2%
- \color@endgroup}%
- \wd\z@\z@
- \ht\z@\z@
- \dp\z@\z@
- \box\z@
- \fi
- \ttl@titlemarks % Must precede the format. Defines \ttl@running
- \def\ttl@enccode{\ttl@headinline#1{}{}{}}% which contains ttl@enccode
- \ttl@running
- \ttl@calcneg\hspace{#4}}%
-
-\def\ttl@makehead#1\@@{\ttl@makeboth{#1}\makeheadrule}
-\def\ttl@makefoot#1\@@{\ttl@makeboth{#1}\makefootrule}
-
-\renewcommand\widenhead{%
- \@ifstar{\ttl@dupltwoargsrev\ttl@widenhd}%
- {\@ifnextchar[{\ttl@widenhd}{\ttl@dupltwoargs\ttl@widenhd}}}
-
-\def\ttl@widenhd[#1][#2]#3#4{%
- \def\ttl@hiel{#1}\def\ttl@hier{#2}%
- \def\ttl@hiol{#3}\def\ttl@hior{#4}}
-
-\let\setheadindent\widenhead
-
-\def\ttl@hiel{\z@}\def\ttl@hier{\z@}
-\def\ttl@hiol{\z@}\def\ttl@hior{\z@}
-
-% A tool:
-
-\def\ifsamemark#1#2{%
- {#1\global\let\ttl@c#2}%
- \ifx\ttl@c#2%
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi}
-
-% Another tool:
-
-\newcommand\setmarkboth{%
- \ifx\markboth\ttl@mb@use\else
- \let\ttl@mb@mark\markboth
- \let\markboth\ttl@mb@use
- \fi
- \def\ttl@mb@new##1##2}
-
-% \ttl@mb@temp is a trick to allow resetting inside \setmarkboth.
-
-\def\ttl@mb@use#1#2{%
- \let\markboth\ttl@mb@mark
- \def\ttl@mb@temp{\let\markboth\ttl@mb@use}%
- \ttl@mb@new{#1}{#2}%
- \ttl@mb@temp
- \let\ttl@mb@temp\@undefined}
-
-\newcommand\resetmarkboth{%
- \ifx\ttl@mb@temp\@undefined
- \let\markboth\ttl@mb@mark
- \def\ttl@mb@mark{\markboth}%
- \else
- \def\ttl@mb@temp{%
- \let\markboth\ttl@mb@mark
- \def\ttl@mb@mark{\markboth}}%
- \fi}
-
-% ===========
-% EXTRA MARKS
-% ===========
-
-\ifx\ttl@fetchmark\@empty
-
-\ifx\newmarks\@undefined
- \PackageInfo{titleps}{%
- You have requested `extramarks' but etex or similar\MessageBreak
- has not been loaded. I'll do it for you.}
- \RequirePackage{etex}
-\fi
-
-\def\ttl@setmarks@s#1{%
- \@for\ttl@a:=#1\do{%
- \@ifundefined{ttl@mkc@\ttl@a}{%
- \expandafter\newmarks\csname ttl@mkc@\ttl@a\endcsname}{}%
- \expandafter\xdef\csname ttl@tem@\ttl@a\endcsname{%
- \marks\expandafter\noexpand\csname ttl@mkc@\ttl@a\endcsname
- {\noexpand\@themark}}}%
- \ttl@setmarks@x{#1}}%
-
-\newcommand\newmarkset[1]{%
- \expandafter\newmarks\csname ttl@mkc@#1\endcsname
- \@namedef{ttl@mks@#1}{}%
- \@namedef{ttl@premks@#1}{\@nameuse{ttl@mks@#1}}}
-
-\newcommand\newextramark{%
- \@ifstar{\@tempswafalse\ttl@newmk@i}%
- {\@tempswatrue\ttl@newmk@i}}
-
-\def\ttl@extramark#1{%
- \begingroup
- \let\protect\@unexpandable@protect
- \let\@mkboth\@gobbletwo
- \let\label\relax
- \let\index\relax
- \let\glossary\relax\endgroup}
-
-\newcommand\extramark[1]{%
- \begingroup
- \let\protect\@unexpandable@protect
- \let\@mkboth\@gobbletwo
- \let\label\relax
- \let\index\relax
- \let\glossary\relax
- \marks\csname ttl@mkc@#1\endcsname{%
- {\@nameuse{ttl@mks@#1}}%
- {\@nameuse{ttl@mks@#1}}}%
- \expandafter\xdef\csname ttl@premks@#1\endcsname
- {\@nameuse{ttl@mks@#1}}%
- \endgroup
- \if@nobreak\ifvmode\nobreak\fi\fi}%
-
-\newcommand\preextramark[1]{%
- \begingroup
- \let\protect\@unexpandable@protect
- \let\@mkboth\@gobbletwo
- \let\label\relax
- \let\index\relax
- \let\glossary\relax
- \marks\csname ttl@mkc@#1\endcsname{%
- {\csname ttl@mks@#1\endcsname}%
- {\csname ttl@premks@#1\endcsname}}%
- \endgroup
- \if@nobreak\ifvmode\nobreak\fi\fi}
-
-\newcommand\newshortmark[1]{%
- \newmarkset{\string#1}%
- \newextramark{\string#1}#1}
-
-\newcommand\shortmark[1]{\extramark{\string#1}}
-\newcommand\preshortmark[1]{\preextramark{\string#1}}
-
-\newcommand\topshortmark[1]{{\topextramarks{\string#1}#1}}
-\newcommand\firstshortmark[1]{{\firstextramarks{\string#1}#1}}
-\newcommand\botshortmark[1]{{\botextramarks{\string#1}#1}}
-\newcommand\nexttopshortmark[1]{{\nexttopextramarks{\string#1}#1}}
-
-\def\ttl@fetchmark#1#2#3{%
- \expandafter#1#2\csname ttl@mkc@#3\endcsname{}{}{}}
-
-\newcommand\topextramarks[1]{\ttl@fetchmark\@secondoftwo\firstmarks{#1}}
-\newcommand\firstextramarks[1]{%
- \toks@\expandafter\expandafter\expandafter{%
- \ttl@fetchmark\@secondoftwo\firstmarks{#1}}%
- \@temptokena\expandafter\expandafter\expandafter{%
- \ttl@fetchmark\@secondoftwo\botmarks{#1}}%
- \edef\ttl@a{\the\toks@}%
- \edef\ttl@b{\the\@temptokena}%
- \ifx\ttl@a\ttl@b
- \ttl@fetchmark\@secondoftwo\firstmarks{#1}%
- \else
- \ttl@fetchmark\@firstoftwo\firstmarks{#1}%
- \fi}
-\newcommand\botextramarks[1]{\ttl@fetchmark\@secondoftwo\botmarks{#1}}
-\newcommand\nexttopextramarks[1]{\ttl@fetchmark\@firstoftwo\botmarks{#1}}
-
-\newcommand\outerextramarks[1]{%
- \if@twoside
- \ifodd\c@page\relax
- \botextramarks{#1}%
- \else
- \topextramarks{#1}%
- \fi
- \else
- \topextramarks{#1}%
- \fi}
-\newcommand\innerextramarks[1]{%
- \if@twoside
- \ifodd\c@page\relax
- \firstextramarks{#1}%
- \else
- \botextramarks{#1}%
- \fi
- \else
- \botextramarks{#1}%
- \fi}
-
-\fi
-
-% ======
-% FLOATS
-% ======
-%
-% Pagestyles with floats. There macros are defined only with the
-% psfloats package option.
-
-\@ifundefined{ttl@replace}{\endinput}{}
-
-% User interface
-
-\newcommand\setfloatfoot{%
- \let\ttl@c\@empty % <- current float, empty if general
- \ttl@setany\ttl@setftfoot}
-
-\newcommand\setfloathead{%
- \let\ttl@c\@empty % <- current float, empty if general
- \ttl@setany\ttl@setfthead}
-
-\def\ttl@setftfoot[#1][#2][#3]#4#5#6#7{%
- \@ifnextchar[{\ttl@setftfoot@i{#1}{#2}{#3}{#4}{#5}{#6}{#7}}%
- {\ttl@setftfoot@i{#1}{#2}{#3}{#4}{#5}{#6}{#7}[bp]}}
-
-\def\ttl@setfthead[#1][#2][#3]#4#5#6#7{%
- \@ifnextchar[{\ttl@setfthead@i{#1}{#2}{#3}{#4}{#5}{#6}{#7}}%
- {\ttl@setfthead@i{#1}{#2}{#3}{#4}{#5}{#6}{#7}[tp]}}
-
-\def\ttl@setftfoot@i#1#2#3#4#5#6#7[#8]{%
- \@tfor\ttl@b:=#8\do{%
- \@namedef{ttlr@ef@\ttl@b\ttl@c}%
- {#7\ttl@makefoot{#1}{#2}{#3}\@@\ttl@hiel\ttl@hier}%
- \@namedef{ttlr@of@\ttl@b\ttl@c}%
- {#7\ttl@makefoot{#4}{#5}{#6}\@@\ttl@hiol\ttl@hior}}}
-
-\def\ttl@setfthead@i#1#2#3#4#5#6#7[#8]{%
- \@tfor\ttl@b:=#8\do{%
- \@namedef{ttlr@eh@\ttl@b\ttl@c}%
- {#7\ttl@makehead{#1}{#2}{#3}\@@\ttl@hiel\ttl@hier}%
- \@namedef{ttlr@oh@\ttl@b\ttl@c}%
- {#7\ttl@makehead{#4}{#5}{#6}\@@\ttl@hiol\ttl@hior}}}
-
-\newcommand\nextfloathead{%
- \ttl@nextfree % returns ttl@c with the next float
- \ttl@setany\ttl@setfthead}
-
-\newcommand\nextfloatfoot{%
- \ttl@nextfree % returns ttl@c with the next float
- \ttl@setany\ttl@setftfoot}
-
-% Compat mode with floatps
-
-\ifx\ttl@replace\space
-
- \let\ttl@setnewfoot\ttl@setftfoot
- \let\ttl@setnewhead\ttl@setfthead
-
- \def\ttl@setftfoot[#1][#2][#3]#4#5#6{%
- \ttl@setnewfoot[#1][#2][#3]{#4}{#5}{#6}{}}
- \def\ttl@setfthead[#1][#2][#3]#4#5#6{%
- \ttl@setnewhead[#1][#2][#3]{#4}{#5}{#6}{}}
-
-\fi
-
-% The simple default value of \ttl@userunning is
-% replaced by one more elaborated
-
-\def\ttl@userunning#1#2{%
- \if@fcolmade % From a post by D. Arseneau to comp.text.tex
- \def\@elt##1{\edef\ttl@pageft{\string##1}}%
- \@flsucceed
- \let\@elt\relax
- \if#2h%
- \ttl@replace #1hp\ttl@pageft
- \else
- \ttl@replace #1fp\ttl@pageft
- \ttl@killftps\ttl@pageft
- \fi
- \else\if#2h%
- \ifx\ttl@topft\@empty\else
- \ttl@replace #1ht\ttl@topft
- \fi
- \else
- \ifx\ttl@botft\@empty\else
- \ttl@replace #1fb\ttl@botft
- \fi
- \fi\fi
- \csname ttlr@#1#2\endcsname}
-
-% [Don't move above as \ttl@replace is used as a flag.]
-
-\def\ttl@replace#1#2#3#4{%
- \@ifundefined{ttlr@#1#2@#3#4}%
- {\@ifundefined{ttlr@#1#2@#3}{}%
- {\@namedef{ttlr@#1#2}{\@nameuse{ttlr@#1#2@#3}}}}%
- {\csname ttlr@xx@x#4\endcsname\@gobble
- {\expandafter\let\csname ttlr@#1#2\expandafter\endcsname
- \csname ttlr@#1#2@#3#4\endcsname}}}
-
-\def\ttl@nextfree{%
- \def\@elt##1{%
- \edef\ttl@c{\string##1}%
- \let\@elt\@gobble}%
- \@freelist
- \let\@elt\relax
- \@ifundefined{ttlr@xx@x\ttl@c}%
- {\expandafter\let\csname ttlr@xx@x\ttl@c\endcsname\@secondoftwo
- \@tfor\ttl@a:={eh@t}{oh@t}{ef@b}{of@b}{eh@p}{oh@p}{ef@p}{of@p}\do{%
- \expandafter\global\expandafter
- \let\csname ttlr@\ttl@a\ttl@c\endcsname\relax}}{}}
-
-\def\ttl@killftps#1{%
- \expandafter\global\expandafter
- \let\csname ttlr@xx@x#1\endcsname\relax}
-
-\let\ttl@topft\@empty
-\let\ttl@botft\@empty
-\let\ttl@pageft\@empty
-
-\def\ttl@combinefloats{%
- \ifx\@toplist\@empty\else
- \def\@elt##1{%
- \edef\ttl@topft{\string##1}%
- \def\@elt####1{\ttl@killftps{\string####1}}}%
- \@toplist
- \fi
- \ifx\@botlist\@empty\else
- \def\@elt##1{%
- \def\@elt####1{%
- \def\@elt####1{\ttl@killftps\ttl@botft}%
- \edef\ttl@botft{\string####1}}%
- \edef\ttl@botft{\string##1}}%
- \@botlist
- \fi
- \let\@elt\relax
- \ttl@combinefloats@x}
-
-\AtBeginDocument{%
- \let\ttl@combinefloats@x\@combinefloats
- \let\@combinefloats\ttl@combinefloats}
-
-\endinput