diff options
author | Karl Berry <karl@freefriends.org> | 2018-04-30 22:56:22 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-04-30 22:56:22 +0000 |
commit | d0308f57a6117f6a8de05dccf1605f43579be38f (patch) | |
tree | 0a31a299127ff2c14c6f11085d9f89feb194be85 /Master/texmf-dist/source/latex/cleveref/cleveref.dtx | |
parent | 9cc7e0dfb995e3ef79ac1725801e859f8e1440e7 (diff) |
cleveref (19apr18)
git-svn-id: svn://tug.org/texlive/trunk@47525 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/cleveref/cleveref.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/cleveref/cleveref.dtx | 202 |
1 files changed, 182 insertions, 20 deletions
diff --git a/Master/texmf-dist/source/latex/cleveref/cleveref.dtx b/Master/texmf-dist/source/latex/cleveref/cleveref.dtx index 4321c0e9135..05370a49bb3 100644 --- a/Master/texmf-dist/source/latex/cleveref/cleveref.dtx +++ b/Master/texmf-dist/source/latex/cleveref/cleveref.dtx @@ -1,5 +1,5 @@ -\def\packagedate{2018/03/03} -\def\packageversion{0.21.3} +\def\packagedate{2018/03/27} +\def\packageversion{0.21.4} % \iffalse meta-comment % % Package 'cleveref' to use with LaTeX2e @@ -46,7 +46,7 @@ %</driver> % \fi % -% \CheckSum{19145} +% \CheckSum{19764} %% \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 %% Lower-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 @@ -336,6 +336,11 @@ % example to manual. Modify \textbackslash{}@crefcopyformats so it % copys over format \emph{components}, rather than copying over the % low-level format definitions.} +% \changes{v0.21.4}{2018/03/27}{Make subsubsection/subsubappendix formats +% inherit from subsection/subappendix rather than section/appendix. +% Modify \textbackslash{}@crefcopyformats to copy over low-level +% formats again \emph{if} no components have have been customised. +% Improve explanation of sub-format inheritance in the manual.} % % \GetFileInfo{cleveref.sty} % @@ -1148,11 +1153,21 @@ % |subsection| is by default inherited from that of |section|, and that % of |subsubsection| is inherited from |subsection| (which might itself % have been inherited from |section|). Similarly for |subappendix|, -% |subsubappendix| and |subsubsubappendix|, and also for |enumii|, -% |enumiii|, |enumiv| and |enumv|, which inherit from |enumi|. Finally, -% |subfigure| and |subtable| inherit from |figure| and |table|, +% |subsubappendix| and |subsubsubappendix|. The |enumii|, |enumiii|, +% |enumiv| and |enumv| formats each inherit from the preceding one, with +% |enumii| inheriting from |enumi|. Finally, |subfigure|, |subtable| and +% |subequation| inherit from |figure|, |table| and |equation|, % respectively. % +% If some of the format components for one of these reference types have +% been customised using high-level customisation commands, any remaining +% components are inherited from the parent type, and the +% cross-reference formats are then defined in terms of those components. +% (In this case, if the format for the parent type has been customised +% using low-level commands, this low-level customisation will \emph{not} +% be inherited.) If \emph{none} of the format components have been +% customised, the whole format is always inherited from the parent type. +% % \DescribeMacro\creflabelformat % You may want the label format for a particular cross-reference type to % differ from the global format set by |\crefdefaultlabelformat| (see @@ -1938,13 +1953,14 @@ % Ars\-en\-eau, Eric Ahlberg, Frank Mittlebach, Hendrik Maryns, Iain % Cunningham, Ingolf Becker, James Sharam, Jens Mueller, Joel C.\ % Salomon, Jonas Nyrup, Joris Pinkse, Kristian Debrabant, Leo Shidai Liu, -% Lev Bishop, Mak Trifkovic, Matej Batic, Matt Gately, Matthew Skala, -% Michael Barber, Michael Gorven, Michal Kaut, Mico Loretan, Milania, -% Nicolas Dudebout, Olivier Roy, Patrick H\"acker, Paul Gomme, Ricardo de -% Aldama S\'anchez, Robert Fischer, Sebastian \O{}rsted, Simon Spiegel, -% Stefan Pinnow, Steve Dower, Ted Pavlic, Thomas Arildsen, Tobias Jores, -% Uwe L\"uck and Vadim Makarov for their help. (If I've inadvertently -% missed you out, please let me know!) +% Lev Bishop, Mak Trifkovic, Mark Cipolone, Matej Batic, Matt Gately, +% Matthew Skala, Michael Barber, Michael Gorven, Michal Kaut, Mico +% Loretan, Milania, Nicolas Dudebout, Olivier Roy, Patrick H\"acker, Paul +% Gomme, Ricardo de Aldama S\'anchez, Robert Fischer, Sebastian +% \O{}rsted, Simon Spiegel, Stefan Pinnow, Steve Dower, Ted Pavlic, +% Thomas Arildsen, Tobias Jores, Uwe L\"uck and Vadim Makarov for their +% help. +% (If I've inadvertently missed you out, please let me know!) % % % \StopEventually{\clearpage\PrintChanges\clearpage\PrintIndex} @@ -4857,31 +4873,177 @@ % from those for type |#1|. % \begin{macrocode} \def\@crefcopyformats#1#2{% + \let\@tempf\iffalse% \@ifundefined{cref@#2@name}{% \edef\@tempa{\expandafter\noexpand\csname cref@#2@name\endcsname}% \edef\@tempb{\expandafter\noexpand\csname cref@#1@name\endcsname}% \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb% \edef\@tempa{\expandafter\noexpand\csname cref@#2@name@plural\endcsname}% \edef\@tempb{\expandafter\noexpand\csname cref@#1@name@plural\endcsname}% - \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb% + }{% + \let\@tempf\iftrue% + }% \@ifundefined{Cref@#2@name}{% \edef\@tempa{\expandafter\noexpand\csname Cref@#2@name\endcsname}% \edef\@tempb{\expandafter\noexpand\csname Cref@#1@name\endcsname}% \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb% \edef\@tempa{\expandafter\noexpand\csname Cref@#2@name@plural\endcsname}% \edef\@tempb{\expandafter\noexpand\csname Cref@#1@name@plural\endcsname}% - \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb% + }{% + \let\@tempf\iftrue% + }% \@ifundefined{cref@#2@label}{% \@ifundefined{cref@#1@label}{}{% \edef\@tempa{\expandafter\noexpand\csname cref@#2@label\endcsname}% \edef\@tempb{\expandafter\noexpand\csname cref@#1@label\endcsname}% - \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}}{}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}% + }{% + \let\@tempf\iftrue% + }% \@ifundefined{cref@#2@rangelabel}{% \@ifundefined{cref@#1@rangelabel}{}{% \edef\@tempa{\expandafter\noexpand\csname cref@#2@rangelabel\endcsname}% \edef\@tempb{\expandafter\noexpand\csname cref@#1@rangelabel\endcsname}% - \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}}{}% - \@crefdefineallformats{#2}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}% + }{% + \let\@tempf\iftrue% + }% +% \end{macrocode} +% If at least one format component has been customised specifically for +% reference type |#2|, generate its formats from components. +% \begin{macrocode} + \@tempf\relax% + \@crefdefineallformats{#2}% +% \end{macrocode} +% If no format components have been defined for reference type |#2|, copy +% over the low-level formats from type |#1|. +% \begin{macrocode} + \else% + \@ifundefined{cref@#2@format}{% + \edef\@tempa{\expandafter\noexpand\csname cref@#2@format\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname cref@#1@format\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{crefrange@#2@format}{% + \edef\@tempa{\expandafter\noexpand\csname crefrange@#2@format\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname crefrange@#1@format\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{cref@#2@format@first}{% + \edef\@tempa{\expandafter\noexpand\csname cref@#2@format@first\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname cref@#1@format@first\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{cref@#2@format@second}{% + \edef\@tempa{\expandafter\noexpand\csname cref@#2@format@second\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname cref@#1@format@second\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{cref@#2@format@middle}{% + \edef\@tempa{\expandafter\noexpand\csname cref@#2@format@middle\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname cref@#1@format@middle\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{cref@#2@format@last}{% + \edef\@tempa{\expandafter\noexpand\csname cref@#2@format@last\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname cref@#1@format@last\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{crefrange@#2@format@first}{% + \edef\@tempa{\expandafter\noexpand\csname crefrange@#2@format@first\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname crefrange@#1@format@first\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{crefrange@#2@format@second}{% + \edef\@tempa{\expandafter\noexpand\csname crefrange@#2@format@second\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname crefrange@#1@format@second\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{crefrange@#2@format@middle}{% + \edef\@tempa{\expandafter\noexpand\csname crefrange@#2@format@middle\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname crefrange@#1@format@middle\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{crefrange@#2@format@last}{% + \edef\@tempa{\expandafter\noexpand\csname crefrange@#2@format@last\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname crefrange@#1@format@last\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% +% + \@ifundefined{Cref@#2@format}{% + \edef\@tempa{\expandafter\noexpand\csname Cref@#2@format\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Cref@#1@format\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Crefrange@#2@format}{% + \edef\@tempa{\expandafter\noexpand\csname Crefrange@#2@format\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Crefrange@#1@format\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Cref@#2@format@first}{% + \edef\@tempa{\expandafter\noexpand\csname Cref@#2@format@first\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Cref@#1@format@first\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Cref@#2@format@second}{% + \edef\@tempa{\expandafter\noexpand\csname Cref@#2@format@second\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Cref@#1@format@second\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Cref@#2@format@middle}{% + \edef\@tempa{\expandafter\noexpand\csname Cref@#2@format@middle\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Cref@#1@format@middle\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Cref@#2@format@last}{% + \edef\@tempa{\expandafter\noexpand\csname Cref@#2@format@last\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Cref@#1@format@last\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Crefrange@#2@format@first}{% + \edef\@tempa{\expandafter\noexpand\csname Crefrange@#2@format@first\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Crefrange@#1@format@first\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Crefrange@#2@format@second}{% + \edef\@tempa{\expandafter\noexpand\csname Crefrange@#2@format@second\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Crefrange@#1@format@second\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Crefrange@#2@format@middle}{% + \edef\@tempa{\expandafter\noexpand\csname Crefrange@#2@format@middle\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Crefrange@#1@format@middle\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{Crefrange@#2@format@last}{% + \edef\@tempa{\expandafter\noexpand\csname Crefrange@#2@format@last\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname Crefrange@#1@format@last\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% +% + \@ifundefined{labelcref@#2@format}{% + \edef\@tempa{\expandafter\noexpand\csname labelcref@#2@format\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcref@#1@format\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcrefrange@#2@format}{% + \edef\@tempa{\expandafter\noexpand\csname labelcrefrange@#2@format\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcrefrange@#1@format\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcref@#2@format@first}{% + \edef\@tempa{\expandafter\noexpand\csname labelcref@#2@format@first\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcref@#1@format@first\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcref@#2@format@second}{% + \edef\@tempa{\expandafter\noexpand\csname labelcref@#2@format@second\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcref@#1@format@second\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcref@#2@format@middle}{% + \edef\@tempa{\expandafter\noexpand\csname labelcref@#2@format@middle\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcref@#1@format@middle\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcref@#2@format@last}{% + \edef\@tempa{\expandafter\noexpand\csname labelcref@#2@format@last\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcref@#1@format@last\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcrefrange@#2@format@first}{% + \edef\@tempa{\expandafter\noexpand\csname labelcrefrange@#2@format@first\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcrefrange@#1@format@first\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcrefrange@#2@format@second}{% + \edef\@tempa{\expandafter\noexpand\csname labelcrefrange@#2@format@second\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcrefrange@#1@format@second\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcrefrange@#2@format@middle}{% + \edef\@tempa{\expandafter\noexpand\csname labelcrefrange@#2@format@middle\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcrefrange@#1@format@middle\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \@ifundefined{labelcrefrange@#2@format@last}{% + \edef\@tempa{\expandafter\noexpand\csname labelcrefrange@#2@format@last\endcsname}% + \edef\@tempb{\expandafter\noexpand\csname labelcrefrange@#1@format@last\endcsname}% + \expandafter\expandafter\expandafter\let\expandafter\@tempa\@tempb}{}% + \fi% } % \end{macrocode} % \end{macro} @@ -13189,9 +13351,9 @@ % appendices, subfigures, subtables, subequations and enums. % \begin{macrocode} \@crefcopyformats{section}{subsection}% - \@crefcopyformats{section}{subsubsection}% + \@crefcopyformats{subsection}{subsubsection}% \@crefcopyformats{appendix}{subappendix}% - \@crefcopyformats{appendix}{subsubappendix}% + \@crefcopyformats{subappendix}{subsubappendix}% \@crefcopyformats{figure}{subfigure}% \@crefcopyformats{table}{subtable}% \@crefcopyformats{equation}{subequation}% |