diff options
author | Karl Berry <karl@freefriends.org> | 2010-11-26 23:34:28 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-11-26 23:34:28 +0000 |
commit | fe6482d3468ca040e53f8e5347548495db754e98 (patch) | |
tree | 316b38cc413c275b5bd568b1d95a68bbda85f5ea /Master/texmf-dist/source/latex/interfaces | |
parent | 4ccf49d7715d013e1de70c6a44384aeb940c1589 (diff) |
interfaces 2.4 (25nov10)
git-svn-id: svn://tug.org/texlive/trunk@20577 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/interfaces')
3 files changed, 816 insertions, 384 deletions
diff --git a/Master/texmf-dist/source/latex/interfaces/interfaces.drv b/Master/texmf-dist/source/latex/interfaces/interfaces.drv index 68a318a752c..f6d924b8d07 100644 --- a/Master/texmf-dist/source/latex/interfaces/interfaces.drv +++ b/Master/texmf-dist/source/latex/interfaces/interfaces.drv @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% interfaces : 2010/11/21 v2.3 - interfaces : interfaces with keys for other packages (FC) +%% interfaces : 2010/11/26 v2.4 - 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 @@ -46,14 +46,15 @@ \let\CTANLinks=y \edef\thisfile{\jobname} \def\thisinfo{interfaces with keys for other packages} -\def\thisdate{2010/11/21} -\def\thisversion{2.3} +\def\thisdate{2010/11/26} +\def\thisversion{2.4\,\textendash\,release candidate} \def\CTANbaseurl{http://www.ctan.org/tex-archive/} \def\LocalOrCTAN#1#2{\ifx y\CTANLinks#2\else#1\fi} \def\LOCALDOC{file:C:/texmf/doc/latex} \let\loadclass\LoadClass \def\LoadClass#1{\loadclass[abstracton]{scrartcl}\let\scrmaketitle\maketitle\AtEndOfClass{\let\maketitle\scrmaketitle}} \documentclass[a4paper,oneside]{ltxdoc} +\AtBeginDocument{\DeleteShortVerb{\|}} \usepackage[latin1]{inputenc} \usepackage[american]{babel} \usepackage[T1]{fontenc} @@ -66,15 +67,14 @@ \usepackage{enumitem,multirow,makecell,tabularx,booktabs,colortbl,arydshln,dcolumn,delarray,hhline,linegoal} \usepackage[breakall]{truncate} \usepackage{appendix} -\usepackage{interfaces-base} -\LoadInterface{LaTeX,titlesec,bookmark,marks,fancyhdr,tocloft,makecell,enumitem,appendix,truncate} +\usepackage{interfaces} \usepackage{holtxdoc,hyperref,bookmark} \usepackage{embedfile} \usepackage{fp} \usepackage{zref,zref-user,zref-savepos} \usetikz{basic,decorations.pathmorphing} \csname endofdump\endcsname -\RequirePackage{tabu}[2010/11/20] +\RequirePackage{tabu}[2010/11/22] %%\OnlyDescription \CodelineNumbered \usepackage{fancyvrb} \fvset{gobble=1} diff --git a/Master/texmf-dist/source/latex/interfaces/interfaces.dtx b/Master/texmf-dist/source/latex/interfaces/interfaces.dtx index 3a03217119b..e7c6eacd426 100644 --- a/Master/texmf-dist/source/latex/interfaces/interfaces.dtx +++ b/Master/texmf-dist/source/latex/interfaces/interfaces.dtx @@ -1,5 +1,5 @@ % \iffalse meta-comment -% interfaces : 2010/11/21 v2.3 - interfaces with keys for other packages (FC) +% interfaces : 2010/11/26 v2.4 - 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 @@ -56,7 +56,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: 2010/11/21 v2.3 - interfaces: interfaces with keys for other packages (FC)} +\Msg{* Package: 2010/11/26 v2.4 - interfaces: interfaces with keys for other packages (FC)} \Msg{************************************************************************} \keepsilent @@ -67,7 +67,7 @@ This is a generated file. -interfaces : 2010/11/21 v2.3 - interfaces : interfaces with keys for other packages (FC) +interfaces : 2010/11/26 v2.4 - 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 @@ -160,14 +160,15 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> \let\CTANLinks=y \edef\thisfile{\jobname} \def\thisinfo{interfaces with keys for other packages} -\def\thisdate{2010/11/21} -\def\thisversion{2.3} +\def\thisdate{2010/11/26} +\def\thisversion{2.4\,\textendash\,release candidate} \def\CTANbaseurl{http://www.ctan.org/tex-archive/} \def\LocalOrCTAN#1#2{\ifx y\CTANLinks#2\else#1\fi} \def\LOCALDOC{file:C:/texmf/doc/latex} \let\loadclass\LoadClass \def\LoadClass#1{\loadclass[abstracton]{scrartcl}\let\scrmaketitle\maketitle\AtEndOfClass{\let\maketitle\scrmaketitle}} \documentclass[a4paper,oneside]{ltxdoc} +\AtBeginDocument{\DeleteShortVerb{\|}} \usepackage[latin1]{inputenc} \usepackage[american]{babel} \usepackage[T1]{fontenc} @@ -180,15 +181,14 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> \usepackage{enumitem,multirow,makecell,tabularx,booktabs,colortbl,arydshln,dcolumn,delarray,hhline,linegoal} \usepackage[breakall]{truncate} \usepackage{appendix} -\usepackage{interfaces-base} -\LoadInterface{LaTeX,titlesec,bookmark,marks,fancyhdr,tocloft,makecell,enumitem,appendix,truncate} +\usepackage{interfaces} \usepackage{holtxdoc,hyperref,bookmark} \usepackage{embedfile} \usepackage{fp} \usepackage{zref,zref-user,zref-savepos} \usetikz{basic,decorations.pathmorphing} \csname endofdump\endcsname -\RequirePackage{tabu}[2010/11/20] +\RequirePackage{tabu}[2010/11/22] %%\OnlyDescription \CodelineNumbered \usepackage{fancyvrb} \fvset{gobble=1} @@ -214,7 +214,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> %</driver> % \fi % -% \CheckSum{5503} +% \CheckSum{5655} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -288,21 +288,21 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % \newrobustcmd*\CTANhref[2][macros/latex/contrib/]{^^A % \href{\CTANbaseurl#1#2}{\nolinkurl{CTAN:#1#2}}^^A % } -% \newrobustcmd*\thispackage{\@ifstar{\thisp@ckage{}}{\thisp@ckage\xspace}} +% \newrobustcmd*\thispackage{\@ifstar{\thisp@ckage{}}{\thisp@ckage\Xspace}} % \def\thisp@ckage#1{\@testopt{\thisp@ck@ge{#1}}{\thisfile}} % \def\thisp@ck@ge#1[#2]{\xpackage{\pkgcolor#2}#1} -% \def\ThisPackage{\Xpackage{\thisfile}\xspace} +% \def\ThisPackage{\Xpackage{\thisfile}\Xspace} % \newrobustcmd*\Xpackage[2][macros/latex/contrib/]{\@testopt{\X@package[{#1}]{#2}}{}} % \def\X@package[#1]#2[#3]{^^A #1=href, #2=name, #3=description (footnote) % \xpackage{#2\footnote{\noindent\xpackage{#2}: \CTANhref[{#1}]{#2}#3}}^^A % } -% \def\ThisPackage{\Xpackage{\thisfile}\xspace} +% \def\ThisPackage{\Xpackage{\thisfile}\Xspace} % \newrobustcmd\doclink[2][]{\ifblank{#1} % {\hyperref{\LocalOrCTAN{\LOCALDOC/#2/#2.pdf}{\CTANbaseurl/macros/latex/contrib/#2}}{}{}{#2}} % {\hyperref{#1}{}{}{#2}}% % } % \newrobustcmd\ClearPage{\@ifstar{\vfill\null\clearpage}{}} -% \renewcommand\bottomtitlespace{.2\textheight} +% \bottomtitles=.1\textheight % \catcode`\§ \active \def§{\@ifnextchar §{\endgraf\nobreak\vskip-2\parskip}{\endgraf\nobreak\vskip-\parskip}} % \def\Underbrace#1_#2{$\underbrace{\vtop to2ex{}\hbox{#1}}_{\footnotesize\hbox{#2}}$} % \newcolumntype{O}{>{\opt}r@{\,=\textellipsis,\hskip.3em}} @@ -328,6 +328,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % \DefineVerbatimEnvironment{Verb*}{Verbatim} % {gobble=1,fontfamily=txtt,fontseries=m,commandchars=$()} % \def\smex{\leavevmode\hb@xt@2em{\hfil$\longrightarrow$\hfil}} +% \newcommand\texorpdf[2]{\texorpdfstring{#1{#2}}{#2}} % \renewcommand*\ttdefault{txtt} % \newrobustcmd\verbfont{\ttfamily} \let\vb\verbfont ^^A\usefont{T1}\ttdefault\f@series\f@shape} % \def\meta@font@select{\itshape\verbfont}\let\metafont\meta@font@select @@ -446,7 +447,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % font=\scriptsize\color[gray]{.35},% % foot/left/font+=\ssmall\tiny,% % head/left=The \thispackage package -- \thisinfo,% -% head/right=\thefirstmarks{section},% +% head/right=\hyperref{}{}{\thefirstmarks{sectionanchor}}{\thefirstmarks{section}},% % foot/left/offset=.7in, % foot/left=\vbox to\baselineskip{\vss{{\rotatebox[origin=l]{90}{\thispackage\,[rev.\thisversion]\,\copyright\,\thisyear\,\lower.4ex\hbox{\pkgcolor\NibRight}\,\FC}}}}, % foot/right=\oldstylenums{\arabic{page}} / \oldstylenums{\pageref{LastPage}},% @@ -468,13 +469,16 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % left/offset+=1.5cm, % right/offset-=.5cm, % head/left=The \thispackage package (implementation) -- \thisinfo, -% ^^Ahead/right/font+=\tiny, -% head/right=\thefirstmarks{subsection}, +% head/right=\hyperref{}{}{\thefirstmarks{subsectionanchor}}{\thefirstmarks{subsection}}, % }% % \bookmarksetup{depth=4} -% \sectionformat\section{mark=,bookmark={bold*,italic*}} -% \sectionformat\subsection{mark=\marksthe{subsection}{\arabic{section}.\arabic{subsection}\,{\pkgcolor\lower.2ex\hbox{\smaller\NibRight}}\,##1}} -% \sectionformat\subsubsection{mark=\marksthe{subsubsection}{##1}} +% \sectionformat\section{bookmark={bold*,italic*}} +% \sectionformat\subsection{ +% mark=\marksthe{subsection}{\arabic{section}.\arabic{subsection}\,{\pkgcolor\lower.2ex\hbox{\smaller\NibRight}\,##1}}^^A +% \marksthecs{subsectionanchor}{lastsubsectionanchor}} +% \sectionformat\subsubsection{ +% mark=\marksthe{subsubsection}{##1}\marksthecs{subsubsectionanchor}{lastsubsubsectionanchor}} +% \hfuzz=10pt % \section{Implementation} \label{sec:implementation}} % \let\plainllap\llap % \newrobustcmd\macro@llap[1]{\let\llap\plainllap\setbox\z@\hbox{#1}\ifdim\wd\z@>3cm\hbox to\z@{\hss\hbox to3cm{#1\hss}}\else\hbox to\z@{\hss#1}\fi\setbox\z@\box\voidb@x} @@ -483,8 +487,9 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % % \newcommand\reflinkcolor{\color{reflink}}\definecolor{reflink}{rgb}{0.49,0.00,0.00} % \definecolor{reffilecolor}{rgb}{0,.3,0} +% \newrobustcmd*\Xspace{\ifnum\catcode`\ =\active\relax\else\expandafter\xspace\fi}^^A not \xspace in verbatim % \newrobustcmd*\stform{\@ifnextchar*{\@stform[]\textasteriskcentered\@gobble}\@stform} -% \newrobustcmd*\@stform[2][\string]{\textttbf{\rred#1#2}\ifnum\catcode`\ =\active\relax\else\expandafter\xspace\fi}^^A not \xspace in verbatim +% \newrobustcmd*\@stform[2][\string]{\textttbf{\rred#1#2}\Xspace} % \newrobustcmd*\HR[1][-.2ex]{\leavevmode\raise\dimexpr#1\relax\hbox{\pkgcolor\small\HandRight}} % \newrobustcmd*\sectitle[2][]{Interface \HR\,\doclink[{#1}]{#2}} % \def\Section[#1](#2)[#3]#4{% @@ -503,7 +508,8 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % labelsep=.5em, % top=12pt minus3pt, % bottom=4pt plus2pt minus2pt, -% mark=\marksthe{section}{\thesection\,{\pkgcolor\lower.2ex\hbox{\smaller\NibRight}\,#1}}, +% mark=\marksthe{section}{\thesection\,{\pkgcolor\lower.2ex\hbox{\smaller\NibRight}\,#1}} +% \marksthecs{sectionanchor}{lastsectionanchor} , % } % \sectionformat\subsection{% % bottom-=4pt, @@ -511,7 +517,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % label={\arabic{section}{\pkgcolor$\cdot$}\arabic{subsection}\,{\pkgcolor\smaller\Ankh}\,}, % labelsep=0pt, % break=\allowbreak, -% mark=\marksthe{subsection}{#1}, +% mark=\marksthe{subsection}{#1}\marksthecs{subsectionanchor}{lastsubsectionanchor}, % } % \newrobustcmd*\handler{\@ifstar{\@handler[]}\@handler} % \newrobustcmd*\@handler[1][\db]{\@@handler{#1}} @@ -592,7 +598,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % bookmark={bold,color=blue},$com(interfaces-bookmark) % top=6pt plus3pt minus2pt, % bottom=3pt plus2pt, -% break=\marksthecs{section}{($db(lastsectiontitle))},$com(interfaces-hypbmsec) +% break=\marksthecs{section}{($db(lastsectiontoc))},$com(interfaces-hypbmsec) % mark=($db(\marksthe)){section}{#1},$com(interfaces-marks) % } % ($red(\sectionformat))\subsection[hang]{ @@ -667,15 +673,12 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % bookmark=bold,% % bookmark/text=Contents,% % } -% ^^A\bookmark[page=\value{page},view={FitBH \hypercalcbp\textheight},bold=true]{Contents} % \tableofcontents % % \clearpage \bookmarksetup{startatroot,depth=3} % \sectionformat\section{bookmark={color=pkgcolor,bold}} % -% ^^A\loggingall % \Section[LaTeX](Interface LaTeX)[Interface \LaTeX{}]{Interface \LaTeX{}} -% ^^A\tracingnone % % % \begin{declcs}[\red]{changefont}\{\staractive\hskip-2cm\keytab{^^A @@ -974,10 +977,8 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % % \Section[hypbmsec](Interface hypbmsec)[Interface hypbmsec]{\sectitle[\LocalOrCTAN{\LOCALDOC/oberdiek/hypbmsec}{\CTANbaseurl/macros/latex/contrib/oberdiek/hypbmsec}]{hypbmsec}} % -% The features provided by \thispackage[interfaces-hypbmsec] requires \thispackage[interfaces-titlesec], -% and therefore the \xpackage{titlesec} package: when using \thispackage with automatic module loading, -% (or while invoking \LoadInterface{hypbmsec}), this module is loaded only after both -% \xpackage{titlesec.sty} and \xpackage{hypbmsec.sty}. +% The features provided by \thispackage[interfaces-hypbmsec] are now independant +% of \xpackage{titlesec} and \thispackage[interfaces-titlesec]. % % Package \xpackage{hypbmsec} provides extended sectionning commands with the syntax: % \begin{Verb*} @@ -999,6 +1000,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % ($opt\lastsectiontitle) ($nnn expands to the title of the last) \section % ($opt\lastsectionbookmark) ($nnn expands to the text of the bookmark for the last) \section % ($opt\lastsectiontoc) ($nnn expands to the entry of the last) \section ($nnn in the table of contents) +% ($opt\lastsectionanchor) ($nnn expands to the anchor name of the last) \section ($nnn if $xpackage(hyperref) is used) % \end{Verb*} % % Macros for each sectionning command are defined:§ @@ -1024,6 +1026,18 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % \cs{lastsubsection} is reset to\, \csbf{relax}\, therefore,\, \cs{marksthecs}\M{subsection}\M{lastsubsection} % will not mark anything. % +% Another possibility is show in this document: the header is clickable and has been defined with: +% \begin{Verb*} +% ($dr(\sectionformat))\section{ +% mark=($db(\marksthe)){section}{#1} +% ($db(\marksthecs)){sectionanchor}{lastsectionanchor} +% } +% ($dr(\pagesetup)){ +% head/right=($db(\hyperref)){}{}{($db(\thefirstmarks)){sectionanchor}} +% {($db(\thefirstmarks)){section}} +% } +% \end{Verb*} +% % \ClearPage* % % @@ -1129,14 +1143,18 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % foot/left &foot/center &foot/right &\emph{idem} \\ % head/left/even &head/left/odd &\omit &for two side documents \\ % \etc &\etc &\etc & \\ -% foot/right/even &foot/right/odd &\omit & \\\hdashline[1.5pt/1pt] +% foot/right/even &foot/right/odd &\omit & \\ +% inner &head/inner &foot/inner &\textt{inner} is an alias for \textt{right/even, left/odd} \\ +% outer &head/outer &foot/outer &\textt{outer} is an alias for \textt{left/even, right/odd} \\ \hdashline[1.5pt/1pt] % offset &\omit &\omit &changes \cs{fancyhfoffset} \\ % head/offset &foot/offset &\omit & \\ % left/offset &right/offset &\omit & \\ % head/left/even/offset &head/left/odd/offset &\omit &for two side documents \\ % \etc &\etc &\etc & \\ % foot/right/even/offset &foot/right/odd/offset &\omit &for two side documents \\ -% pagestyle &\omit &\omit &load the settings of another page style \hfill\rlap{\}} \\ +% inner/offset &head/inner/offset &foot/inner/offset&\textt{inner} is an alias for \textt{right/even, left/odd} \\ +% outer/offset &head/outer/offset &foot/outer/offset&\textt{outer} is an alias for \textt{left/even, right/odd} \\ \hdashline[1.5pt/1pt] +% pagestyle &\omit &\omit &load the settings of another page style \hfill\rlap{\}} \\ % \end{tabularx} \\ % \cs[\red]{pagesetup}\stform*\M[pagestyle-name]\M*{key\,=\,value} % \end{declcs} @@ -1185,15 +1203,16 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % (see \thispackage[interfaces-hypbmsec] p. \pageref{hypbmsec}). % % -% \begin{declcs}[\red]{thefirstmarks}\M{named-mark} \\ -% \cs[\red]{thebotmarks}\M{named-mark} \\ -% \cs[\red]{thetopmarks}\M{named-mark} +% \begin{declcs}[\red]{thefirstmarks}\M{named-mark}\textsuperscript{\textsc{expandable}} \\ +% \cs[\red]{thebotmarks}\M{named-mark}\textsuperscript{\textsc{expandable}} \\ +% \cs[\red]{thetopmarks}\M{named-mark}\textsuperscript{\textsc{expandable}} % \end{declcs} % % \begin{description}[font=\mdseries] -% \item[{\cs[\red]{thefirstmarks}\M{chapter}}] expands to \cs{firstmarks}\cs{marks@\meta{chapter}}\, (this is expandable), \ie -% either the content of the first invocation of \cs{marksthe}\M{chapter} on the current page, if \cs{marks} was used -% on the current page, or the last invocation of \cs{marks} if no marks occurs on the current page. +% \item[{\cs[\red]{thefirstmarks}\M{chapter}}] expands to \cs{firstmarks}\cs{marks@\meta{chapter}}\, (this is expandable +% in exactly one step of expansion), \ie either the content of the first invocation of \cs{marksthe}\M{chapter} +% on the current page, if \cs{marks} was used on the current page, or the last invocation of \cs{marks} +% if no marks occurs on the current page. % \item[{\cs[\red]{thebotmarks}\M{chapter}}] expands to \cs{botmarks}\cs{marks@\meta{chapter}}\, \ie the content of the last % invocation of \cs{marksthe}\M{chapter} (the most recent \cs{marks}). % \item[{\cs[\red]{thetopmarks}\M{chapter}}] expands to \cs{topmarks}\cs{marks@\meta{chapter}}\, and this is the content of @@ -1336,12 +1355,6 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % If the values in the lists are numeric, \cs[\pkgcolor]R,\, \cs[\pkgcolor]C,\, \cs[\pkgcolor]r\, and \cs[\pkgcolor]c\, % can be used in formulas as well, \emph{o{\smaller f c{\smaller our{\smaller se...}}}} % -% \textbf{Important note:} The mechanism of \cs{halign} does not allow to insert tab alignment characters into the arguments of \cs[\red]{repeatcell}. -% Therefore, to be able to define a \textt[\opt]{text} key containing a tabular or array, the \textt{\textbf\& alignment tab character} is activated -% (\texttt{catcode 13}) at the beginning of \cs{repeatcell}. This activation has no effect if \cs{repeatcell} is in the replacement text of one of your macro, -% because the category code of \texttbf\& is fixed at the time your macro was read. Thus, use the control sequence \cs[\red]{tab} instead of \texttbf\& in this case. -% \cs[\red]{tab} is only defined during the time \cs[\red]{repeatcell} does its job. -% % \medskip % % \centerline{\bfseries\large\lk @@ -1355,42 +1368,43 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % % \begin{Verb*} % \def($db(\listofunits)){ pt , cm , mm , bp , dd , pc , in , cc ,sp } -% \begin{($dg$underline(tabular))}{|>{\bfseries}c|*{9}{|r}|} \hline +% \begin{($dg$underline(tabu))}{|>{\bfseries}c|*9{X[mc]|}} \hline % \thead{units} % & ($red(\repeatcell))[c]($db(\listofunits)){ ($opt(text)) = \c, font=\bfseries } \\ \hline % \thead{value in\\ scaled\\ points} % & ($red(\repeatcell))($db(\listofunits)){% % ($pkgcolor(sp)) =\number\dimexpr 1($pkgcolor(\c))\relax, % ($opt(text))=\numprint[sp]($pkgcolor(\sp))} \\ \hline -% \end{($dg$underline(tabular))} +% \end{($dg$underline(tabu))} % \end{Verb*} % % {\footnotesize % \def\listofunits{pt,cm,mm,bp,dd,pc,in,cc,sp} -% \begin{tabular}{|>{\bfseries}c|r*{9}{|r}|} \hline -% \thead{units} & \repeatcell[c]\listofunits{ text=\c, font=\bfseries } \\ \hline +% \noindent +% \begin{tabu}{|>{\bfseries}c|*9{X[mc]|}} \hline +% \thead{units} & \repeatcell\listofunits{text=\c, font=\bfseries } \\ \hline % \thead{value in \\ scaled\\ points} & \repeatcell\listofunits{ sp=\number\dimexpr1\c\relax, text=\numprint[sp]\sp} \\ \hline -% \end{tabular} +% \end{tabu} % } % % \subsection{Variable length cell} % % \begin{Verb}[commandchars=£:;] % \newcommand\FAMILY[3]{% -% \begin{:£dg£underline:tabular;;}{|*{3}{>{\centering\arraybackslash}m{.12\linewidth}}|} \hline +% \begin{:£dg£underline:tabu;;}to .4\linewidth{|*3{X[mc]}|} \hline % Mother & Father & Children \\ \hline % #1 & #2 & \makecell{:£red:\repeatcell;;{#3}{text=:£pkgcolor:\c;;, :£opt:transpose;;} \\ \hline -% \end{:£dg£underline:tabular;;}} +% \end{:£dg£underline:tabu;;}} % \FAMILY{Johanne}{Georg}{Priscilla,John,Tom} % \FAMILY{Nut}{Geb}{Isis,Osiris,Seth,Nephthys} % \end{Verb} % % % \newcommand\FAMILY[3]{^^A -% \begin{tabular}{|*{3}{>{\centering\arraybackslash}m{.12\linewidth}}|} \hline +% \begin{tabu} to.4\linewidth{|*3{X[mc]}|} \hline % Mother & Father & Children \\ \hline % #1 & #2 & \makecell{\repeatcell[c]{#3}{text=\c,font=\color{green},transpose}} \\ \hline -% \end{tabular}} +% \end{tabu}} % {\footnotesize \centering % \FAMILY{Johanne}{Georg}{Priscilla,John,Tom} % \FAMILY{Nout}{Geb}{Isis,Osiris,Seth,Nephthys}\par @@ -1399,24 +1413,31 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % % \subsection{Empty rows} % -% {\footnotesize -% \begin{Verb*} -% \begin{tabular}{*{6}{|c}|} \hline +% \begin{tabu}{X[4m]X[cm]} +% \footnotesize +% \verbatim{^^A +% \begin{tabu}{*6{|c}|} \hline^^@ +% \repeatcell 6{ text/col1=\row, rows=4, end=\\ \hline } \\ \hline^^@ +% \end{tabu}} +% & +% \begin{tabu}{*6{|c}|} \hline % \repeatcell 6{ text/col1=\row, rows=4, end=\\ \hline } \\ \hline -% \end{tabular} -% \begin{tabular}{*{4}{|c}|} \hline -% \repeatcell 6{ text/col1=\row, rows=4, end=\\ \hline , ($opt(transpose))} \\ \hline -% \end{tabular} -% \end{Verb*} +% \end{tabu} +% \end{tabu} % -% \begin{tabular}{*{6}{|c}|} \hline -% \repeatcell 6{ text/col1=\row, rows=4, end=\\ \hline } \\ \hline -% \end{tabular} \qquad -% \begin{tabular}{*{4}{|c}|} \hline -% \repeatcell 6{ text/col1=\row, rows=4, end=\\ \hline , transpose } \\ \hline -% \end{tabular} % -% } +% \begin{tabu}{X[4m]X[cm]} +% \footnotesize +% \verbatim{^^A +% \begin{tabu}{*4{|c}|} \hline^^@ +% \repeatcell 6{ text/col1=\row, rows=4, end=\\ \hline , transpose} \\ \hline^^@ +% \end{tabu}} +% & +% \begin{tabu}{*4{|c}|} \hline +% \repeatcell 6{ text/col1=\row, rows=4, end=\\ \hline , transpose} \\ \hline +% \end{tabu} +% \end{tabu} +% % % \subsection{color palette} % \label{repeatcell:colors} @@ -2173,7 +2194,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % % \makeatletter \newcounter{PatchedCommand} % \newcolumntype\X{>{\centering\arraybackslash}X} -% \newrobustcmd\PatchedCommand[4][]{\begingroup\small \stepcounter{PatchedCommand}% +% \newrobustcmd\PatchedCommand[4][]{\begin{small}\stepcounter{PatchedCommand}% % \hbox{\llap{\Pisymbol{\number\numexpr181+\value{PatchedCommand}}\,\,} % \begin{tabularx}\linewidth{|\X|c|\X|\X|c|}\hline % Patched command &Type & Importance &Module & ref. page \\\hline @@ -2195,10 +2216,10 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % {} % {\pageref{patch-\itf@getvalue{#2}1}}% % \\ \hline -% \end{tabularx}}\endgroup} +% \end{tabularx}}\end{small}} % \makeatother % -% \begingroup\smaller +% \begin{smaller} % % \subsection[LaTeX]{\LaTeX{}} % @@ -2330,8 +2351,8 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % \cs{pgfkeys@exp@call}: missed a pair of braces around the value in \cs{pgfkeysalso}. Thus % the code could break if the value contains an equal sign or a comma. Fixed. % +% \end{smaller} % -% \endgroup ^^A \smaller % \bookmarksetup{bold=false,color=black} % % @@ -2351,7 +2372,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> %<*package> \NeedsTeXFormat{LaTeX2e}[2005/12/01] \ProvidesPackage{interfaces} - [2010/11/21 v2.3 - pgfkeys (pgf 2.0 et 2.1 macros for interfaces (FC)] + [2010/11/26 v2.4 - pgfkeys (pgf 2.0 et 2.1 macros for interfaces (FC)] % \end{macrocode} % % \subsubsection{Requirements} @@ -2392,7 +2413,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % \begin{macrocode} %<*base> \ProvidesPackage{interfaces-base} - [2010/11/21 v2.3 Basic macros for interfaces package (FC)] + [2010/11/26 v2.4 Basic macros for interfaces package (FC)] \RequirePackage{etex,ltxcmds,etoolbox,pgfkeys,scrlfile} \AtEndOfPackage{% \RequirePackage{interfaces-etoolbox}% @@ -2855,7 +2876,7 @@ Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr> % \begin{macrocode} %<*tikz> \ProvidesPackage{interfaces-tikz} - [2010/11/21 v2.3 load tikz libraries easily - pgf 2.0 & 2.1 (FC)] + [2010/11/26 v2.4 load tikz libraries easily - pgf 2.0 & 2.1 (FC)] \RequirePackage{interfaces-base} \itf@pgfkeys % \end{macrocode} @@ -3047,6 +3068,7 @@ turtle% [2010/11/15 v2.1 pgfkeys macros for titlesec (FC)] \RequirePackage{interfaces-base} \RequirePackage{auxhook}% <fix for \ttlp@append (odd/even pages)> +\RequirePackage{gettitlestring} \itf@Check@Package{titlesec} \itf@pgfkeys % \end{macrocode} @@ -3306,7 +3328,6 @@ turtle% \pgfqkeys{/itf/titlesec/#1#2}{% shape/.value required,% shape@cs/.initial= - \ifdefined\itf@last@from@next\itf@last@from@next{#1}\fi % interfaces-hypbmsec \csname ttlh@\pgfkeysvalueof{/itf/titlesec/#1#2/shape}\endcsname,% constant shape@cs/.is private=interface-titlesec,% constant font/.store as code,% @@ -3463,7 +3484,7 @@ turtle% \@defaultunits\itf@sk#1\textheight\relax\@nnil \itf@set@bottomtitle@space }% \itf@setbottomtitlespace -\def\itf@set@bottomtitle@space{\edef\bottomtitlespace{\the\itf@sk}} +\def\itf@set@bottomtitle@space{\edef\bottomtitlespace{\the\dimexpr\itf@sk}} % \end{macrocode} % \end{macro} % @@ -3542,7 +3563,7 @@ turtle% % \end{macrocode} % \end{macro} % -% \subsubsection{star keys\stform* definitions} +% \subsubsection{star keys\texorpdf\stform* definitions} % % \begin{macrocode} \global\let\itf@BKM@enable\@ne % 0 = disable*, 1=enable, \@M = disable @@ -3722,6 +3743,7 @@ turtle% %</bookmark> % \end{macrocode} % +% % \Subsection[hypbmsec] % % \subsubsection{interfaces-hypbmsec} @@ -3729,36 +3751,24 @@ turtle% % \begin{macrocode} %<*hypbmsec> \ProvidesPackage{interfaces-hypbmsec} - [2010/11/15 v2.1 lastsection etc. (FC)] + [2010/11/15 v2.1 lastsection (title,anchor, etc. - FC)] \RequirePackage{interfaces-base} +\RequirePackage{gettitlestring} \itf@Check@Package{hypbmsec} -\AfterPackage*{interfaces-titlesec}{% requires interface-titlesec - \input{interfaces-hypbmsec.code.tex}% -}% -%</hypbmsec> -% \end{macrocode} -% -% \subsubsection{interfaces-hypbmsec.code.tex} -% -% \begin{macrocode} -%<*hypbmsec.code.tex> -\ProvidesFile{interfaces-hypbmsec.code.tex} - [2010/10/27 v1.2 code for interfaces-hypbmsec (FC)] % \end{macrocode} % % \begin{macro}{\hbs@do (patch)} -% \patchlabel[prepend]{hbs@do} +% \patchlabel[redef]{hbs@do} % \begin{macrocode} -\itf@patch\pretocmd\hbs@do{% - \edef\itf@tp{\expandafter\itf@strip@at\string#1}% - }% - {\PackageInfo{interfaces-hypbmsec} - {Command \string\hbs@do\space successfully patched}} - {\PackageWarning{interfaces-hypbmsec} - {Command \string\hbs@do\space could not be patched - \MessageBreak loading of `interfaces-hypbmsec` aborted - \MessageBreak \string\lastsection\space will not work}% - \endinput} +\def\itf@hbs@do#1{% + \xdef\itf@hbs@currentname{\expandafter\itf@strip@at\string#1}% + \let\hbs@tocstring\relax % <for starred sections> + \let\hbs@bmstring\relax % <for starred sections> + \@ifstar + {\itf@hbs@ssect#1}% + {\let\hbs@seccmd=#1\hbs@checkarg}% +}% \itf@hbs@do +\let\hbs@do\itf@hbs@do % \end{macrocode} % \end{macro} % @@ -3766,7 +3776,7 @@ turtle% % \patchlabel[prepend]{hbs@process} % \begin{macrocode} \itf@patch\pretocmd\hbs@process{% - \itf@hbs@next{#1}% + \itf@hbs@process{#1}% }% {\PackageInfo{interfaces-hypbmsec} {Command \string\hbs@process\space successfully patched}} @@ -3778,58 +3788,166 @@ turtle% % \end{macrocode} % \end{macro} % -% \begin{macro}{\itf@hbs@next} -% \begin{macrocode} -\long\def\itf@hbs@next#1{% - \csdef{itf@next\itf@tp title}{#1}% - \expandafter\let\csname itf@next\itf@tp toc\expandafter\endcsname - \csname - \ifx\hbs@tocstring\relax itf@next\itf@tp title\else - hbs@tocstring\fi - \endcsname - \expandafter\let\csname itf@next\itf@tp bookmark\expandafter\endcsname - \csname - \ifx\hbs@bmstring\relax itf@next\itf@tp toc\else - hbs@bmstring\fi - \endcsname - \expandafter\expandafter\expandafter - \expandafter\expandafter\expandafter - \expandafter\itf@hbs@chkclass - \expandafter\expandafter\expandafter\string - \expandafter\hbs@seccmd\string\ttl@\@nil - {\expandafter\itf@last@from@next\expandafter{\itf@tp}}% -}% \itf@hbs@next -\long\expandafter\def\expandafter\itf@hbs@chkclass - \expandafter#\expandafter1\string\ttl@#2\@nil{% - \ifblank{#1}{\if@nobreak\itf@hbs@nobreakfix#2\@nnil\fi}% -}% \itf@hbs@chkclass -\def\itf@hbs@nobreakfix#1#{\itf@hbs@n@breakfix} -\def\itf@hbs@n@breakfix#1#2\@nnil{% - \unless\ifx\lastsectionname\relax - \unless\ifnum\csname ttll@#1\endcsname > \csname ttll@\lastsectionname\endcsname\relax - \@nobreakfalse - \fi\fi -}% \itf@hbs@nobreakfix +% \begin{macro}{\itf@hbs@ssect} +% +% For starred sections: +% +% \begin{macrocode} +\long\def\itf@hbs@ssect#1#2{% starred section + \itf@Not@titlesec#1 + {\expandafter\itf@hbs@last@starred\expandafter{\itf@hbs@currentname}{#2}} + {\let\itf@hbs@last\itf@hbs@last@starred@ttl}% <expanded at \ttl@finmarks> + #1*{#2}% +}% \itf@hbs@ssect % \end{macrocode} % \end{macro} % -% \begin{macro}{\itf@last@from@next} -% \begin{macrocode} -\def\itf@last@from@next#1{% - \gdef\lastsectionname{#1}% - \global\expandafter\let\csname last#1title\expandafter\endcsname - \csname itf@next#1title\endcsname - \global\expandafter\let\csname last#1toc\expandafter\endcsname - \csname itf@next#1toc\endcsname - \global\expandafter\let\csname last#1bookmark\expandafter\endcsname - \csname itf@next#1bookmark\endcsname - \let\@elt\itf@resetlastsections - \csname cl@#1\endcsname -}% \itf@last@from@next +% \begin{macro}{\itf@hbs@process} +% +% For non-starred sections: +% +% \begin{macrocode} +\long\def\itf@hbs@process#1{% not starred + \itf@Not@titlesec \hbs@seccmd + {% + \ifdefined\hyper@anchor + \expandafter\itf@hbs@last@nostar@nottl@Hy\expandafter{\itf@hbs@currentname}{#1}% + \else + \expandafter\itf@hbs@last@nostar@nottl\expandafter{\itf@hbs@currentname}{#1}% + \fi + }% + {\let\itf@hbs@last \itf@hbs@last@nostar@ttl}% <expanded at \ttl@finmarks> +}% \itf@hbs@process +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\itf@hbs@last@starred} +% +% Update the values of \cs{lastsectiontitle} \etc. for starred sections: +% +% \begin{macrocode} +\long\def\itf@hbs@last@starred#1#2{% <expanded immediately> + \GetTitleString{#2}\let\itf@hbs@currenttitle\GetTitleStringResult + \begingroup + \let\@elt \itf@resetlastsections + \globaldefs \@ne + \expandafter\let\csname last#1title\endcsname\itf@hbs@currenttitle + \expandafter\let\csname last#1toc\endcsname\@empty + \expandafter\let\csname last#1bookmark\endcsname\@empty + \expandafter\let\csname last#1anchor\endcsname\relax + \let\lastsectionname \itf@hbs@currentname + \csname cl@#1\endcsname + \endgroup +}% \itf@hbs@last@starred +\def\itf@hbs@last@starred@ttl{% <expanded at \ttl@finmarks> + \global\let\itf@hbs@last \@empty + \expandafter\itf@hbs@last@starred + \expandafter\itf@hbs@currentname \expandafter{\ttl@savetitle}% +}% \itf@hbs@last@starred@ttl +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\itf@hbs@last@nostar} +% \begin{macro}{\itf@hbs@last@nostar@ttl} +% \begin{macro}{\itf@hbs@last@nostar@nottl} +% \begin{macro}{\itf@hbs@last@nostar@nottl@Hy} +% +% Update de values of \cs{lastsectiontitle} \etc. for non-starred sections: +% +% \begin{macrocode} +\long\def\itf@hbs@last@nostar#1#2{% + \GetTitleString{#2}\let\itf@hbs@currenttitle\GetTitleStringResult + \begingroup + \let\@elt \itf@resetlastsections + \globaldefs \@ne + \expandafter\let\csname last#1title\endcsname\itf@hbs@currenttitle + \expandafter\let\csname last#1toc\expandafter\endcsname + \csname \ifx\hbs@tocstring\relax + itf@hbs@currenttitle\else hbs@tocstring\fi \endcsname + \expandafter\let\csname last#1bookmark\expandafter\endcsname + \csname \ifx\hbs@bmstring\relax + last#1toc\else hbs@bmstring\fi \endcsname + \expandafter\let\csname last#1anchor\endcsname\HyperLocalCurrentHref + \let\lastsectionname \itf@hbs@currentname + \csname cl@#1\endcsname + \endgroup +}% \itf@hbs@last@starred +\def\itf@hbs@last@nostar@ttl{% <expanded at \ttl@finmarks> + \global\let\itf@hbs@last \@empty + \expandafter\itf@hbs@last@nostar + \expandafter\itf@hbs@currentname \expandafter{\ttl@savetitle}% +}% \itf@hbs@last@nostar@ttl +\long\def\itf@hbs@last@nostar@nottl#1#2{% <expanded at \cl@section> + \expandafter\let\expandafter\itf@hbs@cl@ORI\csname cl@#1\endcsname + \expandafter\def\csname cl@#1\endcsname{% + \expandafter\let\csname cl@#1\endcsname\itf@hbs@cl@ORI + \itf@hbs@cl@ORI + \itf@hbs@last@nostar {#1}{#2}}% +}% \itf@hbs@last@nostar@nottl +\long\def\itf@hbs@last@nostar@nottl@Hy#1#2{% <expanded at \hyper@anchorend> + \begingroup + \toks@\expandafter{% + \expandafter\def\expandafter\hyper@anchorend + \expandafter{\hyper@anchorend}% + \itf@hbs@last@nostar{#1}{#2}}% + \edef\x{\endgroup + \def\noexpand\hyper@anchorend{\the\toks@}% + }\x +}% \itf@hbs@last@nostar@nottl@Hy +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\itf@Not@titlesec} +% +% Expands to \cs{@firstoftwo} if the section is not formatted by a class of \xpackage{titlesec} package. +% Otherwise (\xpackage{titlesec} formats the given section): expands to \cs{@secondoftwo}. +% +% \begin{macrocode} +\def\itf@Not@titlesec#1{\@firstoftwo} +\AfterPackage*{titlesec}{% +\def\itf@Not@titlesec#1{\begingroup + \@onelevel@sanitize#1% + \edef\@tempa{\noexpand\in@ + {\noexpand\@nil \string\ttl@} + {\noexpand\@nil #1}% + }\@tempa + \expandafter\endgroup + \ifin@ \expandafter\@secondoftwo + \else \expandafter\@firstoftwo + \fi +}% \itf@Not@titlesec +}% AfterPackage titlesec +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\ttl@finmarks} +% +% When \xpackage{titlesec} is used, assignments to \cs{lastsectiontitle}, \cs{lastsubsectiontoc} \etc. +% are done at this point. +% +% \begin{macrocode} +\AfterPackage*{titlesec}{% +\expandafter\def\expandafter\ttl@finmarks\expandafter{% + \expandafter\itf@hbs@last \ttl@finmarks}% +\let\itf@hbs@last \@empty +}% AfterPackage +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\itf@resetlastsections} +% +% Assignments are global (\cs{globaldefs}$ =1$). +% +% \begin{macrocode} \def\itf@resetlastsections#1{% \expandafter\let\csname last#1title\endcsname\relax \expandafter\let\csname last#1toc\endcsname\relax \expandafter\let\csname last#1bookmark\endcsname\relax + \expandafter\let\csname last#1anchor\endcsname\relax \csname cl@#1\endcsname }% \itf@resetlastsections % \end{macrocode} @@ -3838,19 +3956,21 @@ turtle% % \begin{macrocode} \let\lastsectionname\relax \@for\itf@tp:=part,section,subsection,subsubsection,paragraph,subparagraph% - \do{\expandafter\let\csname last\itf@tp title\endcsname\relax + \do{\expandafter\let\csname last\itf@tp title\endcsname\relax \expandafter\let\csname last\itf@tp toc\endcsname\relax \expandafter\let\csname last\itf@tp bookmark\endcsname\relax + \expandafter\let\csname last\itf@tp anchor\endcsname\relax }% \AtBeginDocument{\ifundef\chapter{} {\let\lastchaptertitle\relax \let\lastchaptertoc\relax - \let\lastchapterbookmark\relax}% + \let\lastchapterbookmark\relax + \let\lastchapteranchor\relax}% }% % \end{macrocode} % % \begin{macrocode} -%</hypbmsec.code.tex> +%</hypbmsec> % \end{macrocode} % % \Subsection[fancyhdr] @@ -3858,7 +3978,7 @@ turtle% % \begin{macrocode} %<*fancyhdr> \ProvidesPackage{interfaces-fancyhdr} - [2010/11/21 v2.3 pgfkeys macros for fancyhdr (FC)] + [2010/11/26 v2.4 pgfkeys macros for fancyhdr (FC)] \RequirePackage{interfaces-base} \itf@Check@Package{fancyhdr} \itf@pgfkeys @@ -4000,18 +4120,21 @@ turtle% font/.style={head/font={#1},foot/font={#1}},% font+/.style={head/font+={#1},foot/font+={#1}},% font*/.alias=font+,% - color/.style={head/color={#1},foot/color={#1},head/rule/color={#1},foot/rule/color={#1}},% + color/.style={head/color={#1},foot/color={#1},% + head/rule/color={#1},foot/rule/color={#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}},% - head/font*/.alias=head/font+,% - head/color/.style={head/left/color={#1},head/center/color={#1},head/right/color={#1},head/rule/color={#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}},% + head/font*/.alias=head/font+,% + head/color/.style={head/left/color={#1},head/center/color={#1},head/right/color={#1},% + head/rule/color={#1}},% nohead/.style={head=,head/font=,head/rule=,head/rule/font=}, 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}},% - foot/font*/.alias=foot/font+,% - foot/color/.style={foot/left/color={#1},foot/center/color={#1},foot/right/color={#1},foot/rule/color={#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}},% + foot/font*/.alias=foot/font+,% + foot/color/.style={foot/left/color={#1},foot/center/color={#1},foot/right/color={#1},% + foot/rule/color={#1}},% nofoot/.style={foot=,foot/font=,foot/rule=,foot/rule/font=}, left/.style={head/left={#1},foot/left={#1}},% left/font/.style={head/left/font={#1},foot/left/font={#1}},% @@ -4080,146 +4203,260 @@ turtle% head/left/odd/font/.store as code,% head/left/odd/color/.style={head/left/odd/font+=\color{#1}},% head/odd/left/.alias=head/left/odd,% - head/odd/left/font/.alias*=head/left/odd/font,% - head/odd/left/color/.alias=head/left/odd/color,% odd/head/left/.alias=head/left/odd,% - odd/head/left/font/.alias*=head/left/odd/font,% - odd/head/left/color/.alias=head/left/odd/color,% odd/left/head/.alias=head/left/odd,% + left/odd/head/.alias=head/left/odd,% + left/head/odd/.alias=head/left/odd,% + head/odd/left/font/.alias*=head/left/odd/font,% + odd/head/left/font/.alias*=head/left/odd/font,% odd/left/head/font/.alias*=head/left/odd/font,% + left/odd/head/font/.alias*=head/left/odd/font,% + left/head/odd/font/.alias*=head/left/odd/font,% + head/odd/left/color/.alias=head/left/odd/color,% + odd/head/left/color/.alias=head/left/odd/color,% odd/left/head/color/.alias=head/left/odd/color,% + left/odd/head/color/.alias=head/left/odd/color,% + left/head/odd/color/.alias=head/left/odd/color,% head/center/odd/.fancy@hf=och,% head/center/odd/font/.store as code,% head/center/odd/color/.style={head/center/odd/font+=\color{#1}},% head/odd/center/.alias=head/center/odd,% - head/odd/center/font/.alias*=head/center/odd/font,% - head/odd/center/color/.alias=head/center/odd/color,% odd/head/center/.alias=head/center/odd,% - odd/head/center/font/.alias*=head/center/odd/font,% - odd/head/center/color/.alias=head/center/odd/color,% odd/center/head/.alias=head/center/odd,% + center/odd/head/.alias=head/center/odd,% + center/head/odd/.alias=head/center/odd,% + head/odd/center/font/.alias*=head/center/odd/font,% + odd/head/center/font/.alias*=head/center/odd/font,% odd/center/head/font/.alias*=head/center/odd/font,% + center/odd/head/font/.alias*=head/center/odd/font,% + center/head/odd/font/.alias*=head/center/odd/font,% + head/odd/center/color/.alias=head/center/odd/color,% + odd/head/center/color/.alias=head/center/odd/color,% odd/center/head/color/.alias=head/center/odd/color,% + center/odd/head/color/.alias=head/center/odd/color,% + center/head/odd/color/.alias=head/center/odd/color,% head/right/odd/.fancy@hf=orh,% head/right/odd/font/.store as code,% head/right/odd/color/.style={head/right/odd/font+=\color{#1}},% head/odd/right/.alias=head/right/odd,% - head/odd/right/font/.alias*=head/right/odd/font,% - head/odd/right/color/.alias=head/right/odd/color,% odd/head/right/.alias=head/right/odd,% - odd/head/right/font/.alias*=head/right/odd/font,% - odd/head/right/color/.alias=head/right/odd/color,% odd/right/head/.alias=head/right/odd,% + right/odd/head/.alias=head/right/odd,% + right/head/odd/.alias=head/right/odd,% + head/odd/right/font/.alias*=head/right/odd/font,% + odd/head/right/font/.alias*=head/right/odd/font,% odd/right/head/font/.alias*=head/right/odd/font,% + right/odd/head/font/.alias*=head/right/odd/font,% + right/head/odd/font/.alias*=head/right/odd/font,% + head/odd/right/color/.alias=head/right/odd/color,% + odd/head/right/color/.alias=head/right/odd/color,% odd/right/head/color/.alias=head/right/odd/color,% + right/odd/head/color/.alias=head/right/odd/color,% + right/head/odd/color/.alias=head/right/odd/color,% head/left/even/.fancy@hf=elh,% head/left/even/font/.store as code,% head/left/even/color/.style={head/left/even/font+=\color{#1}},% head/even/left/.alias=head/left/even,% - head/even/left/font/.alias*=head/left/even/font,% - head/even/left/color/.alias=head/left/even/color,% even/head/left/.alias=head/left/even,% - even/head/left/font/.alias*=head/left/even/font,% - even/head/left/color/.alias=head/left/even/color,% even/left/head/.alias=head/left/even,% + left/even/head/.alias=head/left/even,% + left/head/even/.alias=head/left/even,% + head/even/left/font/.alias*=head/left/even/font,% + even/head/left/font/.alias*=head/left/even/font,% even/left/head/font/.alias*=head/left/even/font,% + left/even/head/font/.alias*=head/left/even/font,% + left/head/even/font/.alias*=head/left/even/font,% + head/even/left/color/.alias=head/left/even/color,% + even/head/left/color/.alias=head/left/even/color,% even/left/head/color/.alias=head/left/even/color,% + left/even/head/color/.alias=head/left/even/color,% + left/head/even/color/.alias=head/left/even/color,% head/center/even/.fancy@hf=ech,% head/center/even/font/.store as code,% head/center/even/color/.style={head/center/even/font+=\color{#1}},% head/even/center/.alias=head/center/even,% - head/even/center/font/.alias*=head/center/even/font,% - head/even/center/color/.alias=head/center/even/color,% even/head/center/.alias=head/center/even,% - even/head/center/font/.alias*=head/center/even/font,% - even/head/center/color/.alias=head/center/even/color,% even/center/head/.alias=head/center/even,% + center/even/head/.alias=head/center/even,% + center/head/even/.alias=head/center/even,% + head/even/center/font/.alias*=head/center/even/font,% + even/head/center/font/.alias*=head/center/even/font,% even/center/head/font/.alias*=head/center/even/font,% + center/even/head/font/.alias*=head/center/even/font,% + center/head/even/font/.alias*=head/center/even/font,% + head/even/center/color/.alias=head/center/even/color,% + even/head/center/color/.alias=head/center/even/color,% even/center/head/color/.alias=head/center/even/color,% + center/even/head/color/.alias=head/center/even/color,% + center/head/even/color/.alias=head/center/even/color,% head/right/even/.fancy@hf=erh,% head/right/even/font/.store as code,% head/right/even/color/.style={head/right/even/font+=\color{#1}},% head/even/right/.alias=head/right/even,% - head/even/right/font/.alias*=head/right/even/font,% - head/even/right/color/.alias=head/right/even/color,% even/head/right/.alias=head/right/even,% - even/head/right/font/.alias*=head/right/even/font,% - even/head/right/color/.alias=head/right/even/color,% even/right/head/.alias=head/right/even,% + right/even/head/.alias=head/right/even,% + right/head/even/.alias=head/right/even,% + head/even/right/font/.alias*=head/right/even/font,% + even/head/right/font/.alias*=head/right/even/font,% even/right/head/font/.alias*=head/right/even/font,% + right/even/head/font/.alias*=head/right/even/font,% + right/head/even/font/.alias*=head/right/even/font,% + head/even/right/color/.alias=head/right/even/color,% + even/head/right/color/.alias=head/right/even/color,% even/right/head/color/.alias=head/right/even/color,% + right/even/head/color/.alias=head/right/even/color,% + right/head/even/color/.alias=head/right/even/color,% foot/left/odd/.fancy@hf=olf,% foot/left/odd/font/.store as code,% foot/left/odd/color/.style={foot/left/odd/font+=\color{#1}},% foot/odd/left/.alias=foot/left/odd,% - foot/odd/left/font/.alias*=foot/left/odd/font,% - foot/odd/left/color/.alias=foot/left/odd/color,% odd/foot/left/.alias=foot/left/odd,% - odd/foot/left/font/.alias*=foot/left/odd/font,% - odd/foot/left/color/.alias=foot/left/odd/color,% odd/left/foot/.alias=foot/left/odd,% + left/odd/foot/.alias=foot/left/odd,% + left/foot/odd/.alias=foot/left/odd,% + foot/odd/left/font/.alias*=foot/left/odd/font,% + odd/foot/left/font/.alias*=foot/left/odd/font,% odd/left/foot/font/.alias*=foot/left/odd/font,% + left/odd/foot/font/.alias*=foot/left/odd/font,% + left/foot/odd/font/.alias*=foot/left/odd/font,% + foot/odd/left/color/.alias=foot/left/odd/color,% + odd/foot/left/color/.alias=foot/left/odd/color,% odd/left/foot/color/.alias=foot/left/odd/color,% + left/odd/foot/color/.alias=foot/left/odd/color,% + left/foot/odd/color/.alias=foot/left/odd/color,% foot/center/odd/.fancy@hf=ocf,% foot/center/odd/font/.store as code,% foot/center/odd/color/.style={foot/center/odd/font+=\color{#1}},% foot/odd/center/.alias=foot/center/odd,% - foot/odd/center/font/.alias*=foot/center/odd/font,% - foot/odd/center/color/.alias=foot/center/odd/color,% odd/foot/center/.alias=foot/center/odd,% - odd/foot/center/font/.alias*=foot/center/odd/font,% - odd/foot/center/color/.alias=foot/center/odd/color,% odd/center/foot/.alias=foot/center/odd,% + center/odd/foot/.alias=foot/center/odd,% + center/foot/odd/.alias=foot/center/odd,% + foot/odd/center/font/.alias*=foot/center/odd/font,% + odd/foot/center/font/.alias*=foot/center/odd/font,% odd/center/foot/font/.alias*=foot/center/odd/font,% + center/odd/foot/font/.alias*=foot/center/odd/font,% + center/foot/odd/font/.alias*=foot/center/odd/font,% + foot/odd/center/color/.alias=foot/center/odd/color,% + odd/foot/center/color/.alias=foot/center/odd/color,% odd/center/foot/color/.alias=foot/center/odd/color,% + center/odd/foot/color/.alias=foot/center/odd/color,% + center/foot/odd/color/.alias=foot/center/odd/color,% foot/right/odd/.fancy@hf=orf,% foot/right/odd/font/.store as code,% foot/right/odd/color/.style={foot/right/odd/font+=\color{#1}},% foot/odd/right/.alias=foot/right/odd,% - foot/odd/right/font/.alias*=foot/right/odd/font,% - foot/odd/right/color/.alias=foot/right/odd/color,% odd/foot/right/.alias=foot/right/odd,% - odd/foot/right/font/.alias*=foot/right/odd/font,% - odd/foot/right/color/.alias=foot/right/odd/color,% odd/right/foot/.alias=foot/right/odd,% + right/odd/foot/.alias=foot/right/odd,% + right/foot/odd/.alias=foot/right/odd,% + foot/odd/right/font/.alias*=foot/right/odd/font,% + odd/foot/right/font/.alias*=foot/right/odd/font,% odd/right/foot/font/.alias*=foot/right/odd/font,% + right/odd/foot/font/.alias*=foot/right/odd/font,% + right/foot/odd/font/.alias*=foot/right/odd/font,% + foot/odd/right/color/.alias=foot/right/odd/color,% + odd/foot/right/color/.alias=foot/right/odd/color,% odd/right/foot/color/.alias=foot/right/odd/color,% + right/odd/foot/color/.alias=foot/right/odd/color,% + right/foot/odd/color/.alias=foot/right/odd/color,% foot/left/even/.fancy@hf=elf,% foot/left/even/font/.store as code,% foot/left/even/color/.style={foot/left/even/font+=\color{#1}},% foot/even/left/.alias=foot/left/even,% - foot/even/left/font/.alias*=foot/left/even/font,% - foot/even/left/color/.alias=foot/left/even/color,% even/foot/left/.alias=foot/left/even,% - even/foot/left/font/.alias*=foot/left/even/font,% - even/foot/left/color/.alias=foot/left/even/color,% even/left/foot/.alias=foot/left/even,% + left/even/foot/.alias=foot/left/even,% + left/foot/even/.alias=foot/left/even,% + foot/even/left/font/.alias*=foot/left/even/font,% + even/foot/left/font/.alias*=foot/left/even/font,% even/left/foot/font/.alias*=foot/left/even/font,% + left/even/foot/font/.alias*=foot/left/even/font,% + left/foot/even/font/.alias*=foot/left/even/font,% + foot/even/left/color/.alias=foot/left/even/color,% + even/foot/left/color/.alias=foot/left/even/color,% even/left/foot/color/.alias=foot/left/even/color,% + left/even/foot/color/.alias=foot/left/even/color,% + left/foot/even/color/.alias=foot/left/even/color,% foot/center/even/.fancy@hf=ecf,% foot/center/even/font/.store as code,% foot/center/even/color/.style={foot/center/even/font+=\color{#1}},% foot/even/center/.alias=foot/center/even,% - foot/even/center/font/.alias*=foot/center/even/font,% - foot/even/center/color/.alias=foot/center/even/color,% even/foot/center/.alias=foot/center/even,% - even/foot/center/font/.alias*=foot/center/even/font,% - even/foot/center/color/.alias=foot/center/even/color,% even/center/foot/.alias=foot/center/even,% + center/even/foot/.alias=foot/center/even,% + center/foot/even/.alias=foot/center/even,% + foot/even/center/font/.alias*=foot/center/even/font,% + even/foot/center/font/.alias*=foot/center/even/font,% even/center/foot/font/.alias*=foot/center/even/font,% + center/even/foot/font/.alias*=foot/center/even/font,% + center/foot/even/font/.alias*=foot/center/even/font,% + foot/even/center/color/.alias=foot/center/even/color,% + even/foot/center/color/.alias=foot/center/even/color,% even/center/foot/color/.alias=foot/center/even/color,% + center/even/foot/color/.alias=foot/center/even/color,% + center/foot/even/color/.alias=foot/center/even/color,% foot/right/even/.fancy@hf=erf,% foot/right/even/font/.store as code,% foot/right/even/color/.style={foot/right/even/font+=\color{#1}},% foot/even/right/.alias=foot/right/even,% - foot/even/right/font/.alias*=foot/right/even/font,% - foot/even/right/color/.alias=foot/right/even/color,% even/foot/right/.alias=foot/right/even,% - even/foot/right/font/.alias*=foot/right/even/font,% - even/foot/right/color/.alias=foot/right/even/color,% even/right/foot/.alias=foot/right/even,% + right/even/foot/.alias=foot/right/even,% + right/foot/even/.alias=foot/right/even,% + foot/even/right/font/.alias*=foot/right/even/font,% + even/foot/right/font/.alias*=foot/right/even/font,% even/right/foot/font/.alias*=foot/right/even/font,% + right/even/foot/font/.alias*=foot/right/even/font,% + right/foot/even/font/.alias*=foot/right/even/font,% + foot/even/right/color/.alias=foot/right/even/color,% + even/foot/right/color/.alias=foot/right/even/color,% even/right/foot/color/.alias=foot/right/even/color,% + right/even/foot/color/.alias=foot/right/even/color,% + right/foot/even/color/.alias=foot/right/even/color,% + foot/inner/.style={foot/right/even={#1},foot/left/odd={#1}},% + foot/inner/font/.style={foot/right/even/font={#1},foot/left/odd/font={#1}},% + foot/inner/color/.style={foot/right/even/color={#1},foot/left/odd/color={#1}},% + foot/inner/font+/.style={foot/right/even/font+={#1},foot/left/odd/font+={#1}},% + foot/inner/font*/.alias=foot/inner/font+,% + inner/foot/.alias=foot/inner,% + inner/foot/font/.alias*=foot/inner/font,% + inner/foot/color/.alias=foot/inner/color,% + foot/outer/.style={foot/left/even={#1},foot/right/odd={#1}},% + foot/outer/font/.style={foot/left/even/font={#1},foot/right/odd/font={#1}},% + foot/outer/color/.style={foot/left/even/color={#1},foot/right/odd/color={#1}},% + foot/outer/font+/.style={foot/left/even/font+={#1},foot/right/odd/font+={#1}},% + foot/outer/font*/.alias=foot/outer/font+,% + outer/foot/.alias=foot/outer,% + outer/foot/font/.alias*=foot/outer/font,% + outer/foot/color/.alias=foot/outer/color,% + head/inner/.style={head/right/even={#1},head/left/odd={#1}},% + head/inner/font/.style={head/right/even/font={#1},head/left/odd/font={#1}},% + head/inner/color/.style={head/right/even/color={#1},head/left/odd/color={#1}},% + head/inner/font+/.style={head/right/even/font+={#1},head/left/odd/font+={#1}},% + head/inner/font*/.alias=head/inner/font+,% + inner/head/.alias=head/inner,% + inner/head/font/.alias*=head/inner/font,% + inner/head/color/.alias=head/inner/color,% + head/outer/.style={head/left/even={#1},head/right/odd={#1}},% + head/outer/font/.style={head/left/even/font={#1},head/right/odd/font={#1}},% + head/outer/color/.style={head/left/even/color={#1},head/right/odd/color={#1}},% + head/outer/font+/.style={head/left/even/font+={#1},head/right/odd/font+={#1}},% + head/outer/font*/.alias=head/outer/font+,% + outer/head/.alias=head/outer,% + outer/head/font/.alias*=head/outer/font,% + outer/head/color/.alias=head/outer/color,% + inner/.style={foot/inner={#1},head/inner={#1}},% + inner/font/.style={foot/inner/font={#1},head/inner/font={#1}},% + inner/font+/.style={foot/inner/font+={#1},head/inner/font+={#1}},% + inner/font*/.alias=inner/font+,% + inner/color/.style={foot/inner/color={#1},head/inner/color={#1}},% + outer/.style={foot/outer={#1},head/outer={#1}},% + outer/font/.style={foot/outer/font={#1},head/outer/font={#1}},% + outer/font+/.style={foot/outer/font+={#1},head/outer/font+={#1}},% + outer/font*/.alias=outer/font+,% + outer/color/.style={foot/outer/color={#1},head/outer/color={#1}},% offset/.style={head/offset={#1},foot/offset={#1}},% offset+/.style={head/offset+={#1},foot/offset+={#1}},% offset-/.style={head/offset-={#1},foot/offset-={#1}},% @@ -4251,14 +4488,18 @@ turtle% left/even/offset+/.style={foot/left/even/offset+={#1},head/left/even/offset+={#1}},% left/even/offset-/.style={foot/left/even/offset-={#1},head/left/even/offset-={#1}},% left/even/offset*/.style={foot/left/even/offset*={#1},head/left/even/offset*={#1}},% + left/offset/even/.alias*=left/even/offset,% even/left/offset/.alias*=left/even/offset,% + even/offset/left/.alias*=left/even/offset,% offset/even/left/.alias*=left/even/offset,% offset/left/even/.alias*=left/even/offset,% left/odd/offset/.style={foot/left/odd/offset={#1},head/left/odd/offset={#1}},% left/odd/offset+/.style={foot/left/odd/offset+={#1},head/left/odd/offset+={#1}},% left/odd/offset-/.style={foot/left/odd/offset-={#1},head/left/odd/offset-={#1}},% left/odd/offset*/.style={foot/left/odd/offset*={#1},head/left/odd/offset*={#1}},% + left/offset/odd/.alias*=left/odd/offset,% odd/left/offset/.alias*=left/odd/offset,% + odd/offset/left/.alias*=left/odd/offset,% offset/odd/left/.alias*=left/odd/offset,% offset/left/odd/.alias*=left/odd/offset,% right/offset/.style={foot/right/offset={#1},head/right/offset={#1}},% @@ -4267,127 +4508,305 @@ turtle% right/offset*/.style={foot/right/offset*={#1},head/right/offset*={#1}},% offset/right/.alias*=right/offset,% right/even/offset/.style={foot/right/even/offset={#1},head/right/even/offset={#1}},% - right/even/offset+/.style={foot/right/even/offset+={#1},head/right/even/offset+={#1}},% - right/even/offset-/.style={foot/right/even/offset-={#1},head/right/even/offset-={#1}},% - right/even/offset*/.style={foot/right/even/offset*={#1},head/right/even/offset*={#1}},% + right/even/offset+/.style={foot/right/even/offset+={#1},head/right/even/offset+={#1}},% + right/even/offset-/.style={foot/right/even/offset-={#1},head/right/even/offset-={#1}},% + right/even/offset*/.style={foot/right/even/offset*={#1},head/right/even/offset*={#1}},% + right/offset/even/.alias*=right/even/offset,% even/right/offset/.alias*=right/even/offset,% + even/offset/right/.alias*=right/even/offset,% offset/even/right/.alias*=right/even/offset,% offset/right/even/.alias*=right/even/offset,% right/odd/offset/.style={foot/right/odd/offset={#1},head/right/odd/offset={#1}},% right/odd/offset+/.style={foot/right/odd/offset+={#1},head/right/odd/offset+={#1}},% right/odd/offset-/.style={foot/right/odd/offset-={#1},head/right/odd/offset-={#1}},% right/odd/offset*/.style={foot/right/odd/offset*={#1},head/right/odd/offset*={#1}},% + right/offset/odd/.alias*=right/odd/offset,% odd/right/offset/.alias*=right/odd/offset,% + odd/offset/right/.alias*=right/odd/offset,% offset/odd/right/.alias*=right/odd/offset,% offset/right/odd/.alias*=right/odd/offset,% head/left/offset/.style={head/left/even/offset={#1},head/left/odd/offset={#1}},% head/left/offset+/.style={head/left/even/offset+={#1},head/left/odd/offset+={#1}},% head/left/offset-/.style={head/left/even/offset-={#1},head/left/odd/offset-={#1}},% head/left/offset*/.style={head/left/even/offset*={#1},head/left/odd/offset*={#1}},% + head/offset/left/.alias*=head/left/offset,% + left/head/offset/.alias*=head/left/offset,% + left/offset/head/.alias*=head/left/offset,% offset/head/left/.alias*=head/left/offset,% offset/left/head/.alias*=head/left/offset,% - left/head/offset/.alias*=head/left/offset,% head/right/offset/.style={head/right/even/offset={#1},head/right/odd/offset={#1}},% - head/right/offset+/.style={head/right/even/offset+={#1},head/right/odd/offset+={#1}},% - head/right/offset-/.style={head/right/even/offset-={#1},head/right/odd/offset-={#1}},% - head/right/offset*/.style={head/right/even/offset*={#1},head/right/odd/offset*={#1}},% + head/right/offset+/.style={head/right/even/offset+={#1},head/right/odd/offset+={#1}},% + head/right/offset-/.style={head/right/even/offset-={#1},head/right/odd/offset-={#1}},% + head/right/offset*/.style={head/right/even/offset*={#1},head/right/odd/offset*={#1}},% + head/offset/right/.alias*=head/right/offset,% + right/head/offset/.alias*=head/right/offset,% + right/offset/head/.alias*=head/right/offset,% offset/head/right/.alias*=head/right/offset,% offset/right/head/.alias*=head/right/offset,% - right/head/offset/.alias*=head/right/offset,% foot/left/offset/.style={foot/left/even/offset={#1},foot/left/odd/offset={#1}},% foot/left/offset+/.style={foot/left/even/offset+={#1},foot/left/odd/offset+={#1}},% foot/left/offset-/.style={foot/left/even/offset-={#1},foot/left/odd/offset-={#1}},% foot/left/offset*/.style={foot/left/even/offset*={#1},foot/left/odd/offset*={#1}},% + foot/offset/left/.alias*=foot/left/offset,% + left/foot/offset/.alias*=foot/left/offset,% + left/offset/foot/.alias*=foot/left/offset,% offset/foot/left/.alias*=foot/left/offset,% offset/left/foot/.alias*=foot/left/offset,% - left/foot/offset/.alias*=foot/left/offset,% foot/right/offset/.style={foot/right/even/offset={#1},foot/right/odd/offset={#1}},% - foot/right/offset+/.style={foot/right/even/offset+={#1},foot/right/odd/offset+={#1}},% - foot/right/offset-/.style={foot/right/even/offset-={#1},foot/right/odd/offset-={#1}},% - foot/right/offset*/.style={foot/right/even/offset*={#1},foot/right/odd/offset*={#1}},% + foot/right/offset+/.style={foot/right/even/offset+={#1},foot/right/odd/offset+={#1}},% + foot/right/offset-/.style={foot/right/even/offset-={#1},foot/right/odd/offset-={#1}},% + foot/right/offset*/.style={foot/right/even/offset*={#1},foot/right/odd/offset*={#1}},% + foot/offset/right/.alias*=foot/right/offset,% + right/foot/offset/.alias*=foot/right/offset,% + right/offset/foot/.alias*=foot/right/offset,% offset/foot/right/.alias*=foot/right/offset,% offset/right/foot/.alias*=foot/right/offset,% - right/foot/offset/.alias*=foot/right/offset,% head/left/even/offset/.store in skip cs=f@ncyO@elh,% head/left/even/offset/.append code=\fancy@setoffs,% + head/even/offset/left/.alias*=head/left/even/offset,% + head/even/left/offset/.alias*=head/left/even/offset,% + head/offset/even/left/.alias*=head/left/even/offset,% + head/offset/left/even/.alias*=head/left/even/offset,% + head/left/offset/even/.alias*=head/left/even/offset,% + left/head/offset/even/.alias*=head/left/even/offset,% + left/head/even/offset/.alias*=head/left/even/offset,% + left/offset/head/even/.alias*=head/left/even/offset,% + left/offset/even/head/.alias*=head/left/even/offset,% + left/even/offset/head/.alias*=head/left/even/offset,% + left/even/head/offset/.alias*=head/left/even/offset,% + even/head/offset/left/.alias*=head/left/even/offset,% + even/head/left/offset/.alias*=head/left/even/offset,% + even/offset/head/left/.alias*=head/left/even/offset,% + even/offset/left/head/.alias*=head/left/even/offset,% + even/left/offset/head/.alias*=head/left/even/offset,% + even/left/head/offset/.alias*=head/left/even/offset,% offset/head/left/even/.alias*=head/left/even/offset,% offset/head/even/left/.alias*=head/left/even/offset,% offset/left/head/even/.alias*=head/left/even/offset,% offset/left/even/head/.alias*=head/left/even/offset,% offset/even/left/head/.alias*=head/left/even/offset,% offset/even/head/left/.alias*=head/left/even/offset,% - left/even/head/offset/.alias*=head/left/even/offset,% - left/head/even/offset/.alias*=head/left/even/offset,% head/left/odd/offset/.store in skip cs=f@ncyO@olh,% head/left/odd/offset/.append code=\fancy@setoffs,% + head/odd/offset/left/.alias*=head/left/odd/offset,% + head/odd/left/offset/.alias*=head/left/odd/offset,% + head/offset/odd/left/.alias*=head/left/odd/offset,% + head/offset/left/odd/.alias*=head/left/odd/offset,% + head/left/offset/odd/.alias*=head/left/odd/offset,% + left/head/offset/odd/.alias*=head/left/odd/offset,% + left/head/odd/offset/.alias*=head/left/odd/offset,% + left/offset/head/odd/.alias*=head/left/odd/offset,% + left/offset/odd/head/.alias*=head/left/odd/offset,% + left/odd/offset/head/.alias*=head/left/odd/offset,% + left/odd/head/offset/.alias*=head/left/odd/offset,% + odd/head/offset/left/.alias*=head/left/odd/offset,% + odd/head/left/offset/.alias*=head/left/odd/offset,% + odd/offset/head/left/.alias*=head/left/odd/offset,% + odd/offset/left/head/.alias*=head/left/odd/offset,% + odd/left/offset/head/.alias*=head/left/odd/offset,% + odd/left/head/offset/.alias*=head/left/odd/offset,% offset/head/left/odd/.alias*=head/left/odd/offset,% offset/head/odd/left/.alias*=head/left/odd/offset,% offset/left/head/odd/.alias*=head/left/odd/offset,% offset/left/odd/head/.alias*=head/left/odd/offset,% offset/odd/left/head/.alias*=head/left/odd/offset,% offset/odd/head/left/.alias*=head/left/odd/offset,% - left/odd/head/offset/.alias*=head/left/odd/offset,% - left/head/odd/offset/.alias*=head/left/odd/offset,% head/right/even/offset/.store in skip cs=f@ncyO@erh,% head/right/even/offset/.append code=\fancy@setoffs,% + head/even/offset/right/.alias*=head/right/even/offset,% + head/even/right/offset/.alias*=head/right/even/offset,% + head/offset/even/right/.alias*=head/right/even/offset,% + head/offset/right/even/.alias*=head/right/even/offset,% + head/right/offset/even/.alias*=head/right/even/offset,% + right/head/offset/even/.alias*=head/right/even/offset,% + right/head/even/offset/.alias*=head/right/even/offset,% + right/offset/head/even/.alias*=head/right/even/offset,% + right/offset/even/head/.alias*=head/right/even/offset,% + right/even/offset/head/.alias*=head/right/even/offset,% + right/even/head/offset/.alias*=head/right/even/offset,% + even/head/offset/right/.alias*=head/right/even/offset,% + even/head/right/offset/.alias*=head/right/even/offset,% + even/offset/head/right/.alias*=head/right/even/offset,% + even/offset/right/head/.alias*=head/right/even/offset,% + even/right/offset/head/.alias*=head/right/even/offset,% + even/right/head/offset/.alias*=head/right/even/offset,% offset/head/right/even/.alias*=head/right/even/offset,% offset/head/even/right/.alias*=head/right/even/offset,% offset/right/head/even/.alias*=head/right/even/offset,% offset/right/even/head/.alias*=head/right/even/offset,% offset/even/right/head/.alias*=head/right/even/offset,% offset/even/head/right/.alias*=head/right/even/offset,% - right/even/head/offset/.alias*=head/right/even/offset,% - right/head/even/offset/.alias*=head/right/even/offset,% head/right/odd/offset/.store in skip cs=f@ncyO@orh,% head/right/odd/offset/.append code=\fancy@setoffs,% + head/odd/offset/right/.alias*=head/right/odd/offset,% + head/odd/right/offset/.alias*=head/right/odd/offset,% + head/offset/odd/right/.alias*=head/right/odd/offset,% + head/offset/right/odd/.alias*=head/right/odd/offset,% + head/right/offset/odd/.alias*=head/right/odd/offset,% + right/head/offset/odd/.alias*=head/right/odd/offset,% + right/head/odd/offset/.alias*=head/right/odd/offset,% + right/offset/head/odd/.alias*=head/right/odd/offset,% + right/offset/odd/head/.alias*=head/right/odd/offset,% + right/odd/offset/head/.alias*=head/right/odd/offset,% + right/odd/head/offset/.alias*=head/right/odd/offset,% + odd/head/offset/right/.alias*=head/right/odd/offset,% + odd/head/right/offset/.alias*=head/right/odd/offset,% + odd/offset/head/right/.alias*=head/right/odd/offset,% + odd/offset/right/head/.alias*=head/right/odd/offset,% + odd/right/offset/head/.alias*=head/right/odd/offset,% + odd/right/head/offset/.alias*=head/right/odd/offset,% offset/head/right/odd/.alias*=head/right/odd/offset,% offset/head/odd/right/.alias*=head/right/odd/offset,% offset/right/head/odd/.alias*=head/right/odd/offset,% offset/right/odd/head/.alias*=head/right/odd/offset,% offset/odd/right/head/.alias*=head/right/odd/offset,% offset/odd/head/right/.alias*=head/right/odd/offset,% - right/odd/head/offset/.alias*=head/right/odd/offset,% - right/head/odd/offset/.alias*=head/right/odd/offset,% foot/left/even/offset/.store in skip cs=f@ncyO@elf,% foot/left/even/offset/.append code=\fancy@setoffs,% + foot/even/offset/left/.alias*=foot/left/even/offset,% + foot/even/left/offset/.alias*=foot/left/even/offset,% + foot/offset/even/left/.alias*=foot/left/even/offset,% + foot/offset/left/even/.alias*=foot/left/even/offset,% + foot/left/offset/even/.alias*=foot/left/even/offset,% + left/foot/offset/even/.alias*=foot/left/even/offset,% + left/foot/even/offset/.alias*=foot/left/even/offset,% + left/offset/foot/even/.alias*=foot/left/even/offset,% + left/offset/even/foot/.alias*=foot/left/even/offset,% + left/even/offset/foot/.alias*=foot/left/even/offset,% + left/even/foot/offset/.alias*=foot/left/even/offset,% + even/foot/offset/left/.alias*=foot/left/even/offset,% + even/foot/left/offset/.alias*=foot/left/even/offset,% + even/offset/foot/left/.alias*=foot/left/even/offset,% + even/offset/left/foot/.alias*=foot/left/even/offset,% + even/left/offset/foot/.alias*=foot/left/even/offset,% + even/left/foot/offset/.alias*=foot/left/even/offset,% offset/foot/left/even/.alias*=foot/left/even/offset,% offset/foot/even/left/.alias*=foot/left/even/offset,% offset/left/foot/even/.alias*=foot/left/even/offset,% offset/left/even/foot/.alias*=foot/left/even/offset,% offset/even/left/foot/.alias*=foot/left/even/offset,% offset/even/foot/left/.alias*=foot/left/even/offset,% - left/even/foot/offset/.alias*=foot/left/even/offset,% - left/foot/even/offset/.alias*=foot/left/even/offset,% foot/left/odd/offset/.store in skip cs=f@ncyO@olf,% foot/left/odd/offset/.append code=\fancy@setoffs,% + foot/odd/offset/left/.alias*=foot/left/odd/offset,% + foot/odd/left/offset/.alias*=foot/left/odd/offset,% + foot/offset/odd/left/.alias*=foot/left/odd/offset,% + foot/offset/left/odd/.alias*=foot/left/odd/offset,% + foot/left/offset/odd/.alias*=foot/left/odd/offset,% + left/foot/offset/odd/.alias*=foot/left/odd/offset,% + left/foot/odd/offset/.alias*=foot/left/odd/offset,% + left/offset/foot/odd/.alias*=foot/left/odd/offset,% + left/offset/odd/foot/.alias*=foot/left/odd/offset,% + left/odd/offset/foot/.alias*=foot/left/odd/offset,% + left/odd/foot/offset/.alias*=foot/left/odd/offset,% + odd/foot/offset/left/.alias*=foot/left/odd/offset,% + odd/foot/left/offset/.alias*=foot/left/odd/offset,% + odd/offset/foot/left/.alias*=foot/left/odd/offset,% + odd/offset/left/foot/.alias*=foot/left/odd/offset,% + odd/left/offset/foot/.alias*=foot/left/odd/offset,% + odd/left/foot/offset/.alias*=foot/left/odd/offset,% offset/foot/left/odd/.alias*=foot/left/odd/offset,% offset/foot/odd/left/.alias*=foot/left/odd/offset,% offset/left/foot/odd/.alias*=foot/left/odd/offset,% offset/left/odd/foot/.alias*=foot/left/odd/offset,% offset/odd/left/foot/.alias*=foot/left/odd/offset,% offset/odd/foot/left/.alias*=foot/left/odd/offset,% - left/odd/foot/offset/.alias*=foot/left/odd/offset,% - left/foot/odd/offset/.alias*=foot/left/odd/offset,% foot/right/even/offset/.store in skip cs=f@ncyO@erf,% foot/right/even/offset/.append code=\fancy@setoffs,% + foot/even/offset/right/.alias*=foot/right/even/offset,% + foot/even/right/offset/.alias*=foot/right/even/offset,% + foot/offset/even/right/.alias*=foot/right/even/offset,% + foot/offset/right/even/.alias*=foot/right/even/offset,% + foot/right/offset/even/.alias*=foot/right/even/offset,% + right/foot/offset/even/.alias*=foot/right/even/offset,% + right/foot/even/offset/.alias*=foot/right/even/offset,% + right/offset/foot/even/.alias*=foot/right/even/offset,% + right/offset/even/foot/.alias*=foot/right/even/offset,% + right/even/offset/foot/.alias*=foot/right/even/offset,% + right/even/foot/offset/.alias*=foot/right/even/offset,% + even/foot/offset/right/.alias*=foot/right/even/offset,% + even/foot/right/offset/.alias*=foot/right/even/offset,% + even/offset/foot/right/.alias*=foot/right/even/offset,% + even/offset/right/foot/.alias*=foot/right/even/offset,% + even/right/offset/foot/.alias*=foot/right/even/offset,% + even/right/foot/offset/.alias*=foot/right/even/offset,% offset/foot/right/even/.alias*=foot/right/even/offset,% offset/foot/even/right/.alias*=foot/right/even/offset,% offset/right/foot/even/.alias*=foot/right/even/offset,% offset/right/even/foot/.alias*=foot/right/even/offset,% offset/even/right/foot/.alias*=foot/right/even/offset,% offset/even/foot/right/.alias*=foot/right/even/offset,% - right/even/foot/offset/.alias*=foot/right/even/offset,% - right/foot/even/offset/.alias*=foot/right/even/offset,% foot/right/odd/offset/.store in skip cs=f@ncyO@orf,% foot/right/odd/offset/.append code=\fancy@setoffs,% + foot/odd/offset/right/.alias*=foot/right/odd/offset,% + foot/odd/right/offset/.alias*=foot/right/odd/offset,% + foot/offset/odd/right/.alias*=foot/right/odd/offset,% + foot/offset/right/odd/.alias*=foot/right/odd/offset,% + foot/right/offset/odd/.alias*=foot/right/odd/offset,% + right/foot/offset/odd/.alias*=foot/right/odd/offset,% + right/foot/odd/offset/.alias*=foot/right/odd/offset,% + right/offset/foot/odd/.alias*=foot/right/odd/offset,% + right/offset/odd/foot/.alias*=foot/right/odd/offset,% + right/odd/offset/foot/.alias*=foot/right/odd/offset,% + right/odd/foot/offset/.alias*=foot/right/odd/offset,% + odd/foot/offset/right/.alias*=foot/right/odd/offset,% + odd/foot/right/offset/.alias*=foot/right/odd/offset,% + odd/offset/foot/right/.alias*=foot/right/odd/offset,% + odd/offset/right/foot/.alias*=foot/right/odd/offset,% + odd/right/offset/foot/.alias*=foot/right/odd/offset,% + odd/right/foot/offset/.alias*=foot/right/odd/offset,% offset/foot/right/odd/.alias*=foot/right/odd/offset,% offset/foot/odd/right/.alias*=foot/right/odd/offset,% offset/right/foot/odd/.alias*=foot/right/odd/offset,% offset/right/odd/foot/.alias*=foot/right/odd/offset,% offset/odd/right/foot/.alias*=foot/right/odd/offset,% offset/odd/foot/right/.alias*=foot/right/odd/offset,% - right/odd/foot/offset/.alias*=foot/right/odd/offset,% - right/foot/odd/offset/.alias*=foot/right/odd/offset,% + head/inner/offset/.style={head/right/even/offset={#1},head/left/odd/offset={#1}},% + head/inner/offset+/.style={head/right/even/offset+={#1},head/left/odd/offset+={#1}},% + head/inner/offset-/.style={head/right/even/offset-={#1},head/left/odd/offset-={#1}},% + head/inner/offset*/.style={head/right/even/offset*={#1},head/left/odd/offset*={#1}},% + head/offset/inner/.alias*=head/inner/offset,% + offset/head/inner/.alias*=head/inner/offset,% + offset/inner/head/.alias*=head/inner/offset,% + inner/head/offset/.alias*=head/inner/offset,% + inner/offset/head/.alias*=head/inner/offset,% + head/outer/offset/.style={head/left/even/offset={#1},head/right/odd/offset={#1}},% + head/outer/offset+/.style={head/left/even/offset+={#1},head/right/odd/offset+={#1}},% + head/outer/offset-/.style={head/left/even/offset-={#1},head/right/odd/offset-={#1}},% + head/outer/offset*/.style={head/left/even/offset*={#1},head/right/odd/offset*={#1}},% + head/offset/outer/.alias*=head/outer/offset,% + offset/head/outer/.alias*=head/outer/offset,% + offset/outer/head/.alias*=head/outer/offset,% + outer/head/offset/.alias*=head/outer/offset,% + outer/offset/head/.alias*=head/outer/offset,% + foot/inner/offset/.style={foot/right/even/offset={#1},foot/left/odd/offset={#1}},% + foot/inner/offset+/.style={foot/right/even/offset+={#1},foot/left/odd/offset+={#1}},% + foot/inner/offset-/.style={foot/right/even/offset-={#1},foot/left/odd/offset-={#1}},% + foot/inner/offset*/.style={foot/right/even/offset*={#1},foot/left/odd/offset*={#1}},% + foot/offset/inner/.alias*=foot/inner/offset,% + offset/foot/inner/.alias*=foot/inner/offset,% + offset/inner/foot/.alias*=foot/inner/offset,% + inner/foot/offset/.alias*=foot/inner/offset,% + inner/offset/foot/.alias*=foot/inner/offset,% + foot/outer/offset/.style={foot/left/even/offset={#1},foot/right/odd/offset={#1}},% + foot/outer/offset+/.style={foot/left/even/offset+={#1},foot/right/odd/offset+={#1}},% + foot/outer/offset-/.style={foot/left/even/offset-={#1},foot/right/odd/offset-={#1}},% + foot/outer/offset*/.style={foot/left/even/offset*={#1},foot/right/odd/offset*={#1}},% + foot/offset/outer/.alias*=foot/outer/offset,% + offset/foot/outer/.alias*=foot/outer/offset,% + offset/outer/foot/.alias*=foot/outer/offset,% + outer/foot/offset/.alias*=foot/outer/offset,% + outer/offset/foot/.alias*=foot/outer/offset,% + inner/offset/.style={foot/inner/offset={#1},head/inner/offset={#1}},% + inner/offset+/.style={foot/inner/offset+={#1},head/inner/offset+={#1}},% + inner/offset-/.style={foot/inner/offset-={#1},head/inner/offset-={#1}},% + inner/offset*/.style={foot/inner/offset*={#1},head/inner/offset*={#1}},% + offset/inner/.alias*=inner/offset,% + outer/offset/.style={foot/outer/offset={#1},head/outer/offset={#1}},% + outer/offset+/.style={foot/outer/offset+={#1},head/outer/offset+={#1}},% + outer/offset-/.style={foot/outer/offset-={#1},head/outer/offset-={#1}},% + outer/offset*/.style={foot/outer/offset*={#1},head/outer/offset*={#1}},% + offset/outer/.alias*=outer/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) @@ -4411,17 +4830,15 @@ turtle% % \begin{macrocode} %<*marks> \ProvidesPackage{interfaces-marks} - [2010/11/21 v2.3 easier use of e-TeX marks (FC)] + [2010/11/26 v2.4 easier use of e-TeX marks (FC)] \RequirePackage{interfaces-base} % \end{macrocode} % % \begin{macro}{\marksthe} % \begin{macrocode} \newrobustcmd\marksthe[2]{% - \ifcsname marks@#1\endcsname\else - \itf@marks@new{#1}% - \fi - \expandafter\marks\csname marks@#1\endcsname{\unexpanded{#2}}% + \ifcsname marks@#1\endcsname \else \itf@marks@new{#1}\fi + {\toks@{#2}\expandafter\marks\csname marks@#1\endcsname{\the\toks@}}% }% \marksthe % \end{macrocode} % \end{macro} @@ -4429,14 +4846,12 @@ turtle% % \begin{macro}{\marksthecs} % \begin{macrocode} \newrobustcmd*\marksthecs[2]{% - \ifcsname marks@#1\endcsname\else - \itf@marks@new{#1}% - \fi + \ifcsname marks@#1\endcsname \else \itf@marks@new{#1}\fi \ifcsundef{#2} {} - {\expandafter\marks\csname marks@#1\endcsname{% - \unexpanded\expandafter\expandafter\expandafter{% - \csname#2\endcsname}}}% + {{\toks@\expandafter\expandafter\expandafter{% + \csname #2\endcsname}% + \expandafter\marks\csname marks@#1\endcsname{\the\toks@}}}% }% \marksthecs % \end{macrocode} % \end{macro} @@ -4445,29 +4860,34 @@ turtle% % \begin{macrocode} \def\itf@marks@new#1{% \expandafter\newmarks\csname marks@#1\endcsname - \PackageInfo{interfaces-marks} - {New marks `#1' defined} -}% \itf@marks@warning + \PackageInfo{interfaces-marks}{New marks `#1' defined}% +}% \itf@marks@new % \end{macrocode} % \end{macro} % % \begin{macro}{\thefirstmarks} % \begin{macro}{\thebotmarks} % \begin{macro}{\thetopmarks} +% +% Purely expandable in exactly one step of expansion. +% % \begin{macrocode} -\newcommand*\thefirstmarks[1]{% - \ifcsname marks@#1\endcsname - \expandafter\firstmarks\csname marks@#1\endcsname +\newcommand*\thefirstmarks[1]{\romannumeral + \ifcsname marks@#1\endcsname \expandafter\z@ + \firstmarks\csname marks@#1\expandafter\endcsname + \else \expandafter\z@ \fi }% \thefirstmarks -\newcommand*\thebotmarks[1]{% - \ifcsname marks@#1\endcsname - \expandafter\botmarks\csname marks@#1\endcsname +\newcommand*\thebotmarks[1]{\romannumeral + \ifcsname marks@#1\endcsname \expandafter\z@ + \botmarks\csname marks@#1\expandafter\endcsname + \else \expandafter\z@ \fi }% \thebotmarks -\newcommand*\thetopmarks[1]{% - \ifcsname marks@#1\endcsname - \expandafter\topmarks\csname marks@#1\endcsname +\newcommand*\thetopmarks[1]{\romannumeral + \ifcsname marks@#1\endcsname \expandafter\z@ + \topmarks\csname marks@#1\expandafter\endcsname + \else \expandafter\z@ \fi }% \thetopmarks % \end{macrocode} @@ -4476,27 +4896,30 @@ turtle% % \end{macro} % % \begin{macro}{\getthemarks} +% +% \cs{getthemarks}\cs{firstmarks}\M{named-mark}\cs{result} +% % \begin{macrocode} %% \getthemarks\firstmarks{section}\macro \newrobustcmd*\getthemarks[3]{% \ifcsname marks@#2\endcsname - \expandafter\itf@getthemarks\expandafter#1\csname marks@#2\endcsname{#3}% + \edef#3{\unexpanded\expandafter{#1\csname marks@#2\endcsname}}% \else \let#3\@undefined \fi }% \getthemarks -\def\itf@getthemarks#1#2#3{% - \expandafter\def\expandafter#3\expandafter{#1#2}% -}% \itf@getthemarks % \end{macrocode} % \end{macro} % % \begin{macro}{\getthefirstmarks} +% +% \cs{getthefirstmarks}\M{named-mark}\cs{result}: shortcut for \cs{getthemarks}\cs{firstmarks} +% % \begin{macro}{\getthebotmarks} % \begin{macro}{\getthetopmarks} % \begin{macrocode} -\newrobustcmd*\getthefirstmarks[2]{\getthemarks\firstmarks{#1}{#2}} -\newrobustcmd*\getthebotmarks[2]{\getthemarks\botmarks{#1}{#2}} -\newrobustcmd*\getthetopmarks[2]{\getthemarks\topmarks{#1}{#2}} +\newrobustcmd*\getthefirstmarks{\getthemarks\firstmarks} +\newrobustcmd*\getthebotmarks{\getthemarks\botmarks} +\newrobustcmd*\getthetopmarks{\getthemarks\topmarks} % \end{macrocode} % \end{macro} % \end{macro} @@ -4507,14 +4930,12 @@ turtle% %% \ifmarksequal\firstmarks\botmarks{subsection}{ true }{ false } \newrobustcmd*\ifmarksequal[3]{% \begingroup - \getthemarks{#1}{#3}\@tempa - \getthemarks{#2}{#3}\@tempb + \getthemarks{#1}{#3}\x + \getthemarks{#2}{#3}\y \expandafter\endgroup - \csname ltx@\ifdefined\@tempa\ifdefined\@tempb - \ifx\@tempa\@tempb first\else - second\fi\else - second\fi\else - second\fi + \csname ltx@\ifdefined\x\ifdefined\y + \ifx\x\y first\else + second\fi\else second\fi\else second\fi oftwo\endcsname }% \ifmarksequal % \end{macrocode} @@ -4529,7 +4950,7 @@ turtle% % \begin{macrocode} %<*tocloft> \ProvidesPackage{interfaces-tocloft} - [2010/11/21 v2.3 pgfkeys macros for tocloft (FC)] + [2010/11/26 v2.4 pgfkeys macros for tocloft (FC)] \RequirePackage{interfaces-base} \itf@Check@Package{tocloft} \itf@pgfkeys @@ -4811,54 +5232,55 @@ turtle% % This macro creates the keys for each sectionning command. % % \begin{macrocode} -\def\itf@cft@newsection#1#2{% #1=part / chap / sec / subsec etc., #2 = toc | lof | lot - \pgfqkeys{/itf/tocloft/#2/#1}{% - skip/.cft@length=before.#1.skip,% +\def\itf@cft@newsection{\itf@cft@new@section{/itf/tocloft}} +\def\itf@cft@new@section#1#2#3{% #2=part / chap / sec / subsec etc., #3 = toc | lof | lot + \pgfqkeys{#1/#3/#2}{% + skip/.cft@length=before.#2.skip,% beforeskip/.alias*=skip,% top/.alias*=skip,% - indent/.cft@length=.#1.indent,% - font/.cft@code=.#1.font,% - font/.append code={\pgfkeysalso{/itf/tocloft/#2/#1/pagenumber/font={##1}}},% + indent/.cft@length=.#2.indent,% + font/.cft@code=.#2.font,% + font/.append code={\pgfkeysalso{/itf/tocloft/#3/#2/pagenumber/font={##1}}},% format/.alias*=font,% - number/width/.cft@length=.#1.numwidth,% + number/width/.cft@length=.#2.numwidth,% numwidth/.alias*=number/width,% - presnum/.cft@code=.#1.presnum,% + presnum/.cft@code=.#2.presnum,% number/before/.alias*=presnum,% - aftersnum/.cft@code=.#1.aftersnum,% + aftersnum/.cft@code=.#2.aftersnum,% number/after/.alias*=aftersnum,% - aftersnumb/.cft@code=.#1.aftersnumb,% + aftersnumb/.cft@code=.#2.aftersnumb,% title/before/.alias*=aftersnumb,% - leader/.cft@def=.#1.leader,% - leader/.default=\cftdotfill{\csname\itf@cft@name.#1.dotsep\@nil\endcsname},% + leader/.cft@def=.#2.leader,% + leader/.default=\cftdotfill{\csname\itf@cft@name.#2.dotsep\@nil\endcsname},% leaders/.alias=leader,% dotsep/.code={\ifx\pgfkeyscurrentvalue\pgfkeysnovalue@text - \csdef{\itf@cft@name.#1.dotsep\@nil}{\cftdotsep}% + \csdef{\itf@cft@name.#2.dotsep\@nil}{\cftdotsep}% \else \itf@units@mu\itf@musk{##1}% - \csedef{\itf@cft@name.#1.dotsep\@nil}{\itf@strip@mu\itf@musk}% + \csedef{\itf@cft@name.#2.dotsep\@nil}{\itf@strip@mu\itf@musk}% \fi},% dotsep/.blank=\cftnodots,% - nodots/.code=\csdef{\itf@cft@name.#1.dotsep\@nil}{\cftnodots},% + nodots/.code=\csdef{\itf@cft@name.#2.dotsep\@nil}{\cftnodots},% nodots/.value forbidden,% - pagefont/.cft@code=.#1.pagefont,% + pagefont/.cft@code=.#2.pagefont,% page/font/.alias*=pagefont,% pagenumber/font/.alias*=pagefont,% - afterpnum/.cft@code=.#1.afterpnum,% + afterpnum/.cft@code=.#2.afterpnum,% page/after/.alias*=afterpnum,% pagenumber/after/.alias*=afterpnum,% - pagenumbers/.on=\@cftpnumon{\itf@cft@secname{#1}},% - pagenumbers/.off=\@cftpnumoff{\itf@cft@secname{#1}},% + pagenumbers/.on=\@cftpnumon{\itf@cft@secname{#2}},% + pagenumbers/.off=\@cftpnumoff{\itf@cft@secname{#2}},% pagenumber/.alias=pagenumbers,% }% \pgfqkeys -}% \itf@cft@newsection +}% \itf@cft@new@section % \end{macrocode} % \end{macro} % % \begin{macrocode} \@for\itf@tp:=part,chap,chapter,sec,section,subsec,subsection,% - subsubsec,subsubsection,para,paragraph,subpara,subparagraph% + subsubsec,subsubsection,para,paragraph,subpara,subparagraph% \do{\expandafter\itf@cft@newsection\expandafter{\itf@tp}{toc}}% -\if@cftsubfigopt % \@ifpackagewith{tocloft}{subfig} ?? +\if@cftsubfigopt \@for\itf@tp:=fig,figure,subfig,subfigure% \do{\expandafter\itf@cft@newsection\expandafter{\itf@tp}{lof}}% \@for\itf@tp:=tab,table,subtab,subtable% @@ -4964,7 +5386,7 @@ turtle% % \begin{macrocode} %<*makecell> \ProvidesPackage{interfaces-makecell} - [2010/11/21 v2.3 repeatcell to fill in tabulars (FC)] + [2010/11/26 v2.4 repeatcell to fill in tabulars (FC)] \RequirePackage{interfaces-base} \itf@Check@Package{makecell} \edef\itf@AtEnd{\catcode126 \the\catcode126}% 126 = ~ @@ -5013,15 +5435,7 @@ turtle% % \begin{macro}{\repeatcell} % \begin{macrocode} \newif\ifitf@celltranspose -\def\itf@ampactive{% - \def\tab{&}% - \lccode`\~=38\lowercase{\def~{&}}% -}% \itf@ampactive -\newrobustcmd*\repeatcell{\begingroup - \let\tab\relax - \catcode38\active - \itf@repeatcell -}% \repeatcell +\newrobustcmd*\repeatcell{\begingroup \iffalse{\fi \ifnum0=`}\fi \itf@repeatcell} \newrobustcmd*\itf@repeatcell[3][]{% \ifblank{#1}% alignment option ? {\let\itf@makecell\@firstofone} @@ -5032,7 +5446,7 @@ turtle% \toksdef\itf@cell=1% local \itf@pgfkeys \pgfqkeys{/itf/makecell/repeatcell}{@reset={#2},#3}% - \toks@{}% local + \toks@{\ifnum0=`{\fi \iffalse}\fi \endgroup}% local \ifnum\itf@row>\z@ % number \edef\itf@rowloop{\noexpand\@whilenum\itf@row<\the\itf@row}% \def\itf@cell@init{\def\r{\row}\let\R\@empty}% @@ -5064,7 +5478,7 @@ turtle% {\pgfkeysgetvalue{/itf/makecell/repeatcell/cr/row\the\itf@col}\itf@thecr} {\pgfkeysgetvalue{/itf/makecell/repeatcell/cr}\itf@thecr}% \toks@\expandafter\expandafter\expandafter{% - \expandafter\the\expandafter\toks@\itf@thecr}% + \expandafter\the\expandafter\toks@ \itf@thecr}% \fi \advance\itf@col\@ne \itf@row\z@ @@ -5075,9 +5489,9 @@ turtle% \fi \toks@\expandafter\expandafter\expandafter{% \expandafter\the\expandafter\toks@ - \itf@cell@init\itf@ampactive}% - \itf@cell@insert}% - }% + \itf@cell@init}% + \itf@cell@insert}% rows loop + }% cols loop \else \itf@row\z@ \itf@rowloop\do{% @@ -5086,7 +5500,7 @@ turtle% {\pgfkeysgetvalue{/itf/makecell/repeatcell/cr/row\the\itf@row}\itf@thecr} {\pgfkeysgetvalue{/itf/makecell/repeatcell/cr}\itf@thecr}% \toks@\expandafter\expandafter\expandafter{% - \expandafter\the\expandafter\toks@\itf@thecr}% + \expandafter\the\expandafter\toks@ \itf@thecr}% \fi \advance\itf@row\@ne \itf@col\z@ @@ -5097,14 +5511,13 @@ turtle% \fi \toks@\expandafter\expandafter\expandafter{% \expandafter\the\expandafter\toks@ - \itf@cell@init\itf@ampactive}% - \itf@cell@insert}% - }% + \itf@cell@init}% + \itf@cell@insert}% cols loop + }% rows loop \fi \itf@message{Code introduced by repeatcell in the \@currenvir:^^J \the\toks@}% (to see the code...) - \expandafter\endgroup\the\toks@ - \ignorespaces + \the\toks@ \ignorespaces }% \itf@repeatcell % \end{macrocode} % \end{macro} @@ -5437,12 +5850,14 @@ turtle% \newrobustcmd\trunctext[3][\TruncateMarker]{% do nothing if width of #3 is less than #2 \begingroup \hbadness\maxdimen\hfuzz\vsize - \setbox\z@=\hbox to\dimexpr#2\relax{\ignorespaces#3\unskip}% - \ifnum\badness>\@M - \def\next{\truncate[{#1}]{#2}{#3}}% - \else \def\next{#3}% + \setbox\z@=\hbox to\dimexpr#2\relax\bgroup\color@begingroup + \ignorespaces#3\unskip + \color@endgroup\egroup + \ifnum\badness>\@M \truncate[{#1}]{#2}{#3}% +%% \def\next{\truncate[{#1}]{#2}{#3}}% + \else #3%\def\next{#3}% \fi - \expandafter\endgroup\next + \endgroup }% \trunctext % \end{macrocode} % \end{macro} @@ -5462,7 +5877,9 @@ turtle% {% \@for\x:=#3\do{% \advance \count@ \@ne - \setbox\z@=\hbox{\ignorespaces\x\unskip}% + \setbox\z@\hbox\bgroup\color@begingroup + \ignorespaces\x\unskip + \color@endgroup\egroup \dimen\count@ = \wd\z@ \toks\count@\expandafter{\the\dimen\count@}% \advance\dimen@ \dimen\count@}% @@ -5481,18 +5898,22 @@ turtle% \itf@freespace\z@ % free space left when w_i < x_i/sum(x_i) * total \@for\x:=#3\do{% \advance \count@ \@ne - \ifdim \dimen\count@<\z@ % not measured before - \setbox\z@=\hbox{\ignorespaces\x\unskip}% - \dimen\count@ = \wd\z@ - \fi - \itf@tempdim = \itf@scaledimen{#1}*\the\toks\count@/\dimen@\relax - \ifdim \dimen\count@ > \itf@tempdim - \dimen\count@ = \itf@tempdim - \edef\itf@istruncated{\itf@istruncated,\the\count@}% - \advance\itf@sum by\the\toks\count@ - \else - \advance\itf@freespace \itf@tempdim - \advance\itf@freespace -\dimen\count@ + \ifdim\dimen@=\z@ \else + \ifdim \dimen\count@<\z@ % not measured before + \setbox\z@\hbox\bgroup\color@begingroup + \ignorespaces\x\unskip + \color@endgroup\egroup + \dimen\count@ = \wd\z@ + \fi + \itf@tempdim = \itf@scaledimen{#1}*\the\toks\count@/\dimen@\relax + \ifdim \dimen\count@ > \itf@tempdim + \dimen\count@ = \itf@tempdim + \edef\itf@istruncated{\itf@istruncated,\the\count@}% + \advance\itf@sum by\the\toks\count@ + \else + \advance\itf@freespace \itf@tempdim + \advance\itf@freespace -\dimen\count@ + \fi \fi \edef\itf@trunc@width{\itf@trunc@width\the\count@{\the@dimen\the\count@}}% }% @@ -5583,14 +6004,13 @@ turtle% \else \@dotoc@pptrue\fi,% intoc/title/.default=\pgfkeysvalueof{/itf/appendix/appendices/title},% section/.is enum={section,chapter},% - section/.append code={% - \ifcase\pgfkeysvalueof{/itf/appendix/appendices/section/.number}\relax - \@chapter@ppfalse\or\@chapter@pptrue\fi - \if@chapter@pp\ifundef\chapter{% - \PackageError{interfaces-appendix} + section/.append code={\@chapter@ppfalse + \ifnum\pgfkeysvalueof{/itf/appendix/appendices/section/.number}=\z@ + \else \ifundef\chapter + {\PackageWarning{interfaces-appendix} {You asked chapter-style appendices but your - \MessageBreak current class does not provide chapters!}\@eha - \pgfkeysalso{/itf/appendix/appendices/section}}{}% + \MessageBreak current class does not provide chapters!}} + \@chapter@pptrue \fi},% chapter/.style={section=chapter},% chapter/.value forbidden,% @@ -5769,7 +6189,7 @@ turtle% % \begin{macrocode} %<*pgfkeys> \ProvidesPackage{interfaces-pgfkeys} - [2010/11/21 v2.3 pgfkeys handlers definitions (FC)] + [2010/11/26 v2.4 pgfkeys handlers definitions (FC)] \RequirePackage{interfaces-base} \ifdefined\pgfkeys@ifexecutehandler % pgf version 2.1 \def\itf@pgfkeys{% @@ -5785,21 +6205,17 @@ turtle% \global\let\pgfkeys@exp@call \itf@pgfkeys@exp@call }% \itf@pgfkeys \fi -\AtBeginDocument{% - \itf@pgfkeys - \let\itf@pgfkeys\relax -}% AtBeginDocument +\AtBeginDocument{\itf@pgfkeys \let\itf@pgfkeys \relax} % \end{macrocode} % % \paragraph{Some new pgfkeys macros} % % \begin{macro}{\pgfkeysmeaning} % \begin{macrocode} -\providecommand*\pgfkeysmeaning[1]{% - \pgfkeysifdefined{#1} - {\expandafter\meaning\csname pgfk@#1\endcsname} - {\meaning\@undefined}% -}% +\providecommand*\pgfkeysmeaning[1]{\pgfkeysifdefined{#1} + {\expandafter\meaning\csname pgfk@#1\endcsname} + {\meaning\@undefined}% +}% \pgfkeysmeaning % \end{macrocode} % \end{macro} % @@ -5858,9 +6274,9 @@ turtle% % \end{macro} % % \begin{macro}{\pgfkeys@exp@call} -% +% % Missed the braces around the argument (in case the argument contains a comma or an $=$ sign...): -% +% % \begin{macrocode} %% missed a pair of braces around the argument in pgfkeys.code.tex (pgf v2.0) %% ( the code could break if it contains = or , ) @@ -6143,7 +6559,7 @@ turtle% \pgfkeysedef\pgfkeyscurrentpath{% \futurelet\noexpand\@let@token\itf@pgfk@color ##1\noexpand\pgfkeysnovalue\noexpand\@nil - \cslet{#1}\pgfkeyscurrentvalue}% + \cslet{#1}\noexpand\pgfkeyscurrentvalue}% }% /.store as color in cs % \end{macrocode} % @@ -6700,21 +7116,21 @@ turtle% % \begin{macro}{\gremovefromstart} % \begin{macro}{\xremovefromstart} % \begin{macrocode} -\newrobustcmd*\removefromstart[2]{\in@false - \def\itf@tp##1\itf@tp{% +\newrobustcmd\removefromstart[2]{\in@false + \long\def\itf@tp##1\itf@tp{% \in@true \edef#1{\unexpanded{##1}}% }\expandafter\itf@removefromstart\expandafter{#1}{#2}% }% \removefromstart -\providerobustcmd*\eremovefromstart[2]{\begingroup +\providerobustcmd\eremovefromstart[2]{\begingroup \edef\x{\endgroup\removefromstart\noexpand#1{#2}% }\x }% \eremovefromstart -\providerobustcmd*\gremovefromstart[2]{% +\providerobustcmd\gremovefromstart[2]{% \removefromstart{#1}{#2}% \global\let#1=#1% }% \gremovefromstart -\providerobustcmd*\xremovefromstart[2]{% +\providerobustcmd\xremovefromstart[2]{% \eremovefromstart{#1}{#2}% \global\let#1=#1% }% \xremovefromstart @@ -6726,9 +7142,9 @@ turtle% % % \begin{macro}{\itf@removefromstart} % \begin{macrocode} -\def\itf@removefromstart#1#2{% removes #2 (code) from #1 (hook) - \def\in@@##1#2##2\in@@{##1\in@\itf@tp##2\in@@@}% - \def\in@@@##1\in@@@##2\in@@@{% +\long\def\itf@removefromstart#1#2{% removes #2 (code) from #1 (hook) + \long\def\in@@##1#2##2\in@@{##1\in@\itf@tp##2\in@@@}% + \long\def\in@@@##1\in@@@##2\in@@@{% \ifx\in@##1\fi }\expandafter\in@@@\in@@#1\itf@tp\in@@@#2\in@@ }% \itf@removefromstart @@ -6739,14 +7155,38 @@ turtle% %</etoolbox> % \end{macrocode} % -% \clearpage +% \clearpage\restoregeometry +% \pagesetup*{ +% left/offset-=1.5cm, +% right/offset+=.5cm, +% head/right=\leftmark, +% head/right/font=\small\bfseries\sffamily\pkgcolor +% } % % \begin{History} % % \sectionformat\subsection[hang]{format=\large\bfseries} % +% \begin{Version}{2010/11/26 v2.4} +% \item \thispackage[interfaces-fancyhdr] : complete key set for header, footer and offset settings \\ +% Now keys like \textt{foot/inner} or \textt{head/outer/offset} are available (ouf!). +% \item \thispackage[interfaces-hypbmsec] has been completely rewritten and is now independant of \xpackage{titlesec} +% and \xpackage{interfaces-titlesec}. \cs{lastsectiontitle} \etc are defined by the mean of +% \cs{GetTitleString} (from H.O. eponym package). \\ +% \thispackage[interfaces-hypbmsec] now provides \cs{lastsectionanchor} when used with \xpackage{hyperref}. +% \item \thispackage[interfaces-marks] revisited: expandable macros \cs{thefirstmarks}, \cs{thebotmarks} and \cs{thetopmarks} +% are now expandable in exactly one step of expansion. \\ +% \cs{marksthe} and \cs{marksthecs} does not use \cs{unexpanded} (better for the \xext{log} file to see the marks). \\ +% Optimization for \cs{getthemarks} with incidence on \csref{ifmarksequal}. +% \item \csref{repeatcell}: modification of the code. \& alignment tab character is not activated +% and the ``dirty trick'' (according to D.~Knuth) \textt{\cs{iffalse}\{\cs{fi} \cs{ifnum}0=`\}\cs{fi}} is used instead. +% \item \csref{htruncadjust} produced an error when used with empty text arguments -- fixed. +% \item Modification in \cs{bottomtitles}: \cs{bottomtitlespace} should be stored as a dimen, not a skip. +% \item \csref{removefromstart} is now a \cs{long} macro. +% \end{Version} +% % \begin{Version}{2010/11/21 v2.3} -% \item \thispackage[interfaces-fancyhdr] : new keys and new aliases for header, footer and offset settings +% \item \thispackage[interfaces-fancyhdr] : new keys and new aliases for header, footer and offset settings. % \end{Version} % % \begin{Version}{2010/11/16 v2.2} @@ -6827,14 +7267,6 @@ turtle% % % \end{appendices} % -% \clearpage\restoregeometry -% \pagesetup*{ -% left/offset-=1.5cm, -% right/offset+=.5cm, -% head/right=\leftmark, -% head/right/font=\small\bfseries\sffamily\pkgcolor -% } -% % \PrintIndex % % \Finale diff --git a/Master/texmf-dist/source/latex/interfaces/interfaces.ins b/Master/texmf-dist/source/latex/interfaces/interfaces.ins index e7b260fef27..b745a547e1e 100644 --- a/Master/texmf-dist/source/latex/interfaces/interfaces.ins +++ b/Master/texmf-dist/source/latex/interfaces/interfaces.ins @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% interfaces : 2010/11/21 v2.3 - interfaces : interfaces with keys for other packages (FC) +%% interfaces : 2010/11/26 v2.4 - 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 @@ -46,7 +46,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: 2010/11/21 v2.3 - interfaces: interfaces with keys for other packages (FC)} +\Msg{* Package: 2010/11/26 v2.4 - interfaces: interfaces with keys for other packages (FC)} \Msg{************************************************************************} \keepsilent @@ -57,7 +57,7 @@ This is a generated file. -interfaces : 2010/11/21 v2.3 - interfaces : interfaces with keys for other packages (FC) +interfaces : 2010/11/26 v2.4 - 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 |