diff options
author | Karl Berry <karl@freefriends.org> | 2019-11-24 21:23:07 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-11-24 21:23:07 +0000 |
commit | 86d1fcf155b86d95f64cb13634a6ecb6b3cabed2 (patch) | |
tree | 546bd4260076765583d55b8f90067ef94153d89f /Master/texmf-dist/tex/latex/caption/caption3.sty | |
parent | 38b88fb70bbb7d0d278d6bc2bbee04a191bd7a61 (diff) |
caption (24nov19)
git-svn-id: svn://tug.org/texlive/trunk@52905 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/caption/caption3.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/caption/caption3.sty | 423 |
1 files changed, 109 insertions, 314 deletions
diff --git a/Master/texmf-dist/tex/latex/caption/caption3.sty b/Master/texmf-dist/tex/latex/caption/caption3.sty index dc0897cf9f0..fe0a5625e34 100644 --- a/Master/texmf-dist/tex/latex/caption/caption3.sty +++ b/Master/texmf-dist/tex/latex/caption/caption3.sty @@ -37,7 +37,7 @@ %% caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption3}[2019/09/01 v1.8d caption3 kernel (AR)] +\ProvidesPackage{caption3}[2019/09/09 v1.8e caption3 kernel (AR)] \providecommand\caption@FixArabTeX{% \def\caption@tempa##1{}% \ifx\caption@tempa\@gobble @@ -84,6 +84,14 @@ \else \expandafter\expandafter\expandafter\@secondoftwo \fi\fi} +\newcommand*\caption@ifdefined[1]{% + \ifx#1\@undefined + \expandafter\@secondoftwo + \else\ifx#1\relax + \expandafter\expandafter\expandafter\@secondoftwo + \else + \expandafter\expandafter\expandafter\@firstoftwo + \fi\fi} \newcommand*\caption@ifinlist{% \@expandtwoargs\caption@@ifinlist} \newcommand*\caption@@ifinlist[2]{% @@ -165,27 +173,6 @@ \expandafter\caption@tempb\expandafter{\caption@tempa}} \DeclareRobustCommand*\caption@gobble{% \caption@withoptargs\@gobbletwo} -\newcommand\caption@DoCheckCommand[2]{% - \begingroup - \let\caption@tempa#1% - #2% - \ifx\caption@tempa#1% - \endgroup - \let\caption@CheckCommand\@gobbletwo - \else - \endgroup - \fi} -\@onlypreamble\caption@DoCheckCommand -\let\caption@CheckCommand\caption@DoCheckCommand -\@onlypreamble\caption@CheckCommand -\newcommand*\caption@IfCheckCommand{% - \ifx\caption@CheckCommand\@gobbletwo - \let\caption@CheckCommand\caption@DoCheckCommand - \expandafter\@firstoftwo - \else - \expandafter\@secondoftwo - \fi} -\@onlypreamble\caption@IfCheckCommand \let\caption@begindocumenthook\@empty \let\caption@@begindocumenthook\@empty \def\caption@AtBeginDocument{% @@ -523,25 +510,6 @@ \setlength\caption@hangindent{#1}} \DeclareCaptionOption{parskip}{% \l@addto@macro\caption@@par{\setlength\parskip{#1}}} -\providecommand*\caption@ifkomaclass{% - \caption@ifundefined\scr@caption\@gobble\@firstofone} -\@onlypreamble\caption@ifkomaclass -\caption@ifkomaclass{% - \let\caption@KV@parindent\KV@caption@parindent - \DeclareCaptionOption{parindent}[]{% - \ifx,#1,% - \caption@Debug{Option `parindent' ignored}% - \else - \caption@KV@parindent{#1}% - \fi}% - \let\caption@KV@parskip\KV@caption@parskip - \DeclareCaptionOption{parskip}[]{% - \ifx,#1,% - \caption@Debug{Option `parskip' ignored}% - \else - \caption@KV@parskip{#1}% - \fi}% -} \newcommand*\DeclareCaptionStyle[1]{% \@testopt{\caption@declarestyle{#1}}{}} \@onlypreamble\DeclareCaptionStyle @@ -858,8 +826,8 @@ \DeclareCaptionFont{larger}{\caption@larger} \DeclareCaptionFont{sansmath}{\sansmath} \DeclareCaptionFont{singlespacing}{% - \caption@ifundefined\setspace@singlespace{}{% - \setstretch\setspace@singlespace}}% normally 1 + \caption@ifdefined\setspace@singlespace{% + \setstretch\setspace@singlespace}{}}% normally 1 \DeclareCaptionFont{onehalfspacing}{\onehalfspacing} \DeclareCaptionFont{doublespacing}{\doublespacing} \DeclareCaptionFont{stretch}{\setstretch{#1}} @@ -1048,26 +1016,37 @@ {\let\caption@Debug\@gobble}} \DeclareOption{debug}{\setkeys{caption}{debug}} \setkeys{caption}{debug=0} -\caption@CheckCommand\@makecaption{% - % article|report|book [2005/09/16 v1.4f Standard LaTeX document class] - \long\def\@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{#1: #2}% - \ifdim \wd\@tempboxa >\hsize - #1: #2\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip}} -\providecommand*\caption@ifelsarticleclass{% - \@ifclassloaded{elsarticle}\@firstofone\@gobble} -\@onlypreamble\caption@ifelsarticleclass -\caption@ifelsarticleclass{% - \caption@CheckCommand\@makecaption{% - % elsarticle.cls,v 1.20 2008-10-13 04:24:12 cvr Exp - \long\def\@makecaption#1#2{% - \vskip\abovecaptionskip\footnotesize +\caption@setbool{documentclass}{1} +\caption@ifundefined\caption@documentclass{% + \@ifclassloaded{beamer}{% + \caption@InfoNoLine{beamer document class detected}% + \def\caption@documentclass{beamer}% + }{\@ifclassloaded{elsarticle}{% + \caption@InfoNoLine{elsarticle document class detected}% + \def\caption@documentclass{elsarticle}% + }{\@ifclassloaded{memoir}{% + \caption@InfoNoLine{memoir document class detected}% + \def\caption@documentclass{memoir}% + }{\caption@ifdefined\scr@caption{% + \caption@InfoNoLine{KOMA-Script document class detected}% + \def\caption@documentclass{koma}% + }{\caption@ifdefined\@captionheadfont{% + \caption@InfoNoLine{AMS or SMF document class detected}% + \def\caption@documentclass{ams}% + }{\caption@ifdefined\CaptionFonts{% + \caption@InfoNoLine{NTG document class detected}% + \def\caption@documentclass{ntg}% + }{\caption@ifdefined\cph@font{% + \caption@ifdefined\cpb@font\@firstoftwo\@secondoftwo + }{% + \@secondoftwo + }{% + \caption@InfoNoLine{thesis document class detected}% + \def\caption@documentclass{thesis}% + }{% + % article|report|book [2005/09/16 v1.4f Standard LaTeX document class] + \long\def\caption@tempa#1#2{% + \vskip\abovecaptionskip \sbox\@tempboxa{#1: #2}% \ifdim \wd\@tempboxa >\hsize #1: #2\par @@ -1076,77 +1055,34 @@ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% \fi \vskip\belowcaptionskip}} + \ifx\caption@tempa\@makecaption + \caption@InfoNoLine{Standard document class detected}% + \else + \caption@InfoNoLine{% + Unknown document class (or package),\MessageBreak + standard defaults will be used}% + \caption@InfoNoLine{\string\@makecaption\space=\space\meaning\@makecaption\@gobble}% + \caption@setbool{documentclass}{0}% + \fi + \def\caption@documentclass{base}% + }}}}}}% +}{} +\newcommand*\caption@ifclassloaded[1]{% + \edef\caption@tempa{#1}% + \ifx\caption@tempa\caption@documentclass + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} +\caption@ifclassloaded{elsarticle}{% \DeclareCaptionDefaultFont{font}{\footnotesize} -} -\providecommand*\caption@ifamsclass{% - \caption@ifundefined\@captionheadfont\@gobble\@firstofone} -\@onlypreamble\caption@ifamsclass -\caption@ifamsclass{% - \caption@CheckCommand\@makecaption{% - % amsart|amsproc|amsbook [2004/08/06 v2.20] - \long\def\@makecaption#1#2{% - \setbox\@tempboxa\vbox{\color@setgroup - \advance\hsize-2\captionindent\noindent - \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp - {\@cdr#2\@nil}{.\@captionfont\upshape\enspace#2}% - \unskip\kern-2\captionindent\par - \global\setbox\@ne\lastbox\color@endgroup}% - \ifhbox\@ne % the normal case - \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}% - \fi - \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line - \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}% - \else % tempboxa contained more than one line - \setbox\@ne\vbox{\unvbox\@tempboxa\parskip\z@skip - \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}% - \fi - \ifnum\@tempcnta<64 % if the float IS a figure... - \addvspace\abovecaptionskip - \hbox to\hsize{\kern\captionindent\box\@ne\hss}% - \else % if the float IS NOT a figure... - \hbox to\hsize{\kern\captionindent\box\@ne\hss}% - \nobreak - \vskip\belowcaptionskip - \fi - \relax - }} - \caption@CheckCommand\@makecaption{% - % smfart|smfbook [1999/11/15 v1.2f Classe LaTeX pour les articles publies par la SMF] - \long\def\@makecaption#1#2{% - \ifdim\captionindent>.1\hsize \captionindent.1\hsize \fi - \setbox\@tempboxa\vbox{\color@setgroup - \advance\hsize-2\captionindent\noindent - \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp - {\@cdr#2\@nil}{\@addpunct{.}\@captionfont\upshape\enspace#2}% - \unskip\kern-2\captionindent\par - \global\setbox\@ne\lastbox\color@endgroup}% - \ifhbox\@ne % the normal case - \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}% - \fi - \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line - \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}% - \@tempdima\wd\@ne\advance\@tempdima-\captionindent - \wd\@ne\@tempdima - \else % tempboxa contained more than one line - \setbox\@ne\vbox{\rightskip=0pt plus\captionindent\relax - \unvbox\@tempboxa\parskip\z@skip - \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}% - \fi - \ifnum\@tempcnta<64 % if the float IS a figure... - \addvspace\abovecaptionskip - \noindent\kern\captionindent\box\@ne - \else % if the float IS NOT a figure... - \noindent\kern\captionindent\box\@ne - \nobreak - \vskip\belowcaptionskip - \fi - \relax - }} +}{} +\caption@ifclassloaded{ams}{% \let\captionmargin\captionindent % set to 3pc by AMS class \begingroup\edef\@tempa{\endgroup \noexpand\caption@g@addto@list\noexpand\caption@sty@default {margin=\the\captionmargin - \caption@ifundefined\smf@makecaption{}{,maxmargin=.1\linewidth}}} + \caption@ifdefined\smf@makecaption{,maxmargin=.1\linewidth}{}}} \@tempa \caption@g@addto@list\caption@sls@default{margin*=.5\captionmargin} \DeclareCaptionLabelSeparator{default}{.\enspace} @@ -1155,26 +1091,8 @@ \DeclareCaptionDefaultFont{textfont}{\@captionfont\upshape} \captionsetup[figure]{position=b} \captionsetup[table]{position=t} -} -\providecommand*\caption@ifbeamerclass{% - \@ifclassloaded{beamer}\@firstofone\@gobble} -\@onlypreamble\caption@ifbeamerclass -\caption@ifbeamerclass{% - \caption@CheckCommand\beamer@makecaption{% - % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau - \long\def\beamer@makecaption#1#2{% - \def\insertcaptionname{\csname#1name\endcsname}% - \def\insertcaptionnumber{\csname the#1\endcsname}% - \def\insertcaption{#2}% - \nobreak\vskip\abovecaptionskip\nobreak - \sbox\@tempboxa{\usebeamertemplate**{caption}}% - \ifdim \wd\@tempboxa >\hsize - \usebeamertemplate**{caption}\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \nobreak\vskip\belowcaptionskip\nobreak}} +}{} +\caption@ifclassloaded{beamer}{% \newcommand*\caption@ifbeamertemplate[1]{% \begingroup \let\beamer@@tmpl@caption@ORI\beamer@@tmpl@caption @@ -1225,25 +1143,8 @@ % \usebeamertemplate**{caption} will set font \DeclareCaptionDefaultFont{font}{}% \setbeamertemplate{caption}[caption3]} -} -\providecommand*\caption@ifkomaclass{% - \caption@ifundefined\scr@caption\@gobble\@firstofone} -\@onlypreamble\caption@ifkomaclass -\caption@ifkomaclass{% - \caption@CheckCommand\@makecaption{% - % scrartcl|scrreprt|scrbook [2007/03/07 v2.97a KOMA-Script document class] - \long\def\@makecaption#1#2{% - \if@captionabove - \vskip\belowcaptionskip - \else - \vskip\abovecaptionskip - \fi - \@@makecaption\@firstofone{#1}{#2}% - \if@captionabove - \vskip\abovecaptionskip - \else - \vskip\belowcaptionskip - \fi}} +}{} +\caption@ifclassloaded{koma}{% \DeclareCaptionFormat{default}[#1#2#3\par]{% \ifdofullc@p \caption@ifin@list\caption@lsepcrlist\caption@lsepname @@ -1264,90 +1165,41 @@ \DeclareCaptionLabelSeparator{default}{\captionformat} \DeclareCaptionDefaultFont{font}{\scr@fnt@caption} \DeclareCaptionDefaultFont{labelfont}{\scr@fnt@captionlabel} -} -\providecommand*\caption@ifntgclass{% - \caption@ifundefined\CaptionFonts\@gobble\@firstofone} -\@onlypreamble\caption@ifntgclass -\caption@ifntgclass{% - \caption@CheckCommand\@makecaption{% - % artikel|rapport|boek [2004/06/07 v2.1a NTG LaTeX document class] - \long\def\@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{{\CaptionLabelFont#1:} \CaptionTextFont#2}% - \ifdim \wd\@tempboxa >\hsize - {\CaptionLabelFont#1:} \CaptionTextFont#2\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip}} + \let\caption@KV@parindent\KV@caption@parindent + \DeclareCaptionOption{parindent}[]{% + \ifx,#1,% + \caption@Debug{Option `parindent' ignored}% + \else + \caption@KV@parindent{#1}% + \fi}% + \let\caption@KV@parskip\KV@caption@parskip + \DeclareCaptionOption{parskip}[]{% + \ifx,#1,% + \caption@Debug{Option `parskip' ignored}% + \else + \caption@KV@parskip{#1}% + \fi}% +}{} +\caption@ifclassloaded{ntg}{% \DeclareCaptionDefaultFont{labelfont}{\CaptionLabelFont} \DeclareCaptionDefaultFont{textfont}{\CaptionTextFont} -} -\providecommand*\caption@ifthesisclass{% - \caption@ifundefined\cph@font - {\@gobble}% - {\caption@ifundefined\cpb@font\@gobble\@firstofone}} -\caption@ifthesisclass{% - \caption@CheckCommand\@makecaption{% - % thesis.cls 1996/25/01 1.0g LaTeX document class (wm). - \long\def\@makecaption#1#2{% - \vskip\abovecaptionskip - \setbox\@tempboxa\hbox{{\cph@font #1:} {\cpb@font #2}}% - \ifdim \wd\@tempboxa >\hsize - \@hangfrom{\cph@font #1: }{\cpb@font #2\par}% - \else - \hbox to\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip}} +}{} +\caption@ifclassloaded{thesis}{% \DeclareCaptionDefaultFormat{hang} \DeclareCaptionDefaultFont{labelfont}{\cph@font} \DeclareCaptionDefaultFont{textfont}{\cpb@font} -} -\caption@ifundefined\ArabiCoreLoaded{% - \let\caption@rl\@firstofone -}{% +}{} +\caption@ifdefined\ArabiCoreLoaded{% \newcommand\caption@rl[1]{\if@rl\textRL{#1}\else\textLR{#1}\fi} \def\fnum@figure{\figurename\nobreakspace\thefigure}% \def\fnum@table{\tablename\nobreakspace\thetable}% \DeclareCaptionLabelSeparator{arabi}{ : } \DeclareCaptionLabelSeparator{default}{% \if@rl\caption@lsep@arabi\else\caption@lsep@colon\fi} - \caption@CheckCommand\@makecaption{% - % arabicore.sty [2006/01/01 v1.0 Arabi Core switching commands (may still change)] - \long\def\@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{#1: #2}% - \sbox\@Arabitempboxa{\textRL{#2} : #1}% - \if@rl{ - \ifdim \wd\@Arabitempboxa >\hsize - \textRL{#2} : #1\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@Arabitempboxa\hfil}% - \fi}\else{ - \ifdim \wd\@tempboxa >\hsize - #1: #2\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi}\fi - \vskip\belowcaptionskip}} +}{% + \let\caption@rl\@firstofone } -\caption@ifundefined\FB@makecaption{}{% - \caption@CheckCommand\@makecaption{% - % frenchb.ldf [2005/02/06 v1.6g French support from the babel system] - % frenchb.ldf [2007/10/05 v2.0e French support from the babel system] - \long\def\@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{#1\CaptionSeparator #2}% - \ifdim \wd\@tempboxa >\hsize - #1\CaptionSeparator #2\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip}} +\caption@ifdefined\FB@makecaption{% \ifx\@makecaption\STD@makecaption \DeclareCaptionLabelSeparator{default}{\CaptionSeparator} \def\caption@frenchb{% supress frenchb warning @@ -1361,60 +1213,12 @@ frenchb will NOT customize it}% \fi \fi -} -\caption@ifundefined\frenchTeXmods{}{% - \caption@CheckCommand\@makecaption{% - % french(le).sty [2006/10/03 The french(le) package /V5,9991/] - % french(le).sty [2007/06/28 The french(le) package /V5,9994/] - \def\@makecaption#1#2{% - \ifFTY% - \def\@secondofmany##1##2\void{##2}% - \def\@tempa{\@secondofmany#2\void}% - \ifx\@tempa\empty% - \let\captionseparator\empty% - \fi% - \@mcORI{#1}{\relax\captionfont{#2}}% - \else - \@mcORI{#1}{#2}% - \fi}}% - \caption@CheckCommand\@makecaption{% - % french(le).sty [2007/02/11 The french(le) package /V5,9993/] - \def\@makecaption#1#2{% - \ifFTY% - \def\@secondofmany##1##2\void{##2}% - \protected@edef\@tempa{\@secondofmany#2\void}% - \ifx\@tempa\empty% - \let\captionseparator\empty% - \fi% - \@mcORI{#1}{\relax\captionfont{#2}}% - \else - \@mcORI{#1}{#2}% - \fi}}% +}{} +\caption@ifdefined\frenchTeXmods{% \DeclareCaptionDefaultFont{textfont}{\itshape}% \DeclareCaptionLabelSeparator{default}{\captionseparator\space}% -} - \caption@CheckCommand\@makecaption{% - % rlbabel.def [2005/03/30 v2.3h Right-to-Left support from the babel system Hebrew language support from the babel system] - \long\def\@makecaption#1#2{% - \vskip\abovecaptionskip% - \begin{center}% - #1: #2% - \end{center} \par% - \vskip\belowcaptionskip}}% +}{} \DeclareCaptionListFormat{subperiod}{#2.} -\caption@ifundefined\hunnewlabel{}{% - \caption@CheckCommand\@makecaption{% - % magyar.ldf [2005/03/30 v1.4j Magyar support from the babel system] - \def\@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{#1. #2}% - \ifdim \wd\@tempboxa >\hsize - {#1. #2\csname par\endcsname} - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip}}} \def\caption@tempa#1{% \@ifpackagewith{babel}{#1}{% \caption@InfoNoLine{#1 babel option is loaded}% @@ -1429,15 +1233,6 @@ }{}} \caption@tempa{hungarian} \caption@tempa{magyar} -\caption@IfCheckCommand{% - \caption@setbool{documentclass}{1}% -}{% - \caption@setbool{documentclass}{0}% - \caption@InfoNoLine{% - Unknown document class (or package),\MessageBreak - standard defaults will be used}% - \caption@Debug{\string\@makecaption\space=\space\meaning\@makecaption\@gobble}% -} \captionsetup{style=default,position=default,% list,listformat=default,twoside=\if@twoside 1\else 0\fi} \ProcessOptions* @@ -1445,13 +1240,13 @@ \caption@ifcontentsline{#2}{% \begingroup \let\@tempa\@gobble - \caption@ifundefined\caption@listtype - {\edef\caption@listtype{#1}}% + \caption@ifdefined\caption@listtype {\let\@tempa\@firstofone}% - \caption@ifundefined\caption@listtype@ext - {}% + {\edef\caption@listtype{#1}}% + \caption@ifdefined\caption@listtype@ext {\edef\caption@listtype{\caption@listtype\caption@listtype@ext}% \let\@tempa\@firstofone}% + {}% \@tempa {\caption@Debug{addcontentsline: #1 => \caption@listtype}% \@namedef{the\caption@listtype}{\@nameuse{the#1}}}% @@ -1692,13 +1487,13 @@ \DeclareFloatingEnvironment} \@onlypreamble\DeclareCaptionType \newcommand\caption@ForEachType[1]{% - \caption@ifundefined\ForEachFloatingEnvironment + \caption@ifdefined\ForEachFloatingEnvironment + {\ForEachFloatingEnvironment{#1}}% {\def\@elt##1{#1}% - \caption@ifundefined\c@figure\@gobble\@elt{figure}% - \caption@ifundefined\c@table\@gobble\@elt{table}% + \caption@ifdefined\c@figure\@elt\@gobble{figure}% + \caption@ifdefined\c@table\@elt\@gobble{table}% \let\@elt\relax - \newfloat@addtohook{#1}}% - {\ForEachFloatingEnvironment{#1}}} + \newfloat@addtohook{#1}}} \providecommand\newfloat@addtohook[1]{% \toks@=\expandafter{\newfloat@hook{##1}#1}% \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}% @@ -1721,8 +1516,8 @@ \caption@declaresublistentry{#3}% \@cons\caption@subtypelist{{#3}}}% {\caption@Debug{Modify caption `sub#3'}}% - \caption@ifundefined\contentsuse{}{% - \contentsuse{sub#3}{\csname ext@sub#3\endcsname}}% + \caption@ifdefined\contentsuse{% + \contentsuse{sub#3}{\csname ext@sub#3\endcsname}}{}% \@namedef{sub#3name}{}% \@namedef{sub#3autorefname}{\csname #3autorefname\endcsname}% #1% is \@firstoftwo in star form, and \@secondoftwo otherwise @@ -1734,9 +1529,9 @@ }} \@onlypreamble\caption@@declaresubtype \newcommand*\caption@declaresublistentry{% - \caption@ifundefined\l@chapter - {\caption@@declaresublistentry\l@subsubsection}% - {\caption@@declaresublistentry\l@subsection}} + \caption@ifdefined\l@chapter + {\caption@@declaresublistentry\l@subsection}% + {\caption@@declaresublistentry\l@subsubsection}} \@onlypreamble\caption@declaresublistentry \newcommand*\caption@@declaresublistentry[2]{% \ifx#1\@undefined |