diff options
author | Karl Berry <karl@freefriends.org> | 2011-11-06 23:24:43 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-11-06 23:24:43 +0000 |
commit | e678d3b58e25f99b6c7aa3e828add9502768371c (patch) | |
tree | 5ce7df892e6657936807337df43e08ea66cba374 /Master/texmf-dist | |
parent | 91348b19948d3b43f8e39cdd834970482dd5f062 (diff) |
caption (6nov11)
git-svn-id: svn://tug.org/texlive/trunk@24525 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
32 files changed, 2659 insertions, 1855 deletions
diff --git a/Master/texmf-dist/doc/latex/caption/CHANGELOG b/Master/texmf-dist/doc/latex/caption/CHANGELOG new file mode 100644 index 00000000000..dc23417117e --- /dev/null +++ b/Master/texmf-dist/doc/latex/caption/CHANGELOG @@ -0,0 +1,141 @@ +caption package +=============== + +v1.0 (1994/10/27) +- 1st published version + +v1.1 (1994/11/03) +- New option `centerlast' + +v1.2 (1994/11/28) +- Support of the `float' package added + +v1.3 (1995/01/09) +- Support of \captionlabelfont in subcaptions added + +v1.4 (1995/01/30) +- New option `nooneline' + +v2.0 (caption2, 1995/10/09) +- New experimental version with many new commands and features +- Support of the `longtable' package added + +v2.1 (caption2, 2002/02/26) +- Adapted to version 2.1 of the subfigure package +- New options for interaction with other packages (float,...) +- New command \normalcaptionparams +- New commands \captionof and \captionof* +- New ifs \ifcaptionlabel and \ifignoreLTcapwidth +- \realcaptionwidth renamed to \captionlinewidth + +v2.2 (caption2, 2007/04/06) +- Internal change: Uses the caption3 kernel now + +v3.0 (2003/12/20) +- Completely rewritten in cooperation with Frank Mittelbach and Steven Cochran + +v3.1 (2007/09/01) +- Improved compatibility to supported document classes and packages, but decreased compatibility to non-supported document classes and packages +- Support of the AMS & SMF document classes added +- Support of the `beamer' document class added +- Support of the `KOMA-Script' document classes added +- Support of the `floatflt' package added +- Support of the `fltpage' package added +- Support of the `picinpar' package added +- Support of the `picins' package added +- Support of the `threeparttable' package added +- Support of the `wrapfig' package added +- Support of the `xtab' package added +- Check against incompatible `ftcap' package added +- Check against incompatible `nonfloat' package added +- Check against incompatible `topcapt' package added +- Does not process global options anymore to avoid conflicts with document class options +- New option compatibility= +- New options font+=, labelfont+= & textfont+= +- New options hypcap= & hypcapspace= +- New options list= and listformat= +- New option options= +- New options figurewithin= and tablewithin= +- Starred variant of option margin*= added +- Starred variant of option style*= added +- Starred variant of option type*= added +- Font options `normal', `normalcolor', `color', `normalfont' & `stretch' added +- Default position changed from `bottom' to `auto' +- New command \DeclareFloatingEnvironment resp. \DeclareCaptionType +- New command \DeclareCaptionListFormat +- New command \captionlistentry +- Starred variant of \clearcaptionsetup added +- Optional argument added to \clearcaptionsetup +- Starred variant of \ContinuedFloat added +- \captionsetup{...} inside longtables added +- \captionsetup[singleline]{...} added +- A \label before \caption will result in warning "\label before \caption ignored" +- The counters lofdepth & lotdepth are supported now +- Label formats have three arguments now +- Optional argument added to \DeclareCaptionFormat; "format=plain" removed from single-line options of default format +- Caption label format `brace' added + +v3.2 (2011/07/30) +- Support of `beamer' document class improved +- Support of `magyar' babel option added +- Support of `sansmath' package added +- Support of `titletoc' package added to \DeclareCaptionType & \DeclareCaptionSubType +- Support of `tocbasic' package added to \DeclareCaptionType +- New options calcmargin=, calcmargin*=, calcwidth=, and calcwidth*= +- New option listtype= added +- New option parboxrestore=partial/full +- New options within= & without +- Option slc= as abbreviation of singlelinecheck= added +- Pre-defined text format `empty' added +- New command \captionbox +- New command \phantomcaption +- New command \setcaptiontype as replacement for \captionsetup{type=...} +- New command \setcaptionsubtype as replacement for \captionsetup{subtype} +- "Hyperref support is turned off because hyperref has stopped early" is not a warning anymore but an information instead + + +bicaption package +================= + +v0.9 (2010/09/19) +- 1st published version (see also http://www.mrunix.de/forums/showthread.php?t=68312) + +v1.0 (2011/09/03) +- Support for list entries added + + +ltcaption package +================= + +v1.0 (2007/04/15) +- 1st version + +v1.1 (2007/09/01) +- Adapted to the NTG document classes (Support of \CaptionLabelFont & \CaptionTextFont added) +- Adapted to the `floatrow' package by Olga Lapko +- New macro \LTcaptype +- New environment longtable* + +v1.2 (2008/03/28) +- New skip \LTcapskip + +v1.3 (2011/09/12) +- New macro \CaptionLabelSeparator + + +subcaption package +================== + +v1.0 (2008/03/16) +- 1st published version + +v1.1 (2011/08/17) +- New caption option subrefformat= +- New command \phantomsubcaption + + +newfloat package +================ + +v1.0 (2011/10/30) +- 1st published version diff --git a/Master/texmf-dist/doc/latex/caption/README b/Master/texmf-dist/doc/latex/caption/README index e6a76f58d5a..bd96db4d81b 100644 --- a/Master/texmf-dist/doc/latex/caption/README +++ b/Master/texmf-dist/doc/latex/caption/README @@ -42,7 +42,7 @@ other-than-center aligned longtables. (solving LaTeX PR `tools/3387') A bonus feature is the addition of the environment longtable* which does not increment the table counter. -This package will be loaded by the `caption' package v3.1 automatically, +This package will be loaded automatically by the `caption' package, but can be used without the caption package, too. User Manual: ltcaption.pdf (English) @@ -55,6 +55,14 @@ package). User Manual: subcaption.pdf (English) +-------------------------------------------------------------------------- + +The `newfloat' package v1.0 offers the command \DeclareFloatingEnvironment +for defining new floating environments which behave like the existing +floating environments "figure" and "table". + +User Manual: newfloat.pdf (English) + ========================================================================== (The pictures cat.eps & elephant.eps were taken with permission from the LaTeX Companion examples.) diff --git a/Master/texmf-dist/doc/latex/caption/bicaption.pdf b/Master/texmf-dist/doc/latex/caption/bicaption.pdf Binary files differindex e3a2f223f52..5b3b1b21b26 100644 --- a/Master/texmf-dist/doc/latex/caption/bicaption.pdf +++ b/Master/texmf-dist/doc/latex/caption/bicaption.pdf diff --git a/Master/texmf-dist/doc/latex/caption/caption-deu.pdf b/Master/texmf-dist/doc/latex/caption/caption-deu.pdf Binary files differindex 31c436a5039..a2029123b05 100644 --- a/Master/texmf-dist/doc/latex/caption/caption-deu.pdf +++ b/Master/texmf-dist/doc/latex/caption/caption-deu.pdf diff --git a/Master/texmf-dist/doc/latex/caption/caption-eng.pdf b/Master/texmf-dist/doc/latex/caption/caption-eng.pdf Binary files differindex 9edb9ee5e65..312a0a2cbf0 100644 --- a/Master/texmf-dist/doc/latex/caption/caption-eng.pdf +++ b/Master/texmf-dist/doc/latex/caption/caption-eng.pdf diff --git a/Master/texmf-dist/doc/latex/caption/caption-rus.pdf b/Master/texmf-dist/doc/latex/caption/caption-rus.pdf Binary files differindex 8e9d2ad5ca0..7009ed7fe5a 100644 --- a/Master/texmf-dist/doc/latex/caption/caption-rus.pdf +++ b/Master/texmf-dist/doc/latex/caption/caption-rus.pdf diff --git a/Master/texmf-dist/doc/latex/caption/caption.pdf b/Master/texmf-dist/doc/latex/caption/caption.pdf Binary files differindex d8204c9bf48..23ff4377f38 100644 --- a/Master/texmf-dist/doc/latex/caption/caption.pdf +++ b/Master/texmf-dist/doc/latex/caption/caption.pdf diff --git a/Master/texmf-dist/doc/latex/caption/caption2.pdf b/Master/texmf-dist/doc/latex/caption/caption2.pdf Binary files differindex f65160bb355..f6af5e1b6db 100644 --- a/Master/texmf-dist/doc/latex/caption/caption2.pdf +++ b/Master/texmf-dist/doc/latex/caption/caption2.pdf diff --git a/Master/texmf-dist/doc/latex/caption/caption3.pdf b/Master/texmf-dist/doc/latex/caption/caption3.pdf Binary files differindex fb4dad99fa6..c7c2d1d499d 100644 --- a/Master/texmf-dist/doc/latex/caption/caption3.pdf +++ b/Master/texmf-dist/doc/latex/caption/caption3.pdf diff --git a/Master/texmf-dist/doc/latex/caption/ltcaption.pdf b/Master/texmf-dist/doc/latex/caption/ltcaption.pdf Binary files differindex 3542a340ba2..6b04eda03a1 100644 --- a/Master/texmf-dist/doc/latex/caption/ltcaption.pdf +++ b/Master/texmf-dist/doc/latex/caption/ltcaption.pdf diff --git a/Master/texmf-dist/doc/latex/caption/newfloat.pdf b/Master/texmf-dist/doc/latex/caption/newfloat.pdf Binary files differnew file mode 100644 index 00000000000..48472ea1cd1 --- /dev/null +++ b/Master/texmf-dist/doc/latex/caption/newfloat.pdf diff --git a/Master/texmf-dist/doc/latex/caption/subcaption.pdf b/Master/texmf-dist/doc/latex/caption/subcaption.pdf Binary files differindex 11c95ce1e6e..f5fb6d27ec5 100644 --- a/Master/texmf-dist/doc/latex/caption/subcaption.pdf +++ b/Master/texmf-dist/doc/latex/caption/subcaption.pdf diff --git a/Master/texmf-dist/source/latex/caption/bicaption.dtx b/Master/texmf-dist/source/latex/caption/bicaption.dtx index be0f7d433d7..fb3d58f932d 100644 --- a/Master/texmf-dist/source/latex/caption/bicaption.dtx +++ b/Master/texmf-dist/source/latex/caption/bicaption.dtx @@ -19,18 +19,18 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{366} +% \CheckSum{369} % % \iffalse %<*driver> \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesFile{bicaption.drv}[2011/09/03 v1.0 Adds a bilingual caption feature to the caption package] +\ProvidesFile{bicaption.drv}[2011/10/30 v1.0 Adds a bilingual caption feature to the caption package] \hbadness=9999 \newcount\hbadness \hfuzz=74pt % Make TeX shut up. %\errorcontextlines=3 % @@ -223,11 +223,10 @@ % \package{caption} package: % % \begin{Options}{language=} -% \item[language=] +% \item[lang=] % \DescribeMacro{language=} -% Sets the language of the caption, -% e.g. -% \begin{quote}|\use|\-|package|\-|[eng|\-|lish]{bi|\-|caption}|\end{quote} +% Sets the language of the caption, e.g. +% \begin{quote}|\use|\-|package|\-|[lang=eng|\-|lish]{bi|\-|caption}|\end{quote} % will typeset the second caption of bilingual captions in English. % (The language will be set with |\select|\-|language| internally, % so the \package{babel} package must be loaded for using this option.) @@ -540,8 +539,8 @@ % responsible for the types % |figureX| ($=$ |figure| $+$ |X|), |tableX| ($=$ |table| $+$ |X|) etc. % -% Such a \meta{list type} can be defined using |\Declare|\-|Caption|\-|Type| -% offered by the \package{caption} package, but some document classes +% Such a \meta{list type} can be defined using |\Declare|\-|Floating|\-|Environment| +% offered by the \package{newfloat} package, but some document classes % or other packages offer macros for defining new floating environment types % (and their corresponding lists) as well. % @@ -556,11 +555,12 @@ % |% "english", and list type "figureEng" resp. "tableEng"|\\ % |\usepackage[lang=english,listtype+=Eng]{bicaption}|\\ % ||\\ +% |\usepackage{newfloat}|\\ % |% Define the new floating environment type "figureEng"|\\ -% |\DeclareCaptionType[fileext=lof2]{figureEng}|\\ +% |\DeclareFloatingEnvironment[fileext=lof2]{figureEng}|\\ % | [Figure][List of Figures]|\\ % |% Define the new floating environment type "tableEng"|\\ -% |\DeclareCaptionType[fileext=lot2]{tableEng}|\\ +% |\DeclareFloatingEnvironment[fileext=lot2]{tableEng}|\\ % | [Table][List of Tables]|\\ % ||\\ % |\begin{document}|\\ @@ -594,15 +594,16 @@ % ||\\ % |% We load the titletoc package for customizing lists|\\ % |% Note: Loading titletoc should be done prior defining|\\ -% |% additional floating environments with \DeclareCaptionType|\\ +% |% additional floating environments with \DeclareFloatingEnvironment|\\ % |\usepackage{titletoc}|\\ % ||\\ +% |\usepackage{newfloat}|\\ % |% Define the new floating environment type "figure2"|\\ % |% Use the same file extension as for "figure" (.lof) here|\\ -% |\DeclareCaptionType[fileext=lof]{figure2}|\\ +% |\DeclareFloatingEnvironment[fileext=lof]{figure2}|\\ % |% Define the new floating environment type "table2"|\\ % |% Use the same file extension as for "table" (.lot) here|\\ -% |\DeclareCaptionType[fileext=lot]{table2}|\\ +% |\DeclareFloatingEnvironment[fileext=lot]{table2}|\\ % ||\\ % |% We use the titletoc package for customizing "figure2"|\\ % |% which is appropriate for the second language captions|\\ @@ -714,7 +715,7 @@ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{bicaption}[2011/09/03 v1.0 Bilingual Captions (AR)] +\ProvidesPackage{bicaption}[2011/10/30 v1.0a Bilingual Captions (AR)] % \end{macrocode} % \begin{macrocode} \RequirePackage{caption}[2011/08/28] % needs v3.2c or newer @@ -842,12 +843,15 @@ % % Set the language for the first caption. % \begin{macrocode} -\ifx\bbl@main@language\@undefined - \bicaption@WarningNoLine{Please load this package after the babel package} -\else +\ifcsname bbl@main@language\endcsname \edef\@tempa{\noexpand\captionsetup[bi-first]{lang=\bbl@main@language}} \@tempa -\fi +\else\ifcsname xpg@main@language\endcsname + \edef\@tempa{\noexpand\captionsetup[bi-first]{lang=\xpg@main@language}} + \@tempa +\else + \bicaption@WarningNoLine{Please load this package after the babel package} +\fi\fi % \end{macrocode} % We use |\caption@ProcessOptions| here to add the options to the `|bi-second|' option % list instead of executing them immediately. @@ -1114,18 +1118,19 @@ % \end{macro} % % \begin{macro}{\bicaption@listof} +% \changes{v1.0a}{2011/10/30}{Adapted to the newfloat package} % Make commands like |\listoffigure2s| work. +% (Is this a good idea or not!?) % \begin{macrocode} -\def\bicaption@declarelist#1{\@namedef{listof#1}{\bicaption@listof#1}} +\newcommand*\bicaption@declarelist[1]{% + \@namedef{listof#1}{\bicaption@listof#1}} \@onlypreamble\bicaption@declarelist -\def\bicaption@listof#1 {\@nameuse{listof#1}} % \end{macrocode} % \begin{macrocode} -\caption@ifundefined\c@figure{}{\bicaption@declarelist{figure}} -\caption@ifundefined\c@table{}{\bicaption@declarelist{table}} -\caption@For{typelist}{\bicaption@declarelist{#1}} +\def\bicaption@listof#1 {\@nameuse{listof#1}} % \end{macrocode} % \begin{macrocode} +\caption@ForEachType{\bicaption@declarelist{#1}} % \end{macrocode} % \end{macro} % diff --git a/Master/texmf-dist/doc/latex/caption/caption-deu.tex b/Master/texmf-dist/source/latex/caption/caption-deu.tex index 127a939752b..b0742d81db2 100644 --- a/Master/texmf-dist/doc/latex/caption/caption-deu.tex +++ b/Master/texmf-dist/source/latex/caption/caption-deu.tex @@ -18,13 +18,13 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesFile{caption-deu.tex}[2011/10/05 v3.2 Das caption-Paket] +\ProvidesFile{caption-deu.tex}[2011/11/02 v3.2 Das caption-Paket] \hbadness=9999 \newcount\hbadness \hfuzz=20pt % Make TeX shut up. %\errorcontextlines=3 @@ -1211,36 +1211,15 @@ Aber dies kann z.B. bei Unterabbildungen anders sein.\footnote{% % --------------------------------------------------------------------------- % -\subsection{Namen \& Nummerierung} -\label{names}\label{numbering} +\subsection{Namen} +\label{names} -\DescribeMacro{figurename=} -\DescribeMacro{tablename=}\NEWfeature{v3.0l} -Der Name der Abbildungen und Tabellen kann mit den Optionen -\begin{quote}\begin{tabular}{@{}r@{}l@{\quad}l@{}} - |figurename=| & \meta{Name} & und\\ - |tablename=| & \meta{Name} & \\ -\end{tabular}\end{quote} -geändert werden, zum Beispiel: -\begin{quote} - |figurename=Abb.| -\end{quote} -Das Sprachpaket \package{babel} setzt die Namen üblicherweise auf -"`Abbildung"' und "`Tabelle"'. - -\smallskip\INFO -Wenn Sie das \package{babel}"=Sprachpaket verwenden, laden Sie bitte -\thispackage\ \emph{nach} dem \package{babel}"=Paket. - -\medskip - -\pagebreak[3] \DescribeMacro{name=}\NEWfeature{v3.1f} -Im Gegensatz zu |figure|\-|name| und |table|\-|name| ändert +Die Option \begin{quote} |name=|\meta{name} \end{quote} -den Namen der \emph{aktuellen} Umgebung. +ändert den Namen der \emph{aktuellen} Umgebung. Hiermit könnte man z.B.~den Bezeichner "`Abbildung"' in allen |wrap|\-|figure|"=Umgebungen nach "`Abb."' ändern (während woanders nach-wie-vor "`Abbildung"' stehen würde): @@ -1248,71 +1227,6 @@ nach-wie-vor "`Abbildung"' stehen würde): |\captionsetup[wrapfigure]{name=Abb.}| \end{quote} -\medskip - -\pagebreak[3] -\DescribeMacro{listfigurename=} -\DescribeMacro{listtablename=}\NEWfeature{v3.1g} -Analog zu den Optionen |figure|\-|name| und |table|\-|name| kann auch der -Titel der Listen geändert werden. So ändert z.B. -\begin{quote} - |listfigurename=Bilderverzeichnis| -\end{quote} -den Standardtitel "`Abbildungsverzeichnis"' zu "`Bilderverzeichnis"'. - -\bigskip - -\pagebreak[3] -\DescribeMacro{figurewithin=} -\DescribeMacro{tablewithin=}\NEWfeature{v3.1f} -Wird eine Dokumentenklasse verwendet, die den Gliederungsbefehl |\chapter| -bereitstellt (wie z.B.~\class{report} oder \class{book}), -so wird üblicherweise der Abbildungs- und Tabellenzähler in Abhängigkeit des -Kapitels geführt. -Ansonsten wird der Zähler gewöhnlich fortlaufend erhöht. - -Dies kann über die Optionen -\begin{quote}\begin{tabular}{rl} - |figurewithin=| & \texttt{chapter} \emph{oder} \texttt{section} \emph{oder} \texttt{none}\quad und\\ - |tablewithin=| & \texttt{chapter} \emph{oder} \texttt{section} \emph{oder} \texttt{none}\\ -\end{tabular}\end{quote} -geändert werden. Wird "`|none|"' als Wert angegeben, erfolgt die Zählung stur -fortlaufend, ansonsten wird sie in Abhängigkeit von der angegebenen -Gliederungsebene (also "`|chapter|"' oder "`|section|"') geführt; -so würde z.B.~|figure|\-|within=|\x|section| zur Folge haben, -daß der Abbildungszähler in Abhängigkeit von der |\section| Gliederung geführt -wird. - -\iffalse -\medskip - -\pagebreak[3] -\DescribeMacro{within=}\NEWfeature{v3.1i} -####\\\\\\\\\xxxxxxx...... zu |figure|\-|within| und |table|\-|within| ändert -\begin{quote} - |within=| & \texttt{chapter} \emph{oder} \texttt{section} \emph{oder} \texttt{none} -\end{quote} -den Namen der \emph{aktuellen} Umgebung. -\fi - -\bigskip - -\begin{Expert*} -Der Name und die Nummerierung werden intern durch die Kommandos -|\|\meta{type}|name| \& |\the|\meta{type} gesteuert, z.B.~bei Abbildungen -durch |\figure|\-|name| \& |\the|\-|figure|. -Während die obenstehenden Optionen in der Regel ausreichend sind, -kann es manchmal vonnöten sein, diese zwei Makros direkt umzudefinieren. -So liefert zum Beispiel -\begin{quote} - |\captionsetup{figurewithin=section}|\\ - |\renewcommand\thefigure{\arabic{section}\alph{figure}}| -\end{quote} -ein Nummernschema \meta{section}\meta{figure} mit einem numerischen -Abschnittszähler und einem alphanumerischen Abbildungszähler, -wie z.B.~"`|Figure 2b|"'. -\end{Expert*} - % --------------------------------------------------------------------------- % \subsection{Typen} @@ -1358,10 +1272,10 @@ sondern verwenden Sie stattdessen immer |\caption|\-|setup{type=|\x\ldots|}|. \medskip -Eigene Typen können mit |\Declare|\-|Caption|\-|Type| (angeboten von diesem -Paket), |\new|\-|float| (angeboten vom \package{float}"=Paket\cite{float}) -oder |\Declare|\-|New|\-|Float|\-|Type| (angeboten vom -\package{floatrow}"=Paket\cite{floatrow}) definiert werden. +Eigene Typen können mit + |\Declare|\-|Floating|\-|Environment| (angeboten vom \package{newfloat}"=Paket), + |\new|\-|float| (angeboten vom \package{float}"=Paket\cite{float}) oder + |\Declare|\-|New|\-|Float|\-|Type| (angeboten vom \package{floatrow}"=Paket\cite{floatrow}) definiert werden. \medskip @@ -2165,61 +2079,6 @@ definiert werden. Im Laufe des Dokumentes wird \#1 dann mit dem Bezeichner-Präfix (z.B.~|\p@figure|), und \#2 mit der Referenznummer (z.B.~|\thefigure|) ersetzt. -\bigskip - -\pagebreak[3] -\DescribeMacro{\DeclareCaptionType}\NEWfeature{v3.1f} -Eigene Gleitumgebungen und Umgebungstypen werden mit -\begin{quote} - |\DeclareCaptionType|\oarg{Optionen}\marg{Typ}\oarg{Name}\oarg{Listenname} -\end{quote} -definiert; wobei \meta{Optionen} ein oder mehrere Optionen hiervon sind: -\begin{quote}\begin{tabular}{r@{}l@{\qquad}l} - |fileext=| & \meta{Dateiendung} - & {\small(z.B.~|fileext=lod|)}\\ -% |listname=|\meta{list name}\\ -% |name=|\meta{prosa name}\\ - |placement=| & \meta{Kombination aus \,\purett{htbp}} - & {\small(z.B.~|placement=tbp|)}\\ - |within=| & \meta{Bezugszähler} \emph{oder} \texttt{none}\quad. - & {\small(z.B.~|within=section|)} -\end{tabular}\end{quote} -Werden keine \meta{Optionen} angegeben, so wird "`lo\meta{type}"' als -\meta{Dateiendung} für die Generierung der Liste verwendet, "`|tbp|"' als -Standard"=Positionierung, und "`|chapter|"' bzw.~"'|none|"' als -\meta{Bezugszähler}. -(Wird hingegen "`|none|"' angegeben, wird die neue Umgebung einfach -durchgängig gezählt.) - -Wird kein \meta{Name} angegeben, dann wird der Bezeichner der neuen Umgebung -auf \meta{Typ} gesetzt, allerdings mit einem Großbuchstaben beginnend. -Wird kein \meta{Listenname} angegeben, wird der Listenname auf -"`List of \meta{Name}s"' vorbelegt. -(Diese Vorbelegungen sind also nur für englischsprachige Dokumente geeignet, -bei anderssprachigen Dokumenten sollte man also immer \meta{Name} und -\meta{Listenname} mit angeben.) - -Die dazugehörige Liste wird analog zu |\list|\-|of|\-|figures| und -|\list|\-|of|\-|tables| mit dem Befehl |\list|\-|of|\meta{Typ}|s| gesetzt. -Ist das \package{fltpage}"=Paket geladen, wird automatisch ebenfalls eine -Umgebung namens |FP|\meta{Typ} definiert; ebenso wird ggf.~|sideways|\meta{Typ} -(\package{rotating}"=Paket), |SC|\meta{Type} (\package{sidecap}"=Paket) -und |wrap|\meta{Typ} (\package{wrapfig}"=Paket) definiert. - -\smallskip - -\pagebreak[3] -So definiert zum Beispiel -\begin{quote} - |\DeclareCaptionType{diagram}[Diagramm][Diagrammverzeichnis]| -\end{quote} -eine neue gleitende Umgebung namens |diagram|, die Liste wird intern in der -Datei mit der Endung |lodiagram| generiert, der Name (für den Bezeichner) -lautet "`Diagram"', der Listenname "`Diagrammverzeichnis"'. -Die Liste kann mit |\listofdiagrams| gesetzt werden. -Abhängig von den geladenen Paketen werden auch ggf.~die Umgebungen |FPdiagram|, -|sidewaysdiagram|, |SCdiagram| und |wrapdiagram| mitdefiniert. - % --------------------------------------------------------------------------- % \pagebreak[3] @@ -2835,7 +2694,7 @@ definiert werden; außerdem verhalten sich diese Gleitumgebungen auch in anderen Belangen nicht exakt wie die Umgebungen |figure| und |table|. Als Konsequenz arbeiten viele Pakete nicht sehr gut mit diesen zusammen. Weiterhin hat das \package{float}"=Paket einige Fallstricke und Schwächen, -weswegen ich als Alternative den Befehl |\Declare|\-|Caption|\-|Type| +weswegen ich als Alternative das \package{newfloat}"=Paket anbiete, um neue Gleitumgebungen zu definieren, die sich wie |figure| und |table| verhalten sollen. Und für die Definition von mächtigeren Gleitumgebungen bzw.~der @@ -2912,10 +2771,6 @@ getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. -Weiterhin definiert |\Declare|\-|Caption|\-|Type|\marg{Name} auch automatisch -eine Umgebung namens "`|FP|\meta{Name}"', die sich wie |FP|\-|figure| und -|FP|\-|table| verhält. - \pagebreak[3] \subsection{hyperref} \label{hyperref} @@ -3182,11 +3037,6 @@ Der Befehl |\rot|\-|caption| wird vom \package{caption}"=Paket derart erweitert, daß |\rot|\-|caption*| und |\rot|\-|caption|\-|of| analog zu |\caption*| und |\caption|\-|of| verwendet werden können. -\NEWfeature{v3.1} -Weiterhin definiert |\Declare|\-|Caption|\-|Type|\marg{Name} automatisch -zusätzlich eine Gleitumgebung, die sich wie |side|\-|ways|\-|figure| und -|side|\-|ways|\-|table| verhält. - \pagebreak[3] \subsection{setspace} \label{setspace} @@ -3223,11 +3073,6 @@ Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. \pagebreak[3] -\NEWfeature{v3.1} -Weiterhin definiert |\Declare|\-|Caption|\-|Type|\marg{Name} automatisch -zusätzlich eine Gleitumgebung, die sich wie |SC|\-|figure| und |SC|\-|table| -verhält. - \begin{Note} Das \package{sidecap}"=Paket bietet eigene Optionen für die Ausrichtung der Beschriftung. Werden diese verwendet, so überschreiben sie die Einstellungen, @@ -3274,7 +3119,7 @@ entweder `|t|' (für eine Ausrichtung am oberen Rand), `|b|' (für eine Ausrichtung am unteren Rand), oder `|c|' (für eine zentrierte Ausrichtung) sein. Die Vorbelegung für die Umgebung |table| ist `|t|', für |figure| und alle -anderen, die mit |\Declare|\-|Caption|\-|Type| definiert werden, `|b|'. +anderen, die mit |\Declare|\-|Floating|\-|Environment| definiert werden, `|b|'. \pagebreak[3] \subsection{subfigure} @@ -3380,10 +3225,6 @@ getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. -Weiterhin definiert |\Declare|\-|Caption|\-|Type|\marg{Name} automatisch -zusätzlich eine Gleitumgebung, die sich wie |wrap|\-|figure| und -|wrap|\-|table| verhält. - \begin{Note} Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen bzw.~Tabellen angewandt, solange sie nicht explizit mit @@ -3391,14 +3232,6 @@ bzw.~Tabellen angewandt, solange sie nicht explizit mit bzw.~|\caption|\-|setup[wrap|\-|table]{|\ldots|}| gesetzt werden. \end{Note} -\begin{Note} -Soll das \package{wrapfig}"=Paket in Zusammenarbeit mit dem -\package{float}"=Paket verwendet werden, ist es wichtig, daß Sie das -\package{wrapfig}"=Paket \emph{nach} dem \package{float}"=Paket laden. -Weiterhin müssen die Befehle |\new|\-|float| und |\restyle|\-|float| -\emph{nach} dem Laden beider Pakete angewandt werden. -\end{Note} - % --------------------------------------------------------------------------- % \clearpage @@ -3533,9 +3366,7 @@ Option & Kurzbeschreibung & Abschnitt \\ |belowskip| & setzt den Abstand unter der Beschriftung & \ref{skips} \\ |compatibility|\preambleoption & erzwingt (Nicht-)Kompatibilität & \ref{compatibility} \\ %|config| & & \ref{x} \\ -|figurename|\preambleoption & setzt den Abbildungsnamen & \ref{names} \\ |figureposition|\preambleoption & gibt einen Hinweis auf die Position & \ref{skips} \\ -|figurewithin|\preambleoption & wählt die Zählerebene der Abbildungen & \ref{numbering} \\ |font|(|+|) & wählt den Zeichensatz & \ref{fonts} \\ |format| & wählt das Format & \ref{formats} \\ |FPlist| & Wohin soll der Listeneintrag einer FPfigure zeigen? & \ref{fltpage} \\ @@ -3550,9 +3381,7 @@ Option & Kurzbeschreibung & Abschnitt \\ |labelsep| & wählt den Trenner zw. Bezeichner$+$Text & \ref{formats} \\ |labelseparator| & -- identisch mit |labelsep| -- & \ref{formats} \\ |list| & schaltet die Listeneinträge an bzw. aus & \ref{lists} \\ -|listfigurename| & setzt den Namen des Abbildungsverzeichnisses & \ref{names} \\ |listformat| & wählt das Listenformat & \ref{lists} \\ -|listtablename| & setzt den Namen des Tabellenverzeichnisses & \ref{names} \\ |margin| & setzt den Rand bzw. die Ränder & \ref{margins} \\ |margin*| & setzt den Rand, sofern keine Breite gesetzt ist & \ref{margins} \\ |maxmargin| & setzt den max. zu verwendenen Rand & \ref{margins} \\ @@ -3570,9 +3399,7 @@ Option & Kurzbeschreibung & Abschnitt \\ |style| & wählt einen Stil aus & \ref{style} \\ %|style*| & wählt einen Stil aus & \ref{style} \\ |subtype| & setzt den Typ der Unterbeschriftungen & \phantom{t}--~\footnotemark \\ -|tablename|\preambleoption & setzt den Tabellennamen & \ref{names} \\ |tableposition|\preambleoption & gibt einen Hinweis auf die Position & \ref{skips} \\ -|tablewithin|\preambleoption & wählt die Zählerebene der Tabellen & \ref{numbering} \\ |textfont|(|+|) & wählt den Zeichensatz des Textes & \ref{fonts} \\ |textformat| & wählt das Format des Textes & \ref{formats} \\ |twoside| & wählt den zweiseitigen Modus & \ref{margins} \\ @@ -3626,7 +3453,6 @@ Befehl & & Abschnitt \\ |\DeclareCaptionStyle| & & \ref{declare} \\ |\DeclareCaptionSubType| & & --~\footnotemark \\ |\DeclareCaptionTextFormat| & & \ref{declare} \\ -|\DeclareCaptionType| & & \ref{declare} \\ |\showcaptionsetup| & & \ref{captionsetup} \\ \end{longtable*} \footnotetext{\cs{DeclareCaptionSubType} ist in der Dokumentation @@ -3927,27 +3753,6 @@ Befehl & & Abschnitt \\ \par\See{\Ref{ContinuedFloat}} \Message - |For a successful cooperation of the `wrapfig' package|\\ - |with the `float' package you should load the `wrapfig'|\\ - |package *(right) after* the `float' package.| -\Description - Achten Sie bei der gleichzeitigen Verwendung der Pakete \package{wrapfig} - und \package{float} unbedingt auf die richtige Ladereihenfolge und - Anwendung; das \package{wrapfig}"=Paket sollte unmittelbar nach - dem \package{float}"=Paket geladen werden. - \par\See{\Ref{wrapfig}} - -\Message - |For a successful cooperation of the `wrapfig' package|\\ - |with the `float' package you should use at least|\\ - |`wrapfig' version 3.6.| -\Description - Für die gleichzeitige Verwendung der Pakete \package{wrapfig} und - \package{float} wird die Version $3.6$ des \package{wrapfig}"=Paketes - benötigt. - \par\See{\Ref{wrapfig}} - -\Message |For a successful cooperation we need at least version|\\ |`|\meta{date}|' of package |\meta{package}|, but only version|\\ |`|\meta{old-date}|' is available.| @@ -3970,9 +3775,12 @@ Befehl & & Abschnitt \\ |\caption|\-|of|\marg{type}, oder |\Declare|\-|Caption|\-|Sub|\-|Type| angegebene \meta{type} ist unbekannt. \meta{type} sollte entweder `\texttt{figure}' oder `\texttt{table}', oder - aber eine mit mit |\Declare|\-|Caption|\-|Type|, |\new|\-|float| - (vom \package{float}"=Paket\cite{float} bereitgestellt) - oder |\Declare|\-|NewFloat|\-|Type| + aber eine mit mit + |\Declare|\-|Floating|\-|Environment| + (vom \package{newfloat}"=Paket bereitgestellt), + |\new|\-|float| + (vom \package{float}"=Paket\cite{float} bereitgestellt) oder + |\Declare|\-|NewFloat|\-|Type| (vom \package{floatrow}"=Paket\cite{floatrow} bereitgestellt) definierte Gleitumgebung sein. @@ -4025,23 +3833,6 @@ Befehl & & Abschnitt \\ beeinhaltet. \par\See{\Ref{caption}, \Ref{lists} und \Ref{hyperref}\,} -\iffalse % was removed in v3.1b -\Message - |Something is going wrong here...|\\ - |For a removal of this problem please consult the|\\ - |caption package documentation, especially the sections|\\ - |about the `float' and the `wrapfig' package.| -\Description - Achten Sie bei der gleichzeitigen Verwendung der Pakete \package{wrapfig} - und \package{float} unbedingt auf die richtige Ladereihenfolge und - Anwendung; das \package{wrapfig}"=Paket sollte unmittelbar nach - dem \package{float}"=Paket geladen werden. - Aber vielleicht hat auch ein anderes Paket das - \package{float}"=Paket in einer für \thispackage\ inkompatiblen - Art \& Weise erweitert!? - \par\See{\Ref{float} und \Ref{wrapfig}} -\fi - \Message |Something's wrong--perhaps a missing \caption|\\ |in the last figure or table.| @@ -4209,8 +4000,7 @@ und \package{wrapfig} erhöht. Neue Optionen und Befehle wurden ebenfalls eingeführt, unter anderem |font+|, |figure|\-|within| \& |table|\-|within|, |list| \& |list|\-|format|, |max|\-|margin| \& |min|\-|margin|, -|\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format| und -|\Declare|\-|Caption|\-|Type|. +|\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|. Einen weiteren Gewinn stellt der neu integrierte Kompatibilitätscheck \see*{\Ref{compatibility}}, das neue "`hypcap"' Feature \see*{\Ref{hyperref}\,}, und die Unterstützung von Teil"=Beschriftungen diff --git a/Master/texmf-dist/doc/latex/caption/caption-eng.tex b/Master/texmf-dist/source/latex/caption/caption-eng.tex index a0c66283d03..45efb2896a6 100644 --- a/Master/texmf-dist/doc/latex/caption/caption-eng.tex +++ b/Master/texmf-dist/source/latex/caption/caption-eng.tex @@ -18,13 +18,13 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesFile{caption-eng.tex}[2011/10/05 v3.2 The caption package] +\ProvidesFile{caption-eng.tex}[2011/11/02 v3.2 The caption package] \hbadness=9999 \newcount\hbadness \hfuzz=20pt % Make TeX shut up. %\errorcontextlines=3 @@ -1181,32 +1181,11 @@ different purpose.\footnote{% % --------------------------------------------------------------------------- % -\subsection{Names \& Numbering} -\label{names}\label{numbering} +\subsection{Names} +\label{names} -\DescribeMacro{figurename=} -\DescribeMacro{tablename=}\NEWfeature{v3.0l} -You can change the name of the figures and tables with the options -\begin{quote}\begin{tabular}{@{}r@{}l@{\quad}l@{}} - |figurename=| & \meta{name} & and\\ - |tablename=| & \meta{name} & .\\ -\end{tabular}\end{quote} -The document class usually sets them to ``Figure'' and ``Table'', but for -example with -\begin{quote} - |figurename=Fig.| -\end{quote} -you can change the figure name to ``Fig''. - -\smallskip\INFO -If you use the \package{babel} package, please load \thispackage\ \emph{after} -the \package{babel} package. - -\medskip - -\pagebreak[3] \DescribeMacro{name=}\NEWfeature{v3.1f} -In contrast to the options |figure|\-|name| and |table|\-|name| the option +The option \begin{quote} |name=|\meta{name} \end{quote} @@ -1219,56 +1198,6 @@ This could be useful in conjunction with the optional argument of changes the name to ``Fig.'' for all |wrap|\-|figure|s (while all the other figure captions will still have ``Figure'' as name). -\medskip - -\pagebreak[3] -\DescribeMacro{listfigurename=} -\DescribeMacro{listtablename=}\NEWfeature{v3.1g} -Analogous to the options |figure|\-|name| and |table|\-|name| you can change -the title of the lists here. So for example -\begin{quote} - |listfigurename=List of images| -\end{quote} -changes the title ``List of Figures'' to ``List of images''. - -\bigskip - -\pagebreak[3] -\DescribeMacro{figurewithin=} -\DescribeMacro{tablewithin=}\NEWfeature{v3.1f} -If a document class providing |\chapter| is used (e.g.~\class{report} or -\class{book}), usually the |figure| and |table| caption counters -are dependent on the |chapter| counter. Otherwise usually the |figure| and -|table| counters are continuous throughout the document. - -This can be changed with the options -\begin{quote}\begin{tabular}{rl} - |figurewithin=| & \texttt{chapter} \emph{or} \texttt{section} \emph{or} \texttt{none}\quad and\\ - |tablewithin=| & \texttt{chapter} \emph{or} \texttt{section} \emph{or} \texttt{none}\quad .\\ -\end{tabular}\end{quote} -If ``|none|'' is given as value, the numbering of figures resp. tables will -be continuous throughout the document. -Otherwise the numbering will be dependent on the given counter, -e.g.~|figure|\-|within=|\x|section| gives figures a section-dependent -numbering scheme. - -\bigskip - -\begin{Expert*} -The name and numbering is internally done by the commands -|\|\meta{type}|name| \& |\the|\meta{type}, e.g.~|\figure|\-|name| \& -|\the|\-|figure| for figures. -While usually using the above options are sufficient, sometimes a direct -re-definition of these two macros is necessary. For example: -\begin{quote} - |\captionsetup{figurewithin=section}|\\ - |\renewcommand\thefigure{\arabic{section}\alph{figure}}| -\end{quote} -gives you a section-dependent numbering scheme \meta{section}\meta{figure} -with a numerical section counter and a alphanumerical figure counter, -e.g.~``|Figure 2b|''. -\end{Expert*} - % --------------------------------------------------------------------------- % \subsection{Types} @@ -1312,10 +1241,10 @@ for yourself, like suggested by some documentations, always use \medskip -Own float types can be defined with |\Declare|\-|Caption|\-|Type| offered by -this package, |\new|\-|float| offered by the \package{float} -package\cite{float}, or |\Declare|\-|New|\-|Float|\-|Type| offered by the -\package{floatrow} package\cite{float}. +Own float types can be defined with + |\Declare|\-|Floating|\-|Environment| offered by the \package{newfloat} package, + |\new|\-|float| offered by the \package{float} package\cite{float}, or + |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} package\cite{float}. \medskip @@ -2086,59 +2015,6 @@ You can define your own caption list formats with At usage \#1 gets replaced with the label prefix (e.g.~|\p@figure|), and \#2 gets replaced with the reference number (e.g.~|\thefigure|). -\bigskip - -\pagebreak[3] -\DescribeMacro{\DeclareCaptionType}\NEWfeature{v3.1f} -You can define your own floating environments and caption types with -\begin{quote} - |\DeclareCaptionType|\oarg{options}\marg{type}\oarg{name}\oarg{list name} -\end{quote} -where \meta{options} are one or more of -\begin{quote}\begin{tabular}{r@{}l@{\qquad}l} - |fileext=| & \meta{file extension} - & {\small(e.g.~|fileext=lod|)}\\ -% |listname=|\meta{list name}\\ -% |name=|\meta{prosa name}\\ - |placement=| & \meta{combination of \,\purett{htbp}} - & {\small(e.g.~|placement=tbp|)}\\ - |within=| & \meta{``within'' counter} \emph{or} \texttt{none}\quad. - & {\small(e.g.~|within=section|)} -\end{tabular}\end{quote} -If no \meta{options} are given, ``lo\meta{type}'' will be used as \meta{file -extension} for the list, ``|tbp|'' as \meta{placement} specifier, -and ``|chapter|'' resp. ``|none|'' as \meta{``within'' counter}, -i.e., the counter which resets the numbering. -(If ``|none|'' was specified as value, the numbering of the new -type will be continuous throughout the document.) - -If no \meta{name} is given, the name of the newly created type will be set -to \meta{type}, but with an uppercase first letter. -If no \meta{list name} is given, the list name will be set to ``List of -\meta{name}s''. - -The list will be typeset using the command |\list|\-|of|\meta{type}|s|, -analogous to |\list|\-|of|\-|figures| and |\list|\-|of|\-|tables|. -If the \package{fltpage} package is loaded, an environment called -|FP|\meta{type} will be defined, same for |sideways|\meta{type} -(\package{rotating} package), |SC|\meta{type} (\package{sidecap} package), -and |wrap|\meta{type} (\package{wrapfig} package). - -\smallskip - -\pagebreak[3] -So for example -\begin{quote} - |\DeclareCaptionType{diagram}| -\end{quote} -will define a new caption type and floating environment called |diagram|, -the list will be stored in a file with the extension |lodiagram|, the name -(used for the caption) will be ``Diagram'' and the list name -``List of Diagrams''. -The list could be typeset with |\listofdiagrams|. -Dependent on which packages are loaded, the environments |FPdiagram|, -|sidewaysdiagram|, |SCdiagram|, and |wrapdiagram| will be defined additionally. - % --------------------------------------------------------------------------- % \subsection{Further examples} @@ -2733,8 +2609,8 @@ are not behaving exactly like the pre-defined floats |figure| and |table|. As a consequence many packages do not cooperate well with these. Furthermore the \package{float} package has some caveats \& limitations, so if you just want to define a new simple floating environment---behaving -like |figure| or |table|---I recommend using |\Declare|\-|Caption|\-|Type| -instead. +like |figure| or |table|---I recommend using |\Declare|\-|Floating|\-|Environment| +offered by the \package{newfloat} package instead. And for defining non-simple floating environments and customization I recommend using |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} package\cite{floatrow}. @@ -2803,10 +2679,6 @@ environments you can use These options will be executed additionally to the regular ones for |figure| or |table|. -Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define -an environment called |FP|\meta{name} which behaves like |FP|\-|figure| and -|FP|\-|table|. - \pagebreak[3] \subsection{hyperref} \label{hyperref} @@ -3067,11 +2939,6 @@ The command |\rot|\-|caption| will be extended by \thispackage, so |\rot|\-|caption*| and |\rot|\-|caption|\-|of| can be used analogous to |\caption*| and |\caption|\-|of|. -\NEWfeature{v3.1} -Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define -an environment called |side|\-|ways|\meta{name} which behaves like -|side|\-|ways|\-|figure| and |side|\-|ways|\-|table|. - \pagebreak[3] \subsection{setspace} \label{setspace} @@ -3105,11 +2972,6 @@ These options will be executed additionally to the regular ones for |figure| or |table|. \pagebreak[3] -\NEWfeature{v3.1} -Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define -an environment called |SC|\meta{name} which behaves like |SC|\-|figure| and -|SC|\-|table|. - \begin{Note} The \package{sidecap} package offers its own options for justification. If set, they will override the one specified with the caption option @@ -3152,7 +3014,7 @@ The command sets the vertical position of the side-caption. \meta{pos} can be either `|t|' (for top alignment), `|b|' (for bottom alignment), or `|c|' (for center alignment). The default setting for |table| is `|t|', for |figure| and all other ones -defined with |\Declare|\-|Caption|\-|Type| it's `|b|'. +defined with |\Declare|\-|Floating|\-|Environment| it's `|b|'. \pagebreak[3] \subsection{subfigure} @@ -3251,10 +3113,6 @@ If you want to setup special options for the |wrap|\-|figure| and These options will be executed additionally to the regular ones for |figure| or |table|. -Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define -an environment called |wrap|\meta{name} which behaves like |wrap|\-|figure| -and |wrap|\-|table|. - \begin{Note} The |margin| resp.~|width| setting will not be used for these figures and tables, unless you set it explicit with @@ -3262,13 +3120,6 @@ tables, unless you set it explicit with or |\caption|\-|setup[wrap|\-|table]{|\ldots|}|. \end{Note} -\begin{Note} -If the \package{wrapfig} package should be used in coorperation with the -\package{float} package, it needs to be loaded \emph{after} the -\package{float} package. Furthermore |\new|\-|float| and |\restyle|\-|float| -commands \emph{should} be placed after \emph{both} packages have been loaded. -\end{Note} - % --------------------------------------------------------------------------- % \clearpage @@ -3384,9 +3235,7 @@ Option & Short description & Section \\ |belowskip| & sets the skip below caption & \ref{skips} \\ |compatibility|\preambleoption & force (non-)compatibility & \ref{compatibility} \\ %|config| & & \ref{x} \\ -|figurename|\preambleoption & sets the figure name & \ref{names} \\ |figureposition|\preambleoption & gives a hint about the figure caption position & \ref{skips} \\ -|figurewithin|\preambleoption & sets the figure ``within'' counter & \ref{numbering} \\ |font|(|+|) & sets the font & \ref{fonts} \\ |format| & sets the format & \ref{formats} \\ |FPlist| & To where the list entry of a FPfigure should link? & \ref{fltpage} \\ @@ -3401,9 +3250,7 @@ Option & Short description & Section \\ |labelsep| & sets the label separator & \ref{formats} \\ |labelseparator| & --same as |labelsep|-- & \ref{formats} \\ |list| & switches the entries in the List on or off & \ref{lists} \\ -|listfigurename| & sets the `List of Figure' name & \ref{names} \\ |listformat| & sets the `List of Figure/Table' entry format & \ref{lists} \\ -|listtablename| & sets the `List of Tables' name & \ref{names} \\ |margin| & sets the margin & \ref{margins} \\ |margin*| & sets the margin, but only if no width is set & \ref{margins} \\ |maxmargin| & sets the max. margin & \ref{margins} \\ @@ -3421,9 +3268,7 @@ Option & Short description & Section \\ |style| & sets the caption style & \ref{style} \\ %|style*| & sets the caption style & \ref{style} \\ |subtype| & sets the sub-caption type & \phantom{t}--~\footnotemark \\ -|tablename|\preambleoption & sets the table name & \ref{names} \\ |tableposition|\preambleoption & gives a hint about the table caption position & \ref{skips} \\ -|tablewithin|\preambleoption & sets the table ``within'' counter & \ref{numbering} \\ |textfont|(|+|) & sets the font of the caption text & \ref{fonts} \\ |textformat| & sets the format of the caption text & \ref{formats} \\ |twoside| & selects the two-side mode & \ref{margins} \\ @@ -3477,7 +3322,6 @@ Command & & Section \\ |\DeclareCaptionStyle| & & \ref{declare} \\ |\DeclareCaptionSubType| & & --~\footnotemark \\ |\DeclareCaptionTextFormat| & & \ref{declare} \\ -|\DeclareCaptionType| & & \ref{declare} \\ |\showcaptionsetup| & & \ref{captionsetup} \\ \end{longtable*} \footnotetext{\cs{DeclareCaptionSubType} is explained in the @@ -3760,26 +3604,6 @@ Command & & Section \\ \par\See{\Ref{ContinuedFloat}} \Message - |For a successful cooperation of the `wrapfig' package|\\ - |with the `float' package you should load the `wrapfig'|\\ - |package *(right) after* the `float' package.| -\Description - Please take care of the load order of packages - if you use the \package{wrapfig} package in cooperation with the - \package{float} package. - \par\See{\Ref{wrapfig}} - -\Message - |For a successful cooperation of the `wrapfig' package|\\ - |with the `float' package you should use at least|\\ - |`wrapfig' version 3.6.| -\Description - Please take care of the version of the \package{wrapfig} package - if you use the \package{wrapfig} package in cooperation with the - \package{float} package. - \par\See{\Ref{wrapfig}} - -\Message |For a successful cooperation we need at least version|\\ |`|\meta{date}|' of package |\meta{package}|, but only version|\\ |`|\meta{old-date}|' is available.| @@ -3800,10 +3624,10 @@ Command & & Section \\ |\caption|\-|of|\marg{type}, or |\Declare|\-|Caption|\-|Sub|\-|Type| is not defined. \meta{type} should be either `\texttt{figure}' or `\texttt{table}', or - any other floating environment defined with |\Declare|\-|Caption|\-|Type|, - |\new|\-|float| offered by the \package{float} package\cite{float}, - or |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} - package\cite{floatrow}. + any other floating environment defined with + |\Declare|\-|Floating|\-|Environment| offered by the \package{newfloat} package, + |\new|\-|float| offered by the \package{float} package\cite{float}, or + |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} package\cite{floatrow}. \Message |Not allowed in longtable* environment.| @@ -3851,21 +3675,6 @@ Command & & Section \\ Figures resp.~List of Tables, too, even if you don't use such list. \par\See{\Ref{caption}, \Ref{lists}, and \Ref{hyperref}\,} -\iffalse % was removed in v3.1b -\Message - |Something is going wrong here...|\\ - |For a removal of this problem please consult the|\\ - |caption package documentation, especially the sections|\\ - |about the `float' and the `wrapfig' package.| -\Description - Please take care of the load order of packages - if you use the \package{wrapfig} package in cooperation with the - \package{float} package. But maybe a different package tried to extent - the \package{float} package in a manner which is incompatible to - \thispackage!? - \par\See{\Ref{float} and \Ref{wrapfig}} -\fi - \Message |Something's wrong--perhaps a missing \caption|\\ |in the last figure or table.| @@ -4001,7 +3810,7 @@ without proper documentation in 1995 because of the strong demand for new features and adaptations to additional packages like the \package{longtable} package. Furthermore it offered a revised support of the \package{subfigure} package. -(A version $2.1$ was offered as bugfix-release in 2002.) +(An improved version $2.1$ was offered in 2002.) In 2003 I finally found some time, so a new regular release $3.0$ of the \package{caption} package could be build in cooperation with @@ -4027,8 +3836,7 @@ and \package{wrapfig} packages. New options and commands were introduced as well, among other things |font+|, |figure|\-|within| \& |table|\-|within|, |list| \& |list|\-|format|, |max|\-|margin| \& |min|\-|margin|, -|\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|, and -|\Declare|\-|Caption|\-|Type|. +|\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|. Further benefits are the new compatibility check \see*{\Ref{compatibility}}, the new ``hypcap'' feature \see*{\Ref{hyperref}\,}, and the sub-caption feature \see*{\package{subcaption} package documentation}. diff --git a/Master/texmf-dist/doc/latex/caption/caption-rus.tex b/Master/texmf-dist/source/latex/caption/caption-rus.tex index 2cd238509b2..a7fc44a3479 100644 --- a/Master/texmf-dist/doc/latex/caption/caption-rus.tex +++ b/Master/texmf-dist/source/latex/caption/caption-rus.tex @@ -2,7 +2,7 @@ % This is file `caption-rus.tex'. % Russian translation of `caption-eng.tex' % -% Copyright (C) 1994-2007 Axel Sommerfeldt (caption@sommerfee.de) +% Copyright (C) 1994-2007 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm) % % -------------------------------------------------------------------------- % @@ -229,8 +229,9 @@ % last revised \filedate. \title{Íàñòðîéêà ïîäïèñåé ïëàâàþùèõ îáúåêòîâ (ôëîòîâ) ñ~ïîìîùüþ ïàêåòà \package{caption}\thanks{Äàííûé ïàêåò âåðñèè - \fileversion, ïîñëåäíèé ðàç ìîäèôèöèðîâàí \filedate. -%^^A% Translattion of the version v3.1h, dated 2008/04/03. +%%% \fileversion, ïîñëåäíèé ðàç ìîäèôèöèðîâàí \filedate. + v3.1m, ïîñëåäíèé ðàç ìîäèôèöèðîâàí 2010/01/09. +%^^A% Translation of the version v3.1h, dated 2008/04/03. %^^A% The questions and notes about translation please %^^A% send to \texttt{Lapko.O@g23.relcom.ru} (Olga Lapko). %^^A% The version of translation could be obsolete. Please @@ -245,7 +246,7 @@ }}{}} % \author{Axel Sommerfeldt\\ \author{Àêñåëü Çîììåðôåëüäò (Axel Sommerfeldt)\\ - \href{mailto:caption@sommerfee.de}{\texttt{caption@sommerfee.de}}} + \href{mailto:axel.sommerfeldt@f-m.fm}{\texttt{axel.sommerfeldt@f-m.fm}}} \date{\docdate} \maketitle diff --git a/Master/texmf-dist/source/latex/caption/caption.dtx b/Master/texmf-dist/source/latex/caption/caption.dtx index f29890615e5..de809f491a5 100644 --- a/Master/texmf-dist/source/latex/caption/caption.dtx +++ b/Master/texmf-dist/source/latex/caption/caption.dtx @@ -19,13 +19,13 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{3663} +% \CheckSum{3534} % % \iffalse %<*driver> @@ -220,7 +220,7 @@ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption}[2011/09/30 v3.2c Customizing captions (AR)] +\ProvidesPackage{caption}[2011/11/02 v3.2d Customizing captions (AR)] %\@ifundefined{PackageRedefines}{}{\PackageRedefines{caption}{caption}} % \end{macrocode} % @@ -323,16 +323,12 @@ % \changes{v3.1f}{2007/11/18}{After-preamble variant added} % \changes{v3.1g}{2008/02/28}{Renamed from \cs{caption@SetFloatName} to \cs{caption@SetName}} % \changes{v3.1i}{2008/08/02}{Bugfix: Works now without \cs{addto}, too} +% \changes{v3.2d}{2011/10/29}{Outsourced to \package{newfloat} package} % |\caption@SetName|\marg{cmd}\marg{value} % \begin{macrocode} -\newcommand*\caption@SetName[2]{% - \caption@setname{#1}{#2}% - \begingroup - \caption@ifundefined\languagename{}{% - \@ifundefined{captions\languagename}{}{% - \expandafter\g@addto@macro\csname captions\languagename\endcsname - {\caption@setname{#1}{#2}}}}% - \endgroup} +\newcommand*\caption@SetName{% + \RequirePackage{newfloat}% + \newfloat@setname} % \end{macrocode} % \begin{macrocode} \newcommand*\caption@setname[2]{\@namedef{#1name}{#2}} @@ -354,6 +350,7 @@ \newcommand*\caption@DeclareWithinOption[1]{% \DeclareCaptionOption{#1within}{\caption@Within{#1}{##1}}% \DeclareCaptionOptionNoValue{#1without}{\caption@Within{#1}{none}}} +\@onlypreamble\caption@DeclareWithinOption % \end{macrocode} % \end{macro} % \begin{macrocode} @@ -362,16 +359,19 @@ % \end{macrocode} % \begin{macrocode} \DeclareCaptionOption{within}{% - \caption@ifundefined\c@figure{}{\caption@Within{figure}{#1}}% - \caption@ifundefined\c@table{}{\caption@Within{table}{#1}}% - \caption@For{typelist}{\caption@Within{##1}{#1}}% - \def\caption@within@default{#1}} -\DeclareCaptionOptionNoValue{without}{\KV@caption@within{none}} + \RequirePackage{newfloat}% + \newfloatsetup{within=#1}} +\DeclareCaptionOptionNoValue{without}{% + \RequirePackage{newfloat}% + \newfloatsetup{without}} % \end{macrocode} % \begin{macro}{\caption@Within} % \changes{v3.1}{2007/12/21}{This macro added} +% \changes{v3.2d}{2011/10/29}{Outsourced to \package{newfloat} package} % \begin{macrocode} -\newcommand*\caption@Within[1]{\def\caption@type{#1}\KV@caption@DCT@within} +\newcommand*\caption@Within{% + \RequirePackage{newfloat}% + \newfloat@setwithin} % \end{macrocode} % \end{macro} % @@ -760,7 +760,7 @@ % \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed} % \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added} % \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore} -% \changes{v3.2c}{2011/09/04}{Support of \cs{donemaincaptiontrue} added} +% \changes{v3.2c}{2011/09/04}{Support of \cs{donemaincaptiontrue} from \textsf{memoir} document class added} % Here comes our definition of |\caption| and |\caption*|. % Beside the support of the starred variant this code was adapted to the % various packages we support. @@ -795,6 +795,7 @@ % \changes{v3.1f}{2007/11/28}{Bugfix: Handling of \texttt{@minipage} flag added} % \changes{v3.1f}{2007/11/28}{Support of option \opt{@minipage} added} % \changes{v3.1g}{2008/03/16}{Internal: Uses \cs{caption@prepareanchor} now} +% \changes{v3.2d}{2011/10/21}{Adapted to the \textsf{memoir} document class} % As above, our version has been adapted to the packages we support. % Additionally our code is nested by |\caption@beginex| \& % |\caption@end| instead of |\begingroup| \& |\endgroup|. @@ -810,6 +811,8 @@ % \begin{macrocode} \ifcaption@star \else \caption@prepareanchor{#1}{#2}% + \M@gettitle{#2}% + \memcaptioninfo{#1}{\csname the#1\endcsname}{#2}{#3}% \fi % \end{macrocode} % \begin{macrocode} @@ -829,6 +832,11 @@ \caption@if@minipage\@minipagetrue\@minipagefalse}% \caption@end} % \end{macrocode} +% \textsf{memoir} document class stuff: +% \begin{macrocode} +\providecommand\M@gettitle[1]{} +\providecommand\memcaptioninfo[4]{} +% \end{macrocode} % \end{macro} % % \begin{macro}{\caption@prepareanchor} @@ -2608,23 +2616,6 @@ }{% % \end{macrocode} % -% \iffalse -% \begin{macro}{\caption@of} -% If the float is defined by the float package (which means |\fst@|\meta{type} -% is defined) we `execute' this float style, so |\@fs@iftopcapt| is set to its -% proper value. -% Furthermore we undo the re-definition of |\caption@setfloatcapt| which was -% done by |\float@dostyle|. -% \begin{macrocode} -% \renewcommand*\caption@of[2]{% -% \float@ifstyle{#2}{% -% \float@dostyle{#2}% -% \let\caption@setfloatcapt\@firstofone}{}% -% \caption@settype*{#2}#1}% -% \end{macrocode} -% \end{macro} -% \fi -% % \begin{macro}{\@float@setevery} % \changes{v3.1k}{2009/10/09}{Bugfix 08-12-05: \cs{color@begin/endgroup} added % to redefinition of \cs{caption@setfloatcapt}} @@ -2722,21 +2713,6 @@ % \end{macro} % \end{macro} % -% \begin{macro}{\float@ifstyle} -% \changes{v3.1}{2007/06/10}{This macro added} -% |\float@ifstyle|\marg{type}\marg{if-clause}\marg{else-clause}\par -% Checks if the given \meta{type} (e.g.~|figure|) is associated with a -% float style (e.g.~|boxed|). -% \begin{macrocode} - \providecommand*\float@ifstyle[1]{% - \expandafter\ifx\csname fst@#1\endcsname\relax - \expandafter\@secondoftwo - \else - \expandafter\@firstoftwo - \fi}% -% \end{macrocode} -% \end{macro} -% % \begin{macro}{\float@getstyle} % \changes{v3.1}{2007/06/10}{This macro added} % |\float@getstyle|\marg{cmd}\marg{type}\par @@ -2767,26 +2743,6 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\float@setstyle} -% \changes{v3.1}{2007/06/10}{This macro added} -% |\float@setstyle|\marg{type}\marg{style}\par -% Sets or changes the float style associated with \meta{type}. -% \begin{macrocode} - \providecommand*\float@setstyle[2]{% - \expandafter\edef\csname fst@#1\endcsname{% - \expandafter\noexpand\csname fs@#2\endcsname}}% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\float@dostyle} -% \changes{v3.1}{2007/07/23}{This macro added} -% |\float@dostyle|\marg{type} -% \begin{macrocode} - \providecommand*\float@dostyle[1]{% - \@nameuse{fst@#1}\@float@setevery{#1}}% -% \end{macrocode} -% \end{macro} -% % \begin{macro}{\float@ifcaption} % \changes{v3.1}{2007/06/23}{This macro added} % |\float@ifcaption|\marg{type}\marg{if-clause}\marg{else-clause}\par @@ -2809,7 +2765,6 @@ % % \begin{macrocode} }}{% - \providecommand*\float@ifstyle[1]{\@secondoftwo}% \providecommand*\float@ifcaption[1]{\@secondoftwo}% % \clearcaptionsetup{boxed}% used by the floatrow package? } @@ -3054,14 +3009,6 @@ % \end{macrocode} % \end{macro} % -% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines FP-variant, too} -% \changes{v3.1k}{2009/09/28}{Bugfix regarding newly defined \package{fltpage} environments} -% \begin{macrocode} - \caption@For{typelist}{% - \newcounter{FP@#1C}% - \newenvironment{FP#1}{\FP@floatBegin{#1}}{\FP@floatEnd}}% -% \end{macrocode} -% % \begin{macrocode} }{% \let\caption@ifFPlistcap\@undefined @@ -3477,7 +3424,7 @@ % % \begin{macro}{\ext@lstlisting} % \changes{v3.1}{2007/03/03}{This macro added} -% Since the \package{listings} package do not define |\ext@lstlisting|, +% Since the \package{listings} package do not define |\ext@lstlisting| % but we needed it when |\captionof{lstlisting}| will be done by the end user, % we define it here. % \begin{macrocode} @@ -3992,13 +3939,6 @@ % \end{macrocode} % \end{macro} % -% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines sideways-variant, too} -% \begin{macrocode} - \caption@For{typelist}{% - \newenvironment{sideways#1}{\@rotfloat{#1}}{\end@rotfloat}% - \newenvironment{sideways#1*}{\@rotdblfloat{#1}}{\end@rotdblfloat}}% -% \end{macrocode} -% % \begin{macrocode} }{} % \end{macrocode} @@ -4105,20 +4045,6 @@ % \end{macrocode} % \end{macro} % -% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines SC-variant, too} -% \changes{v3.1f}{2007/12/23}{Bugfix in definition of SC-variant} -% \begin{macrocode} - \newcommand*\caption@For@SC[2]{% - \def#1{b}% = \sidecaptionvpos{#2}{b} (v1.6) - \newenvironment{SC#2}% - {\SC@float[#1]{#2}}{\endSC@float}% - \newenvironment{SC#2*}% - {\SC@dblfloat[#1]{#2}}{\endSC@dblfloat}}% - \@onlypreamble\caption@For@SC - \caption@For{typelist}{% - \expandafter\caption@For@SC\csname SC@#1@vpos\endcsname{#1}}% -% \end{macrocode} -% % \begin{macrocode} }{} % \end{macrocode} @@ -4372,129 +4298,28 @@ % % \subsubsection{The wrapfig package} % \changes{v3.1}{2007/05/05}{Support of the \package{wrapfig} package added} +% \changes{v3.2d}{2011/11/02}{Support of the \package{wrapfig} package rewritten} % % \begin{macrocode} -\caption@IfPackageLoaded{wrapfig}{% ver 3.3 (Oct 12, 1999) -% \end{macrocode} -% -% \begin{macro}{\float@ifstyle} -% \changes{v3.1}{2007/06/10}{This macro added} -% |\float@ifstyle|\marg{type}\marg{if-clause}\marg{else-clause}\par -% (see \package{float} package support for details) -% \begin{macrocode} - \providecommand*\float@ifstyle[1]{% - \expandafter\ifx\csname fst@#1\endcsname\relax - \expandafter\@secondoftwo - \else - \expandafter\@firstoftwo - \fi}% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\caption@restylewrapfloat} -% This one redefines the |wrap#1| environment, e.g.~|wrapfigure|. -% Our code uses |\caption@setoptions{wrapfigure}| so -% |\captionsetup[wrapfigure]{|\ldots|}| will work.\par -% But first we check if our redefinition was already done, this could -% happen inside |\float@restyle| when the \package{wrapfig} support of -% the \package{float} package was not installed successfully, so it has -% not redefined |\wrap#1| there. -% \begin{macrocode} - \newcommand*\caption@restylewrapfloat[1]{% - \expandafter\ifx\csname caption@OUR@wrap#1\expandafter\endcsname - \csname wrap#1\endcsname - \caption@Error{% - For a successful cooperation of the `wrapfig' package\MessageBreak - with the `float' package you should load the `wrapfig'\MessageBreak - package *after* the `float' package}% - \else - \expandafter\let\csname caption@ORI@wrap#1\expandafter\endcsname - \csname wrap#1\endcsname - \@namedef{wrap#1}{\caption@wrapfloat{#1}}% - \expandafter\let\csname caption@OUR@wrap#1\expandafter\endcsname - \csname wrap#1\endcsname - \fi}% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\caption@wrapfloat} -% \begin{macrocode} - \newcommand*\caption@wrapfloat[1]{% - \caption@settype*{#1}% - \float@ifstyle{#1}{% - \ifx\WF@floatstyhook\@undefined - \caption@Error{% - For a successful cooperation of the `wrapfig' package\MessageBreak - with the `float' package you should use at least\MessageBreak - `wrapfig' version 3.6}% - \else - \float@dostyle{#1}% - \fi}{}% - \caption@clearmargin -%%% \caption@setoptions{wrapfloat}% - \caption@setoptions{wrap#1}% - \@nameuse{caption@ORI@wrap#1}}% -% \end{macrocode} -% \end{macro} -% -% Now we redefine the \package{wrapfig} environments we know about.\par -% If someone has placed a |\newfloat| right between |\usepackage{wrapfig}| -% and |\usepackage{caption}| (or loads \thispackage\ first, so all these -% patches will be done with |\AtBeginDocument|) we have bad luck since the -% \package{float} package do not offer a list of (re)styled floats. -% (This would finally lead to an error in |\caption@setfloatcapt|.) -% -% \begin{macrocode} - \caption@restylewrapfloat{figure}% - \caption@restylewrapfloat{table}% -% \end{macrocode} -% -% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines wrap-variant, too} -% \begin{macrocode} - \caption@For{typelist}{% - \newenvironment{wrap#1}{\wrapfloat{#1}}{\endwrapfloat}% - \caption@restylewrapfloat{#1}}% +\caption@IfPackageLoaded{wrapfig}[2003/01/31 v3.6]{% % \end{macrocode} % -% \begin{macrocode} - \ifx\WF@floatstyhook\@undefined \else % wrapfig v3.6 -% \end{macrocode} -% -% \begin{macro}{\float@restyle} -% If the \package{wrapfig} package \version{3.6} is used, we patch -% |\float@restyle| (if defined), too, so new or restyled floats will be -% handled correctly, too. -% \begin{macrocode} - \caption@ifundefined\float@restyle{}{% - \toks@=\expandafter{\float@restyle{#1}% (env may or may not be defined) - \caption@restylewrapfloat{#1}}% - \edef\@tempa{\def\noexpand\float@restyle##1{\the\toks@}}% - \@tempa}% perform redefinitions -% \end{macrocode} -% \end{macro} -% % \begin{macro}{\wrapfloat} -% An additional check of the package load order: -% If both, neither the \package{wrapfig} package nor \thispackage\ haven't -% catch |\float@restyle|, we finally splash down at |\wrapfloat|. +% First of all we make the \package{wrapfig} package independent from the package +% load order regarding the \package{float} package. +% (|\wrap|\x|float| will usually not be used when used with re-styled floats.) % \begin{macrocode} - \let\caption@ORI@wrapfloat\wrapfloat - \def\wrapfloat#1{% - \float@ifstyle{#1}{% - \caption@Error{% - For a successful cooperation of the `wrapfig' package\MessageBreak - with the `float' package you should load the `wrapfig'\MessageBreak - package *right after* the `float' package}}{}% - \caption@ORI@wrapfloat{#1}}% + \renewcommand*\wrapfloat[1]{% + \def\@captype{#1}% + \@ifundefined{fst@#1}{}{% + \@nameuse{fst@#1}% + \def\WF@floatstyhook{\let\@currbox\WF@box + \global\setbox\WF@box\float@makebox{\wd\WF@box}}}% + \@ifnextchar[\WF@wr{\WF@wr[]}} % \end{macrocode} % \end{macro} % -% \begin{macrocode} - \fi % wrapfig v3.6 -% \end{macrocode} -% % \begin{macro}{\WF@rapt} -% We place our \package{hyperref} anchor here.\par % Original code: % \begin{verbatim} % \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width, @@ -4504,18 +4329,31 @@ % \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption % \ignorespaces \fi} % \end{verbatim}%^^A -% Our code: +% Our code has |\WF@captionstyhook| in addition: % \begin{macrocode} \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width, \gdef\WF@ovh{#1}% hold overhang for later, when \width is known \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}% - \caption@start + \expandafter\WF@captionstyhook\expandafter{\@captype}% <= new \ifdim\hsize>\z@ \@parboxrestore \else \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption \ignorespaces \fi}% % \end{macrocode} % \end{macro} % +% \begin{macro}{\WF@captionstyhook} +% We place our \package{hyperref} anchor here, apply the `wrap' options etc. +% \begin{macrocode} + \def\WF@captionstyhook#1{% + \let\@captype\@undefined + \caption@ifundefined\@float@setevery{}{\@float@setevery{#1}}% + \caption@settype{#1}% + \caption@clearmargin +%%% \caption@setoptions{wrapfloat}% + \caption@setoptions{wrap#1}} +% \end{macrocode} +% \end{macro} +% % \begin{macrocode} }{} % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/caption/caption.ins b/Master/texmf-dist/source/latex/caption/caption.ins index c68496061ae..e3edbef61d7 100644 --- a/Master/texmf-dist/source/latex/caption/caption.ins +++ b/Master/texmf-dist/source/latex/caption/caption.ins @@ -23,10 +23,10 @@ This work has the LPPL maintenance status "maintained". 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, and subcaption.dtx, -the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -caption-eng.tex, and caption-rus.tex. +caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +the derived files caption.sty, caption2.sty, caption3.sty, +bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. \endpreamble @@ -36,12 +36,14 @@ caption-eng.tex, and caption-rus.tex. \generate{\file{bicaption.sty}{\from{bicaption.dtx}{package}}} \generate{\file{ltcaption.sty}{\from{ltcaption.dtx}{package}}} \generate{\file{subcaption.sty}{\from{subcaption.dtx}{package}}} +\generate{\file{newfloat.sty}{\from{newfloat.dtx}{package}}} \Msg{***********************************************************} \Msg{*} \Msg{* To finish the installation you have to move the files} \Msg{* `caption.sty', `caption2.sty', 'caption3.sty',} -\Msg{* `bicaption.sty', `ltcaption.sty', and `subcaption.sty'} +\Msg{* `bicaption.sty', `ltcaption.sty', `subcaption.sty', and} +\Msg{* `newfloat.sty'} \Msg{* into a directory searched by TeX.} \Msg{*} \Msg{* To produce the documentation run the file} diff --git a/Master/texmf-dist/source/latex/caption/caption2.dtx b/Master/texmf-dist/source/latex/caption/caption2.dtx index 946a41e7969..88b7f1fc906 100644 --- a/Master/texmf-dist/source/latex/caption/caption2.dtx +++ b/Master/texmf-dist/source/latex/caption/caption2.dtx @@ -19,10 +19,10 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi % \CheckSum{853} @@ -80,7 +80,6 @@ % % \changes{v2.0}{1995/10/09}{New experimental version: Many new commands and features} % \changes{v2.0}{1995/10/09}{Support of the longtable package added} -% \changes{v2.1}{2002/02/20}{Revised: New commands and options} % \changes{v2.1}{2002/02/26}{Adapted to version 2.1 of the subfigure package} % \changes{v2.1a}{2003/11/12}{Some minor bug fixes and improved compatibility to v2.0} % \changes{v2.1b}{2004/04/16}{Some minor bug fixes and improved compatibility to v2.0} diff --git a/Master/texmf-dist/source/latex/caption/caption3.dtx b/Master/texmf-dist/source/latex/caption/caption3.dtx index 84fe9ad6ca6..51699c2e1df 100644 --- a/Master/texmf-dist/source/latex/caption/caption3.dtx +++ b/Master/texmf-dist/source/latex/caption/caption3.dtx @@ -19,13 +19,13 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{4248} +% \CheckSum{3390} % % \iffalse %<*driver> @@ -200,7 +200,7 @@ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption3}[2011/10/09 v1.4 caption3 kernel (AR)] +\ProvidesPackage{caption3}[2011/11/01 v1.4a caption3 kernel (AR)] % \end{macrocode} % % \subsection{Generic helpers} @@ -3146,27 +3146,31 @@ % \changes{v1.1c}{2007/10/06}{Definition of \cs{caption@l@stepcounter} added} % |\caption@prepareslc|\par % \changes{v1.3}{2011/07/07}{Bugfix 11-07-06: Redefinition of \cs{footnote} and \cs{footnotemark} added, redefinition of \cs{stepcounter} and \cs{refstepcounter} dropped} +% \changes{v1.4a}{2011/10/21}{Redefinition of \cs{pagenote} from \textsf{memoir} document class added} +% \changes{v1.4a}{2011/10/22}{Redefinition of \cs{footnote} revised} % Re-define anything which would disturb the single-line-check. % \begin{macrocode} \newcommand*\caption@prepareslc{% \let\label\caption@gobble % \end{macrocode} % \begin{macrocode} - \let\caption@footnote@ORI\footnote - \def\footnote{\caption@withoptargs\caption@footnote}% \let\caption@footnotemark@ORI\footnotemark + \def\footnote{\caption@withoptargs\caption@footnote}% \def\footnotemark{\caption@withoptargs\caption@footnotemark}% - \let\@footnotetext\@gobble + \let\@footnotetext\caption@gobble +% \end{macrocode} +% \begin{macrocode} + \let\@endnotetext\caption@gobble % \end{macrocode} % \begin{macrocode} - \let\@endnotetext\@gobble} + \let\pagenote\caption@gobble +% \end{macrocode} +% \begin{macrocode} +} % \end{macrocode} % \begin{macrocode} \newcommand\caption@footnote[2]{% - \begingroup - \let\stepcounter\caption@l@stepcounter - \caption@footnote@ORI#1{#2}% - \endgroup} + \caption@footnotemark{#1}} \newcommand\caption@footnotemark[1]{% \begingroup \let\stepcounter\caption@l@stepcounter @@ -3344,559 +3348,38 @@ % \changes{v1.2b}{2008/08/02}{Support of \cs{float@exts} and \cs{float@addtolists} added} % \changes{v1.2e}{2010/01/09}{Usage of \cs{caption@DeclareWithinOption} added} % \changes{v1.3}{2011/08/06}{Definition of \cs{listofXXXes} added} +% \changes{v1.4a}{2011/10/29}{Outsourced as \package{newfloat} package} % |\DeclareCaptionType|\oarg{options}\marg{environment}\oarg{name}\oarg{list name} % \begin{macrocode} \newcommand*\DeclareCaptionType{% - \@testopt\@DeclareCaptionType{}} + \RequirePackage{newfloat}% + \DeclareFloatingEnvironment} \@onlypreamble\DeclareCaptionType % \end{macrocode} -% \begin{macrocode} -\def\@DeclareCaptionType[#1]#2{% - \def\caption@type{#2}% - \caption@Debug{New type `#2'}% - \newcounter{#2}\@namedef{theH#2}{}% - \KV@caption@DCT@within\caption@within@default - \caption@DeclareWithinOption{#2}% - \KV@caption@DCT@placement{tbp}% - \caption@ifundefined\c@float@type - {\newcounter{float@type}% - \setcounter{float@type}{\caption@ifundefined\c@figure14}}% - {}% - \caption@Debug{float type `#2'=\the\value{float@type}}% - \expandafter\xdef\csname ftype@#2\endcsname{\the\value{float@type}}% - \addtocounter{float@type}{\value{float@type}}% - \KV@caption@DCT@fileext{lo#2}% - \@namedef{fnum@#2}{\@nameuse{#2name}\nobreakspace\@nameuse{the#2}}% - \newenvironment{#2}{\@float{#2}}{\end@float}% - \newenvironment{#2*}{\@dblfloat{#2}}{\end@dblfloat}% - \expandafter\newcommand\csname listof#2s\endcsname{\caption@listof{#2}}% - \expandafter\newcommand\csname listof#2es\endcsname{\caption@listof{#2}}% - \caption@ifundefined\l@figure - {\@namedef{l@#2}{\@dottedtocline{1}{1.5em}{2.3em}}}% - {\expandafter\let\csname l@#2\endcsname\l@figure}% -% \end{macrocode} -% \begin{macrocode} - \expandafter\newcommand\csname #2name\endcsname{}% - \edef\@tempa{\def\noexpand\@tempa{\@car#2\@nil}}% - \uppercase\expandafter{\@tempa}% - \edef\@tempb{\noexpand\g@addto@macro\noexpand\@tempa{\@cdr#2\@nil}}% - \@tempb - \expandafter\let\csname #2name\endcsname\@tempa - \expandafter\newcommand\csname list#2name\endcsname{}% - \expandafter\xdef\csname list#2name\endcsname{List of \@tempa s}% -% \end{macrocode} -% \begin{macrocode} - \@cons\caption@typelist{{#2}}% - \caption@setkeys[caption]{caption@DCT}{#1}% -% \end{macrocode} -% \begin{macrocode} - \expandafter\caption@DeclareTypeExt\expandafter{\@nameuse{ext@#2}}{#2}% -% \end{macrocode} -% \begin{macrocode} - \@ifnextchar[\@@DeclareCaptionType\relax} -\@onlypreamble\@DeclareCaptionType -% \end{macrocode} -% \begin{macrocode} -\def\@@DeclareCaptionType[#1]{% - \KV@caption@DCT@name{#1}% - \@ifnextchar[\@@@DeclareCaptionType\relax} -\@onlypreamble\@@DeclareCaptionType -% \end{macrocode} -% \begin{macrocode} -\def\@@@DeclareCaptionType[#1]{% - \KV@caption@DCT@listname{#1}} -\@onlypreamble\@@@DeclareCaptionType -% \end{macrocode} -% \begin{macrocode} -\let\DeclareFloatingEnvironment\DeclareCaptionType % alternative command name -\@onlypreamble\DeclareFloatingEnvironment -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\caption@DeclareTypeExt} -% \changes{v1.4}{2011/10/02}{Support of the tocbasic package added} -% \changes{v1.4}{2011/10/02}{Support of the titletoc package added} -% \begin{macrocode} -\newcommand*\caption@DeclareTypeExt[2]{% - \caption@ifundefined\@chapter\relax\caption@PatchChapter - \let\caption@PatchChapter\relax -% \end{macrocode} -% \begin{macrocode} - \@ifundefined{caption@ext@#1}{% - \@namedef{caption@ext@#1}{#2}% -% \end{macrocode} -% Support of \package{float} package\par -% TODO: Needs revision -% \begin{macrocode} - \caption@ifundefined\float@exts{\newtoks\float@exts}{}% - \let\float@do=\relax - \edef\@tempa{\noexpand\float@exts{\the\float@exts\float@do{#1}}}% - \@tempa - \caption@ifundefined\caption@addtolists{% - \newcommand\caption@addtolists[1]{% - \def\float@do####1{\addtocontents{####1}{##1}}\the\float@exts}}{}% -% \end{macrocode} -% Support of \package{tocbasic} package -% \begin{macrocode} - \caption@ifundefined\addtotoclist{}{% - \addtotoclist[float]{#1}% - \setuptoc{#1}{chapteratlist}% - \@namedef{listof#1name}{\list#2name}}% -% \end{macrocode} -% \begin{macrocode} - }{}% -% \end{macrocode} -% Support of \package{titletoc} package -% \begin{macrocode} - \caption@ifundefined\contentsuse{}{% - \contentsuse{#2}{#1}}% -% \end{macrocode} -% \begin{macrocode} -} -\@onlypreamble\caption@DeclareTypeExt -% \end{macrocode} % \end{macro} % -% \begin{macro}{\caption@within@default} -% \changes{v1.2b}{2008/04/13}{This macro added} -% The default `within' value. +% \begin{macro}{\caption@ForEachType} +% \changes{v1.4a}{2011/10/29}{This macro added} +% |\caption@ForEachType|\marg{code} +% will execute the given code for all (known) floating environments. % \begin{macrocode} -\newcommand*\caption@within@default{% - \caption@ifundefined\c@chapter{none}{chapter}} -\@onlypreamble\caption@within@default +\newcommand\caption@ForEachType[1]{% + \caption@ifundefined\ForEachFloatingEnvironment + {\def\@elt##1{#1}% + \caption@ifundefined\c@figure\@gobble\@elt{figure}% + \caption@ifundefined\c@table\@gobble\@elt{table}% + \let\@elt\relax + \newfloat@addtohook{#1}}% + {\ForEachFloatingEnvironment{#1}}} % \end{macrocode} -% \end{macro} -% -% \begin{macro}{\caption@listof} -% \changes{v1.2}{2007/12/21}{This macro added} -% \changes{v1.4}{2011/10/02}{Support of \cs{listoftoc} added} -% |\caption@listof|\marg{float type} % \begin{macrocode} -\caption@ifundefined\listoftoc{% - \newcommand*\caption@listof[1]{% - \begingroup - \expandafter\let\expandafter\listfigurename\csname list#1name\endcsname - \expandafter\let\expandafter\ext@figure\csname ext@#1\endcsname - \let\caption@ORI@starttoc\@starttoc - \renewcommand*\@starttoc[1]{% - \expandafter\caption@ORI@starttoc\expandafter{\ext@figure}}% - \listoffigures - \endgroup}% -}{% - \newcommand*\caption@listof[1]{% - \expandafter\listoftoc\expandafter{\@nameuse{ext@#1}}}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\caption@typelist} -% An \cs{@elt}-list containing the caption types defined -% with |\Declare|\x|Caption|\x|Type|. -% \begin{macrocode} -\newcommand*\caption@typelist{} -% \end{macrocode} -% \end{macro} -% -% The available \meta{options} are: -% |fileext=|\meta{file extension}, -% |listname=|\meta{list name}, -% |name=|\meta{prosa name}, -% |placement=|\meta{htbp}, -% |within=|\meta{none,chapter,section}, and -% |without|. -% \begin{macrocode} -\define@key{caption@DCT}{fileext}{\@namedef{ext@\caption@type}{#1}} -\@onlypreamble@key{caption@DCT}{fileext} -\define@key{caption@DCT}{listname}{\@namedef{list\caption@type name}{#1}} -\@onlypreamble@key{caption@DCT}{listname} -\define@key{caption@DCT}{name}{\@namedef{\caption@type name}{#1}} -\@onlypreamble@key{caption@DCT}{name} -\define@key{caption@DCT}{placement}{\@namedef{fps@\caption@type}{#1}} -\@onlypreamble@key{caption@DCT}{placement} -\define@key{caption@DCT}{within}{% - \caption@ifundefined\c@chapter{}{\@removefromreset\caption@type{chapter}}% - \@removefromreset\caption@type{section}% - \begingroup - \caption@setkeys[caption]{caption@within}{#1}% - \endgroup} -%\@onlypreamble@key{caption@DCT}{within} -\define@key{caption@DCT}{without}{\KV@caption@DCT@within{none}} -%\@onlypreamble@key{caption@DCT}{without} -% \end{macrocode} -% \changes{v1.2d}{2009/03/29}{Bugfix 08-09-25: \texttt{within=section} fixed} -% \begin{macrocode} -\define@key{caption@within}{none}[]{% - \caption@within{}{}} -%\@onlypreamble@key{caption@within}{none} -\define@key{caption@within}{section}[]{% - \@addtoreset\caption@type{section}% - \caption@within{\ifnum\c@section>\z@ \thesection.\fi}{\theHsection.}} -%\@onlypreamble@key{caption@within}{section} -\caption@ifundefined\c@chapter{}{% - \define@key{caption@within}{chapter}[]{% - \@addtoreset\caption@type{chapter}% - \caption@within{\ifnum\c@chapter>\z@ \thechapter.\fi}{\theHchapter.}} -}% \@onlypreamble@key{caption@within}{chapter}} -% \end{macrocode} -% \begin{macro}{\caption@within} -% \changes{v1.2}{2007/12/21}{This macro added} -% |\caption@within|\marg{thecode}\marg{theHcode} -% \begin{macrocode} -\newcommand*\caption@within{% - \expandafter\caption@within@\expandafter{\caption@type}} -%\@onlypreamble\caption@within -\newcommand*\caption@within@[3]{% - \global\@namedef{the#1}{#2\arabic{#1}}% - \@ifundefined{theH#1}\caption@AtBeginDocument\@firstofone - {\global\@namedef{theH#1}{#3\arabic{#1}}}} -%\@onlypreamble\caption@within@ -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@removefromreset} -% \changes{v1.2}{2007/12/21}{This macro added} -% This code was taken from the \package{remreset} package -% which is part of the `carlisle' package bundle. -% (Copyright 1997 David Carlisle) -% \begin{macrocode} -\providecommand*\@removefromreset[2]{{% - \expandafter\let\csname c@#1\endcsname\@removefromreset - \def\@elt##1{% - \expandafter\ifx\csname c@##1\endcsname\@removefromreset - \else - \noexpand\@elt{##1}% - \fi}% - \expandafter\xdef\csname cl@#2\endcsname{% - \csname cl@#2\endcsname}}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\caption@PatchChapter} -% \changes{v1.2b}{2008/08/02}{This macro added} -% We try to patch \cs{@chapter} so \cs{caption@addtolists} will be supported. -% \begin{macrocode} -\newcommand*\caption@PatchChapter{% - \providecommand*\@chapterlistsgap{10\p@}% -% \end{macrocode} -% \begin{macrocode} - % report.cls [2005/09/16 v1.4f Standard LaTeX document class] - \caption@patch@chapter{report}{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% -% \end{macrocode} -% \begin{macrocode} - % book.cls [2005/09/16 v1.4f Standard LaTeX document class] - \caption@patch@chapter{book}{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% -% \end{macrocode} -% \begin{macrocode} - % amsbook.cls [2004/08/06 v2.20] - % smfbook.cls [1999/11/15 v1.2f Classe LaTeX pour les monographies editees par la SMF] - \caption@patch@chapter{ams/smfbook}{% - \refstepcounter{chapter}% - \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty - \else \let\@secnumber\thechapter \fi - \typeout{\chaptername\space\@secnumber}% - \def\@toclevel{0}% - \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{##2}% - \else \@tocwriteb\tocchapter{chapter}{##2}\fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \@makechapterhead{##2}\@afterheading - }{% - \refstepcounter{chapter}% - \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty - \else \let\@secnumber\thechapter \fi - \typeout{\chaptername\space\@secnumber}% - \def\@toclevel{0}% - \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{##2}% - \else \@tocwriteb\tocchapter{chapter}{##2}\fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \@makechapterhead{##2}\@afterheading}% -% \end{macrocode} -% \begin{macrocode} - % scrreprt/scrbook.cls - \caption@ifundefined\KOMAClassName{}{% - \caption@Debug{document class `\KOMAClassName' detected}% - \let\caption@patch@chapter\@gobblethree}% -% \end{macrocode} -% \begin{macrocode} - % rapport1/3.cls [2004/06/07 v2.1a NTG LaTeX document class] - \caption@patch@chapter{rapport}{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% -% \end{macrocode} -% \begin{macrocode} - % boek(3).cls [2004/06/07 v2.1a NTG LaTeX document class] - \caption@patch@chapter{boek}{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% -% \end{macrocode} -% \begin{macrocode} - % thesis.cls [1996/25/01 1.0g LaTeX document class (wm).] - \caption@patch@chapter{thesis}{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\chaptername\space\thechapter.} - \if@thema - \ifx\@shortauthor\@empty - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}% - \@shortauthor\hfill\mbox{}\vskip\normallineskip ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1} - \fi - \else - \addcontentsline{toc}{chapter}{##1} - \fi - \chaptermark{##1} - \addtocontents{lof}{\protect\addvspace{10pt}} - \addtocontents{lot}{\protect\addvspace{10pt}} - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}] - \else - \@makechapterhead{##2} - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\chaptername\space\thechapter.}% - \if@thema - \ifx\@shortauthor\@empty - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}% - \@shortauthor\hfill\mbox{}\vskip\normallineskip ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% -% \end{macrocode} -% \begin{macrocode} - \ifx\caption@patch@chapter\@gobblethree \else - \caption@Debug{% - Unsupported document class detected,\MessageBreak - or \noexpand\@chapter was redefined by another package}% - \fi - \let\caption@PatchChapter\@undefined} -%\@onlypreamble\caption@PatchChapter -% \end{macrocode} -% \begin{macrocode} -\newcommand\caption@patch@chapter[3]{% - \begingroup -% \let\if@twocolumn\iffalse - \let\if@mainmatter\iffalse - \let\if@thema\iffalse - \def\@tempa[##1]##2{#2}% - \ifx\@tempa\@chapter - \caption@Debug{document class `#1' detected}% - \gdef\@chapter[##1]##2{#3}% - \global\let\caption@patch@chapter\@gobblethree - \fi - \endgroup} -%\@onlypreamble\caption@patch@chapter +\providecommand\newfloat@addtohook[1]{% + \toks@=\expandafter{\newfloat@hook{##1}#1}% + \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}% + \@tempa} % \end{macrocode} % \begin{macrocode} -\long\def \@gobblethree #1#2#3{} +\providecommand*\newfloat@hook[1]{} % \end{macrocode} % \end{macro} % @@ -3929,7 +3412,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\caption@addtoreset} +% \begin{macro}{\caption@removefromreset} % \changes{v1.2d}{2009/10/09}{This macro added} % Like \cs{@removefromreset} from |remreset.sty| % \begin{macrocode} @@ -4093,13 +3576,18 @@ % \changes{v1.2e}{2010/01/09}{Patch for better hyperref support added to \package{subfig} package adaptions} % \changes{v1.2f}{2010/01/14}{Latest patch didn't worked without hyperref; fixed} % \changes{v1.3}{2010/12/20}{subfig package bugfixes dropped} +% \changes{v1.4a}{2011/11/01}{Bugfix 11-11-01: Test for the subfig package revised} % -% We have to make several adaptions to \thispackage~\version{1.1} here. +% Since the \package{subfig} package is not maintained anymore, +% we have to make several adaptions to \thispackage~\version{1.1} here. +% Please note that we only support the version $1.3$ of the \package{subfig} package here. +% So older versions do not work with this version of \thispackage, and never +% versions are expected to be adapted. % \begin{macrocode} \caption@AtBeginDocument{% - \def\@tempa{\@ifstar\sf@@subref\sf@subref}% - \ifx\subref\@tempa - \caption@InfoNoLine{subfig package 1.2 or 1.3 is loaded}% + \def\@tempa{2005/06/28 ver: 1.3 subfig package}% + \expandafter\ifx\csname ver@subfig.sty\endcsname\@tempa + \caption@InfoNoLine{subfig package v1.3 is loaded}% % \end{macrocode} % \begin{macrocode} \let\caption@setfloattype\@gobble diff --git a/Master/texmf-dist/doc/latex/caption/cat.eps b/Master/texmf-dist/source/latex/caption/cat.eps index 0042ea088fe..0042ea088fe 100644 --- a/Master/texmf-dist/doc/latex/caption/cat.eps +++ b/Master/texmf-dist/source/latex/caption/cat.eps diff --git a/Master/texmf-dist/doc/latex/caption/elephant.eps b/Master/texmf-dist/source/latex/caption/elephant.eps index a38bfcb75df..a38bfcb75df 100644 --- a/Master/texmf-dist/doc/latex/caption/elephant.eps +++ b/Master/texmf-dist/source/latex/caption/elephant.eps diff --git a/Master/texmf-dist/source/latex/caption/ltcaption.dtx b/Master/texmf-dist/source/latex/caption/ltcaption.dtx index 10a1deb075b..d38526a7adc 100644 --- a/Master/texmf-dist/source/latex/caption/ltcaption.dtx +++ b/Master/texmf-dist/source/latex/caption/ltcaption.dtx @@ -19,10 +19,10 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi % \CheckSum{347} @@ -525,7 +525,7 @@ % \end{macrocode} % \end{macro} % \end{macro} -% \begin{macro}{\CaptionTextFont} +% \begin{macro}{\CaptionLabelSeparator} % \changes{v1.3}{2011/09/12}{This macro added} % Additionally, we define |\Caption|\-|Label|\-|Separator| which is predefined as colon. % \begin{macrocode} diff --git a/Master/texmf-dist/source/latex/caption/newfloat.dtx b/Master/texmf-dist/source/latex/caption/newfloat.dtx new file mode 100644 index 00000000000..297145ab348 --- /dev/null +++ b/Master/texmf-dist/source/latex/caption/newfloat.dtx @@ -0,0 +1,1548 @@ +% \iffalse meta-comment +% +% This is file `newfloat.dtx'. +% +% Copyright (C) 2011 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm) +% +% -------------------------------------------------------------------------- +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% 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, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. +% +% \fi +% \CheckSum{1199} +% +% \iffalse +%<*driver> +\NeedsTeXFormat{LaTeX2e}[1994/12/01] +\ProvidesFile{newfloat.drv}% + [2011/11/06 v1.0 This package offers a command for defining new floating environments] +\hbadness=9999 \newcount\hbadness \hfuzz=48pt % Make TeX shut up. +% +\documentclass{ltxdoc} +\setlength\parindent{0pt} +\setlength\parskip{\smallskipamount} +% +\usepackage{ifpdf} +\ifpdf + \usepackage{mathptmx,courier} + \usepackage[scaled=0.90]{helvet} +% \addtolength\marginparwidth{15pt} +\fi +% +\usepackage[bottom]{footmisc} +% +\usepackage{hypdoc} +\ifpdf\usepackage{hypdestopt}\fi +\hypersetup{pdfkeywords={LaTeX, package, newfloat},pdfstartpage={},pdfstartview={}} +% +\usepackage{newfloat} +% +\DeclareRobustCommand*\eTeX{\texorpdfstring + {\leavevmode\hbox{$\varepsilon$}-\TeX}% + {e-TeX}} +\DeclareRobustCommand*\AmS{\texorpdfstring + {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}% + {AMS}} +\DeclareRobustCommand*\KOMAScript{\texorpdfstring + {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}% + {KOMA-Script}} +\DeclareRobustCommand*\NTG{NTG} +\DeclareRobustCommand*\SmF{SMF} +% +\begin{document} + \DocInput{newfloat.dtx} +\end{document} +%</driver> +% \fi +% +% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}} +% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}} +% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}} +% \let\package\puresf +% \let\env\purett \let\opt\purett +% +% \def\thispackage{the \package{newfloat} package} +% \def\Thispackage{The \package{newfloat} package} +% +% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}} +% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}} +% \newcommand*\version[2][]{\textit{v#2}} +% \newcommand*\x{\discretionary{-}{}{}} +% \newcommand*\xx{\discretionary{}{}{}} +% +% \setlength\leftmargini{1.5em} +% +% \GetFileInfo{newfloat.drv} +% \let\docdate\filedate +% \GetFileInfo{newfloat.sty} +% +% \title{\texorpdfstring{\Thispackage\thanks{%^^A +% This package has version number \fileversion, last revised \filedate.}}%^^A +% {The newfloat package}} +% \author{Axel Sommerfeldt\\ +% \href{mailto:axel.sommerfeldt@f-m.fm}{\texttt{axel.sommerfeldt@f-m.fm}}} +% \date{\docdate} +% \maketitle +% +% \begin{abstract} +% \centering +% This package offers the command +% |\Declare|\x|Floating|\x|Environment| for defining new floating environments +% which behave like |figure| and |table|. +% \end{abstract} +% +% \tableofcontents +% +% \clearpage +% \section{Loading the package} +% +% First of all you need to include this package into your document with +% \begin{quote} +% |\usepackage|\oarg{options}|{newfloat}| +% \end{quote} +% where \meta{options} are one or more of +% \begin{quote}\begin{tabular}{r@{\,}l} +% |within=| & \meta{``within'' counter} \emph{or} \texttt{none}\quad\\ +% |chapterlistsgap=| & \meta{value} +% \end{tabular}\end{quote} +% +% The ``within'' counter specifies the counter which will be used to reset +% the counter of the floating environments |figure| and |table| . +% (Furthermore this setting will be used as default setting for +% |\Declare|\x|Floating|\x|Environment|.) +% +% So for example |within=chapter| will give you a numbering scheme +% \meta{chapter}.\meta{x} for floating environments, +% while |within=section| will give you a numbering scheme +% \meta{chapter}.\meta{section}.\meta{x}, or \meta{section}.\meta{x} +% if the document class does not offer |\chapter|. +% |within=none| will result in a continuous numbering throughout the document, +% i.e.~the numbering scheme will be simply \meta{x}. +% +% The option |chapterlistsgap=|\meta{value} sets the amount of the +% vertical gap inserted into the ``List of Figure'', ``List of Tables'', +% and all lists created with |\Declare|\x|Floating|\x|Environment| +% when a new chapter will be started. +% The default value is |10pt|. +% (This option will only be available if the document class used offer +% the usage of chapters, e.g.~the |book| or |report| document class.) +% +% \pagebreak[3] +% Both options can be changed later on, too, by using the command +% \begin{quote} +% |\newfloatsetup|\meta{options}\quad, +% \end{quote} +% +% \pagebreak[3] +% \section{\cs{DeclareFloatingEnvironment}} +% +% After loading \thispackage\ you can define your own floating environments with +% \begin{quote} +% \iffalse +% \setlength{\leftmargin}{6cm} +% \fi +% |\DeclareFloatingEnvironment|\oarg{options}\marg{type}% +% \iffalse +% \oarg{name}\oarg{list name} +% \fi +% \end{quote} +% where \meta{options} are one or more of +% \begin{quote}\begin{tabular}{r@{\,}l} +% |fileext=| & \meta{file extension}\\ +% |listname=| & \meta{list name}\\ +% |name=| & \meta{prosa name}\\ +% |placement=| & \meta{combination of \,\purett{htbp}}\\ +% |within=| & \meta{``within'' counter} \emph{or} \texttt{none}\\ +% |chapterlistsgaps=| & \texttt{on} \emph{or} \texttt{off} +% \end{tabular}\end{quote} +% +% If no \meta{options} are given, +% ``lo\meta{type}'' will be used as \meta{file extension} for the list, +% ``List of \meta{name}s'' as \meta{list name}. +% ``\meta{name}'' as \meta{name} (but with the first letter capitalized), +% ``|tbp|'' as \meta{placement} specifier, +% and ``|chapter|'' resp. ``|none|'' as \meta{``within'' counter}, +% i.e., the counter which resets the numbering. +% +% The default value of the |chapterlistsgaps=| option depends on the +% ``within'' setting, it is set to |on| if |chapter| or |section| is selected, +% otherwise it is set to |off|. +% (This option will only be available if the document class used offer +% the usage of chapters, e.g.~the |book| or |report| document class.) +% +% The list will be typeset using the command |\list|\-|of|\meta{type}|s| +% resp.~|\list|\-|of|\meta{type}|es|, +% analogous to |\list|\-|of|\-|figures| and |\list|\-|of|\-|tables|. +% +% If the \package{fltpage} package is loaded, an environment called +% |FP|\meta{type} will be defined additionally, same for |sideways|\meta{type} +% (\package{rotating} package), |SC|\meta{type} (\package{sidecap} package), +% and |wrap|\meta{type} (\package{wrapfig} package). +% +% \bigskip +% +% \pagebreak[3] +% So for example +% \begin{quote} +% |\DeclareFloatingEnvironment{diagram}| +% \end{quote} +% will define a new floating environment called |diagram|, +% the list will be stored in a file with the extension |lodiagram|, the name +% (used for the caption) will be ``Diagram'' and the list name +% ``List of Diagrams''. +% The list could be typeset with |\list|\x|of|\x|diagrams|. +% Dependent on which packages are loaded, the environments |FP|\x|diagram|, +% |sideways|\x|diagram|, |SC|\x|diagram|, and |wrap|\x|diagram| will be defined additionally. +% +% \pagebreak[3] +% Another example: +% \begin{quote} +% |\DeclareFloatingEnvironment[|\\ +% | fileext=lox,|\\ +% | listname={List of Matrixes},|\\ +% | name=Matrix,|\\ +% | placement=p,|\\ +% | within=section,|\\ +% | chapterlistsgaps=off,|\\ +% | ]{matrix}| +% \end{quote} +% will define a new floating environment called |matrix| with the given settings. +% Please note that names which contain spaces needs to be enclosed in curly braces. +% +% \pagebreak[3] +% \section{\cs{SetupFloatingEnvironment}} +% +% While |\DeclareFloatingEnvironment| will create new floating environments, +% \begin{quote} +% |\SetupFloatingEnvironment|\marg{floating environment}\marg{options} +% \end{quote} +% will change the settings of existing ones, i.e. either |figure| or |table|, +% or a one created with |\Declare|\x|Floating|\x|Environment|, +% or a one created with |\new|\x|float| offered by the \package{float} package, +% or a one created with |\new|\x|float| offered by the \package{memoir} document class, +% or a one created with |\Declare|\x|New|\x|Float|\x|Type| offered by the \package{floatrow} package, +% or \ldots +% +% The \meta{options} are the same as the options for +% |\Declare|\x|Floating|\x|Environment|, +% but one should avoid changing the file extension +% of existing floating environments, +% i.e.~using the |fileext=| option within |\Setup|\x|Floating|\x|Environment| +% is usually a very bad idea. +% +% \bigskip +% +% \pagebreak[3] +% An example: +% \begin{quote} +% |\SetupFloatingEnvironment{lstlisting}{chapterlistsgaps=off}| +% \end{quote} +% will switch off the chapter lists gaps for |lstlisting| environments +% offered by the \package{listings} package. +% +% \pagebreak[3] +% \section{\cs{ForEachFloatingEnvironment}} +% +% \begin{quote} +% |\ForEachFloatingEnvironment|\meta{code with \#1} +% \end{quote} +% will execute the given \meta{code} for all known floating environments, +% and for ones defined with |\Declare|\x|Floating|\x|Environment| later on. +% +% \pagebreak[3] +% So for example the \package{subcaption} packages uses +% \begin{quote} +% |\ForEachFloatingEnvironment{\DeclareCaptionSubType{#1}}| +% \end{quote} +% for initializing itself for all floating environments which are +% known to \thispackage. +% +% \medskip +% +% There is also a starred variant |\For|\x|Each|\x|Floating|\x|Environment*| +% which will execute the given code for already existing floating environments +% only, i.e.~no hook will be placed inside |\Declare|\x|Floating|\x|Environment|. +% +% \pagebreak[3] +% An example: +% \begin{quote} +% |\ForEachFloatingEnvironment*{\typeout{#1}}| +% \end{quote} +% will typeout the names of all already known floating environments to the terminal +% and log file. +% +% \iffalse +% --------------------------------------------------------------------------- % +% \fi +% +% \StopEventually{%^^A +% \pagebreak[3] +% \begin{thebibliography}{9} +% +% \bibitem{memoir} +% Peter Wilson:\\ +% \href{http://www.ctan.org/pkg/memoir}% +% {\emph{The Memoir Class for Configurable Typesetting}},\\ +% 2011/03/06 +% +% \bibitem{NTGclasses} +% Victor Eijkhout:\\ +% \href{http://www.ctan.org/pkg/ntgclass}% +% {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\ +% \mbox{3~September~1989} +% +% \bibitem{KOMAScript} +% Markus Kohm \& Jens-Uwe-Morawski:\\ +% \href{http://www.ctan.org/pkg/koma-script}% +% {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\ +% 2007-01-09 +% +% \bibitem{float} +% Anselm Lingnau:\\ +% \href{http://www.ctan.org/pkg/float}% +% {\emph{An Improved Environment for Floats}},\\ +% 2001/11/08 +% +% \bibitem{fltpage} +% Sebastian Gross:\\ +% \href{http://www.ctan.org/pkg/fltpage}% +% {\emph{Welcome to the beta test of fltpage package!}},\\ +% 1998/11/13 +% +% \bibitem{rotating} +% Sebastian Rahtz and Leonor Barroca:\\ +% \href{http://www.ctan.org/pkg/rotating}% +% {\emph{A style option for rotated objects in \LaTeX}},\\ +% 1997/09/26 +% +% \bibitem{sidecap} +% Rolf Niepraschk \& Hubert G\"a\ss lein:\\ +% \href{http://www.ctan.org/pkg/sidecap}% +% {\emph{The sidecap package}},\\ +% 2003/06/06 +% +% \bibitem{wrapfig} +% Donald Arseneau:\\ +% \href{http://www.ctan.org/pkg/wrapfig}% +% {\emph{WRAPFIG.STY ver 3.6}},\\ +% 2003/01/31 +% +% \end{thebibliography} +% } +% +% \iffalse +% --------------------------------------------------------------------------- % +% \fi +% +% \DoNotIndex{\\,\_,\ ,\@@par} +% \DoNotIndex{\@bsphack} +% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname} +% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs} +% \DoNotIndex{\@for,\@firstofone,\@firstoftwo} +% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom} +% \DoNotIndex{\@ifnextchar,\@ifpackagelater,\@ifpackageloaded} +% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@namedef,\@nameuse} +% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist} +% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setpar} +% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc} +% \DoNotIndex{\@testopt} +% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist} +% \DoNotIndex{\p@,\z@} +% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup} +% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box} +% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow} +% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter} +% \DoNotIndex{\fi,\footnotesize,\global} +% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss} +% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode} +% \DoNotIndex{\ifx,\ignorespaces,\itshape} +% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth} +% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message} +% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox} +% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline} +% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip} +% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write} +% \DoNotIndex{\providecommand,\quad} +% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage} +% \DoNotIndex{\rightskip,\rmfamily} +% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape} +% \DoNotIndex{\small,\string,\space,\strut} +% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily} +% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage} +% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip} +% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption} +% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists} +% \DoNotIndex{\NeedsTeXFormat,\MessageBreak} +% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine} +% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage} +% +% \iffalse +% --------------------------------------------------------------------------- % +% \fi +% +% \setlength{\parskip}{0pt plus 1pt} +% \changes{v1.0}{2011/10/30}{First release as \package{newfloat} package, +% outsourced from the \package{caption3} package and revised} +% +% \iffalse +% --------------------------------------------------------------------------- % +% \fi +% +% \clearpage +% \section{The Implementation} +% \iffalse +%<*package> +% \fi +% +% \pagebreak[3] +% \subsection{Identification} +% +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e}[1994/12/01] +\ProvidesPackage{newfloat}[2011/10/30 v1.0 Defining new floating environments (AR)] +% \end{macrocode} +% +% \begin{macro}{\newfloat@Info} +% |\newfloat@Info|\marg{message} +% \begin{macrocode} +\newcommand*\newfloat@Info[1]{% + \PackageInfo{newfloat}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@Error} +% |\newfloat@Error|\marg{message} +% \begin{macrocode} +\newcommand*\newfloat@Error[1]{% + \PackageError{newfloat}{#1}\newfloat@eh} +% \end{macrocode} +% \begin{macrocode} +\newcommand*\newfloat@eh{% + If you do not understand this error, please take a closer look\MessageBreak + at the documentation of the `newfloat' package.\MessageBreak\@ehc} +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsection{Using the keyval package} +% +% We need the \package{keyval} package for option handling, so we load it here. +% \begin{macrocode} +\RequirePackage{keyval}[1997/11/10] +% \end{macrocode} +% +% \pagebreak[3] +% \subsection{\cs{DeclareFloatingEnvironment}} +% +% \begin{macro}{\DeclareFloatingEnvironment} +% |\DeclareFloatingEnvironment|\oarg{options}\marg{environment}\oarg{name}\oarg{list name} +% \begin{macrocode} +\newcommand*\DeclareFloatingEnvironment{% + \@testopt\@DeclareFloatingEnvironment{}} +\@onlypreamble\DeclareFloatingEnvironment +% \end{macrocode} +% \begin{macrocode} +\def\@DeclareFloatingEnvironment[#1]#2{% +% \end{macrocode} +% First of all, we set |\newfloat@Type| to the type name\par +% \begin{macrocode} + \newfloat@Info{New float `#2' with options `#1'}% + \edef\newfloat@Type{\def\noexpand\newfloat@Type{\@car#2\@nil}}% + \uppercase\expandafter{\newfloat@Type}% + \edef\@tempa{% + \noexpand\g@addto@macro\noexpand\newfloat@Type{\@cdr#2\@nil}}% + \@tempa +% \end{macrocode} +% Define a counter with the same name as the floating environment +% \begin{macrocode} + \newcounter{#2}% +% \end{macrocode} +% Set |\ftype@|\meta{type} which contains the type number for floats of type \meta{type}\par +% (See also \url{http://tex.stackexchange.com/q/32359/2574}) +% \begin{macrocode} + \ifdefined\c@float@type % from float package + \expandafter\edef\csname ftype@#2\endcsname{\the\value{float@type}}% + \addtocounter{float@type}{\value{float@type}}% + \else\ifdefined\c@newflo@tctr % from memoir document class + \expandafter\edef\csname ftype@#2\endcsname{\the\c@newflo@tctr}% + \advance\c@newflo@tctr \c@newflo@tctr + \else + \ifdefined\newfloat@ftype \else + \newcount\newfloat@ftype + \newfloat@ftype=8\relax + \fi + \expandafter\xdef\csname ftype@#2\endcsname{\the\newfloat@ftype}% + \advance\newfloat@ftype\newfloat@ftype + \fi\fi + \newfloat@Info{float type `#2'=\@nameuse{ftype@#2}}% +% \end{macrocode} +% Define |\fnum@|\meta{type}, a macro to generate the figure number for a caption +% \begin{macrocode} + \@namedef{fnum@#2}{\@nameuse{#2name}\nobreakspace\@nameuse{the#2}}% +% \end{macrocode} +% Define |\|\meta{type}|name| used by |\fnum@|\meta{type} as \meta{type}, +% but with first letter capitalized +% \begin{macrocode} + \expandafter\newcommand\csname #2name\endcsname{}% + \expandafter\let\csname #2name\endcsname\newfloat@Type + \@namedef{fleg#2}{\@nameuse{#2name}}% legend naming (memoir) +% \end{macrocode} +% Legend name in ToC (memoir document class) +% \begin{macrocode} + \@namedef{flegtoc#2}##1{}% +% \end{macrocode} +% Define the floating environment +% \begin{macrocode} + \newenvironment{#2}{\@float{#2}}{\end@float}% + \newenvironment{#2*}{\@dblfloat{#2}}{\end@dblfloat}% +% \end{macrocode} +% Define the listing command |\listof|\meta{type}(|e|)|s| +% \begin{macrocode} + \expandafter\newcommand\csname listof#2s\endcsname{\newfloat@listof{#2}}% + \expandafter\newcommand\csname listof#2es\endcsname{\newfloat@listof{#2}}% + \ifdefined\l@figure + \expandafter\let\csname l@#2\endcsname\l@figure + \else + \@namedef{l@#2}{\@dottedtocline{1}{1.5em}{2.3em}}% + \fi + \expandafter\newcommand\csname list#2name\endcsname{}% + \expandafter\xdef\csname list#2name\endcsname{List of \newfloat@Type s}% +% \end{macrocode} +% Set default parameters +% \begin{macrocode} + \newfloat@setplacement{#2}{tbp}% + \newfloat@setfileext{#2}{lo#2}% +% \end{macrocode} +% Apply given options +% \begin{macrocode} + \newfloat@setoptions*{#2}{#1}% +% \end{macrocode} +% Announce the new floating environment to other packages +% \begin{macrocode} + \@expandtwoargs\newfloat@announce{#2}{\@nameuse{ext@#2}}% +% \end{macrocode} +% Apply the last two optional arguments for setting names +% \begin{macrocode} + \@ifnextchar[\newfloat@DFE@setname\relax} +\@onlypreamble\@DeclareFloatingEnvironment +% \end{macrocode} +% \begin{macrocode} +\def\newfloat@DFE@setname[#1]{% + \KV@@newfloat@name{#1}% + \@ifnextchar[\newfloat@DFE@setlistname\relax} +\@onlypreamble\newfloat@DFE@setname +% \end{macrocode} +% \begin{macrocode} +\def\newfloat@DFE@setlistname[#1]{% + \KV@@newfloat@listname{#1}} +\@onlypreamble\newfloat@DFE@setlistname +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@listof} +% |\newfloat@listof|\marg{float type} typesets the list +% \begin{macrocode} +\newcommand*\newfloat@listof[1]{% + \ifcsname listoftoc\endcsname + \expandafter\listoftoc\expandafter{\@nameuse{ext@#1}}% + \else + \begingroup + \expandafter\let\expandafter\listfigurename\csname list#1name\endcsname + \expandafter\let\expandafter\ext@figure\csname ext@#1\endcsname + \let\newfloat@ORI@starttoc\@starttoc + \renewcommand*\@starttoc[1]{% + \expandafter\newfloat@ORI@starttoc\expandafter{\ext@figure}}% + \listoffigures + \endgroup + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setoptions} +% |\newfloat@setoptions*|\marg{environment}\marg{options} +% \begin{macrocode} +\newcommand*\newfloat@setoptions{% + \@ifstar + {\newfloat@@setoptions\@firstofone}% + {\newfloat@@setoptions\@gobble}} +% \end{macrocode} +% \begin{macrocode} +\newcommand*\newfloat@@setoptions[3]{% + \let\newfloat@within@value\@undefined + \let\newfloat@chapterlistsgaps@value\@undefined + #1{\KV@@newfloat@within\newfloat@within@default}% set default value + \def\newfloat@type{#2}% + \setkeys{@newfloat}{#3}% + \ifx\newfloat@within@value\@undefined \else + \newfloat@setoption{within}\newfloat@within@value + \fi + \ifx\newfloat@chapterlistsgaps@value\@undefined \else + \newfloat@setoption{chapterlistsgaps}\newfloat@chapterlistsgaps@value + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@within@default} +% The default `within' value. +% This one will be used if no option |within=|\meta{counter} is given. +% \begin{macrocode} +\newcommand*\newfloat@within@default{% + \ifcsname c@chapter\endcsname chapter\else none\fi} +\@onlypreamble\newfloat@within@default +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setoption} +% |\newfloat@setoption|\marg{option name}{options} +% \begin{macrocode} +\newcommand*\newfloat@setoption[1]{% + \expandafter\@expandtwoargs\csname newfloat@set#1\endcsname\newfloat@type} +% \end{macrocode} +% \end{macro} +% +% The available \meta{options} are: +% |fileext=|\meta{file extension}, +% |listname=|\meta{list name}, +% |name=|\meta{prosa name}, +% |placement=|\meta{htbp}, +% |within=|\meta{none,chapter,section}, and +% |without|. +% +% \begin{macro}{\newfloat@setfileext} +% |\newfloat@setfileext|\marg{environment}\marg{file extension} +% \begin{macrocode} +\newcommand*\newfloat@setfileext[2]{% + \@namedef{ext@#1}{#2}} +% \end{macrocode} +% \begin{macrocode} +\define@key{@newfloat}{fileext}{% + \newfloat@setoption{fileext}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setlistname} +% |\newfloat@setlistname|\marg{environment}\marg{list name} +% \begin{macrocode} +\newcommand*\newfloat@setlistname[2]{% + \@namedef{list#1name}{#2}} +% \end{macrocode} +% \begin{macrocode} +\define@key{@newfloat}{listname}{% + \newfloat@setoption{listname}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setname} +% |\newfloat@setname|\marg{environment}\marg{name} +% \begin{macrocode} +\newcommand*\newfloat@setname[2]{% + \newfloat@@setname{#1}{#2}% + \begingroup + \ifcsname languagename\endcsname + \ifcsname captions\languagename\endcsname + \expandafter\g@addto@macro\csname captions\languagename\endcsname + {\newfloat@@setname{#1}{#2}}% + \fi + \fi + \endgroup} +%\AtBeginDocument{\let\newfloat@setname\newfloat@@setname} +% \end{macrocode} +% \begin{macrocode} +\newcommand*\newfloat@@setname[2]{% + \@namedef{#1name}{#2}} +% \end{macrocode} +% \begin{macrocode} +\define@key{@newfloat}{name}{% + \newfloat@setoption{name}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setplacement} +% |\newfloat@setplacement|\marg{environment}\marg{float placement} +% \begin{macrocode} +\newcommand*\newfloat@setplacement[2]{% + \@namedef{fps@#1}{#2}} +% \end{macrocode} +% \begin{macrocode} +\define@key{@newfloat}{placement}{% + \newfloat@setoption{placement}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setwithin} +% |\newfloat@setwithin|\marg{environment}\marg{counter}\par +% setup the counter for working ``within'' a given counter. +% Furthermore the chapters lists gap will be switched on +% (if counter $=$ |chapter|) or off (otherwise). +% \begin{macrocode} +\newcommand*\newfloat@setwithin[2]{% + \ifcsname c@chapter\endcsname + \@removefromreset{#1}{chapter}% + \fi + \@removefromreset{#1}{section}% +% \end{macrocode} +% \begin{macrocode} + \edef\@tempa{#2}% + \ifx\@tempa\@empty + \def\@tempa{none}% + \fi + \def\@tempb{none}% + \ifx\@tempa\@tempb + \ifcsname c@chapter\endcsname + \@chapterlistsgap@off{#1}% + \fi + \newfloat@@setwithin{#1}{}{}% + \else + \def\@tempb{chapter}% + \ifx\@tempa\@tempb + \@addtoreset{#1}{chapter}% + \@chapterlistsgap@on{#1}% + \newfloat@@setwithin{#1}{\ifnum\c@chapter>\z@ \thechapter.\fi}{\theHchapter.}% + \else + \def\@tempb{section}% + \ifx\@tempa\@tempb + \@addtoreset{#1}{section}% + \ifcsname c@chapter\endcsname + \@addtoreset{#1}{chapter}% + \@chapterlistsgap@on{#1}% + \newfloat@@setwithin{#1}{\thesection.}{\theHsection.}% + \else + \newfloat@@setwithin{#1}{\ifnum\c@section>\z@ \thesection.\fi}{\theHsection.}% + \fi + \else + \newfloat@Error{Invalid value `#2' for option `within'}% + \fi + \fi + \fi} +% \end{macrocode} +% \begin{macrocode} +\newcommand*\newfloat@@setwithin[3]{% + \global\@namedef{the#1}{#2\arabic{#1}}% + \global\@namedef{theH#1}{#3\arabic{#1}}} +% \end{macrocode} +% \begin{macrocode} +\define@key{@newfloat}{within}{% + \def\newfloat@within@value{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setwithout} +% |\newfloat@setwithout|\marg{environment} +% \begin{macrocode} +\newcommand*\newfloat@setwithout[1]{% + \newfloat@setwithin{#1}{none}} +% \end{macrocode} +% \begin{macrocode} +\define@key{@newfloat}{without}[]{% + \def\newfloat@within@value{none}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@setchapterlistsgaps} +% |\newfloat@setchapterlistsgaps|\marg{environment}\marg{on/off} +% \begin{macrocode} +\newcommand*\newfloat@setchapterlistsgaps[2]{% + \edef\@tempa{#2}% + \def\@tempb{off}% + \ifx\@tempa\@tempb + \@chapterlistsgap@off{#1}% + \else + \def\@tempb{on}% + \ifx\@tempa\@tempb + \@chapterlistsgap@on{#1}% + \else + \newfloat@Error{Invalid value `#2' for option `chapterlistsgaps'}% + \fi + \fi} +% \end{macrocode} +% \begin{macrocode} +\define@key{@newfloat}{chapterlistsgaps}{% + \def\newfloat@chapterlistsgaps@value{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@removefromreset} +% This code was taken from the \package{remreset} package +% which is part of the `carlisle' package bundle. +% (Copyright 1997 David Carlisle) +% \begin{macrocode} +\providecommand*\@removefromreset[2]{{% + \expandafter\let\csname c@#1\endcsname\@removefromreset + \def\@elt##1{% + \expandafter\ifx\csname c@##1\endcsname\@removefromreset + \else + \noexpand\@elt{##1}% + \fi}% + \expandafter\xdef\csname cl@#2\endcsname{% + \csname cl@#2\endcsname}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@announce} +% |\newfloat@announce|\marg{environment name}\marg{list file extension} +% \begin{macrocode} +\newcommand*\newfloat@announce[2]{% +% \end{macrocode} +% \begin{macrocode} + \@cons\newfloat@list{{#1}}% + \@cons\newfloat@@list{{#1}}% +% \end{macrocode} +% \begin{macrocode} + \@ifundefined{newfloat@ext@#2}{% + \@namedef{newfloat@ext@#2}{#1}% +% \end{macrocode} +% Support of \package{memoir} document class +% \begin{macrocode} + \ifcsname c@lofdepth\endcsname + \@ifundefined{c@#2depth}{% + \newcounter{#2depth}% + \setcounter{#2depth}{1}% + }{}% + \fi +% \end{macrocode} +% Support of \package{tocbasic} package +% \begin{macrocode} + \ifcsname addtotoclist\endcsname + \addtotoclist[float]{#2}% + \@namedef{listof#2name}{\@nameuse{list#1name}}% + \fi +% \end{macrocode} +% \begin{macrocode} + }{}% +% \end{macrocode} +% Support of \package{titletoc} package +% \begin{macrocode} + \ifcsname contentsuse\endcsname + \contentsuse{#1}{#2}% + \fi +% \end{macrocode} +% \begin{macrocode} + \newfloat@hook{#1}} +\@onlypreamble\newfloat@announce +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@@list} +% |\newfloat@@list| is an \cs{@elt}-list containing the floating environments defined +% with |\Declare|\x|Floating|\x|Environment| only. +% \begin{macrocode} +\newcommand*\newfloat@@list{} +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsection{\cs{SetupFloatingEnvironment}} +% +% \begin{macro}{\SetupFloatingEnvironment} +% |\SetupFloatingEnvironment|\marg{environment}\marg{options} +% \begin{macrocode} +\newcommand*\SetupFloatingEnvironment[1]{% + \newfloat@addtolist{#1}% + \newfloat@setoptions{#1}} +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsection{\cs{ForEachFloatingEnvironment}} +% +% \begin{macro}{\ForEachFloatingEnvironment} +% |\ForEachFloatingEnvironment|\marg{code} +% will execute the given code for each floating environment. +% The starred variant will only work for already existing environment, +% i.e.~no hook will be placed inside |\Declare|\x|Floating|\x|Environment|. +% \begin{macrocode} +\newcommand\ForEachFloatingEnvironment{% + \@ifstar + {\@ForEachFloatingEnvironment\@gobble}% + {\@ForEachFloatingEnvironment\@iden}} +% \end{macrocode} +% \begin{macrocode} +\newcommand\@ForEachFloatingEnvironment[2]{% + \def\@elt##1{#2}% + \newfloat@list + \let\@elt\relax + #1{\newfloat@addtohook{#2}}} +% \end{macrocode} +% \begin{macrocode} +\providecommand\newfloat@addtohook[1]{% + \toks@=\expandafter{\newfloat@hook{##1}#1}% + \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}% + \@tempa} +% \end{macrocode} +% \begin{macrocode} +\providecommand*\newfloat@hook[1]{} +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsection{The list of floating environments} +% +% \begin{macro}{\newfloat@list} +% |\newfloat@list| is an \cs{@elt}-list containing the already existising floating +% environments as well the ones defined with |\Declare|\x|Floating|\x|Environment|. +% \begin{macrocode} +\newcommand*\newfloat@list{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@addtolist} +% |\newfloat@addtolist|\marg{environment} +% adds an environment to the list of floating environments. +% \begin{macrocode} +\newcommand*\newfloat@addtolist[1]{% + \newfloat@ifinlist{#1}{}{% + \ifcsname ext@#1\endcsname + \@cons\newfloat@list{{#1}}% + \@namedef{newfloat@ext@\@nameuse{ext@#1}}{#1}% + \else + \newfloat@Error{`#1' does not seem to be a floating environment}% + \fi}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newfloat@ifinlist} +% |\newfloat@ifinlist|\marg{environment}\marg{yes code}\marg{no code} +% tests if an environment is an element of the list of floating environments. +% \begin{macrocode} +\newcommand*\newfloat@ifinlist[1]{% + \let\next\@secondoftwo + \begingroup + \expandafter\let\csname c@#1\endcsname\newfloat@ifinlist + \def\@elt##1{% + \expandafter\ifx\csname c@##1\endcsname\newfloat@ifinlist + \global\let\next\@firstoftwo + \fi}% + \newfloat@list + \endgroup + \next} +% \end{macrocode} +% \end{macro} +% +% Add |figure| and |table| to the list of floating environments. +% \begin{macrocode} +\ifcsname ext@figure\endcsname + \newfloat@addtolist{figure} +\fi +\ifcsname ext@table\endcsname + \newfloat@addtolist{table} +\fi +% \end{macrocode} +% +% \pagebreak[3] +% \subsection{Chapter lists gaps} +% +% \begin{macrocode} +\ifcsname @chapter\endcsname +% \end{macrocode} +% +% \begin{macro}{\@chapterlistsgap} +% The amount of the chapter lists gap, the default one is |10pt|. +% (This command is already defined in \KOMAScript.) +% \begin{macrocode} + \providecommand*\@chapterlistsgap{10\p@}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@addchapterlistsgap} +% |\@addchapterlistsgap|\marg{float type}\marg{file extension}\par +% will add the chapter lists gap for the given float type. +% \begin{macrocode} + \providecommand*\@addchapterlistsgap[2]{% + \@nameuse{@ifchapterlistsgap@#1}{% if switched on + \@@addchapterlistsgap{#1}{#2}}} +% \end{macrocode} +% \begin{macrocode} + \providecommand*\@@addchapterlistsgap[2]{% + \@ifundefined{@addchapterlistsgap@#2}{% only once per extension + \@namedef{@addchapterlistsgap@#2}{}% + \@@@addchapterlistsgap{#2}}{}} +% \end{macrocode} +% \begin{macrocode} + \providecommand*\@@@addchapterlistsgap[1]{% + \ifdim \@chapterlistsgap>\z@ + \addtocontents{#1}{\protect\addvspace{\@chapterlistsgap}}% + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@addchapterlistsgaps} +% |\@addchapterlistsgaps|\par +% will add the chapter lists gaps for all floating environments in |\newfloat@list|. +% \begin{macrocode} + \providecommand*\@addchapterlistsgaps{% + \def\@elt##1{% + \@expandtwoargs\@addchapterlistsgap{##1}{\@nameuse{ext@##1}}}% + \newfloat@list + \let\@elt\relax} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@chapterlistsgap@off} +% |\@chapterlistsgap@off|\marg{float type}\par +% switches the chapter lists gap off for the given float type. +% Since \KOMAScript{} (still) supports |\float@exts| we need to handle +% this locally, too, even if |\unsettoc| is offered by the \package{tocbasic} package. +% (Otherwise our handling could be moved into the |\else| branch.) +% \begin{macrocode} + \providecommand*\@chapterlistsgap@off[1]{% + \expandafter\let\csname @ifchapterlistsgap@#1\endcsname\@gobble + \ifcsname unsettoc\endcsname + \@expandtwoargs\unsettoc{\@nameuse{ext@#1}}{chapteratlist}% + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@chapterlistsgap@on} +% |\@chapterlistsgap@off|\marg{float type}\par +% switches the chapter lists gap on for the given float type. +% \begin{macrocode} + \providecommand*\@chapterlistsgap@on[1]{% + \expandafter\let\csname @ifchapterlistsgap@#1\endcsname\@iden + \ifcsname setuptoc\endcsname + \@expandtwoargs\setuptoc{\@nameuse{ext@#1}}{chapteratlist}% + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +\fi +% \end{macrocode} +% +% \pagebreak[3] +% \subsection{Global options} +% +% \begin{macro}{chapterlistsgap=} +% The |chapterlistsgap=| option sets the vertical skip added to each list when +% starting a new chapter. +% \begin{macrocode} +\define@key{newfloat}{chapterlistsgap}{% + \renewcommand*\@chapterlistsgap{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{within=} +% The |within=| option redefines the default value and modifies all +% existing floating environments. +% \begin{macrocode} +\define@key{newfloat}{within}{% + \def\newfloat@within@default{#1}% set new default value + \def\@elt##1{\newfloat@setwithin{##1}{#1}}% + \newfloat@list + \let\@elt\relax} +% \end{macrocode} +% \begin{macrocode} +\define@key{newfloat}{without}[]{% + \KV@newfloat@within{none}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{figurename=} +% \begin{macro}{listfigurename=} +% \begin{macro}{figurewithin=} +% We define these options not only for |figure| but for all existing floating environments. +% \begin{macrocode} +\def\@elt#1{% + \define@key{newfloat}{#1name}{% + \newfloat@setname{#1}{##1}}% + \define@key{newfloat}{list#1name}{% + \newfloat@setname{list#1}{##1}}% + \define@key{newfloat}{#1within}{% + \newfloat@setwithin{#1}{##1}}% + \define@key{newfloat}{#1without}[]{% + \newfloat@setwithout{#1}}% +}% +\newfloat@list +\let\@elt\relax +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% Process the package options: +% We use |\setkeys| here instead of |\ProcessOptions|. +% \begin{macrocode} +\let\@tempc\relax +\@expandtwoargs\setkeys{newfloat}{\@ptionlist{\@currname.\@currext}}% +\AtEndOfPackage{\let\@unprocessedoptions\relax} +% \end{macrocode} +% +% \begin{macro}{\newfloatsetup} +% |\newfloatsetup|\marg{options} +% sets global options after loading the package. +% \begin{macrocode} +\newcommand*\newfloatsetup{\setkeys{newfloat}} +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsection{Patching \cs{chapter}} +% +% \begin{macro}{\newfloat@replace@chapter} +% |\newfloat@replace@chapter|\marg{original code}\marg{replacement code}\par +% tries to patch |\@chapter| so |\@add|\x|chapter|\x|lists|\x|gaps| will be supported. +% It checks for |\Hy@org@chapter|, too, since the original code will be stored here +% if the \package{hyperref} package was loaded. +% \begin{macrocode} +\newcommand\newfloat@replace@chapter[2]{% + \begingroup + \let\if@twocolumn\iffalse + \let\if@mainmatter\iffalse + \let\if@thema\iffalse + \def\@tempa[##1]##2{#1}% + \ifx\@tempa\@chapter + \gdef\@chapter[##1]##2{#2}% + \global\let\newfloat@replace@chapter\@gobbletwo + \else\ifx\@tempa\Hy@org@chapter + \gdef\Hy@org@chapter[##1]##2{#2}% + \global\let\newfloat@replace@chapter\@gobbletwo + \fi\fi + \endgroup} +% \end{macrocode} +% \begin{macrocode} +\ifcsname @chapter\endcsname \else + \let\newfloat@replace@chapter\@gobbletwo +\fi +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsubsection{Standard \LaTeX{} document classes} +% +% \begin{macrocode} +% report.cls [2005/09/16 v1.4f Standard LaTeX document class] +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +% \end{macrocode} +% +% \begin{macrocode} +% book.cls [2005/09/16 v1.4f Standard LaTeX document class] +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{\AmS{} \& \SmF{} document classes} +% +% \begin{macrocode} +% amsbook.cls [2004/08/06 v2.20] +% smfbook.cls [1999/11/15 v1.2f Classe LaTeX pour les monographies editees par la SMF] +\newfloat@replace@chapter{% + \refstepcounter{chapter}% + \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty + \else \let\@secnumber\thechapter \fi + \typeout{\chaptername\space\@secnumber}% + \def\@toclevel{0}% + \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{#2}% + \else \@tocwriteb\tocchapter{chapter}{#2}\fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \@makechapterhead{#2}\@afterheading +}{% + \refstepcounter{chapter}% + \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty + \else \let\@secnumber\thechapter \fi + \typeout{\chaptername\space\@secnumber}% + \def\@toclevel{0}% + \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{#2}% + \else \@tocwriteb\tocchapter{chapter}{#2}\fi + \chaptermark{#1}% + \@addchapterlistsgaps + \@makechapterhead{#2}\@afterheading} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{\KOMAScript{} document classes} +% +% If a \KOMAScript{} document class or the \package{tocbasic} package is used +% we don't need to patch anything. +% Instead we use |\setup|\x|toc| and |\un|\x|set|\x|toc| to setup the +% chapters gap in |\@chapter|\x|lists|\x|gap@on| and |\@chapter|\x|lists|\x|gap@off|. +% \begin{macrocode} +\@ifpackageloaded{tocbasic}{% + \let\newfloat@replace@chapter\@gobbletwo}{} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{memoir document classes} +% +% If the \package{memoir} document class is used, +% replacing |\insert|\x|chapter|\x|space| by |\@add|\x|chapter|\x|lists|\x|gaps| is sufficient. +% \begin{macrocode} +\ifcsname insertchapterspace\endcsname + \renewcommand*\insertchapterspace{\@addchapterlistsgaps} + \let\newfloat@replace@chapter\@gobbletwo +\fi +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{NTG document classes} +% +% \begin{macrocode} +% rapport1/3.cls [2004/06/07 v2.1a NTG LaTeX document class] +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +% \end{macrocode} +% \begin{macrocode} + % boek(3).cls [2004/06/07 v2.1a NTG LaTeX document class] +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{The thesis document class} +% +% \begin{macrocode} +% thesis.cls [1996/25/01 1.0g LaTeX document class (wm).] +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\chaptername\space\thechapter.} + \if@thema + \ifx\@shortauthor\@empty + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}% + \@shortauthor\hfill\mbox{}\vskip\normallineskip #1}% + \fi + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1} + \fi + \else + \addcontentsline{toc}{chapter}{#1} + \fi + \chaptermark{#1} + \addtocontents{lof}{\protect\addvspace{10pt}} + \addtocontents{lot}{\protect\addvspace{10pt}} + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}] + \else + \@makechapterhead{#2} + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\chaptername\space\thechapter.}% + \if@thema + \ifx\@shortauthor\@empty + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}% + \@shortauthor\hfill\mbox{}\vskip\normallineskip #1}% + \fi + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{Compatibility warning} +% +% If we were not able to patch |\@chapter| a warning message is issued +% since we are not able to support chapter lists gaps then. +% \begin{macrocode} +\ifx\newfloat@replace@chapter\@gobbletwo \else + \PackageWarningNoLine{newfloat}{% + Unsupported document class, or\MessageBreak + \noexpand\@chapter was already redefined by another package} + \newfloat@Info{\string\@chapter\space=\space\meaning\@chapter} +\fi +% \end{macrocode} +% +% \pagebreak[3] +% \subsection{Support of other packages} +% +% \begin{macro}{\newfloat@ForEachNew} +% |\newfloat@ForEachNew|\oarg{command}\marg{code} +% will execute the given code for every floating environment defined with +% |\Declare|\x|Floating|\x|Environment|. +% This will be done |\At|\x|Begin|\x|Document| so the affected package could be loaded +% after \thispackage. +% (If a \meta{command} is given this will only be done if \meta{command} is +% defined.) +% \begin{macrocode} +\newcommand\newfloat@ForEachNew[2][newfloat@@list]{% + \AtBeginDocument{% + \ifcsname#1\endcsname + \def\@elt##1{#2}% + \newfloat@@list + \let\@elt\relax + \fi}}% +\@onlypreamble\newfloat@ForEachNew +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsubsection{\package{float}} +% +% If the \package{float} package is used we fill up |\float@exts| with our file +% extensions, too. Since this list will be used for inserting chapters gaps +% we only add the ones which are configured for chapters gaps on. +%% \begin{macrocode} +\newfloat@ForEachNew[float@exts]{% + \@nameuse{@ifchapterlistsgap@#1}{% if switched on + \let\float@do=\relax + \edef\@tempa{% + \noexpand\float@exts{\the\float@exts\float@do{\@nameuse{ext@#1}}}}% + \@tempa}} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{\package{fltpage}} +% +% We define a FP-variant of new floating environments here. +% \begin{macrocode} +\newfloat@ForEachNew[FPfigure]{% + \newcounter{FP@#1C}% + \newenvironment{FP#1}{\FP@floatBegin{#1}}{\FP@floatEnd}} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{\package{listings}} +% +% \begin{macro}{\ext@lstlisting} +% Since the \package{listings} package do not define |\ext@lst|\x|listing| +% but we needed it when |Setup|\x|Floating|\x|Environment{lst|\x|listing}{|\ldots|}| +% will be done by the end user, we define it here. +% \begin{macrocode} +\providecommand*\ext@lstlisting{lol}% +% \end{macrocode} +% \end{macro} +% +% \pagebreak[3] +% \subsubsection{\package{rotating}} +% +% We define a sideways-variant of new floating environments here. +% \begin{macrocode} +\newfloat@ForEachNew[sidewaysfigure]{% + \newenvironment{sideways#1}{\@rotfloat{#1}}{\end@rotfloat}% + \newenvironment{sideways#1*}{\@rotdblfloat{#1}}{\end@rotdblfloat}} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{\package{sidecap}} +% +% We define a SC-variant of new floating environments here. +% \begin{macrocode} +\newcommand*\newfloat@For@SC[2]{% + \def#1{b}% = \sidecaptionvpos{#2}{b} (v1.6) + \newenvironment{SC#2}% + {\SC@float[#1]{#2}}{\endSC@float}% + \newenvironment{SC#2*}% + {\SC@dblfloat[#1]{#2}}{\endSC@dblfloat}} +\@onlypreamble\newfloat@For@SC +% \end{macrocode} +% \begin{macrocode} +\newfloat@ForEachNew[SCfigure]{% + \expandafter\newfloat@For@SC\csname SC@#1@vpos\endcsname{#1}} +% \end{macrocode} +% +% \pagebreak[3] +% \subsubsection{\package{wrapfig}} +% +% We define a wrap-variant of new floating environments here. +% \begin{macrocode} +\newfloat@ForEachNew[wrapfigure]{% + \newenvironment{wrap#1}{\wrapfloat{#1}}{\endwrapfloat}} +% \end{macrocode} +% \iffalse +%</package> +% \fi +% +% \iffalse +% --------------------------------------------------------------------------- % +% \fi +% +% \Finale +% +\endinput diff --git a/Master/texmf-dist/source/latex/caption/subcaption.dtx b/Master/texmf-dist/source/latex/caption/subcaption.dtx index 9727cbd4b57..4ca7b6c55f5 100644 --- a/Master/texmf-dist/source/latex/caption/subcaption.dtx +++ b/Master/texmf-dist/source/latex/caption/subcaption.dtx @@ -19,13 +19,13 @@ % 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, and subcaption.dtx, -% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -% caption-eng.tex, and caption-rus.tex. +% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +% the derived files caption.sty, caption2.sty, caption3.sty, +% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. % % \fi -% \CheckSum{149} +% \CheckSum{143} % % \iffalse %<*driver> @@ -473,7 +473,7 @@ % |\DeclareCaptionSubType*|\oarg{numbering scheme}\marg{type} % \end{quote} % For the environments |figure| \& |table| (and all the ones -% defined with |\Declare|\-|Caption|\-|Type|) this will be done automatically +% defined with |\Declare|\-|Floating|\-|Environment|) this will be done automatically % by this package, but for others (e.g.~defined with |\newfloat| offered by the % \package{float} package or |\Declare|\-|New|\-|Float|\-|Type| offered by the % \package{floatrow} package) this has to be done manually. @@ -883,7 +883,7 @@ % \subsection{Identification} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{subcaption}[2011/09/12 v1.1b Sub-captions (AR)] +\ProvidesPackage{subcaption}[2011/10/30 v1.1c Sub-captions (AR)] % \end{macrocode} % % \subsection{Initial code} @@ -935,12 +935,11 @@ % % \subsection{Main code} % +% \changes{v1.1c}{2011/10/30}{Adapted to the newfloat package} % We call |\Declare|\-|Caption|\-|Sub|\-|Type| for |figure|, |table|, -% and every caption type declared with |\Declare|\-|Caption|\-|Type| here. +% and each caption type declared with |\Declare|\-|Floating|\-|Environment| here. % \begin{macrocode} -\caption@ifundefined\c@figure{}{\DeclareCaptionSubType{figure}} -\caption@ifundefined\c@table{}{\DeclareCaptionSubType{table}} -\caption@For{typelist}{\DeclareCaptionSubType{#1}} +\caption@ForEachType{\DeclareCaptionSubType{#1}} % \end{macrocode} % % \pagebreak[3] @@ -993,7 +992,7 @@ % |\setcaptionsubtype| as first contents line. % It will be defined using the helper macro |\caption@For{sub|\-|type|\-|list}| % offered by the \package{caption} kernel, so for every caption type -% declared with |\Declare|\-|Caption|\-|Type| a corresponding `sub' environment +% declared with |\Declare|\-|Floating|\-|Environment| a corresponding `sub' environment % will be defined automatically. % \begin{macrocode} \caption@For{subtypelist}{% diff --git a/Master/texmf-dist/tex/latex/caption/bicaption.sty b/Master/texmf-dist/tex/latex/caption/bicaption.sty index 626974a46bc..b1a0c37f5e0 100644 --- a/Master/texmf-dist/tex/latex/caption/bicaption.sty +++ b/Master/texmf-dist/tex/latex/caption/bicaption.sty @@ -23,13 +23,13 @@ %% 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, and subcaption.dtx, -%% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -%% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -%% caption-eng.tex, and caption-rus.tex. +%% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +%% the derived files caption.sty, caption2.sty, caption3.sty, +%% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +%% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{bicaption}[2011/09/03 v1.0 Bilingual Captions (AR)] +\ProvidesPackage{bicaption}[2011/10/30 v1.0a Bilingual Captions (AR)] \RequirePackage{caption}[2011/08/28] % needs v3.2c or newer \caption@AtBeginDocument{\caption@ifcompatibility{% \caption@Error{% @@ -77,12 +77,15 @@ \g@addto@macro\caption@prepareslc{% \let\bicaption@language\@undefined} \caption@ExecuteOptions{caption}{bi-lang=0,bi-slc=1,bi-swap=0} -\ifx\bbl@main@language\@undefined - \bicaption@WarningNoLine{Please load this package after the babel package} -\else +\ifcsname bbl@main@language\endcsname \edef\@tempa{\noexpand\captionsetup[bi-first]{lang=\bbl@main@language}} \@tempa -\fi +\else\ifcsname xpg@main@language\endcsname + \edef\@tempa{\noexpand\captionsetup[bi-first]{lang=\xpg@main@language}} + \@tempa +\else + \bicaption@WarningNoLine{Please load this package after the babel package} +\fi\fi \caption@SetupOptions{bicaption}{\captionsetup[bi-second]{#2}}% \caption@ProcessOptions*{bicaption} \let\caption@kernel@addcontentsline@ORI\caption@kernel@addcontentsline @@ -213,12 +216,11 @@ \l@addto@macro\caption@warmup{% \let\bicaption\caption@frozen@bicaption}}% \fi} -\def\bicaption@declarelist#1{\@namedef{listof#1}{\bicaption@listof#1}} +\newcommand*\bicaption@declarelist[1]{% + \@namedef{listof#1}{\bicaption@listof#1}} \@onlypreamble\bicaption@declarelist \def\bicaption@listof#1 {\@nameuse{listof#1}} -\caption@ifundefined\c@figure{}{\bicaption@declarelist{figure}} -\caption@ifundefined\c@table{}{\bicaption@declarelist{table}} -\caption@For{typelist}{\bicaption@declarelist{#1}} +\caption@ForEachType{\bicaption@declarelist{#1}} \endinput %% %% End of file `bicaption.sty'. diff --git a/Master/texmf-dist/tex/latex/caption/caption.sty b/Master/texmf-dist/tex/latex/caption/caption.sty index 182fff51a05..61d6435ff03 100644 --- a/Master/texmf-dist/tex/latex/caption/caption.sty +++ b/Master/texmf-dist/tex/latex/caption/caption.sty @@ -23,13 +23,13 @@ %% 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, and subcaption.dtx, -%% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -%% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -%% caption-eng.tex, and caption-rus.tex. +%% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +%% the derived files caption.sty, caption2.sty, caption3.sty, +%% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +%% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption}[2011/09/30 v3.2c Customizing captions (AR)] +\ProvidesPackage{caption}[2011/11/02 v3.2d Customizing captions (AR)] \RequirePackage{caption3}[2011/08/30] % needs v1.4 or newer \caption@ifbool{documentclass}{}{% \caption@WarningNoLine{% @@ -66,28 +66,26 @@ \DeclareCaptionOption{name}{\caption@setname\@captype{#1}} \DeclareCaptionOption{listfigurename}{\caption@SetName{listfigure}{#1}} \DeclareCaptionOption{listtablename}{\caption@SetName{listtable}{#1}} -\newcommand*\caption@SetName[2]{% - \caption@setname{#1}{#2}% - \begingroup - \caption@ifundefined\languagename{}{% - \@ifundefined{captions\languagename}{}{% - \expandafter\g@addto@macro\csname captions\languagename\endcsname - {\caption@setname{#1}{#2}}}}% - \endgroup} +\newcommand*\caption@SetName{% + \RequirePackage{newfloat}% + \newfloat@setname} \newcommand*\caption@setname[2]{\@namedef{#1name}{#2}} \caption@AtBeginDocument{\let\caption@SetName\caption@setname} \newcommand*\caption@DeclareWithinOption[1]{% \DeclareCaptionOption{#1within}{\caption@Within{#1}{##1}}% \DeclareCaptionOptionNoValue{#1without}{\caption@Within{#1}{none}}} +\@onlypreamble\caption@DeclareWithinOption \caption@DeclareWithinOption{figure} \caption@DeclareWithinOption{table} \DeclareCaptionOption{within}{% - \caption@ifundefined\c@figure{}{\caption@Within{figure}{#1}}% - \caption@ifundefined\c@table{}{\caption@Within{table}{#1}}% - \caption@For{typelist}{\caption@Within{##1}{#1}}% - \def\caption@within@default{#1}} -\DeclareCaptionOptionNoValue{without}{\KV@caption@within{none}} -\newcommand*\caption@Within[1]{\def\caption@type{#1}\KV@caption@DCT@within} + \RequirePackage{newfloat}% + \newfloatsetup{within=#1}} +\DeclareCaptionOptionNoValue{without}{% + \RequirePackage{newfloat}% + \newfloatsetup{without}} +\newcommand*\caption@Within{% + \RequirePackage{newfloat}% + \newfloat@setwithin} \DeclareCaptionOption*{config}[caption]{% \InputIfFileExists{#1.cfg}% {\typeout{*** Local configuration file #1.cfg used ***}}% @@ -272,6 +270,8 @@ \long\def\caption@@caption#1[#2]#3{% \ifcaption@star \else \caption@prepareanchor{#1}{#2}% + \M@gettitle{#2}% + \memcaptioninfo{#1}{\csname the#1\endcsname}{#2}{#3}% \fi \par \caption@beginex{#1}{#2}{#3}% @@ -288,6 +288,8 @@ {\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{}} @@ -1170,12 +1172,6 @@ \fi}% \g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}% \g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}% - \providecommand*\float@ifstyle[1]{% - \expandafter\ifx\csname fst@#1\endcsname\relax - \expandafter\@secondoftwo - \else - \expandafter\@firstoftwo - \fi}% \providecommand*\float@getstyle[2]{% \edef#1{% \noexpand\expandafter\noexpand\@gobblefour\noexpand\string @@ -1183,11 +1179,6 @@ \csname fst@#2\endcsname}% \edef#1{#1}% \caption@Debug{floatstyle{#2} = `#1'}}% - \providecommand*\float@setstyle[2]{% - \expandafter\edef\csname fst@#1\endcsname{% - \expandafter\noexpand\csname fs@#2\endcsname}}% - \providecommand*\float@dostyle[1]{% - \@nameuse{fst@#1}\@float@setevery{#1}}% \providecommand*\float@ifcaption[1]{% \expandafter\ifx\csname @float@c@#1\endcsname\float@caption \expandafter\@firstoftwo @@ -1195,7 +1186,6 @@ \expandafter\@secondoftwo \fi}% }}{% - \providecommand*\float@ifstyle[1]{\@secondoftwo}% \providecommand*\float@ifcaption[1]{\@secondoftwo}% } \captionsetup[boxed]{skip=2pt} % do not issue a warning when not used @@ -1286,9 +1276,6 @@ \caption@defrost \end\FP@captype}% }% - \caption@For{typelist}{% - \newcounter{FP@#1C}% - \newenvironment{FP#1}{\FP@floatBegin{#1}}{\FP@floatEnd}}% }{% \let\caption@ifFPlistcap\@undefined \let\caption@ifFPrefcap\@undefined @@ -1570,9 +1557,6 @@ \nobreak\hspace{12pt}}% \newcommand\caption@makerot[2]{% \begin{minipage}\captionwidth\caption@@make{#1}{#2}\end{minipage}}% - \caption@For{typelist}{% - \newenvironment{sideways#1}{\@rotfloat{#1}}{\end@rotfloat}% - \newenvironment{sideways#1*}{\@rotdblfloat{#1}}{\end@rotdblfloat}}% }{} \caption@IfPackageLoaded{sidecap}[2003/06/06 v1.6f]{% \caption@setbool{needfreeze}{1}% @@ -1604,15 +1588,6 @@ \def\SC@orig@caption[##1]##2{\caption@defrost}% \caption@setSC@justify % for compatibility mode \caption@ORI@endSC@FLOAT}% - \newcommand*\caption@For@SC[2]{% - \def#1{b}% = \sidecaptionvpos{#2}{b} (v1.6) - \newenvironment{SC#2}% - {\SC@float[#1]{#2}}{\endSC@float}% - \newenvironment{SC#2*}% - {\SC@dblfloat[#1]{#2}}{\endSC@dblfloat}}% - \@onlypreamble\caption@For@SC - \caption@For{typelist}{% - \expandafter\caption@For@SC\csname SC@#1@vpos\endcsname{#1}}% }{} \caption@IfPackageLoaded{subfigure}[2002/01/23 v2.1]{% \def\sf@ifpositiontop{% @@ -1707,69 +1682,28 @@ %\newcommand*\caption@TPT@eatvskip{\vskip-.2\baselineskip}% \def\caption@TPT@eatvskip#1\vskip{#1\@tempdima=}% }{} -\caption@IfPackageLoaded{wrapfig}{% ver 3.3 (Oct 12, 1999) - \providecommand*\float@ifstyle[1]{% - \expandafter\ifx\csname fst@#1\endcsname\relax - \expandafter\@secondoftwo - \else - \expandafter\@firstoftwo - \fi}% - \newcommand*\caption@restylewrapfloat[1]{% - \expandafter\ifx\csname caption@OUR@wrap#1\expandafter\endcsname - \csname wrap#1\endcsname - \caption@Error{% - For a successful cooperation of the `wrapfig' package\MessageBreak - with the `float' package you should load the `wrapfig'\MessageBreak - package *after* the `float' package}% - \else - \expandafter\let\csname caption@ORI@wrap#1\expandafter\endcsname - \csname wrap#1\endcsname - \@namedef{wrap#1}{\caption@wrapfloat{#1}}% - \expandafter\let\csname caption@OUR@wrap#1\expandafter\endcsname - \csname wrap#1\endcsname - \fi}% - \newcommand*\caption@wrapfloat[1]{% - \caption@settype*{#1}% - \float@ifstyle{#1}{% - \ifx\WF@floatstyhook\@undefined - \caption@Error{% - For a successful cooperation of the `wrapfig' package\MessageBreak - with the `float' package you should use at least\MessageBreak - `wrapfig' version 3.6}% - \else - \float@dostyle{#1}% - \fi}{}% - \caption@clearmargin -%%% \caption@setoptions{wrapfloat}% - \caption@setoptions{wrap#1}% - \@nameuse{caption@ORI@wrap#1}}% - \caption@restylewrapfloat{figure}% - \caption@restylewrapfloat{table}% - \caption@For{typelist}{% - \newenvironment{wrap#1}{\wrapfloat{#1}}{\endwrapfloat}% - \caption@restylewrapfloat{#1}}% - \ifx\WF@floatstyhook\@undefined \else % wrapfig v3.6 - \caption@ifundefined\float@restyle{}{% - \toks@=\expandafter{\float@restyle{#1}% (env may or may not be defined) - \caption@restylewrapfloat{#1}}% - \edef\@tempa{\def\noexpand\float@restyle##1{\the\toks@}}% - \@tempa}% perform redefinitions - \let\caption@ORI@wrapfloat\wrapfloat - \def\wrapfloat#1{% - \float@ifstyle{#1}{% - \caption@Error{% - For a successful cooperation of the `wrapfig' package\MessageBreak - with the `float' package you should load the `wrapfig'\MessageBreak - package *right after* the `float' package}}{}% - \caption@ORI@wrapfloat{#1}}% - \fi % wrapfig v3.6 +\caption@IfPackageLoaded{wrapfig}[2003/01/31 v3.6]{% + \renewcommand*\wrapfloat[1]{% + \def\@captype{#1}% + \@ifundefined{fst@#1}{}{% + \@nameuse{fst@#1}% + \def\WF@floatstyhook{\let\@currbox\WF@box + \global\setbox\WF@box\float@makebox{\wd\WF@box}}}% + \@ifnextchar[\WF@wr{\WF@wr[]}} \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width, \gdef\WF@ovh{#1}% hold overhang for later, when \width is known \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}% - \caption@start + \expandafter\WF@captionstyhook\expandafter{\@captype}% <= new \ifdim\hsize>\z@ \@parboxrestore \else \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption \ignorespaces \fi}% + \def\WF@captionstyhook#1{% + \let\@captype\@undefined + \caption@ifundefined\@float@setevery{}{\@float@setevery{#1}}% + \caption@settype{#1}% + \caption@clearmargin +%%% \caption@setoptions{wrapfloat}% + \caption@setoptions{wrap#1}} }{} \endinput %% diff --git a/Master/texmf-dist/tex/latex/caption/caption2.sty b/Master/texmf-dist/tex/latex/caption/caption2.sty index 53525f205fd..377f1c1f548 100644 --- a/Master/texmf-dist/tex/latex/caption/caption2.sty +++ b/Master/texmf-dist/tex/latex/caption/caption2.sty @@ -23,10 +23,10 @@ %% 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, and subcaption.dtx, -%% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -%% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -%% caption-eng.tex, and caption-rus.tex. +%% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +%% the derived files caption.sty, caption2.sty, caption3.sty, +%% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +%% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] \ProvidesPackage{caption2}[2011/08/12 v2.2d Customising captions (AR)] diff --git a/Master/texmf-dist/tex/latex/caption/caption3.sty b/Master/texmf-dist/tex/latex/caption/caption3.sty index 6945a8c6ac4..6bfa4f541a9 100644 --- a/Master/texmf-dist/tex/latex/caption/caption3.sty +++ b/Master/texmf-dist/tex/latex/caption/caption3.sty @@ -23,13 +23,13 @@ %% 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, and subcaption.dtx, -%% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -%% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -%% caption-eng.tex, and caption-rus.tex. +%% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +%% the derived files caption.sty, caption2.sty, caption3.sty, +%% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +%% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{caption3}[2011/10/09 v1.4 caption3 kernel (AR)] +\ProvidesPackage{caption3}[2011/11/01 v1.4a caption3 kernel (AR)] \providecommand*\@nameundef[1]{% \expandafter\let\csname #1\endcsname\@undefined} \providecommand\l@addto@macro[2]{% @@ -1317,17 +1317,15 @@ \let\caption@fmt\caption@slfmt} \newcommand*\caption@prepareslc{% \let\label\caption@gobble - \let\caption@footnote@ORI\footnote - \def\footnote{\caption@withoptargs\caption@footnote}% \let\caption@footnotemark@ORI\footnotemark + \def\footnote{\caption@withoptargs\caption@footnote}% \def\footnotemark{\caption@withoptargs\caption@footnotemark}% - \let\@footnotetext\@gobble - \let\@endnotetext\@gobble} + \let\@footnotetext\caption@gobble + \let\@endnotetext\caption@gobble + \let\pagenote\caption@gobble +} \newcommand\caption@footnote[2]{% - \begingroup - \let\stepcounter\caption@l@stepcounter - \caption@footnote@ORI#1{#2}% - \endgroup} + \caption@footnotemark{#1}} \newcommand\caption@footnotemark[1]{% \begingroup \let\stepcounter\caption@l@stepcounter @@ -1399,431 +1397,22 @@ \newcommand*\caption@@par{% \parindent\caption@parindent\hangindent\caption@hangindent}% \newcommand*\DeclareCaptionType{% - \@testopt\@DeclareCaptionType{}} + \RequirePackage{newfloat}% + \DeclareFloatingEnvironment} \@onlypreamble\DeclareCaptionType -\def\@DeclareCaptionType[#1]#2{% - \def\caption@type{#2}% - \caption@Debug{New type `#2'}% - \newcounter{#2}\@namedef{theH#2}{}% - \KV@caption@DCT@within\caption@within@default - \caption@DeclareWithinOption{#2}% - \KV@caption@DCT@placement{tbp}% - \caption@ifundefined\c@float@type - {\newcounter{float@type}% - \setcounter{float@type}{\caption@ifundefined\c@figure14}}% - {}% - \caption@Debug{float type `#2'=\the\value{float@type}}% - \expandafter\xdef\csname ftype@#2\endcsname{\the\value{float@type}}% - \addtocounter{float@type}{\value{float@type}}% - \KV@caption@DCT@fileext{lo#2}% - \@namedef{fnum@#2}{\@nameuse{#2name}\nobreakspace\@nameuse{the#2}}% - \newenvironment{#2}{\@float{#2}}{\end@float}% - \newenvironment{#2*}{\@dblfloat{#2}}{\end@dblfloat}% - \expandafter\newcommand\csname listof#2s\endcsname{\caption@listof{#2}}% - \expandafter\newcommand\csname listof#2es\endcsname{\caption@listof{#2}}% - \caption@ifundefined\l@figure - {\@namedef{l@#2}{\@dottedtocline{1}{1.5em}{2.3em}}}% - {\expandafter\let\csname l@#2\endcsname\l@figure}% - \expandafter\newcommand\csname #2name\endcsname{}% - \edef\@tempa{\def\noexpand\@tempa{\@car#2\@nil}}% - \uppercase\expandafter{\@tempa}% - \edef\@tempb{\noexpand\g@addto@macro\noexpand\@tempa{\@cdr#2\@nil}}% - \@tempb - \expandafter\let\csname #2name\endcsname\@tempa - \expandafter\newcommand\csname list#2name\endcsname{}% - \expandafter\xdef\csname list#2name\endcsname{List of \@tempa s}% - \@cons\caption@typelist{{#2}}% - \caption@setkeys[caption]{caption@DCT}{#1}% - \expandafter\caption@DeclareTypeExt\expandafter{\@nameuse{ext@#2}}{#2}% - \@ifnextchar[\@@DeclareCaptionType\relax} -\@onlypreamble\@DeclareCaptionType -\def\@@DeclareCaptionType[#1]{% - \KV@caption@DCT@name{#1}% - \@ifnextchar[\@@@DeclareCaptionType\relax} -\@onlypreamble\@@DeclareCaptionType -\def\@@@DeclareCaptionType[#1]{% - \KV@caption@DCT@listname{#1}} -\@onlypreamble\@@@DeclareCaptionType -\let\DeclareFloatingEnvironment\DeclareCaptionType % alternative command name -\@onlypreamble\DeclareFloatingEnvironment -\newcommand*\caption@DeclareTypeExt[2]{% - \caption@ifundefined\@chapter\relax\caption@PatchChapter - \let\caption@PatchChapter\relax - \@ifundefined{caption@ext@#1}{% - \@namedef{caption@ext@#1}{#2}% - \caption@ifundefined\float@exts{\newtoks\float@exts}{}% - \let\float@do=\relax - \edef\@tempa{\noexpand\float@exts{\the\float@exts\float@do{#1}}}% - \@tempa - \caption@ifundefined\caption@addtolists{% - \newcommand\caption@addtolists[1]{% - \def\float@do####1{\addtocontents{####1}{##1}}\the\float@exts}}{}% - \caption@ifundefined\addtotoclist{}{% - \addtotoclist[float]{#1}% - \setuptoc{#1}{chapteratlist}% - \@namedef{listof#1name}{\list#2name}}% - }{}% - \caption@ifundefined\contentsuse{}{% - \contentsuse{#2}{#1}}% -} -\@onlypreamble\caption@DeclareTypeExt -\newcommand*\caption@within@default{% - \caption@ifundefined\c@chapter{none}{chapter}} -\@onlypreamble\caption@within@default -\caption@ifundefined\listoftoc{% - \newcommand*\caption@listof[1]{% - \begingroup - \expandafter\let\expandafter\listfigurename\csname list#1name\endcsname - \expandafter\let\expandafter\ext@figure\csname ext@#1\endcsname - \let\caption@ORI@starttoc\@starttoc - \renewcommand*\@starttoc[1]{% - \expandafter\caption@ORI@starttoc\expandafter{\ext@figure}}% - \listoffigures - \endgroup}% -}{% - \newcommand*\caption@listof[1]{% - \expandafter\listoftoc\expandafter{\@nameuse{ext@#1}}}% -} -\newcommand*\caption@typelist{} -\define@key{caption@DCT}{fileext}{\@namedef{ext@\caption@type}{#1}} -\@onlypreamble@key{caption@DCT}{fileext} -\define@key{caption@DCT}{listname}{\@namedef{list\caption@type name}{#1}} -\@onlypreamble@key{caption@DCT}{listname} -\define@key{caption@DCT}{name}{\@namedef{\caption@type name}{#1}} -\@onlypreamble@key{caption@DCT}{name} -\define@key{caption@DCT}{placement}{\@namedef{fps@\caption@type}{#1}} -\@onlypreamble@key{caption@DCT}{placement} -\define@key{caption@DCT}{within}{% - \caption@ifundefined\c@chapter{}{\@removefromreset\caption@type{chapter}}% - \@removefromreset\caption@type{section}% - \begingroup - \caption@setkeys[caption]{caption@within}{#1}% - \endgroup} -\define@key{caption@DCT}{without}{\KV@caption@DCT@within{none}} -\define@key{caption@within}{none}[]{% - \caption@within{}{}} -\define@key{caption@within}{section}[]{% - \@addtoreset\caption@type{section}% - \caption@within{\ifnum\c@section>\z@ \thesection.\fi}{\theHsection.}} -\caption@ifundefined\c@chapter{}{% - \define@key{caption@within}{chapter}[]{% - \@addtoreset\caption@type{chapter}% - \caption@within{\ifnum\c@chapter>\z@ \thechapter.\fi}{\theHchapter.}} -}% \@onlypreamble@key{caption@within}{chapter}} -\newcommand*\caption@within{% - \expandafter\caption@within@\expandafter{\caption@type}} -\newcommand*\caption@within@[3]{% - \global\@namedef{the#1}{#2\arabic{#1}}% - \@ifundefined{theH#1}\caption@AtBeginDocument\@firstofone - {\global\@namedef{theH#1}{#3\arabic{#1}}}} -\providecommand*\@removefromreset[2]{{% - \expandafter\let\csname c@#1\endcsname\@removefromreset - \def\@elt##1{% - \expandafter\ifx\csname c@##1\endcsname\@removefromreset - \else - \noexpand\@elt{##1}% - \fi}% - \expandafter\xdef\csname cl@#2\endcsname{% - \csname cl@#2\endcsname}}} -\newcommand*\caption@PatchChapter{% - \providecommand*\@chapterlistsgap{10\p@}% - % report.cls [2005/09/16 v1.4f Standard LaTeX document class] - \caption@patch@chapter{report}{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% - % book.cls [2005/09/16 v1.4f Standard LaTeX document class] - \caption@patch@chapter{book}{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}##1}% - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% - % amsbook.cls [2004/08/06 v2.20] - % smfbook.cls [1999/11/15 v1.2f Classe LaTeX pour les monographies editees par la SMF] - \caption@patch@chapter{ams/smfbook}{% - \refstepcounter{chapter}% - \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty - \else \let\@secnumber\thechapter \fi - \typeout{\chaptername\space\@secnumber}% - \def\@toclevel{0}% - \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{##2}% - \else \@tocwriteb\tocchapter{chapter}{##2}\fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \@makechapterhead{##2}\@afterheading - }{% - \refstepcounter{chapter}% - \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty - \else \let\@secnumber\thechapter \fi - \typeout{\chaptername\space\@secnumber}% - \def\@toclevel{0}% - \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{##2}% - \else \@tocwriteb\tocchapter{chapter}{##2}\fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \@makechapterhead{##2}\@afterheading}% - % scrreprt/scrbook.cls - \caption@ifundefined\KOMAClassName{}{% - \caption@Debug{document class `\KOMAClassName' detected}% - \let\caption@patch@chapter\@gobblethree}% - % rapport1/3.cls [2004/06/07 v2.1a NTG LaTeX document class] - \caption@patch@chapter{rapport}{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% - % boek(3).cls [2004/06/07 v2.1a NTG LaTeX document class] - \caption@patch@chapter{boek}{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}\toc@font0 ##1}% - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{\toc@font0 ##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% - % thesis.cls [1996/25/01 1.0g LaTeX document class (wm).] - \caption@patch@chapter{thesis}{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\chaptername\space\thechapter.} - \if@thema - \ifx\@shortauthor\@empty - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}% - \@shortauthor\hfill\mbox{}\vskip\normallineskip ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1} - \fi - \else - \addcontentsline{toc}{chapter}{##1} - \fi - \chaptermark{##1} - \addtocontents{lof}{\protect\addvspace{10pt}} - \addtocontents{lot}{\protect\addvspace{10pt}} - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}] - \else - \@makechapterhead{##2} - \@afterheading - \fi - }{% - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \typeout{\chaptername\space\thechapter.}% - \if@thema - \ifx\@shortauthor\@empty - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}% - \@shortauthor\hfill\mbox{}\vskip\normallineskip ##1}% - \fi - \else - \addcontentsline{toc}{chapter}{% - \protect\numberline{\thechapter.}##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \else - \addcontentsline{toc}{chapter}{##1}% - \fi - \chaptermark{##1}% - \ifdim \@chapterlistsgap>\z@ - \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}% - \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}% - \caption@addtolists{\protect\addvspace{\@chapterlistsgap}}% - \fi - \if@twocolumn - \@topnewpage[\@makechapterhead{##2}]% - \else - \@makechapterhead{##2}% - \@afterheading - \fi}% - \ifx\caption@patch@chapter\@gobblethree \else - \caption@Debug{% - Unsupported document class detected,\MessageBreak - or \noexpand\@chapter was redefined by another package}% - \fi - \let\caption@PatchChapter\@undefined} -\newcommand\caption@patch@chapter[3]{% - \begingroup - \let\if@mainmatter\iffalse - \let\if@thema\iffalse - \def\@tempa[##1]##2{#2}% - \ifx\@tempa\@chapter - \caption@Debug{document class `#1' detected}% - \gdef\@chapter[##1]##2{#3}% - \global\let\caption@patch@chapter\@gobblethree - \fi - \endgroup} -\long\def \@gobblethree #1#2#3{} +\newcommand\caption@ForEachType[1]{% + \caption@ifundefined\ForEachFloatingEnvironment + {\def\@elt##1{#1}% + \caption@ifundefined\c@figure\@gobble\@elt{figure}% + \caption@ifundefined\c@table\@gobble\@elt{table}% + \let\@elt\relax + \newfloat@addtohook{#1}}% + {\ForEachFloatingEnvironment{#1}}} +\providecommand\newfloat@addtohook[1]{% + \toks@=\expandafter{\newfloat@hook{##1}#1}% + \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}% + \@tempa} +\providecommand*\newfloat@hook[1]{} \newcommand*\caption@patch@stpelt{% \let\caption@stpelt\@stpelt \def\@stpelt##1{% @@ -1927,9 +1516,9 @@ \@nameuse{caption@#2}% \let\@elt\relax}}% \caption@AtBeginDocument{% - \def\@tempa{\@ifstar\sf@@subref\sf@subref}% - \ifx\subref\@tempa - \caption@InfoNoLine{subfig package 1.2 or 1.3 is loaded}% + \def\@tempa{2005/06/28 ver: 1.3 subfig package}% + \expandafter\ifx\csname ver@subfig.sty\endcsname\@tempa + \caption@InfoNoLine{subfig package v1.3 is loaded}% \let\caption@setfloattype\@gobble \let\@dottedxxxline\sf@NEW@dottedxxxline \let\sf@subfloat\sf@NEW@subfloat diff --git a/Master/texmf-dist/tex/latex/caption/ltcaption.sty b/Master/texmf-dist/tex/latex/caption/ltcaption.sty index a93c38c07b0..3619423a779 100644 --- a/Master/texmf-dist/tex/latex/caption/ltcaption.sty +++ b/Master/texmf-dist/tex/latex/caption/ltcaption.sty @@ -23,10 +23,10 @@ %% 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, and subcaption.dtx, -%% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -%% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -%% caption-eng.tex, and caption-rus.tex. +%% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +%% the derived files caption.sty, caption2.sty, caption3.sty, +%% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +%% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] \ProvidesPackage{ltcaption}[2011/09/12 v1.3 longtable captions (AR)] diff --git a/Master/texmf-dist/tex/latex/caption/newfloat.sty b/Master/texmf-dist/tex/latex/caption/newfloat.sty new file mode 100644 index 00000000000..dcee36a3233 --- /dev/null +++ b/Master/texmf-dist/tex/latex/caption/newfloat.sty @@ -0,0 +1,654 @@ +%% +%% This is file `newfloat.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% newfloat.dtx (with options: `package') +%% +%% Copyright (C) 1994-2011 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm) +%% +%% -------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2003/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% 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, and newfloat.dtx, +%% the derived files caption.sty, caption2.sty, caption3.sty, +%% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +%% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. +%% +\NeedsTeXFormat{LaTeX2e}[1994/12/01] +\ProvidesPackage{newfloat}[2011/10/30 v1.0 Defining new floating environments (AR)] +\newcommand*\newfloat@Info[1]{% + \PackageInfo{newfloat}{#1}} +\newcommand*\newfloat@Error[1]{% + \PackageError{newfloat}{#1}\newfloat@eh} +\newcommand*\newfloat@eh{% + If you do not understand this error, please take a closer look\MessageBreak + at the documentation of the `newfloat' package.\MessageBreak\@ehc} +\RequirePackage{keyval}[1997/11/10] +\newcommand*\DeclareFloatingEnvironment{% + \@testopt\@DeclareFloatingEnvironment{}} +\@onlypreamble\DeclareFloatingEnvironment +\def\@DeclareFloatingEnvironment[#1]#2{% + \newfloat@Info{New float `#2' with options `#1'}% + \edef\newfloat@Type{\def\noexpand\newfloat@Type{\@car#2\@nil}}% + \uppercase\expandafter{\newfloat@Type}% + \edef\@tempa{% + \noexpand\g@addto@macro\noexpand\newfloat@Type{\@cdr#2\@nil}}% + \@tempa + \newcounter{#2}% + \ifdefined\c@float@type % from float package + \expandafter\edef\csname ftype@#2\endcsname{\the\value{float@type}}% + \addtocounter{float@type}{\value{float@type}}% + \else\ifdefined\c@newflo@tctr % from memoir document class + \expandafter\edef\csname ftype@#2\endcsname{\the\c@newflo@tctr}% + \advance\c@newflo@tctr \c@newflo@tctr + \else + \ifdefined\newfloat@ftype \else + \newcount\newfloat@ftype + \newfloat@ftype=8\relax + \fi + \expandafter\xdef\csname ftype@#2\endcsname{\the\newfloat@ftype}% + \advance\newfloat@ftype\newfloat@ftype + \fi\fi + \newfloat@Info{float type `#2'=\@nameuse{ftype@#2}}% + \@namedef{fnum@#2}{\@nameuse{#2name}\nobreakspace\@nameuse{the#2}}% + \expandafter\newcommand\csname #2name\endcsname{}% + \expandafter\let\csname #2name\endcsname\newfloat@Type + \@namedef{fleg#2}{\@nameuse{#2name}}% legend naming (memoir) + \@namedef{flegtoc#2}##1{}% + \newenvironment{#2}{\@float{#2}}{\end@float}% + \newenvironment{#2*}{\@dblfloat{#2}}{\end@dblfloat}% + \expandafter\newcommand\csname listof#2s\endcsname{\newfloat@listof{#2}}% + \expandafter\newcommand\csname listof#2es\endcsname{\newfloat@listof{#2}}% + \ifdefined\l@figure + \expandafter\let\csname l@#2\endcsname\l@figure + \else + \@namedef{l@#2}{\@dottedtocline{1}{1.5em}{2.3em}}% + \fi + \expandafter\newcommand\csname list#2name\endcsname{}% + \expandafter\xdef\csname list#2name\endcsname{List of \newfloat@Type s}% + \newfloat@setplacement{#2}{tbp}% + \newfloat@setfileext{#2}{lo#2}% + \newfloat@setoptions*{#2}{#1}% + \@expandtwoargs\newfloat@announce{#2}{\@nameuse{ext@#2}}% + \@ifnextchar[\newfloat@DFE@setname\relax} +\@onlypreamble\@DeclareFloatingEnvironment +\def\newfloat@DFE@setname[#1]{% + \KV@@newfloat@name{#1}% + \@ifnextchar[\newfloat@DFE@setlistname\relax} +\@onlypreamble\newfloat@DFE@setname +\def\newfloat@DFE@setlistname[#1]{% + \KV@@newfloat@listname{#1}} +\@onlypreamble\newfloat@DFE@setlistname +\newcommand*\newfloat@listof[1]{% + \ifcsname listoftoc\endcsname + \expandafter\listoftoc\expandafter{\@nameuse{ext@#1}}% + \else + \begingroup + \expandafter\let\expandafter\listfigurename\csname list#1name\endcsname + \expandafter\let\expandafter\ext@figure\csname ext@#1\endcsname + \let\newfloat@ORI@starttoc\@starttoc + \renewcommand*\@starttoc[1]{% + \expandafter\newfloat@ORI@starttoc\expandafter{\ext@figure}}% + \listoffigures + \endgroup + \fi} +\newcommand*\newfloat@setoptions{% + \@ifstar + {\newfloat@@setoptions\@firstofone}% + {\newfloat@@setoptions\@gobble}} +\newcommand*\newfloat@@setoptions[3]{% + \let\newfloat@within@value\@undefined + \let\newfloat@chapterlistsgaps@value\@undefined + #1{\KV@@newfloat@within\newfloat@within@default}% set default value + \def\newfloat@type{#2}% + \setkeys{@newfloat}{#3}% + \ifx\newfloat@within@value\@undefined \else + \newfloat@setoption{within}\newfloat@within@value + \fi + \ifx\newfloat@chapterlistsgaps@value\@undefined \else + \newfloat@setoption{chapterlistsgaps}\newfloat@chapterlistsgaps@value + \fi} +\newcommand*\newfloat@within@default{% + \ifcsname c@chapter\endcsname chapter\else none\fi} +\@onlypreamble\newfloat@within@default +\newcommand*\newfloat@setoption[1]{% + \expandafter\@expandtwoargs\csname newfloat@set#1\endcsname\newfloat@type} +\newcommand*\newfloat@setfileext[2]{% + \@namedef{ext@#1}{#2}} +\define@key{@newfloat}{fileext}{% + \newfloat@setoption{fileext}{#1}} +\newcommand*\newfloat@setlistname[2]{% + \@namedef{list#1name}{#2}} +\define@key{@newfloat}{listname}{% + \newfloat@setoption{listname}{#1}} +\newcommand*\newfloat@setname[2]{% + \newfloat@@setname{#1}{#2}% + \begingroup + \ifcsname languagename\endcsname + \ifcsname captions\languagename\endcsname + \expandafter\g@addto@macro\csname captions\languagename\endcsname + {\newfloat@@setname{#1}{#2}}% + \fi + \fi + \endgroup} +\newcommand*\newfloat@@setname[2]{% + \@namedef{#1name}{#2}} +\define@key{@newfloat}{name}{% + \newfloat@setoption{name}{#1}} +\newcommand*\newfloat@setplacement[2]{% + \@namedef{fps@#1}{#2}} +\define@key{@newfloat}{placement}{% + \newfloat@setoption{placement}{#1}} +\newcommand*\newfloat@setwithin[2]{% + \ifcsname c@chapter\endcsname + \@removefromreset{#1}{chapter}% + \fi + \@removefromreset{#1}{section}% + \edef\@tempa{#2}% + \ifx\@tempa\@empty + \def\@tempa{none}% + \fi + \def\@tempb{none}% + \ifx\@tempa\@tempb + \ifcsname c@chapter\endcsname + \@chapterlistsgap@off{#1}% + \fi + \newfloat@@setwithin{#1}{}{}% + \else + \def\@tempb{chapter}% + \ifx\@tempa\@tempb + \@addtoreset{#1}{chapter}% + \@chapterlistsgap@on{#1}% + \newfloat@@setwithin{#1}{\ifnum\c@chapter>\z@ \thechapter.\fi}{\theHchapter.}% + \else + \def\@tempb{section}% + \ifx\@tempa\@tempb + \@addtoreset{#1}{section}% + \ifcsname c@chapter\endcsname + \@addtoreset{#1}{chapter}% + \@chapterlistsgap@on{#1}% + \newfloat@@setwithin{#1}{\thesection.}{\theHsection.}% + \else + \newfloat@@setwithin{#1}{\ifnum\c@section>\z@ \thesection.\fi}{\theHsection.}% + \fi + \else + \newfloat@Error{Invalid value `#2' for option `within'}% + \fi + \fi + \fi} +\newcommand*\newfloat@@setwithin[3]{% + \global\@namedef{the#1}{#2\arabic{#1}}% + \global\@namedef{theH#1}{#3\arabic{#1}}} +\define@key{@newfloat}{within}{% + \def\newfloat@within@value{#1}} +\newcommand*\newfloat@setwithout[1]{% + \newfloat@setwithin{#1}{none}} +\define@key{@newfloat}{without}[]{% + \def\newfloat@within@value{none}} +\newcommand*\newfloat@setchapterlistsgaps[2]{% + \edef\@tempa{#2}% + \def\@tempb{off}% + \ifx\@tempa\@tempb + \@chapterlistsgap@off{#1}% + \else + \def\@tempb{on}% + \ifx\@tempa\@tempb + \@chapterlistsgap@on{#1}% + \else + \newfloat@Error{Invalid value `#2' for option `chapterlistsgaps'}% + \fi + \fi} +\define@key{@newfloat}{chapterlistsgaps}{% + \def\newfloat@chapterlistsgaps@value{#1}} +\providecommand*\@removefromreset[2]{{% + \expandafter\let\csname c@#1\endcsname\@removefromreset + \def\@elt##1{% + \expandafter\ifx\csname c@##1\endcsname\@removefromreset + \else + \noexpand\@elt{##1}% + \fi}% + \expandafter\xdef\csname cl@#2\endcsname{% + \csname cl@#2\endcsname}}} +\newcommand*\newfloat@announce[2]{% + \@cons\newfloat@list{{#1}}% + \@cons\newfloat@@list{{#1}}% + \@ifundefined{newfloat@ext@#2}{% + \@namedef{newfloat@ext@#2}{#1}% + \ifcsname c@lofdepth\endcsname + \@ifundefined{c@#2depth}{% + \newcounter{#2depth}% + \setcounter{#2depth}{1}% + }{}% + \fi + \ifcsname addtotoclist\endcsname + \addtotoclist[float]{#2}% + \@namedef{listof#2name}{\@nameuse{list#1name}}% + \fi + }{}% + \ifcsname contentsuse\endcsname + \contentsuse{#1}{#2}% + \fi + \newfloat@hook{#1}} +\@onlypreamble\newfloat@announce +\newcommand*\newfloat@@list{} +\newcommand*\SetupFloatingEnvironment[1]{% + \newfloat@addtolist{#1}% + \newfloat@setoptions{#1}} +\newcommand\ForEachFloatingEnvironment{% + \@ifstar + {\@ForEachFloatingEnvironment\@gobble}% + {\@ForEachFloatingEnvironment\@iden}} +\newcommand\@ForEachFloatingEnvironment[2]{% + \def\@elt##1{#2}% + \newfloat@list + \let\@elt\relax + #1{\newfloat@addtohook{#2}}} +\providecommand\newfloat@addtohook[1]{% + \toks@=\expandafter{\newfloat@hook{##1}#1}% + \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}% + \@tempa} +\providecommand*\newfloat@hook[1]{} +\newcommand*\newfloat@list{} +\newcommand*\newfloat@addtolist[1]{% + \newfloat@ifinlist{#1}{}{% + \ifcsname ext@#1\endcsname + \@cons\newfloat@list{{#1}}% + \@namedef{newfloat@ext@\@nameuse{ext@#1}}{#1}% + \else + \newfloat@Error{`#1' does not seem to be a floating environment}% + \fi}} +\newcommand*\newfloat@ifinlist[1]{% + \let\next\@secondoftwo + \begingroup + \expandafter\let\csname c@#1\endcsname\newfloat@ifinlist + \def\@elt##1{% + \expandafter\ifx\csname c@##1\endcsname\newfloat@ifinlist + \global\let\next\@firstoftwo + \fi}% + \newfloat@list + \endgroup + \next} +\ifcsname ext@figure\endcsname + \newfloat@addtolist{figure} +\fi +\ifcsname ext@table\endcsname + \newfloat@addtolist{table} +\fi +\ifcsname @chapter\endcsname + \providecommand*\@chapterlistsgap{10\p@}% + \providecommand*\@addchapterlistsgap[2]{% + \@nameuse{@ifchapterlistsgap@#1}{% if switched on + \@@addchapterlistsgap{#1}{#2}}} + \providecommand*\@@addchapterlistsgap[2]{% + \@ifundefined{@addchapterlistsgap@#2}{% only once per extension + \@namedef{@addchapterlistsgap@#2}{}% + \@@@addchapterlistsgap{#2}}{}} + \providecommand*\@@@addchapterlistsgap[1]{% + \ifdim \@chapterlistsgap>\z@ + \addtocontents{#1}{\protect\addvspace{\@chapterlistsgap}}% + \fi} + \providecommand*\@addchapterlistsgaps{% + \def\@elt##1{% + \@expandtwoargs\@addchapterlistsgap{##1}{\@nameuse{ext@##1}}}% + \newfloat@list + \let\@elt\relax} + \providecommand*\@chapterlistsgap@off[1]{% + \expandafter\let\csname @ifchapterlistsgap@#1\endcsname\@gobble + \ifcsname unsettoc\endcsname + \@expandtwoargs\unsettoc{\@nameuse{ext@#1}}{chapteratlist}% + \fi} + \providecommand*\@chapterlistsgap@on[1]{% + \expandafter\let\csname @ifchapterlistsgap@#1\endcsname\@iden + \ifcsname setuptoc\endcsname + \@expandtwoargs\setuptoc{\@nameuse{ext@#1}}{chapteratlist}% + \fi} +\fi +\define@key{newfloat}{chapterlistsgap}{% + \renewcommand*\@chapterlistsgap{#1}} +\define@key{newfloat}{within}{% + \def\newfloat@within@default{#1}% set new default value + \def\@elt##1{\newfloat@setwithin{##1}{#1}}% + \newfloat@list + \let\@elt\relax} +\define@key{newfloat}{without}[]{% + \KV@newfloat@within{none}} +\def\@elt#1{% + \define@key{newfloat}{#1name}{% + \newfloat@setname{#1}{##1}}% + \define@key{newfloat}{list#1name}{% + \newfloat@setname{list#1}{##1}}% + \define@key{newfloat}{#1within}{% + \newfloat@setwithin{#1}{##1}}% + \define@key{newfloat}{#1without}[]{% + \newfloat@setwithout{#1}}% +}% +\newfloat@list +\let\@elt\relax +\let\@tempc\relax +\@expandtwoargs\setkeys{newfloat}{\@ptionlist{\@currname.\@currext}}% +\AtEndOfPackage{\let\@unprocessedoptions\relax} +\newcommand*\newfloatsetup{\setkeys{newfloat}} +\newcommand\newfloat@replace@chapter[2]{% + \begingroup + \let\if@twocolumn\iffalse + \let\if@mainmatter\iffalse + \let\if@thema\iffalse + \def\@tempa[##1]##2{#1}% + \ifx\@tempa\@chapter + \gdef\@chapter[##1]##2{#2}% + \global\let\newfloat@replace@chapter\@gobbletwo + \else\ifx\@tempa\Hy@org@chapter + \gdef\Hy@org@chapter[##1]##2{#2}% + \global\let\newfloat@replace@chapter\@gobbletwo + \fi\fi + \endgroup} +\ifcsname @chapter\endcsname \else + \let\newfloat@replace@chapter\@gobbletwo +\fi +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +\newfloat@replace@chapter{% + \refstepcounter{chapter}% + \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty + \else \let\@secnumber\thechapter \fi + \typeout{\chaptername\space\@secnumber}% + \def\@toclevel{0}% + \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{#2}% + \else \@tocwriteb\tocchapter{chapter}{#2}\fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \@makechapterhead{#2}\@afterheading +}{% + \refstepcounter{chapter}% + \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty + \else \let\@secnumber\thechapter \fi + \typeout{\chaptername\space\@secnumber}% + \def\@toclevel{0}% + \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{#2}% + \else \@tocwriteb\tocchapter{chapter}{#2}\fi + \chaptermark{#1}% + \@addchapterlistsgaps + \@makechapterhead{#2}\@afterheading} +\@ifpackageloaded{tocbasic}{% + \let\newfloat@replace@chapter\@gobbletwo}{} +\ifcsname insertchapterspace\endcsname + \renewcommand*\insertchapterspace{\@addchapterlistsgaps} + \let\newfloat@replace@chapter\@gobbletwo +\fi +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} + % boek(3).cls [2004/06/07 v2.1a NTG LaTeX document class] +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}\toc@font0 #1}% + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \else + \addcontentsline{toc}{chapter}{\toc@font0 #1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +\newfloat@replace@chapter{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\chaptername\space\thechapter.} + \if@thema + \ifx\@shortauthor\@empty + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}% + \@shortauthor\hfill\mbox{}\vskip\normallineskip #1}% + \fi + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1} + \fi + \else + \addcontentsline{toc}{chapter}{#1} + \fi + \chaptermark{#1} + \addtocontents{lof}{\protect\addvspace{10pt}} + \addtocontents{lot}{\protect\addvspace{10pt}} + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}] + \else + \@makechapterhead{#2} + \@afterheading + \fi +}{% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\chaptername\space\thechapter.}% + \if@thema + \ifx\@shortauthor\@empty + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}% + \@shortauthor\hfill\mbox{}\vskip\normallineskip #1}% + \fi + \else + \addcontentsline{toc}{chapter}{% + \protect\numberline{\thechapter.}#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \@addchapterlistsgaps + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +\ifx\newfloat@replace@chapter\@gobbletwo \else + \PackageWarningNoLine{newfloat}{% + Unsupported document class, or\MessageBreak + \noexpand\@chapter was already redefined by another package} + \newfloat@Info{\string\@chapter\space=\space\meaning\@chapter} +\fi +\newcommand\newfloat@ForEachNew[2][newfloat@@list]{% + \AtBeginDocument{% + \ifcsname#1\endcsname + \def\@elt##1{#2}% + \newfloat@@list + \let\@elt\relax + \fi}}% +\@onlypreamble\newfloat@ForEachNew +%% \begin{macrocode} +\newfloat@ForEachNew[float@exts]{% + \@nameuse{@ifchapterlistsgap@#1}{% if switched on + \let\float@do=\relax + \edef\@tempa{% + \noexpand\float@exts{\the\float@exts\float@do{\@nameuse{ext@#1}}}}% + \@tempa}} +\newfloat@ForEachNew[FPfigure]{% + \newcounter{FP@#1C}% + \newenvironment{FP#1}{\FP@floatBegin{#1}}{\FP@floatEnd}} +\providecommand*\ext@lstlisting{lol}% +\newfloat@ForEachNew[sidewaysfigure]{% + \newenvironment{sideways#1}{\@rotfloat{#1}}{\end@rotfloat}% + \newenvironment{sideways#1*}{\@rotdblfloat{#1}}{\end@rotdblfloat}} +\newcommand*\newfloat@For@SC[2]{% + \def#1{b}% = \sidecaptionvpos{#2}{b} (v1.6) + \newenvironment{SC#2}% + {\SC@float[#1]{#2}}{\endSC@float}% + \newenvironment{SC#2*}% + {\SC@dblfloat[#1]{#2}}{\endSC@dblfloat}} +\@onlypreamble\newfloat@For@SC +\newfloat@ForEachNew[SCfigure]{% + \expandafter\newfloat@For@SC\csname SC@#1@vpos\endcsname{#1}} +\newfloat@ForEachNew[wrapfigure]{% + \newenvironment{wrap#1}{\wrapfloat{#1}}{\endwrapfloat}} +\endinput +%% +%% End of file `newfloat.sty'. diff --git a/Master/texmf-dist/tex/latex/caption/subcaption.sty b/Master/texmf-dist/tex/latex/caption/subcaption.sty index 7f5627adeb3..66dae89eef4 100644 --- a/Master/texmf-dist/tex/latex/caption/subcaption.sty +++ b/Master/texmf-dist/tex/latex/caption/subcaption.sty @@ -23,13 +23,13 @@ %% 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, and subcaption.dtx, -%% the derived files caption.sty, caption2.sty, caption3.sty, bicaption.sty, -%% ltcaption.sty, and subcaption.sty, and the user manuals caption-deu.tex, -%% caption-eng.tex, and caption-rus.tex. +%% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx, +%% the derived files caption.sty, caption2.sty, caption3.sty, +%% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty, +%% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex. %% \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{subcaption}[2011/09/12 v1.1b Sub-captions (AR)] +\ProvidesPackage{subcaption}[2011/10/30 v1.1c Sub-captions (AR)] \RequirePackage{caption}[2011/08/18] % needs v3.2b or newer \caption@AtBeginDocument{\caption@ifcompatibility{% \caption@Error{% @@ -49,9 +49,7 @@ \caption@ExecuteOptions{subcaption}{% font+=small,labelformat=parens,labelsep=space,skip=6pt,list=0,hypcap=0} \caption@ProcessOptions*{subcaption} -\caption@ifundefined\c@figure{}{\DeclareCaptionSubType{figure}} -\caption@ifundefined\c@table{}{\DeclareCaptionSubType{table}} -\caption@For{typelist}{\DeclareCaptionSubType{#1}} +\caption@ForEachType{\DeclareCaptionSubType{#1}} \newcommand*\subcaption{% \caption@iftype {\setcaptionsubtype*\caption}% |