summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/caption/caption.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/caption/caption.sty')
-rw-r--r--Master/texmf-dist/tex/latex/caption/caption.sty377
1 files changed, 126 insertions, 251 deletions
diff --git a/Master/texmf-dist/tex/latex/caption/caption.sty b/Master/texmf-dist/tex/latex/caption/caption.sty
index 001e324884f..68fa82690cb 100644
--- a/Master/texmf-dist/tex/latex/caption/caption.sty
+++ b/Master/texmf-dist/tex/latex/caption/caption.sty
@@ -25,17 +25,21 @@
%% This Current Maintainer of this work is Axel Sommerfeldt.
%%
%% This work consists of the files
-%% caption.ins, caption.dtx, caption2.dtx, caption3.dtx,
-%% bicaption.dtx, ltcaption.dtx, subcaption.dtx, totalcount.dtx,
+%% caption.ins, caption.dtx, caption-light.dtx, caption2.dtx, caption3.dtx,
+%% caption-ams-smf.dtx, caption-beamer.dtx, caption-elsarticle.dtx,
+%% caption-koma.dtx, caption-memoir.dtx, caption-ntg.dtx,
+%% caption-thesis.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx,
%% the derived files
-%% caption.sty, caption2.sty, caption3.sty,
-%% bicaption.sty, ltcaption.sty, subcaption.sty, totalcount.sty,
+%% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
+%% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
+%% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
+%% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
%% and the user manuals
%% caption-deu.tex, caption-eng.tex, caption-rus.tex.
%%
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{caption}[2020/05/30 v3.4k Customizing captions (AR)]
-\RequirePackage{caption3}[2020/05/10] % needs v1.10 or newer
+\ProvidesPackage{caption}[2020/08/30 v3.5 Customizing captions (AR)]
+\RequirePackage{caption3}[2020/08/23] % needs v2.0 or newer
\caption@ifbool{documentclass}{}{%
\caption@WarningNoLine{%
Unknown document class (or package),\MessageBreak
@@ -170,98 +174,9 @@
\DeclareCaptionOption{hypcap}[1]{\caption@setbool{hypcap}{#1}}
\DeclareCaptionOption{hypcapspace}{\def\caption@hypcapspace{#1}}
\captionsetup{hypcap=1,hypcapspace=.5\baselineskip}
-\caption@ifclassloaded{ams}{%
- \caption@InfoNoLine{AMS or SMF document class}%
- \setlength\belowcaptionskip{0pt}% set to 12pt by AMS class
-}{}
-\caption@ifclassloaded{koma}{%
- \caption@InfoNoLine{KOMA-Script document class}%
- \g@addto@macro\@tablecaptionabovetrue{\captionsetup*[table]{position=t}}
- \g@addto@macro\@tablecaptionabovefalse{\captionsetup*[table]{position=b}}
- \if@tablecaptionabove
- \@tablecaptionabovetrue
- \else
- \@tablecaptionabovefalse
- \fi
- \caption@ifdefined\@figurecaptionabovetrue{%
- \g@addto@macro\@figurecaptionabovetrue{\captionsetup*[figure]{position=t}}
- \g@addto@macro\@figurecaptionabovefalse{\captionsetup*[figure]{position=b}}
- \if@figurecaptionabove
- \@figurecaptionabovetrue
- \else
- \@figurecaptionabovefalse
- \fi
- }{}%
- \g@addto@macro\onelinecaptionstrue{\let\caption@ifslc\@firstoftwo}
- \g@addto@macro\onelinecaptionsfalse{\let\caption@ifslc\@secondoftwo}
- \ifonelinecaptions
- \onelinecaptionstrue
- \else
- \onelinecaptionsfalse
- \fi
- \g@addto@macro\@captionabovetrue{\let\caption@position\@firstoftwo}
- \g@addto@macro\@captionabovefalse{\let\caption@position\@secondoftwo}
- \DeclareCaptionOption{figureposition}{%
- \caption@WarningNoLine{Option `figureposition=#1' has no effect\MessageBreak
- when used with a KOMA script document class}%
- \captionsetup*[figure]{position=#1}}
- \DeclareCaptionOption{tableposition}{%
- \caption@WarningNoLine{Option `tableposition=#1' has no effect\MessageBreak
- when used with a KOMA script document class}%
- \captionsetup*[table]{position=#1}}
- \let\caption@KOMA@setcapindent\@setcapindent
- \renewcommand*\@setcapindent[1]{%
- \caption@KOMA@setcapindent{#1}\caption@setcapindent}
- \let\caption@KOMA@@setcapindent\@@setcapindent
- \renewcommand*\@@setcapindent[1]{%
- \caption@KOMA@@setcapindent{#1}\caption@setcapindent}
- \newcommand*\caption@setcapindent{%
- \captionsetup{indent=\ifdim\cap@indent<\z@\z@\else\cap@indent\fi}}
- \caption@ifdefined\cap@indent{\caption@setcapindent}{}
- \expandafter\let\expandafter\caption@KOMA@setcapwidth
- \csname\string\setcapwidth\endcsname
- \@namedef{\string\setcapwidth}[#1]#2{%
- \caption@KOMA@setcapwidth[{#1}]{#2}\caption@setcapwidth{#1}}
- \newcommand*\caption@setcapwidth[1]{%
- \ifx\\#1\\\else
- \caption@ifdefined\cap@margin{%
- \def\@tempa{captionbeside}%
- \ifx\@tempa\@currenvir\else\caption@Warning{%
- Ignoring optional argument [#1] of \string\setcapwidth\MessageBreak}%
- \fi}{}%
- \fi
- \captionsetup{width=\cap@width}}
- \def\caption@tempa{\hsize}%
- \ifx\caption@tempa\cap@width \else
- \caption@setcapwidth{?}
- \fi
- \expandafter\let\expandafter\caption@KOMA@setcapmargin
- \csname\string\@setcapmargin\endcsname
- \@namedef{\string\@setcapmargin}[#1]#2{%
- \caption@KOMA@setcapmargin[{#1}]{#2}\caption@setcapmargin}
- \expandafter\let\expandafter\caption@KOMA@@setcapmargin
- \csname\string\@@setcapmargin\endcsname
- \@namedef{\string\@@setcapmargin}[#1]#2{%
- \caption@KOMA@@setcapmargin[{#1}]{#2}\caption@setcapmargin}
- \newcommand*\caption@setcapmargin{%
- \begingroup
- \let\onelinecaptionsfalse\relax
- \def\@twoside{0}%
- \def\if@twoside{\def\@twoside{1}\iffalse}%
- \cap@margin
- \def\@tempa{\endgroup}%
- \ifx\cap@left\hfill\else\ifx\cap@right\hfill\else
- \def\hspace##1##{\@firstofone}%
- \edef\@tempa{\endgroup
- \noexpand\captionsetup{%
- twoside=\@twoside,slc=0,%
- margin={\cap@left,\cap@right}}}%
- \fi\fi
- \@tempa}
- \ifx\cap@margin\relax \else
- \caption@setcapmargin
- \fi
-}{}
+\caption@documentclass@code
+\let\caption@documentclass@code\@undefined
+\let\AtCaptionPackage\@firstofone
\caption@SetupOptions{caption}{\caption@setkeys{#1}{#2}}
\caption@ProcessOptions*{caption}
\newcounter{caption@flags}
@@ -312,12 +227,12 @@
{\ignorespaces\caption@makeanchor{#3}}\par
\caption@if@minipage\@minipagetrue\@minipagefalse}%
\caption@end}
-\providecommand\M@gettitle[1]{}
\providecommand\memcaptioninfo[4]{}
\newcommand*\caption@prepareanchor[2]{%
\caption@makecurrent{#1}{#2}%
\caption@ifhypcap\caption@@start\relax
\M@gettitle{#2}}
+\providecommand\M@gettitle[1]{}
\long\def\caption@makecaption#1#2{%
\caption@make@above
\caption@@make{#1}{#2}%
@@ -330,10 +245,6 @@
\caption@iftop
{\caption@aboveskip\caption@rule}%
\caption@belowskip}
-\newcommand*\caption@aboveskip{%
- \vskip\abovecaptionskip}
-\newcommand*\caption@belowskip{%
- \vskip\belowcaptionskip}
\newcommand*\caption@redefine{}
\g@addto@macro\caption@redefine{%
\caption@ifcompatibility{%
@@ -341,7 +252,7 @@
\noexpand\caption will not be redefined since `compatibility' is set to v1}%
\renewcommand*\caption@redefine{}%
\renewcommand*\caption@continuedfloat[1]{%
- \caption@Error{Not available in compatibility mode}}%
+ \caption@Error{Not available with option `compatibility=v1'}}%
\caption@AtBeginDocument*{%
\let\caption@start\relax
\caption@ifdefined\caption@ORI@capstart{%
@@ -361,7 +272,15 @@
\let\caption@ORI@xfloat\@xfloat
\def\@xfloat#1[#2]{%
\caption@ORI@xfloat{#1}[#2]%
- \caption@settype{#1}}%
+ \caption@settype{#1}%
+ \caption@xfloat@hook}%
+ \newcommand*\caption@xfloat@hook{}%
+ \let\caption@ORI@xdblfloat\@xdblfloat
+ \def\@xdblfloat#1[#2]{%
+ \caption@ORI@xdblfloat{#1}[#2]% expands to \@xfloat{#1}[#2] + extra stuff
+ \caption@setoptions{#1*}%
+ \caption@xdblfloat@hook}%
+ \newcommand*\caption@xdblfloat@hook{}%
}
\caption@AtBeginDocument{\caption@redefine}
\let\@makecaption\caption@makecaption
@@ -375,7 +294,7 @@
\DeclareCaptionOptionNoValue{subtype}{\setcaptionsubtype\relax}%
\DeclareCaptionOptionNoValue{subtype*}{\setcaptionsubtype*}%
}
-\newcommand\setcaptiontype{%
+\def\setcaptiontype{%
\caption@boxrestore@mini
\caption@settype}
\newcommand\setcaptionsubtype{%
@@ -422,29 +341,32 @@
\caption@start}}}
\newcommand*\caption@iftype{\caption@ifdefined\@captype}
\newcommand*\caption@checktype[1]{%
- \caption@ifsubtype{#1}%
- {\caption@Error{Should not be used with subtype `#1'}%
- \@gobble}%
- \@firstofone}
+ \caption@ifsubtype{#1}\@firstoftwo{\caption@ifin@list\sf@counterlist{#1}}%
+ {\caption@Error{Should not be used with subtype `#1'}%
+ \@gobble}%
+ \@firstofone}
\newcommand*\caption@checksubtype[1]{%
\caption@ifsubtype{#1}%
- \@firstofone
- {\caption@Error{Undefined subtype `#1'}%
- \@gobble}}
-\caption@ifeTeX{%
- \newcommand*\caption@checkgrouplevel[2]{%
- \@ifundefined{#1caption@grouplevel}{%
- \caption@ifundefined\caption@grouplevel{\let\caption@grouplevel\z@}{}%
- \ifnum\currentgrouplevel>\caption@grouplevel\relax
- \expandafter\edef\csname #1caption@grouplevel\endcsname{%
- \the\currentgrouplevel}%
- \else
- \caption@Warning{\string#2\MessageBreak outside box or environment}%
- \fi
- }{}}%
-}{%
- \let\caption@checkgrouplevel\@gobbletwo
-}
+ \@firstofone
+ {\caption@ifin@list\sf@counterlist{#1}%
+ {\caption@Warning{%
+ \noexpand\setcaptionsubtype without \string\DeclareCaptionSubType.\MessageBreak
+ This is not designed to work; you could try replacing\MessageBreak
+ the `subfig' package with `subcaption' to resolve\MessageBreak
+ this problem which occurred}%
+ \@firstofone}%
+ {\caption@Error{Undefined subtype `#1'}%
+ \@gobble}}}
+\newcommand*\caption@checkgrouplevel[2]{%
+ \@ifundefined{#1caption@grouplevel}{%
+ \caption@ifundefined\caption@grouplevel{\let\caption@grouplevel\z@}{}%
+ \ifnum\currentgrouplevel>\caption@grouplevel\relax
+ \expandafter\edef\csname #1caption@grouplevel\endcsname{%
+ \the\currentgrouplevel}%
+ \else
+ \caption@Warning{\string#2\MessageBreak outside box or environment}%
+ \fi
+ }{}}%
\newcommand*\caption@undefinedlabel{%
\protect\caption@xref{\caption@labelname}{\on@line}}
\DeclareRobustCommand*\caption@xref[2]{%
@@ -466,7 +388,7 @@
\@esphack}
\caption@AtBeginDocument{%
\def\captionof{\caption@teststar\caption@of{\caption*}\caption}}
-\newcommand*\caption@of[2]{\setcaptiontype*{#2}#1}
+\providecommand*\caption@of[2]{\setcaptiontype*{#2}#1}
\newcommand*\captionlistentry{%
\caption@teststar\@captionlistentry\@firstoftwo\@secondoftwo}
\newcommand*\@captionlistentry[1]{%
@@ -485,10 +407,10 @@
{\caption@iibox{#1}{#2}{#3}}%
{\caption@iibox@{#1}{#2}{#3}}}
\long\def\caption@iibox#1#2#3[#4]{%
- \@testopt{\caption@iiibox{#1}{#2}{#3}[{#4}]}\captionbox@hj@default}
+ \@testopt{\caption@iiibox{#1}{#2}{#3}[{#4}]}\captionbox@innerpos@default}
\long\def\caption@iibox@#1#2#3#4{%
\setbox\@tempboxa\hbox{#4}%
- \caption@iiibox{#1}{#2}{#3}[\wd\@tempboxa][\captionbox@hj@default]{\unhbox\@tempboxa}}
+ \caption@iiibox{#1}{#2}{#3}[\wd\@tempboxa][\captionbox@innerpos@default]{\unhbox\@tempboxa}}
\long\def\caption@iiibox#1{%
\caption@iiiibox{#1}\vbox\vtop}
\long\def\caption@iiiibox#1#2#3#4#5[#6][#7]#8{%
@@ -501,24 +423,24 @@
\caption@setposition t%
#2{\caption#4{#5}}%
\captionbox@hrule
- \csname caption@hj@#7\endcsname
+ \csname caption@justification@#7\endcsname
#8}%
}{%
\endgroup
\parbox[b]{#6}{%
#1\relax
\caption@setposition b%
- \csname caption@hj@#7\endcsname
+ \csname caption@justification@#7\endcsname
#8%
\captionbox@hrule
#3{\caption#4{#5}}}%
}}
-\newcommand*\captionbox@hj@default{c}
+\newcommand*\captionbox@innerpos@default{c}
\newcommand*\captionbox@hrule{\hrule\@height\z@\relax}
-\providecommand*\caption@hj@c{\centering}
-\providecommand*\caption@hj@l{\raggedright}
-\providecommand*\caption@hj@r{\raggedleft}
-\providecommand*\caption@hj@s{}
+\providecommand*\caption@justification@c{\centering}
+\providecommand*\caption@justification@l{\raggedright}
+\providecommand*\caption@justification@r{\raggedleft}
+\providecommand*\caption@justification@s{}
\def\continuedfloat{%
\caption@iftype
{\caption@continuedfloat\@captype}%
@@ -569,7 +491,7 @@
\@ifundefined{c@#1}%
{\caption@Error{No float type '#1' defined}}%
{\caption@ref@stepcounter{#1}%
- \caption@fixposition
+ \caption@fixposition % TODO: Make this independant on the "position" setting
\caption@iftop\caption@setflag\caption@clrflag2% caption
\caption@clrflag4% subcaption
\@nameuse{donemaincaptiontrue}}}
@@ -626,9 +548,10 @@
\newcommand*\caption@end{%
\endgroup}
\newcommand*\caption@setfnum[1]{%
- \@ifundefined{fnum@#1}{\iftrue}{\ifx\caption@lfmt\caption@lfmt@default\else}%
- \@namedef{fnum@#1}{\caption@fnum{#1}}%
- \fi}
+ \@ifundefined{caption@fnum@#1}%
+ {\expandafter\let\csname caption@fnum@#1\expandafter\endcsname\csname fnum@#1\endcsname
+ \@namedef{fnum@#1}{\caption@fnum{#1}}}%
+ {}}
\newcommand*\caption@boxrestore{%
\caption@parboxrestore{\@parboxrestore}{%
\let\if@nobreak\iffalse
@@ -647,7 +570,7 @@
\parindent\z@ \parskip\z@skip
\sloppy}
\newcommand*\caption@normalsize{%
- \caption@font*{\KV@caption@fnt@normal\@unused}}
+ \caption@font@normal\@unused}
\let\caption@setfloatcapt\@firstofone
\newcommand*\caption@makecurrent[1]{\caption@gettitle}
\let\caption@makeanchor\@firstofone
@@ -659,15 +582,6 @@
\caption@ifdefined\NR@gettitle
{\NR@gettitle{#1}}%
{\def\@currentlabelname{#1}}}
-\def\caption@DeclareSubType sub#1\@nil{%
- \caption@Debug{Initializing subtype for `#1'\@gobble}%
- \@namedef{caption@beginsub#1}{\caption@beginsubfloat{#1}}}
-\@onlypreamble\caption@DeclareSubType
-\caption@For*{subtypelist}{\caption@DeclareSubType sub#1\@nil}
-\caption@AtBeginDocument*{%
- \caption@ifdefined\sf@counterlist{%
- \@for\sf@temp:=\sf@counterlist\do{%
- \expandafter\caption@DeclareSubType\sf@temp\@nil}}{}}
\newcommand*\caption@subtypehook{%
\ifx\caption\caption@subcaption \else
\caption@warmup
@@ -686,7 +600,7 @@
\c@continuedfloat=0\relax
\let\caption@setfloatcapt\@firstofone
\let\caption@chkfloat\@gobbletwo
- \caption@setbox{none}%
+ \caption@set{box}{none}%
\caption@clearmargin
\caption@iflist{}{\let\caption@setlist\@gobble}%
\caption@setoptions{sub}%
@@ -767,61 +681,33 @@
\caption@addsubcontentslines{appendix}\caption@appendix@ORI}}{}%
\caption@addsubcontentslines{AtEndDocument}%
}
-\caption@ifdefined\smf@makecaption{\let\smf@makecaption\@makecaption}{}
-\@ifclassloaded{beamer}{%
- \caption@InfoNoLine{beamer document class}%
- \let\caption@ORI@figure\figure
- \def\figure{\caption@settype{figure}\caption@ORI@figure}
- \let\caption@ORI@table\table
- \def\table{\caption@settype{table}\caption@ORI@table}
+\caption@IfBabelArabi{%
+ \let\@makecaption\caption@makecaption
+ \def\fnum@figure{\figurename\nobreakspace\thefigure}%
+ \def\fnum@table{\tablename\nobreakspace\thetable}%
+}{}
+\caption@IfFrenchLe{%
+ \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
+ \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
+ \let\@eatDP\@undefined
+ \caption@AtBeginDocument{%
+ \let\caption@original@makecaption\@makecaption}%
+ \g@addto@macro\GOfrench{%
+ \let\@makecaption\caption@original@makecaption}%
+}{}
+\caption@IfBabelHungarian{%
+ \caption@AtBeginDocument{%
+ \let\caption@original@makecaption\@makecaption}%
+ \caption@ifdefined\extrashungarian{%
+ \addto\extrashungarian{%
+ \let\@makecaption\caption@original@makecaption}}{}%
+ \caption@ifdefined\extrasmagyar{%
+ \addto\extrasmagyar{%
+ \let\@makecaption\caption@original@makecaption}}{}%
+}{}
+\caption@IfBabelLatvian{%
+ \let\@makecaption\caption@makecaption
}{}
-\caption@ifdefined\scr@caption{%
- \caption@AtBeginDocument{\let\scr@caption\caption}}{}
-\@nameuse{caption@frenchb}\@nameundef{caption@frenchb}
-\caption@AtBeginDocument{\caption@ifdefined\frenchTeXmods{%
- \caption@InfoNoLine{frenchle/pro package is loaded}%
- \let\captionfont@ORI\captionfont
- \let\captionlabelfont@ORI\captionlabelfont
- \let\@makecaption@ORI\@makecaption
-
- \caption@ifdefined\GOfrench
- {\def\caption@tempa{\g@addto@macro\GOfrench}}%
- {\let\caption@tempa\@firstofone}%
- \caption@tempa{%
- \let\captionfont\captionfont@ORI
- \let\captionfont@ORI\@undefined
- \let\captionlabelfont\captionlabelfont@ORI
- \let\captionlabelfont@ORI\@undefined
- \let\@makecaption\@makecaption@ORI
- \let\@makecaption@ORI\@undefined
- \let\@cnORI\caption
- \let\caption@tcORI\@tablescaption
- \def\@tablescaption{\caption@star\relax\caption@tcORI}%
- \let\@eatDP\@undefined
- \let\caption@tempa\@empty
- \ifx\f@ffrench\fnum@figure
- \l@addto@macro\caption@tempa{\let\fnum@figure\f@ffrench}%
- \fi
- \ifx\f@tfrench\fnum@table
- \l@addto@macro\caption@tempa{\let\fnum@table\f@tfrench}%
- \fi
- \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
- \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
- \caption@tempa
- }%
-}{}}
-\def\caption@tempa#1{%
- \@ifpackagewith{babel}{#1}{%
- \caption@InfoNoLine{#1 babel option is loaded}%
- \expandafter\addto\csname extras#1\endcsname{%
- % reverse changes made by magyar.ldf
- \let\@makecaption\caption@makecaption
- \babel@save\@makecaption
- \caption@redefine
- \babel@save\@caption}%
- }{}}
-\caption@tempa{hungarian}%
-\caption@tempa{magyar}%
\newcommand\caption@IfPackageLoaded[1]{%
\@testopt{\caption@@IfPackageLoaded{#1}}{}}
\@onlypreamble\caption@IfPackageLoaded
@@ -930,7 +816,7 @@
\hsize=\linewidth
\fi
\fi}%
-\AtBeginCaption{\caption@test@adjustwidth}
+ \AtBeginCaption{\caption@test@adjustwidth}%
}{}%
\caption@IfPackageLoaded{chkfloat}[2012/08/19 v0.1]{%
\caption@ifdefined\chkfloat@addcontentsline{%
@@ -970,8 +856,7 @@
}}%
\newcommand*\caption@float@setname[1]{%
\expandafter\ifx\csname #1name\endcsname\relax
- \expandafter\let\csname #1name\expandafter\endcsname
- \csname fname@#1\endcsname
+ \expandafter\let\csname #1name\expandafter\endcsname\csname fname@#1\endcsname
\fi}%
\g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}%
\g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}%
@@ -1176,21 +1061,6 @@
\let\caption@ORI@lst@MakeCaption\lst@MakeCaption
\def\lst@MakeCaption#1{% #1 is `t' or `b'
\begingroup
-%% \caption@Debug{%
-%% linewidth=\lst@linewidth,
-%% xleftmargin=\lst@xleftmargin,\MessageBreak
-%% xrightmargin=\lst@xrightmargin,
-%% resetmargins=\lst@ifresetmargins true\else false\fi}%
-%% \caption@iflst@Init{}{%
-%% \linewidth\lst@linewidth\relax
-%% \lst@ifresetmargins
-%% \advance\linewidth\@totalleftmargin
-%% \advance\linewidth\rightmargin
-%% \@totalleftmargin\z@
-%% \fi
-%% \advance\linewidth-\lst@xleftmargin
-%% \advance\linewidth-\lst@xrightmargin
-%% \advance\@totalleftmargin\lst@xleftmargin\relax}%
\caption@iflst@Init{}{%
\edef\caption@lst@leftskip{\noexpand\hskip-\the\@totalleftmargin\noexpand\relax}%
\l@addto@macro\caption@beginhook\caption@lst@leftskip}%
@@ -1211,32 +1081,36 @@
\providecommand*\ext@lstlisting{lol}%
}{}
\providecommand*\LTcaptype{table}
+\providecommand*\caption@LT@array{}
+\newcommand\caption@AtBeginLongtable{%
+ \g@addto@macro\caption@LT@array}
\caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{%
\RequirePackage{ltcaption}[2018/08/26]%
\let\LT@@makecaption\@undefined
\caption@AtBeginDocument{%
\let\caption@ORI@LT@array\LT@array
\renewcommand*\LT@array{%
- \global\let\caption@opt@@longtable\@undefined
- \def\captionsetup{%
- \noalign\bgroup
- \@ifstar\@captionsetup\@captionsetup}% gobble *
- \def\@captionsetup##1{\LT@captionsetup{##1}\egroup}%
- \def\LT@captionsetup##1{%
- \captionsetup@startrue\caption@setup@options[@longtable]{##1}%
- \global\let\caption@opt@@longtable\caption@opt@@longtable}%
- \def\@captionabovetrue{\LT@captionsetup{position=t}}%
- \def\@captionabovefalse{\LT@captionsetup{position=b}}%
- \def\captionlistentry{%
- \noalign\bgroup
- \@ifstar{\egroup\LT@listentry\LTcaptype}% gobble *
- {\egroup\LT@listentry\LTcaptype}}%
-%% \let\Hy@LT@currentHlabel\@currentHlabel
-%% \let\@currentHlabel\Hy@LT@currentHlabel
- \def\continuedfloat{\noalign{%
- \caption@Error{\noexpand\continuedfloat outside float}}}%
- \let\bicaption\LT@bicaption
+ \caption@LT@array
\caption@ORI@LT@array}}%
+ \caption@AtBeginLongtable{%
+ \global\let\caption@opt@@longtable\@undefined
+ \def\captionsetup{%
+ \noalign\bgroup
+ \@ifstar\@captionsetup\@captionsetup}% gobble *
+ \def\@captionsetup#1{\LT@captionsetup{#1}\egroup}%
+ \def\LT@captionsetup#1{%
+ \captionsetup@startrue\caption@setup@options[@longtable]{#1}%
+ \global\let\caption@opt@@longtable\caption@opt@@longtable}%
+ \def\captionlistentry{%
+ \noalign\bgroup
+ \@ifstar{\egroup\LT@listentry\LTcaptype}% gobble *
+ {\egroup\LT@listentry\LTcaptype}}%
+%% \let\Hy@LT@currentHlabel\@currentHlabel
+%% \let\@currentHlabel\Hy@LT@currentHlabel
+ \def\continuedfloat{\noalign{%
+ \caption@Error{\noexpand\continuedfloat outside float}}}%
+ \let\bicaption\LT@bicaption
+ }%
\def\LT@capti@n{%
\@ifstar
{\egroup\LT@c@ption\@gobble[]}%
@@ -1280,7 +1154,10 @@
\fi
\caption@flrow@setlist@{#1}}%
}{}}%
-}{}
+}{%
+ \let\caption@AtBeginLongtable\@gobble
+ \let\caption@LT@array\@undefined
+}
\providecommand*\caption@LT@setup{}
\caption@IfPackageLoaded{picinpar}{%
\long\def\figwindow[#1,#2,#3,#4] {%
@@ -1385,7 +1262,7 @@
\def\caption@setSC@justify{%
\caption@clearmargin
\ifx\SC@justify\@empty \else
- \let\caption@hj\SC@justify
+ \let\caption@justification\SC@justify
\let\SC@justify\@empty
\fi}%
\let\caption\SC@orig@caption
@@ -1428,8 +1305,7 @@
\long\def\ST@caption#1[#2]#3{\par%
\caption@settype*{#1}%
\caption@setoptions{supertabular}%
- \def\caption@fixposition{%
- \caption@setposition{\if@topcaption t\else b\fi}}%
+ \caption@setposition{\if@topcaption t\else b\fi}%
\caption@beginex{#1}{#2}{#3}%
\caption@boxrestore
\caption@normalsize
@@ -1448,8 +1324,7 @@
\long\def\ST@caption#1[#2]#3{\par%
\caption@settype*{#1}%
\caption@setoptions{xtabular}%
- \def\caption@fixposition{%
- \caption@setposition{\if@topcaption t\else b\fi}}%
+ \caption@set{position}{\if@topcaption t\else b\fi}%
\@initisotab
\caption@beginex{#1}{#2}{#3}%
\caption@boxrestore
@@ -1463,14 +1338,14 @@
\let\caption@ORI@threeparttable\threeparttable
\renewcommand*\threeparttable{%
\caption@settype{\@ifundefined{@captype}{table}{\@captype}}%
-%%% \caption@setposition a% ?
+%%% \caption@setposition{auto}% ?
\caption@clearmargin
\caption@setoptions{threeparttable}%
\caption@ORI@threeparttable}%
\let\caption@ORI@measuredfigure\measuredfigure
\renewcommand*\measuredfigure{%
\caption@settype{\@ifundefined{@captype}{figure}{\@captype}}%
-%%% \caption@setposition a% ?
+%%% \caption@setposition{auto}% ?
\caption@clearmargin
\caption@setoptions{measuredfigure}%
\caption@ORI@measuredfigure}%