From bc810e6340a36baa5a2918ed256a605f54f04811 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 3 Oct 2018 22:44:10 +0000 Subject: caption (3oct18) git-svn-id: svn://tug.org/texlive/trunk@48824 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/caption/README | 2 +- .../texmf-dist/source/latex/caption/bicaption.dtx | 18 +- Master/texmf-dist/source/latex/caption/caption.dtx | 296 ++++++++++++++------- .../texmf-dist/source/latex/caption/caption3.dtx | 113 ++++++-- .../texmf-dist/source/latex/caption/ltcaption.dtx | 26 +- Master/texmf-dist/tex/latex/caption/bicaption.sty | 14 +- Master/texmf-dist/tex/latex/caption/caption.sty | 183 ++++++++----- Master/texmf-dist/tex/latex/caption/caption3.sty | 71 ++++- Master/texmf-dist/tex/latex/caption/ltcaption.sty | 18 +- 9 files changed, 514 insertions(+), 227 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/caption/README b/Master/texmf-dist/doc/latex/caption/README index 8d2f3195089..e5b57fd3aca 100644 --- a/Master/texmf-dist/doc/latex/caption/README +++ b/Master/texmf-dist/doc/latex/caption/README @@ -1,7 +1,7 @@ ========================================================================== The `caption' package bundle -Release 2018-06-09 +Release 2018-09-12 Copyright (C) 1994-2018 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm) License: LPPL = LaTeX Project Public Licence diff --git a/Master/texmf-dist/source/latex/caption/bicaption.dtx b/Master/texmf-dist/source/latex/caption/bicaption.dtx index 776f9bb5e0e..665bf5d6567 100644 --- a/Master/texmf-dist/source/latex/caption/bicaption.dtx +++ b/Master/texmf-dist/source/latex/caption/bicaption.dtx @@ -25,7 +25,7 @@ % and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{400} +% \CheckSum{402} % % \iffalse %<*driver> @@ -792,7 +792,7 @@ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{bicaption}[2016/03/27 v1.1-158 Bilingual Captions (AR)] +\ProvidesPackage{bicaption}[2018/08/26 v1.1-159 Bilingual Captions (AR)] % \end{macrocode} % \begin{macrocode} \RequirePackage{caption}[2016/02/01] % needs v3.3-134 or newer @@ -1018,9 +1018,8 @@ \renewcommand*\caption@addcontentsline[2]{% % \end{macrocode} % \begin{macrocode} - \caption@ifundefined\bicaption@LT@setup{}{% - \bicaption@LT@setup - \global\let\bicaption@LT@setup\@undefined}% + \bicaption@LT@setup + \global\let\bicaption@LT@setup\relax % \end{macrocode} % \begin{macrocode} \caption@ifundefined\bicaption@lentry @@ -1241,6 +1240,10 @@ {\egroup\bicaption@cmd[{#3}]{#4}}% {\egroup\bicaption@cmd[{#1}]{#2}}} % \end{macrocode} +% \begin{macrocode} +\let\bicaption@LTsetup\relax +\let\bicaption@LT@setup\relax +% \end{macrocode} % \end{macro} % % \begin{macro}{\caption@LT@setup} @@ -1249,9 +1252,8 @@ % of the \package{longtable} bilingual caption. % \begin{macrocode} \g@addto@macro\caption@LT@setup{% - \caption@ifundefined\bicaption@LTsetup{}{% - \bicaption@LTsetup - \global\let\bicaption@LTsetup\@undefined}} + \bicaption@LTsetup + \global\let\bicaption@LTsetup\relax} % \end{macrocode} % \end{macro} % diff --git a/Master/texmf-dist/source/latex/caption/caption.dtx b/Master/texmf-dist/source/latex/caption/caption.dtx index 88f3f2549e9..ed00fb9143e 100644 --- a/Master/texmf-dist/source/latex/caption/caption.dtx +++ b/Master/texmf-dist/source/latex/caption/caption.dtx @@ -25,7 +25,7 @@ % and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{3579} +% \CheckSum{3693} % % \iffalse %<*driver> @@ -218,13 +218,13 @@ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption}[2018/05/01 v3.3-147 Customizing captions (AR)] +\ProvidesPackage{caption}[2018/09/12 v3.3-152 Customizing captions (AR)] % \end{macrocode} % % \subsection{Loading the kernel} % % \begin{macrocode} -\RequirePackage{caption3}[2018/05/01] % needs v1.8 or newer +\RequirePackage{caption3}[2018/09/12] % needs v1.8c or newer % \end{macrocode} % % \subsection{Check against incompatible document classes} @@ -818,59 +818,65 @@ % % \subsection{\cs{caption}, \cs{@caption}, and \cs{@makecaption}} % -% \begin{macro}{\ifcaption@caption} -% \changes{v3.3}{2011/12/28}{This switch added} -% \begin{macro}{\ifcaption@subcaption} -% \changes{v3.3}{2011/12/28}{This switch added} -% \begin{macro}{\ifcaption@ContinuedFloat} +% \begin{macro}{\caption@ifflag} % \changes{v3.3}{2011/12/28}{This switch added} +% \changes{v3.3}{2018/08/08}{Rewritten (and renamed) so a counter is used instead of a switch} % Since we support continued floats and sub-figures it's not an easy task % to manage the figure (and table) counter. (Especially since previous versions % of the caption package has proven that correcting a counter locally is not a good idea.) % % These three switches hold the -% current status: |\if|\-|caption@caption| is set if the caption was already +% current status: |\caption@if|\-|flag{2}| is set if the caption was already % typeset (so the counter doesn't need to be incremented for sub-figures), -% |\if|\-|caption@sub|\-|caption| is set if there is already content which have +% |\caption@if|\-|flag{4}| is set if there is already content which have % incremented the counter (so the counter doesn't need to be incremented % for the main caption, further sub-figures, and other stuff), and -% |\if|\-|caption@Continued|\-|Float| is set if |\Continued|\-|Float| was given. +% |\caption@if|\-|flag{1}| is set if |\Continued|\-|Float| was given. +% +% In the past three boolean switches were used to store the flags, but since some +% packages (like the \package{floatrow} and \package{tabu} package) try hard to keep +% counter changes locally under certain circumstances, it seems a good idea to make +% these flags a counter value, too. % \begin{macrocode} -\newif\ifcaption@caption -\newif\ifcaption@subcaption -\newif\ifcaption@ContinuedFloat +\newcounter{caption@flags} +% \end{macrocode} +% \begin{macrocode} +\newcommand*\caption@ifflag[1]{% + \@tempcnta\c@caption@flags + \divide\@tempcnta #1\relax + \ifodd\@tempcnta + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} % \end{macrocode} -% \end{macro} -% \end{macro} % \end{macro} % +% \begin{macro}{\caption@clrflags} +% \changes{v3.3}{2018/08/08}{This macro added} % \begin{macro}{\caption@clrflag} % \changes{v3.3}{2013/04/14}{This macro added} +% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch} % \begin{macro}{\caption@setflag} % \changes{v3.3}{2013/04/14}{This macro added} +% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch} % Furthermore we introduce the macros \cs{caption@clrflag} and \cs{caption@setflag} % for clearing resp.~setting these flags. % \begin{macrocode} -\newcommand*\caption@clrflag[1]{% - \caption@chgflag{#1}{false}} -\newcommand*\caption@setflag[1]{% - \caption@chgflag{#1}{true}} -\newcommand*\caption@chgflag[2]{% - \global\csname caption@#1#2\endcsname} +\newcommand*\caption@clrflags{% + \setcounter{caption@flags}\z@} % \end{macrocode} -% The \package{floatrow} package uses \cs{FR@loc@} to keep changes -% (flags, counters, \ldots) local. Since it is not aware of our flags above -% we need to extend that macro (if defined). % \begin{macrocode} -\caption@AtBeginDocument{% - \caption@ifundefined\FR@loc@{}{% - \caption@InfoNoLine{floatrow package is loaded}% - \g@addto@macro\FR@loc@{% - \renewcommand*\caption@chgflag[2]{% - \csname caption@#1#2\endcsname}}}} +\newcommand*\caption@clrflag[1]{% + \caption@ifflag{#1}{\caption@addtoflags{-#1}}{}} +\newcommand*\caption@setflag[1]{% + \caption@ifflag{#1}{}{\caption@addtoflags{#1}}} +\newcommand*\caption@addtoflags{% + \addtocounter{caption@flags}} % \end{macrocode} % \end{macro} % \end{macro} +% \end{macro} % % \begin{macro}{\caption@caption} % \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added} @@ -1163,6 +1169,50 @@ }}% % \end{macrocode} % +% \begin{macrocode} + \caption@CheckCommand\@caption{% + % arabicore.sty [2006/01/01 v1.0 Arabi Core switching commands (may still change)] + \long\def\@caption#1[#2]#3{% + \par + \addtocontents{\csname ext@#1\endcsname}{\xstring\select@language{\main@Arabi@language}}% + \addcontentsline{\csname ext@#1\endcsname}{#1}% + {\protect\numberline{\csname the#1\endcsname}{\ignorespaces \if@rl{\textRL{#2}}\else\textLR{#2}\fi}}% + \begingroup + \@parboxrestore + \if@minipage + \@setminipage + \fi + \normalsize + \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces \if@rl{\textRL{#3}}\else\textLR{#3}\fi}\par + \endgroup}}% +% \end{macrocode} +% +% \begin{macrocode} + \caption@CheckCommand\@caption{% + % rlbabel.def [2005/03/30 v2.3h Right-to-Left support from the babel system Hebrew language support from the babel system] + \long\def\@caption#1[#2]#3{% + \par + \addcontentsline{\csname ext@#1\endcsname}{#1}% + {\protect\numberline{\csname the#1\endcsname}% + {\ignorespaces #2}}% + \def\@fignm{figure} + \ifx#1\@fignm\addcontentsline{fol}{#1}% + {\protect\numberline{\csname the#1\endcsname}% + {\ignorespaces #2}}\fi% + \def\@tblnm{table} + \ifx#1\@tblnm\addcontentsline{tol}{#1}% + {\protect\numberline{\csname the#1\endcsname}% + {\ignorespaces #2}}\fi% + \begingroup + \@parboxrestore + \if@minipage + \@setminipage + \fi + \normalsize + \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par + \endgroup}}% +% \end{macrocode} +% % \begin{macrocode} \caption@CheckCommand\@caption{% % magyar.ldf [2005/03/30 v1.4j Magyar support from the babel system] @@ -1401,6 +1451,21 @@ }% % \end{macrocode} % +% \begin{macrocode} + \caption@CheckCommand\@caption{% + % chkfloat.sty [2012/08/19 v0.1 chkfloat: check for moved floats] + \def\@caption#1[#2]#3{\chkfloat@caption{#1}[#2]{#3}% + \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}% + }}% +% \end{macrocode} +% \begin{macrocode} + \caption@CheckCommand\@caption{% + % chkfloat.sty [20??/??/?? v0.? chkfloat: check for moved floats] + \def\@caption#1[#2]#3{\chkfloat@caption{#1}[#2]{#3}% + \chkfloat@addcontentsline{#1}{#2}% + }}% +% \end{macrocode} +% % \begin{macrocode} \caption@IfCheckCommand{}{% \caption@InfoNoLine{% @@ -1608,9 +1673,7 @@ % (if |hypcap=|\-|true| and the \package{hypcap} package is not loaded). % \begin{macrocode} \newcommand*\caption@settype{% - \caption@clrflag{caption}% - \caption@clrflag{subcaption}% - \caption@clrflag{ContinuedFloat}% + \caption@clrflags \caption@set@type} % \end{macrocode} % \begin{macrocode} @@ -1925,7 +1988,7 @@ % \end{macrocode} % \begin{macrocode} \newcommand*\caption@@ContinuedFloat{% - \caption@setflag{ContinuedFloat}% + \caption@setflag1% ContinuedFloat \caption@@@ContinuedFloat} \newcommand*\caption@@@ContinuedFloat{% \stepcounter{ContinuedFloat}% @@ -2011,12 +2074,12 @@ % therefore ending this part, so we set the flag to |false| in this case.) % \begin{macrocode} \caption@fixposition - \caption@iftop\caption@setflag\caption@clrflag{caption}% + \caption@iftop\caption@setflag\caption@clrflag2% caption % \end{macrocode} % This part does not contain content (like sub-figures) yet, % so we set |\if|\-|caption@sub|\-|caption| to |false|. % \begin{macrocode} - \caption@clrflag{subcaption}% + \caption@clrflag4% subcaption % \end{macrocode} % Support of the \textsf{memoir} document class. % \begin{macrocode} @@ -2024,18 +2087,18 @@ % \end{macrocode} % \begin{macrocode} \newcommand*\caption@ref@stepcounter{% - \ifcaption@ContinuedFloat + \caption@ifflag1{% ContinuedFloat \let\caption@tempa\caption@@refcounter - \caption@clrflag{ContinuedFloat}% - \else + \caption@clrflag1% ContinuedFloat + }{% \let\caption@tempa\caption@@refstepcounter - \ifcaption@caption \else - \ifcaption@subcaption + \caption@ifflag2{}{% caption + \caption@ifflag4{% subcaption % Counter was already incremented by content, so we suppress \stepcounter{#1} here \let\caption@tempa\caption@@refcounter - \fi - \fi - \fi + }{}% + }% + }% \caption@tempa} % \end{macrocode} % \begin{macrocode} @@ -2328,6 +2391,7 @@ % \changes{v3.3}{2012/03/15}{Usage of \cs{caption@setbox} added} % \changes{v3.3}{2013/05/01}{Redefinition of \cs{caption@settype} added} % \changes{v3.3}{2013/06/17}{Missing redefinition of \cs{captionlistentry} added} +% \changes{v3.3}{2018/09/06}{Adapted to the \package{chkfloat} package} % Hook, will be used inside \cs{caption@setsubtype}.\par % (Note: If we are inside an |sub|\-|float|\-|row| environment we have to keep % the |\@make|\-|caption| code of the \package{floatrow} package intact.) @@ -2337,24 +2401,25 @@ \caption@warmup % \end{macrocode} % \begin{macrocode} - \ifcaption@caption \else + \caption@ifflag2{}{% caption % no \caption in this part of the (floating) environment yet \let\caption@add@contentsline\caption@addsubcontentsline \let\caption@addsubcontentslines\@gobble - \ifcaption@subcaption \else + \caption@ifflag4{}{% subcaption % no \subcaption in this part of the (floating) environment yet - \ifcaption@ContinuedFloat - \caption@clrflag{ContinuedFloat}% - \else + \caption@ifflag1{% ContinuedFloat + \caption@clrflag1% + }{% \caption@@stepcounter\@captype - \fi - \caption@setflag{subcaption}% - \fi - \fi + }% + \caption@setflag4% subcaption + }% + }% % \end{macrocode} % \begin{macrocode} \c@ContinuedFloat=0\relax \let\caption@setfloatcapt\@firstofone + \let\caption@chkfloat\@gobbletwo % \end{macrocode} % \begin{macrocode} \caption@setbox{none}% @@ -2668,19 +2733,21 @@ % % \subsubsection{The hungarian and magyar Babel option} % \changes{v3.2}{2009/03/29}{\package{magyar} package support added} +% \changes{v3.3}{2018/08/26}{\package{magyar} package support revised} % % \begin{macrocode} \def\caption@tempa#1{% - \@ifundefined{extras#1}\caption@AtBeginDocument\@firstofone{% - \@ifundefined{extras#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}% - }}} + \@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}% + }{}} +% \end{macrocode} +% \begin{macrocode} \caption@tempa{hungarian}% \caption@tempa{magyar}% % \end{macrocode} @@ -2868,6 +2935,30 @@ % \end{macrocode} % \end{macro} % +% \subsubsection{The chkfloat package} +% \changes{v3.3}{2018/09/06}{Support of the \package{chkfloat} package added} +% +% \begin{macrocode} +\caption@IfPackageLoaded{chkfloat}[2012/08/19 v0.1]{% +% \end{macrocode} +% +% \begin{macro}{\caption@chkfloat} +% \changes{v3.3}{2018/09/06}{This macro added} +% \begin{macrocode} + \caption@ifundefined\chkfloat@addcontentsline{% + \renewcommand\caption@chkfloat[2]{% + \caption@ifundefined\chkfloat@page{}{% + \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}}}% + }{% + \renewcommand\caption@chkfloat{\chkfloat@addcontentsline}% + }% +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} + }{}% +% \end{macrocode} +% % \subsubsection{The float package} % \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved} % \iffalse @@ -3726,7 +3817,7 @@ \caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{% % \end{macrocode} % \begin{macrocode} - \RequirePackage{ltcaption}[2007/09/01]% + \RequirePackage{ltcaption}[2018/08/26]% \let\LT@@makecaption\@undefined % \end{macrocode} % @@ -3767,10 +3858,8 @@ % \begin{macrocode} \def\captionlistentry{% \noalign\bgroup - \@ifstar{\egroup\LT@captionlistentry}% gobble * - {\egroup\LT@captionlistentry}}% - \def\LT@captionlistentry##1{% - \caption@listentry\@firstoftwo[\LTcaptype]{##1}}% + \@ifstar{\egroup\LT@listentry}% gobble * + {\egroup\LT@listentry}}% % \end{macrocode} % |\ContinuedFloat| for longtable:\\ % {\small(Commented out, since it's not deeply tested and quite useless anyway)} @@ -3833,26 +3922,6 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\LT@c@ption} -% \changes{v3.1g}{2008/01/22}{Made it \cs{long}} -% The original implementation: -% \begin{verbatim} -% \def\LT@c@ption#1[#2]#3{% -% \LT@makecaption#1\fnum@table{#3}% -% \def\@tempa{#2}% -% \ifx\@tempa\@empty\else -% {\let\\\space -% \addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}% -% \fi} -% \end{verbatim}%^^A -% Our implementation uses |\LTcaptype| instead of |{table}|: -% \begin{macrocode} - \long\def\LT@c@ption#1[#2]#3{% - \LT@makecaption#1{\csname fnum@\LTcaptype\endcsname}{#3}% - \LT@captionlistentry{#2}}% -% \end{macrocode} -% \end{macro} -% % \begin{macro}{\LT@makecaption} % \changes{v3.0d}{2004/08/10}{% % Bugfix 04-08-04: \cs{abovecaptionskip} \& \cs{belowcaptionskip} will be used now} @@ -3881,19 +3950,7 @@ % \begin{macrocode} \renewcommand\LT@makecaption[3]{% \caption@LT@make{% -% \end{macrocode} -% -% If |\LTcapwidth| is not set to its default value |4in| we assume -% that it shall overwrite our own setting. -% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.) -% \begin{macrocode} - \caption@settype*\LTcaptype - \ifdim\LTcapwidth=4in \else - \setcaptionwidth\LTcapwidth - \fi - \caption@setoptions{longtable}% -% \caption@setContinuedFloat - \caption@setoptions{@longtable}% + \caption@LT@settype\LTcaptype % \end{macrocode} % % |\caption@LT@setup| is re-defined inside the \package{bicaption} package @@ -3954,6 +4011,41 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\LT@listentry} +% \changes{v3.3}{2018/08/26}{This macro added} +% \begin{macrocode} + \renewcommand*\LT@listentry[2]{% + \begingroup + \caption@LT@settype{#1}% + \caption@listentry\@firstoftwo[#1]{#2}% + \endgroup}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\caption@LT@settype} +% \changes{v3.3}{2018/08/26}{This macro added} +% \begin{macrocode} + \newcommand*\caption@LT@settype[1]{% + \caption@settype*\LTcaptype +% \end{macrocode} +% If |\LTcapwidth| is not set to its default value |4in| we assume +% that it shall overwrite our own setting. +% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.) +% \begin{macrocode} + \ifdim\LTcapwidth=4in \else + \setcaptionwidth\LTcapwidth + \fi +% \end{macrocode} +% \begin{macrocode} + \caption@setoptions{longtable}% +% \caption@setContinuedFloat +% \end{macrocode} +% Finally set options applied by |\captionsetup| inside the longtable. +% \begin{macrocode} + \caption@setoptions{@longtable}} +% \end{macrocode} +% \end{macro} +% % \begin{macrocode} }{} % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/caption/caption3.dtx b/Master/texmf-dist/source/latex/caption/caption3.dtx index 3caa2bf9746..e71c4daed17 100644 --- a/Master/texmf-dist/source/latex/caption/caption3.dtx +++ b/Master/texmf-dist/source/latex/caption/caption3.dtx @@ -25,7 +25,7 @@ % and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{3848} +% \CheckSum{3954} % % \iffalse %<*driver> @@ -198,7 +198,7 @@ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption3}[2018/05/27 v1.8a caption3 kernel (AR)] +\ProvidesPackage{caption3}[2018/09/12 v1.8c caption3 kernel (AR)] % \end{macrocode} % % \subsection{Workaround for bug in package \package{arabtex}} @@ -3054,8 +3054,57 @@ } % \end{macrocode} % +% \subsubsection{The arabic Babel option} +% \changes{v1.8}{2018/05/20}{\package{arabic} babel package support added} +% +% \begin{macrocode} +\caption@ifundefined\ArabiCoreLoaded{% +% \end{macrocode} +% \begin{macro}{\caption@rl} +% \changes{v1.8}{2018/05/20}{This macro added} +% \begin{macrocode} + \let\caption@rl\@firstofone +}{% + \newcommand\caption@rl[1]{\if@rl\textRL{#1}\else\textLR{#1}\fi} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + \def\fnum@figure{\figurename\nobreakspace\thefigure}% + \def\fnum@table{\tablename\nobreakspace\thetable}% +% \end{macrocode} +% \begin{macrocode} + \DeclareCaptionLabelSeparator{arabi}{ : } + \DeclareCaptionLabelSeparator{default}{% + \if@rl\caption@lsep@arabi\else\caption@lsep@colon\fi} +% \end{macrocode} +% \begin{macrocode} + \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}} +% \end{macrocode} +% \begin{macrocode} +} +% \end{macrocode} +% % \subsubsection{The frenchb Babel option} -% \changes{v1.1}{2006/05/14}{\package{frenchb} package support added} +% \changes{v1.1}{2006/05/14}{\package{frenchb} babel package support added} % % \begin{macrocode} \caption@ifundefined\FB@makecaption{}{% @@ -3139,9 +3188,24 @@ } % \end{macrocode} % +% \subsubsection{The hebrew Babel option} +% \changes{v1.8}{2018/08/26}{\package{hebrew} package support added} +% +% \begin{macrocode} + \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}}% +% \end{macrocode} +% % \subsubsection{The hungarian and magyar Babel option} % \changes{v1.3}{2009/03/29}{\package{magyar} package support added} % \changes{v1.3a}{2011/08/12}{\package{magyar} package support revised} +% \changes{v1.8b}{2018/08/26}{\package{magyar} package support revised} % % \begin{macrocode} \DeclareCaptionListFormat{subperiod}{#2.} @@ -3164,24 +3228,26 @@ % \end{macrocode} % % \begin{macrocode} -\def\caption@tempa#1{\@ifundefined{extras#1}{}{% - \expandafter\addto\csname extras#1\endcsname{% - % change default labelsep and listformat - \caption@setdefaultlabelsep{period}% - \caption@setdefaultlistformat{subperiod}}% - \expandafter\addto\csname noextras#1\endcsname{% - % change default labelsep and listformat - \caption@setdefaultlabelsep{colon}% - \caption@setdefaultlistformat{subsimple}}% -% \end{macrocode} -% \begin{macrocode} -}} +\def\caption@tempa#1{% + \@ifpackagewith{babel}{#1}{% + \caption@InfoNoLine{#1 babel option is loaded}% + \expandafter\addto\csname extras#1\endcsname{% + % change default labelsep and listformat + \caption@setdefaultlabelsep{period}% + \caption@setdefaultlistformat{subperiod}}% + \expandafter\addto\csname noextras#1\endcsname{% + % change default labelsep and listformat + \caption@setdefaultlabelsep{colon}% + \caption@setdefaultlistformat{subsimple}}% + }{}} % \end{macrocode} % \begin{macrocode} \caption@tempa{hungarian} \caption@tempa{magyar} % \end{macrocode} % +% TODO: babel-latvian/latvian.ldf +% % \subsubsection{Unknown document class (or package)} % \changes{v1.1}{2007/04/10}{Check of document class added} % @@ -3218,6 +3284,7 @@ % \changes{v1.5}{2012/01/15}{Usage of \cs{caption@addsubcontentslines} added} % \changes{v1.7}{2015/09/15}{Argument \#3 which holds the environment name added to \cs{caption@lstfmt}} % \changes{v1.7}{2015/09/20}{Unfortunately \package{subfig} defines and uses \cs{caption@lstfmt} as well, so I replaced the third argument with \cs{captionlisttype}} +% \changes{v1.8}{2018/09/06}{Adapted to the \package{chkfloat} package} % |\caption@addcontentsline|\marg{type}\marg{list entry}\par % Makes an entry in the list-of-whatever, if requested, % i.e.~the argument \meta{list entry} is not empty and @@ -3252,7 +3319,8 @@ {\csname ext@#1\endcsname}% {#1}% {\caption@lstfmt{\@nameuse{p@#1}}{\@nameuse{the#1}}}% - {\ignorespaces #2}}}} + {\ignorespaces #2}% + \caption@chkfloat{#1}{#2}}}} % \end{macrocode} % \begin{macrocode} \newcommand*\caption@add@contentsline{% @@ -3260,9 +3328,14 @@ % \end{macrocode} % \begin{macrocode} \newcommand*\caption@@@addcontentsline[4]{% +% \caption@ifundefined\main@Arabi@language{}% +% {\addtocontents{#1}{\xstring\select@language{\main@Arabi@language}}}% \addcontentsline{#1}{#2}{\protect\numberline{#3}{#4}}} % \end{macrocode} % \begin{macrocode} +\let\caption@chkfloat\@gobbletwo +% \end{macrocode} +% \begin{macrocode} \newcommand\caption@ifcontentsline[1]{% \caption@iflist {\def\@tempa{#1}}% @@ -3620,6 +3693,7 @@ % \changes{v1.3}{2010/11/01}{Bugfix: If the caption text is empty, the text format will be set to \opt{simple} now} % \changes{v1.7}{2016/02/01}{Bugfix: \cs{relax} added before \cs{caption@lsep} so the label separator % will not be gobbled if the label font command ignores spaces, e.g. by usage of \cs{color}} +% \changes{v1.8}{2018/09/12}{\cs{par} replaced by \cs{captiontextend}} % |\caption@@@make|\marg{caption label}\marg{caption text}\par % This one finally typesets the caption paragraph, without margin and indention. % \begin{macrocode} @@ -3669,6 +3743,7 @@ \endgroup \fi}% {{\captiontextfont + \captiontextstart \caption@ifstrut {\vrule\@height\ht\strutbox\@width\z@}% {}% @@ -3678,7 +3753,11 @@ \caption@ifstrut {\ifhmode\@finalstrut\strutbox\fi}% {}% - \par}}} + \captiontextend}}} +% \end{macrocode} +% \begin{macrocode} +\newcommand*\captiontextstart{} +\newcommand*\captiontextend{\par} % \end{macrocode} % \end{macro} % diff --git a/Master/texmf-dist/source/latex/caption/ltcaption.dtx b/Master/texmf-dist/source/latex/caption/ltcaption.dtx index 10addccff29..4c4f077a162 100644 --- a/Master/texmf-dist/source/latex/caption/ltcaption.dtx +++ b/Master/texmf-dist/source/latex/caption/ltcaption.dtx @@ -25,7 +25,7 @@ % and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{377} +% \CheckSum{378} % % \iffalse %<*driver> @@ -460,7 +460,7 @@ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{ltcaption}[2013/06/09 v1.4-94 longtable captions (AR)] +\ProvidesPackage{ltcaption}[2018/08/26 v1.4-95 longtable captions (AR)] % \end{macrocode} % % \begin{macrocode} @@ -616,13 +616,7 @@ % \begin{macrocode} \long\def\LT@c@ption#1[#2]#3{% \LT@makecaption#1{\csname fnum@\LTcaptype\endcsname}{#3}% - \def\@tempa{#2}% - \ifx\@tempa\@empty\else - {\let\\\space - \addcontentsline{\csname ext@\LTcaptype\endcsname}{\LTcaptype}% - {\protect\numberline{\csname the\LTcaptype\endcsname}{#2}}}% - \fi - \ignorespaces} + \LT@listentry\LTcaptype{#2}} % \end{macrocode} % \end{macro} % @@ -784,6 +778,20 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\LT@listentry} +% \changes{v1.4}{2018/08/26}{This macro added} +% \begin{macrocode} +\newcommand*\LT@listentry[2]{% + \def\@tempa{#2}% + \ifx\@tempa\@empty\else + {\let\\\space + \addcontentsline{\csname ext@#1\endcsname}{#1}% + {\protect\numberline{\csname the#1\endcsname}{#2}}}% + \fi + \ignorespaces} +% \end{macrocode} +% \end{macro} +% % \subsection{The \texttt{longtable*} environment} % \changes{v1.1}{2007/09/01}{Environment \env{longtable*} added} % diff --git a/Master/texmf-dist/tex/latex/caption/bicaption.sty b/Master/texmf-dist/tex/latex/caption/bicaption.sty index 33c20d5be37..8177a7a3f93 100644 --- a/Master/texmf-dist/tex/latex/caption/bicaption.sty +++ b/Master/texmf-dist/tex/latex/caption/bicaption.sty @@ -37,7 +37,7 @@ %% caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{bicaption}[2016/03/27 v1.1-158 Bilingual Captions (AR)] +\ProvidesPackage{bicaption}[2018/08/26 v1.1-159 Bilingual Captions (AR)] \RequirePackage{caption}[2016/02/01] % needs v3.3-134 or newer \caption@AtBeginDocument{\caption@ifcompatibility{% \caption@Error{% @@ -116,9 +116,8 @@ \caption@ProcessOptions*{bicaption} \let\bicaption@addcontentsline@ORI\caption@addcontentsline \renewcommand*\caption@addcontentsline[2]{% - \caption@ifundefined\bicaption@LT@setup{}{% - \bicaption@LT@setup - \global\let\bicaption@LT@setup\@undefined}% + \bicaption@LT@setup + \global\let\bicaption@LT@setup\relax \caption@ifundefined\bicaption@lentry {\bicaption@addcontentsline@ORI{#1}{#2}}% {\expandafter\bicaption@addcontentsline\expandafter @@ -226,10 +225,11 @@ \bicaption@ifswap {\egroup\bicaption@cmd[{#3}]{#4}}% {\egroup\bicaption@cmd[{#1}]{#2}}} +\let\bicaption@LTsetup\relax +\let\bicaption@LT@setup\relax \g@addto@macro\caption@LT@setup{% - \caption@ifundefined\bicaption@LTsetup{}{% - \bicaption@LTsetup - \global\let\bicaption@LTsetup\@undefined}} + \bicaption@LTsetup + \global\let\bicaption@LTsetup\relax} \newcommand\bicaption@setup[2]{% \def\bicaption@lentry{#1}% \def\bicaption@text{\ignorespaces#2}} diff --git a/Master/texmf-dist/tex/latex/caption/caption.sty b/Master/texmf-dist/tex/latex/caption/caption.sty index d9690ed6337..0636ca6d7e5 100644 --- a/Master/texmf-dist/tex/latex/caption/caption.sty +++ b/Master/texmf-dist/tex/latex/caption/caption.sty @@ -37,8 +37,8 @@ %% caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption}[2018/05/01 v3.3-147 Customizing captions (AR)] -\RequirePackage{caption3}[2018/05/01] % needs v1.8 or newer +\ProvidesPackage{caption}[2018/09/12 v3.3-152 Customizing captions (AR)] +\RequirePackage{caption3}[2018/09/12] % needs v1.8c or newer \caption@ifbool{documentclass}{}{% \caption@WarningNoLine{% Unsupported document class (or package) detected,\MessageBreak @@ -287,21 +287,23 @@ } \caption@SetupOptions{caption}{\caption@setkeys{#1}{#2}} \caption@ProcessOptions*{caption} -\newif\ifcaption@caption -\newif\ifcaption@subcaption -\newif\ifcaption@ContinuedFloat +\newcounter{caption@flags} +\newcommand*\caption@ifflag[1]{% + \@tempcnta\c@caption@flags + \divide\@tempcnta #1\relax + \ifodd\@tempcnta + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} +\newcommand*\caption@clrflags{% + \setcounter{caption@flags}\z@} \newcommand*\caption@clrflag[1]{% - \caption@chgflag{#1}{false}} + \caption@ifflag{#1}{\caption@addtoflags{-#1}}{}} \newcommand*\caption@setflag[1]{% - \caption@chgflag{#1}{true}} -\newcommand*\caption@chgflag[2]{% - \global\csname caption@#1#2\endcsname} -\caption@AtBeginDocument{% - \caption@ifundefined\FR@loc@{}{% - \caption@InfoNoLine{floatrow package is loaded}% - \g@addto@macro\FR@loc@{% - \renewcommand*\caption@chgflag[2]{% - \csname caption@#1#2\endcsname}}}} + \caption@ifflag{#1}{}{\caption@addtoflags{#1}}} +\newcommand*\caption@addtoflags{% + \addtocounter{caption@flags}} \def\caption@caption{% \caption@iftype {\caption@checkgrouplevel\@empty\caption @@ -480,6 +482,44 @@ \def\@currentlabelname{#2}% \M@gettitle{#2}% }}% + \caption@CheckCommand\@caption{% + % arabicore.sty [2006/01/01 v1.0 Arabi Core switching commands (may still change)] + \long\def\@caption#1[#2]#3{% + \par + \addtocontents{\csname ext@#1\endcsname}{\xstring\select@language{\main@Arabi@language}}% + \addcontentsline{\csname ext@#1\endcsname}{#1}% + {\protect\numberline{\csname the#1\endcsname}{\ignorespaces \if@rl{\textRL{#2}}\else\textLR{#2}\fi}}% + \begingroup + \@parboxrestore + \if@minipage + \@setminipage + \fi + \normalsize + \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces \if@rl{\textRL{#3}}\else\textLR{#3}\fi}\par + \endgroup}}% + \caption@CheckCommand\@caption{% + % rlbabel.def [2005/03/30 v2.3h Right-to-Left support from the babel system Hebrew language support from the babel system] + \long\def\@caption#1[#2]#3{% + \par + \addcontentsline{\csname ext@#1\endcsname}{#1}% + {\protect\numberline{\csname the#1\endcsname}% + {\ignorespaces #2}}% + \def\@fignm{figure} + \ifx#1\@fignm\addcontentsline{fol}{#1}% + {\protect\numberline{\csname the#1\endcsname}% + {\ignorespaces #2}}\fi% + \def\@tblnm{table} + \ifx#1\@tblnm\addcontentsline{tol}{#1}% + {\protect\numberline{\csname the#1\endcsname}% + {\ignorespaces #2}}\fi% + \begingroup + \@parboxrestore + \if@minipage + \@setminipage + \fi + \normalsize + \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par + \endgroup}}% \caption@CheckCommand\@caption{% % magyar.ldf [2005/03/30 v1.4j Magyar support from the babel system] \long\def\@caption#1[#2]#3{% @@ -671,6 +711,16 @@ % subfig.sty [2005/06/28 ver: 1.3 subfig package] \def\@caption{\caption@}% }% + \caption@CheckCommand\@caption{% + % chkfloat.sty [2012/08/19 v0.1 chkfloat: check for moved floats] + \def\@caption#1[#2]#3{\chkfloat@caption{#1}[#2]{#3}% + \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}% + }}% + \caption@CheckCommand\@caption{% + % chkfloat.sty [20??/??/?? v0.? chkfloat: check for moved floats] + \def\@caption#1[#2]#3{\chkfloat@caption{#1}[#2]{#3}% + \chkfloat@addcontentsline{#1}{#2}% + }}% \caption@IfCheckCommand{}{% \caption@InfoNoLine{% Incompatible package detected (regarding \string\@caption).\MessageBreak @@ -739,9 +789,7 @@ {\caption@@settype{sub}*{sub\@captype}}% {\caption@@settype{sub}{sub\@captype}}}% \newcommand*\caption@settype{% - \caption@clrflag{caption}% - \caption@clrflag{subcaption}% - \caption@clrflag{ContinuedFloat}% + \caption@clrflags \caption@set@type} \newcommand*\caption@set@type{% \caption@@settype{}} @@ -880,7 +928,7 @@ \caption@Error{Continued `#1' after `\caption@CFtype'}% \fi} \newcommand*\caption@@ContinuedFloat{% - \caption@setflag{ContinuedFloat}% + \caption@setflag1% ContinuedFloat \caption@@@ContinuedFloat} \newcommand*\caption@@@ContinuedFloat{% \stepcounter{ContinuedFloat}% @@ -909,21 +957,21 @@ {\caption@Error{No float type '#1' defined}}% {\caption@ref@stepcounter{#1}% \caption@fixposition - \caption@iftop\caption@setflag\caption@clrflag{caption}% - \caption@clrflag{subcaption}% + \caption@iftop\caption@setflag\caption@clrflag2% caption + \caption@clrflag4% subcaption \@nameuse{donemaincaptiontrue}}} \newcommand*\caption@ref@stepcounter{% - \ifcaption@ContinuedFloat + \caption@ifflag1{% ContinuedFloat \let\caption@tempa\caption@@refcounter - \caption@clrflag{ContinuedFloat}% - \else + \caption@clrflag1% ContinuedFloat + }{% \let\caption@tempa\caption@@refstepcounter - \ifcaption@caption \else - \ifcaption@subcaption + \caption@ifflag2{}{% caption + \caption@ifflag4{% subcaption \let\caption@tempa\caption@@refcounter - \fi - \fi - \fi + }{}% + }% + }% \caption@tempa} \newcommand*\caption@@refcounter[1]{% \let\caption@stepcounter@ORI\stepcounter @@ -1010,20 +1058,21 @@ \newcommand*\caption@subtypehook{% \ifx\caption\caption@subcaption \else \caption@warmup - \ifcaption@caption \else + \caption@ifflag2{}{% caption \let\caption@add@contentsline\caption@addsubcontentsline \let\caption@addsubcontentslines\@gobble - \ifcaption@subcaption \else - \ifcaption@ContinuedFloat - \caption@clrflag{ContinuedFloat}% - \else + \caption@ifflag4{}{% subcaption + \caption@ifflag1{% ContinuedFloat + \caption@clrflag1% + }{% \caption@@stepcounter\@captype - \fi - \caption@setflag{subcaption}% - \fi - \fi + }% + \caption@setflag4% subcaption + }% + }% \c@ContinuedFloat=0\relax \let\caption@setfloatcapt\@firstofone + \let\caption@chkfloat\@gobbletwo \caption@setbox{none}% \caption@clearmargin \caption@iflist{}{\let\caption@setlist\@gobble}% @@ -1153,16 +1202,15 @@ }% }} \def\caption@tempa#1{% - \@ifundefined{extras#1}\caption@AtBeginDocument\@firstofone{% - \@ifundefined{extras#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}% - }}} + \@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]{% @@ -1253,6 +1301,15 @@ }{}% \caption@undefbool{needfreeze}} \let\caption@warmup\relax +\caption@IfPackageLoaded{chkfloat}[2012/08/19 v0.1]{% + \caption@ifundefined\chkfloat@addcontentsline{% + \renewcommand\caption@chkfloat[2]{% + \caption@ifundefined\chkfloat@page{}{% + \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}}}% + }{% + \renewcommand\caption@chkfloat{\chkfloat@addcontentsline}% + }% + }{}% \caption@IfPackageLoaded{float}[2001/11/08 v1.3d]{% \@ifpackageloaded{floatrow}{% \caption@If@Package@Loaded{floatrow}[2007/08/24 v0.2a]{}{}% @@ -1508,7 +1565,7 @@ }{} \providecommand*\LTcaptype{table} \caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{% - \RequirePackage{ltcaption}[2007/09/01]% + \RequirePackage{ltcaption}[2018/08/26]% \let\LT@@makecaption\@undefined \caption@AtBeginDocument{% \let\caption@ORI@LT@array\LT@array @@ -1525,10 +1582,8 @@ \def\@captionabovefalse{\LT@captionsetup{position=b}}% \def\captionlistentry{% \noalign\bgroup - \@ifstar{\egroup\LT@captionlistentry}% gobble * - {\egroup\LT@captionlistentry}}% - \def\LT@captionlistentry##1{% - \caption@listentry\@firstoftwo[\LTcaptype]{##1}}% + \@ifstar{\egroup\LT@listentry}% gobble * + {\egroup\LT@listentry}}% %% \let\Hy@LT@currentHlabel\@currentHlabel %% \let\@currentHlabel\Hy@LT@currentHlabel \def\ContinuedFloat{\noalign{% @@ -1539,17 +1594,9 @@ \@ifstar {\egroup\LT@c@ption\@gobble[]}% {\egroup\caption@xdblarg{\LT@c@ption\@firstofone}}} - \long\def\LT@c@ption#1[#2]#3{% - \LT@makecaption#1{\csname fnum@\LTcaptype\endcsname}{#3}% - \LT@captionlistentry{#2}}% \renewcommand\LT@makecaption[3]{% \caption@LT@make{% - \caption@settype*\LTcaptype - \ifdim\LTcapwidth=4in \else - \setcaptionwidth\LTcapwidth - \fi - \caption@setoptions{longtable}% - \caption@setoptions{@longtable}% + \caption@LT@settype\LTcaptype \caption@LT@setup \caption@setautoposition{\ifcase\LT@rows t\else b\fi}% \caption@startrue#1\caption@starfalse @@ -1561,6 +1608,18 @@ \caption@@make{#2}{#3}\endgraf \caption@iftop{\vskip\abovecaptionskip}{\vskip\belowcaptionskip}% \caption@end}}% + \renewcommand*\LT@listentry[2]{% + \begingroup + \caption@LT@settype{#1}% + \caption@listentry\@firstoftwo[#1]{#2}% + \endgroup}% + \newcommand*\caption@LT@settype[1]{% + \caption@settype*\LTcaptype + \ifdim\LTcapwidth=4in \else + \setcaptionwidth\LTcapwidth + \fi + \caption@setoptions{longtable}% + \caption@setoptions{@longtable}} }{} \providecommand*\caption@LT@setup{} \caption@IfPackageLoaded{picinpar}{% diff --git a/Master/texmf-dist/tex/latex/caption/caption3.sty b/Master/texmf-dist/tex/latex/caption/caption3.sty index cee7781981d..8639d49fc8a 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}[2018/05/27 v1.8a caption3 kernel (AR)] +\ProvidesPackage{caption3}[2018/09/12 v1.8c caption3 kernel (AR)] \providecommand\caption@FixArabTeX{% \def\caption@tempa##1{}% \ifx\caption@tempa\@gobble @@ -1302,6 +1302,36 @@ \DeclareCaptionDefaultFont{labelfont}{\cph@font} \DeclareCaptionDefaultFont{textfont}{\cpb@font} } +\caption@ifundefined\ArabiCoreLoaded{% + \let\caption@rl\@firstofone +}{% + \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}} +} \caption@ifundefined\FB@makecaption{}{% \caption@CheckCommand\@makecaption{% % frenchb.ldf [2005/02/06 v1.6g French support from the babel system] @@ -1361,6 +1391,14 @@ \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{% @@ -1375,16 +1413,18 @@ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% \fi \vskip\belowcaptionskip}}} -\def\caption@tempa#1{\@ifundefined{extras#1}{}{% - \expandafter\addto\csname extras#1\endcsname{% - % change default labelsep and listformat - \caption@setdefaultlabelsep{period}% - \caption@setdefaultlistformat{subperiod}}% - \expandafter\addto\csname noextras#1\endcsname{% - % change default labelsep and listformat - \caption@setdefaultlabelsep{colon}% - \caption@setdefaultlistformat{subsimple}}% -}} +\def\caption@tempa#1{% + \@ifpackagewith{babel}{#1}{% + \caption@InfoNoLine{#1 babel option is loaded}% + \expandafter\addto\csname extras#1\endcsname{% + % change default labelsep and listformat + \caption@setdefaultlabelsep{period}% + \caption@setdefaultlistformat{subperiod}}% + \expandafter\addto\csname noextras#1\endcsname{% + % change default labelsep and listformat + \caption@setdefaultlabelsep{colon}% + \caption@setdefaultlistformat{subsimple}}% + }{}} \caption@tempa{hungarian} \caption@tempa{magyar} \caption@IfCheckCommand{% @@ -1425,11 +1465,13 @@ {\csname ext@#1\endcsname}% {#1}% {\caption@lstfmt{\@nameuse{p@#1}}{\@nameuse{the#1}}}% - {\ignorespaces #2}}}} + {\ignorespaces #2}% + \caption@chkfloat{#1}{#2}}}} \newcommand*\caption@add@contentsline{% \caption@@@addcontentsline} \newcommand*\caption@@@addcontentsline[4]{% \addcontentsline{#1}{#2}{\protect\numberline{#3}{#4}}} +\let\caption@chkfloat\@gobbletwo \newcommand\caption@ifcontentsline[1]{% \caption@iflist {\def\@tempa{#1}}% @@ -1591,6 +1633,7 @@ \endgroup \fi}% {{\captiontextfont + \captiontextstart \caption@ifstrut {\vrule\@height\ht\strutbox\@width\z@}% {}% @@ -1599,7 +1642,9 @@ \caption@ifstrut {\ifhmode\@finalstrut\strutbox\fi}% {}% - \par}}} + \captiontextend}}} +\newcommand*\captiontextstart{} +\newcommand*\captiontextend{\par} \newcommand\caption@ifempty[1]{% \caption@if@empty{#1}% \caption@ifempty\@unused} diff --git a/Master/texmf-dist/tex/latex/caption/ltcaption.sty b/Master/texmf-dist/tex/latex/caption/ltcaption.sty index 95b94ade609..662eb7dfeee 100644 --- a/Master/texmf-dist/tex/latex/caption/ltcaption.sty +++ b/Master/texmf-dist/tex/latex/caption/ltcaption.sty @@ -37,7 +37,7 @@ %% caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{ltcaption}[2013/06/09 v1.4-94 longtable captions (AR)] +\ProvidesPackage{ltcaption}[2018/08/26 v1.4-95 longtable captions (AR)] \@ifpackageloaded{longtable}{}{% \PackageError{ltcaption}{longtable package not loaded, aborting}{RTFM}} \providecommand*\LTcaptype{table} @@ -80,13 +80,7 @@ \newcommand*\caption@LT@table{table}% \long\def\LT@c@ption#1[#2]#3{% \LT@makecaption#1{\csname fnum@\LTcaptype\endcsname}{#3}% - \def\@tempa{#2}% - \ifx\@tempa\@empty\else - {\let\\\space - \addcontentsline{\csname ext@\LTcaptype\endcsname}{\LTcaptype}% - {\protect\numberline{\csname the\LTcaptype\endcsname}{#2}}}% - \fi - \ignorespaces} + \LT@listentry\LTcaptype{#2}} \renewcommand\LT@makecaption[3]{% \LT@@makecaption{% \sbox\@tempboxa{% @@ -157,6 +151,14 @@ \def\next{\caption@LT@parse@ @}% \fi\fi\fi \next} +\newcommand*\LT@listentry[2]{% + \def\@tempa{#2}% + \ifx\@tempa\@empty\else + {\let\\\space + \addcontentsline{\csname ext@#1\endcsname}{#1}% + {\protect\numberline{\csname the#1\endcsname}{#2}}}% + \fi + \ignorespaces} \newenvironment{longtable*}{% \let\caption@LT@type\@gobble \let\caption@LT@raisedlink\Hy@raisedlink -- cgit v1.2.3