diff options
author | Karl Berry <karl@freefriends.org> | 2011-08-23 16:25:16 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-08-23 16:25:16 +0000 |
commit | 95f44e6aaa9707ee94a8dfa04153274ce05396ac (patch) | |
tree | 56bd92a8ce774691f853b353e17f59fe54dcd5aa /Master/texmf-dist | |
parent | 4731222142fb8eb709e5f954db3231ea1283eb63 (diff) |
thmtools 61 (22aug11)
git-svn-id: svn://tug.org/texlive/trunk@23659 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
24 files changed, 279 insertions, 118 deletions
diff --git a/Master/texmf-dist/doc/latex/thmtools/VERSION.tex b/Master/texmf-dist/doc/latex/thmtools/VERSION.tex index 07f2d5f7084..230b7da84e1 100644 --- a/Master/texmf-dist/doc/latex/thmtools/VERSION.tex +++ b/Master/texmf-dist/doc/latex/thmtools/VERSION.tex @@ -1 +1 @@ -\def\x #1-#2-#3 #4 v#5\@{\def\VERSION{#1/#2/#3 v#5}}\x 2010-08-09 20:13:08 +0200 v50\@
\ No newline at end of file +\def\x #1-#2-#3 #4 v#5\@{\def\VERSION{#1/#2/#3 v#5}}\x 2011-06-02 08:51:52 +0200 v61\@
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/thmtools/thmtools-manual.tex b/Master/texmf-dist/doc/latex/thmtools/thmtools-manual.tex index 98e5f31f87d..dd08f3067fa 100644 --- a/Master/texmf-dist/doc/latex/thmtools/thmtools-manual.tex +++ b/Master/texmf-dist/doc/latex/thmtools/thmtools-manual.tex @@ -542,7 +542,7 @@ the boxed and shaded keys here. To change the order in which title, number and note appear, there is a key - headstyle. Currently, the values ``margin'' and ``swapnumber'' are + headformat. Currently, the values ``margin'' and ``swapnumber'' are supported. The daring may also try to give a macro here that uses the commands |\NUMBER|, |\NAME| and |\NOTE|. You cannot circumvent the fact @@ -692,7 +692,7 @@ \listoftheorems[ignoreall, onlynamed={theorem,Theorem,euclid}] \end{result} - As might be expected, the heading given is defined in |\listoftheoremname|. + As might be expected, the heading given is defined in |\listtheoremname|. \section{Extended arguments to theorem environments} @@ -701,7 +701,11 @@ key-value list here as well. The following keys are known right now: \begin{description} \item[name] This is what used to be the old argument. It usually holds - the name of the theorem, or a source. + the name of the theorem, or a source. This key also accepts an + \emph{optional} argument, which will go into the list of theorems. Be + aware that since we already are within an optional argument, you have to + use an extra level of curly braces: + |\begin{theorem}[{name=[Short name]A long name,...}]| \item[label] This will issue a |\label| command after the head. Not very useful, more of a demo. \item[continues] Saying |continues=foo| will cause the number that is @@ -710,7 +714,12 @@ label as its argument.) \item[restate] Saying |restate=foo| will hopefully work like wrapping this theorem in a restatable environment. (It probably still fails - in cases that I didn't think of.) + in cases that I didn't think of.) This key also accepts an optional + argument: when restating, the restate key is replaced by this argument, + for example, |restate=[name=Boring rehash]foo| will result in a + different name. (Be aware that it is possible to give the same key + several times, but I don't promise the results. In case of the name key, + the names happen to override one another.) \end{description} \begin{source} \begin{body}[gobble=6] @@ -891,11 +900,7 @@ theorem, before the body. Does probably not apply (or make sense) for styles that have a linebreak after the head. - \key{headindent} - Value: a length. Horizontal space inserted before the head. Some - publishers like |\parindent| here for remarks, for example. - - \key{headstyle} + \key{headformat} Value: \LaTeX\ code using the special placeholders |\NUMBER|, |\NAME| and |\NOTE|, which correspond to the (formatted, including the braces for |\NOTE| etc.) three parts of a theorem's head. This can be used to @@ -911,6 +916,11 @@ \item[] \emph{This list is likely to grow} \end{description} + \key{headindent} + Value: a length. Horizontal space inserted before the head. Some + publishers like |\parindent| here for remarks, for example. + + \section{Known keys to \texttt{\textbackslash declaretheorem}} \def\keydefaultcontext{declaretheorem} diff --git a/Master/texmf-dist/doc/latex/thmtools/thmtools.pdf b/Master/texmf-dist/doc/latex/thmtools/thmtools.pdf Binary files differindex f805a7d5324..b3cb6b1ed72 100644 --- a/Master/texmf-dist/doc/latex/thmtools/thmtools.pdf +++ b/Master/texmf-dist/doc/latex/thmtools/thmtools.pdf diff --git a/Master/texmf-dist/source/latex/thmtools/thm-amsthm.dtx b/Master/texmf-dist/source/latex/thmtools/thm-amsthm.dtx index 52a667a966d..31a2397f478 100644 --- a/Master/texmf-dist/source/latex/thmtools/thm-amsthm.dtx +++ b/Master/texmf-dist/source/latex/thmtools/thm-amsthm.dtx @@ -8,6 +8,8 @@ %<*amsthm> %\fi % \begin{macrocode} +\providecommand\thmt@space{ } + \define@key{thmstyle}{spaceabove}{% \def\thmt@style@spaceabove{#1}% } @@ -41,10 +43,16 @@ \newtoks\thmt@style@headstyle \define@key{thmstyle}{headformat}[]{% + \thmt@setheadstyle{#1}% +} +\define@key{thmstyle}{headstyle}[]{% + \thmt@setheadstyle{#1}% +} +\def\thmt@setheadstyle#1{% \thmt@style@headstyle{% \def\NAME{\the\thm@headfont ##1}% \def\NUMBER{\bgroup\@upn{##2}\egroup}% - \def\NOTE{\if=##3=\else\bgroup\ \the\thm@notefont(##3)\egroup\fi}% + \def\NOTE{\if=##3=\else\bgroup\thmt@space\the\thm@notefont(##3)\egroup\fi}% }% \def\thmt@tmp{#1}% \@onelevel@sanitize\thmt@tmp @@ -57,7 +65,7 @@ \else \thmt@style@headstyle\@xa{% \the\thmt@style@headstyle - #1 + #1% }% \fi %\showthe\thmt@style@headstyle diff --git a/Master/texmf-dist/source/latex/thmtools/thm-kv.dtx b/Master/texmf-dist/source/latex/thmtools/thm-kv.dtx index 02f81e1932f..2dc6e484486 100644 --- a/Master/texmf-dist/source/latex/thmtools/thm-kv.dtx +++ b/Master/texmf-dist/source/latex/thmtools/thm-kv.dtx @@ -36,39 +36,77 @@ \RequirePackage{keyval,kvsetkeys,thm-patch} -\@ifpackagelater{kvsetkeys}{2010/07/02}{% - % assume Heiko goes along with my patch... -}{% - \RequirePackage{etex} - \PackageInfo{thm-kv}{kvsetkeys patch applied}% - \long\def\kv@processor@default#1#2#3{% - \protected@edef\kvsu@fam{#1}% new - \@onelevel@sanitize\kvsu@fam% new - \protected@edef\kvsu@key{#2}% new - \@onelevel@sanitize\kvsu@key% new - \unless\ifcsname KV@#1@\kvsu@key\endcsname - \unless\ifcsname KVS@#1@handler\endcsname - \kv@error@unknownkey{#1}{\kvsu@key}% +\long\def\thmt@kv@processor@default#1#2#3{% + \def\kvsu@fam{#1}% new + \@onelevel@sanitize\kvsu@fam% new + \def\kvsu@key{#2}% new + \@onelevel@sanitize\kvsu@key% new + \unless\ifcsname KV@#1@\kvsu@key\endcsname + \unless\ifcsname KVS@#1@handler\endcsname + \kv@error@unknownkey{#1}{\kvsu@key}% + \else + \csname KVS@#1@handler\endcsname{#2}{#3}% + % still using #2 #3 here is intentional: handler might + % be used for strange stuff like implementing key names + % that contain strange characters or other strange things. + \relax + \fi + \else + \ifx\kv@value\relax + \unless\ifcsname KV@#1@\kvsu@key @default\endcsname + \kv@error@novalue{#1}{\kvsu@key}% + \else + \csname KV@#1@\kvsu@key @default\endcsname + \relax + \fi + \else + \csname KV@#1@\kvsu@key\endcsname{#3}% + \fi + \fi +} + +\@ifpackagelater{kvsetkeys}{2011/04/06}{% + % Patch has disappeared somewhere... thanksalot. + \PackageInfo{thm-kv}{kvsetkeys patch (v1.13 or later)} + \long\def\tmp@KVS@PD#1#2#3{% no non-etex-support here... + \unless\ifcsname KV@#1@#2\endcsname + \unless\ifcsname KVS@#1@handler\endcsname + \kv@error@unknownkey{#1}{#2}% \else \csname KVS@#1@handler\endcsname{#2}{#3}% - % still using #2 #3 here is intentional: handler might - % be used for strange stuff like implementing key names - % that contain strange characters or other strange things. \relax \fi \else \ifx\kv@value\relax - \unless\ifcsname KV@#1@\kvsu@key @default\endcsname - \kv@error@novalue{#1}{\kvsu@key}% + \unless\ifcsname KV@#1@#2@default\endcsname + \kv@error@novalue{#1}{#2}% \else - \csname KV@#1@\kvsu@key @default\endcsname + \csname KV@#1@#2@default\endcsname \relax \fi \else - \csname KV@#1@\kvsu@key\endcsname{#3}% + \csname KV@#1@#2\endcsname{#3}% \fi \fi + }% + \ifx\tmp@KVS@PD\KVS@ProcessorDefault + \let\KVS@ProcessorDefault\thmt@kv@processor@default + \def\kv@processor@default#1#2{% + \begingroup + \csname @safe@activestrue\endcsname + \let\ifincsname\iftrue + \edef\KVS@temp{\endgroup + \noexpand\KVS@ProcessorDefault{#1}{\unexpanded{#2}}% + }% + \KVS@temp } + \else + \PackageError{thm-kv}{kvsetkeys patch failed, try kvsetkeys v1.13 or earlier} + \fi +}{% + \RequirePackage{etex} + \PackageInfo{thm-kv}{kvsetkeys patch applied (pre-1.13)}% + \let\kv@processor@default\thmt@kv@processor@default } % useful key handler defaults. @@ -279,6 +317,7 @@ \thmt@thmuse@iskvfalse \def\thmt@newoptarg{\@gobble}% \def\thmt@newoptargextra{}% + \let\thmt@shortoptarg\@empty \def\thmt@warn@unusedkeys{}% \@for\thmt@fam:=\thmt@thmuse@families\do{% \kvsetkeys{\thmt@fam}{#1}% @@ -288,7 +327,9 @@ \@xa\thmt@newoptarg \thmt@newoptargextra\@empty }% - \protected@edef\thmt@shortoptarg{\thmt@newoptarg\@empty}% + \ifx\thmt@shortoptarg\@empty + \protected@edef\thmt@shortoptarg{\thmt@newoptarg\@empty}% + \fi \thmt@warn@unusedkeys \else \def\thmt@optarg{#1}% @@ -328,8 +369,13 @@ \addtotheorempostheadhook[local]{\label{#1}}% } \thmt@define@thmuse@key{name}{% - \def\thmt@newoptarg{#1\@iden}% + \thmt@setnewoptarg #1\@iden% +} +\newcommand\thmt@setnewoptarg[1][]{% + \def\thmt@shortoptarg{#1}\thmt@setnewlongoptarg } +\def\thmt@setnewlongoptarg #1\@iden{% + \def\thmt@newoptarg{#1\@iden}} \providecommand\thmt@suspendcounter[2]{% \@xa\protected@edef\csname the#1\endcsname{#2}% diff --git a/Master/texmf-dist/source/latex/thmtools/thm-listof.dtx b/Master/texmf-dist/source/latex/thmtools/thm-listof.dtx index ff216fe5f8b..6eb4921020f 100644 --- a/Master/texmf-dist/source/latex/thmtools/thm-listof.dtx +++ b/Master/texmf-dist/source/latex/thmtools/thm-listof.dtx @@ -60,14 +60,17 @@ \def\thmtlo@oldchapter{0}% \newcommand\thmtlo@chaptervspacehack{} \ifcsname c@chapter\endcsname - \def\thmtlo@chaptervspacehack{% - \ifnum \value{chapter}>\thmtlo@oldchapter\relax - % new chapter, add vspace to loe. - \addtocontents{loe}{\protect\addvspace{10\p@}}% - \xdef\thmtlo@oldchapter{\arabic{chapter}}% - \fi - }% + \ifx\c@chapter\relax\else + \def\thmtlo@chaptervspacehack{% + \ifnum \value{chapter}>\thmtlo@oldchapter\relax + % new chapter, add vspace to loe. + \addtocontents{loe}{\protect\addvspace{10\p@}}% + \xdef\thmtlo@oldchapter{\arabic{chapter}}% + \fi + }% + \fi \fi + \providecommand\listtheoremname{List of Theorems} \newcommand\listoftheorems[1][]{% diff --git a/Master/texmf-dist/source/latex/thmtools/thm-ntheorem.dtx b/Master/texmf-dist/source/latex/thmtools/thm-ntheorem.dtx index 09f528cb001..ccd12dc30d8 100644 --- a/Master/texmf-dist/source/latex/thmtools/thm-ntheorem.dtx +++ b/Master/texmf-dist/source/latex/thmtools/thm-ntheorem.dtx @@ -9,6 +9,8 @@ %\fi % \begin{macrocode} +\providecommand\thmt@space{ } + % actually, ntheorem's so-called style is nothing like a style at all... \def\thmt@declaretheoremstyle@setup{} \def\thmt@declaretheoremstyle#1{% @@ -88,7 +90,7 @@ \item[\hskip\labelsep\theorem@headerfont% \def\NAME{\theorem@headerfont ####1}% \def\NUMBER{\bgroup\@upn{####2}\egroup}% - \def\NOTE{\if=####3=\else\bgroup\ (####3)\egroup\fi}% + \def\NOTE{\if=####3=\else\bgroup\thmt@space(####3)\egroup\fi}% \csname thmt@headstyle@#1\endcsname \theorem@separator ] @@ -106,7 +108,7 @@ \item[\hskip\labelsep\theorem@headerfont% \def\NAME{\the\thm@headfont ####1}% \def\NUMBER{\bgroup\@upn{####2}\egroup}% - \def\NOTE{\if=####3=\else\bgroup\ (####3)\egroup\fi}% + \def\NOTE{\if=####3=\else\bgroup\thmt@space(####3)\egroup\fi}% #1% \theorem@separator ] diff --git a/Master/texmf-dist/source/latex/thmtools/thm-restate.dtx b/Master/texmf-dist/source/latex/thmtools/thm-restate.dtx index 58d840b1d41..033a48254e7 100644 --- a/Master/texmf-dist/source/latex/thmtools/thm-restate.dtx +++ b/Master/texmf-dist/source/latex/thmtools/thm-restate.dtx @@ -252,7 +252,7 @@ \label{thmt@@#3}% \fi % this will be the collected body. - ##1 + ##1% \csname end#2\endcsname % if we faked the counter values, restore originals now. \ifthmt@thisistheone\else\thmt@restorecounters\fi @@ -285,17 +285,27 @@ ,restate phase 1% ,restate phase 2% } +\newcommand\thmt@splitrestateargs[1][]{% + \g@addto@macro\thmt@storedoptargs{,#1}% + \def\tmp@a##1\@{\def\thmt@storename{##1}}% + \tmp@a +} \newif\ifthmt@restatethis \define@key{restate phase 1}{restate}{% - \thmt@debug{we will restate as #1}% + \thmt@thmuse@iskvtrue + \def\thmt@storedoptargs{}% discard the first time around + \thmt@splitrestateargs #1\@ + \def\thmt@storedoptargs{}% discard the first time around + %\def\thmt@storename{#1}% + \thmt@debug{we will restate as `\thmt@storename' with more args + `\thmt@storedoptargs'}% \@namedef{thmt@unusedkey@restate}{}% % spurious "unused key" fixes itself once we are after tracknames... \thmt@restatethistrue - \def\thmt@storedoptargs{}% - \def\thmt@storename{#1}% \protected@edef\tmp@a{% \@nx\thmt@thisistheonetrue + \@nx\def\@nx\@currenvir{\thmt@envname}% \@nx\@xa\@nx\thmt@restatable\@nx\@xa[\@nx\thmt@storedoptargs]% {\thmt@envname}{\thmt@storename}% }% @@ -308,11 +318,15 @@ \define@key{restate phase 2}{restate}{% % do not store restate as a key for repetition: % infinite loop. + % instead, retain the added keyvals + % overwriting thmt@storename should be safe here, it's been + % xdefd into the postheadhook + \thmt@splitrestateargs #1\@ } \kv@set@family@handler{restate phase 2}{% \ifthmt@restatethis - \@xa\@xa\@xa\g@addto@macro\@xa\@xa\@xa\thmt@storedoptargs\@xa\@xa\@xa{% - \@xa\kv@key\@xa=\kv@value,}% + \@xa\@xa\@xa\g@addto@macro\@xa\@xa\@xa\thmt@storedoptargs\@xa\@xa\@xa{\@xa\@xa\@xa,% + \@xa\kv@key\@xa=\kv@value}% \fi } diff --git a/Master/texmf-dist/source/latex/thmtools/thmdef-shaded.dtx b/Master/texmf-dist/source/latex/thmtools/thmdef-shaded.dtx index f7f78050673..6377182c3e6 100644 --- a/Master/texmf-dist/source/latex/thmtools/thmdef-shaded.dtx +++ b/Master/texmf-dist/source/latex/thmtools/thmdef-shaded.dtx @@ -49,6 +49,9 @@ \define@key{thmt@shade}{rulecolor}{\thmt@definecolor{shaderulecolor}{#1}} \define@key{thmt@shade}{rulewidth}{\setlength\shadeboxrule{#1}} \define@key{thmt@shade}{margin}{\setlength\shadeboxsep{#1}} +\define@key{thmt@shade}{padding}{\setlength\shadeboxsep{#1}} +\define@key{thmt@shade}{leftmargin}{\setlength\shadeleftshift{#1}} +\define@key{thmt@shade}{rightmargin}{\setlength\shaderightshift{#1}} % \end{macrocode} % % What follows is wizardry you don't have to understand. In essence, diff --git a/Master/texmf-dist/tex/latex/thmtools/aliasctr.sty b/Master/texmf-dist/tex/latex/thmtools/aliasctr.sty index d9cdfad629f..f0a63b02739 100644 --- a/Master/texmf-dist/tex/latex/thmtools/aliasctr.sty +++ b/Master/texmf-dist/tex/latex/thmtools/aliasctr.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {aliasctr}[2010/08/09 v50] +\ProvidesPackage {aliasctr}[2011/06/02 v61] \def\aliasctr@f@llow#1#2\@nil#3{% \ifx#1\@elt \noexpand #3% diff --git a/Master/texmf-dist/tex/latex/thmtools/parseargs.sty b/Master/texmf-dist/tex/latex/thmtools/parseargs.sty index 1848ac25c31..f72f85d4e1f 100644 --- a/Master/texmf-dist/tex/latex/thmtools/parseargs.sty +++ b/Master/texmf-dist/tex/latex/thmtools/parseargs.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {parseargs}[2010/08/09 v50] +\ProvidesPackage {parseargs}[2011/06/02 v61] \newtoks\@parsespec \def\parse@endquark{\parse@endquark} diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-amsthm.sty b/Master/texmf-dist/tex/latex/thmtools/thm-amsthm.sty index 71c0e0ef314..635d80bd081 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-amsthm.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-amsthm.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,9 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-amsthm}[2010/08/09 v50] +\ProvidesPackage {thm-amsthm}[2011/06/02 v61] +\providecommand\thmt@space{ } + \define@key{thmstyle}{spaceabove}{% \def\thmt@style@spaceabove{#1}% } @@ -54,10 +56,16 @@ \newtoks\thmt@style@headstyle \define@key{thmstyle}{headformat}[]{% + \thmt@setheadstyle{#1}% +} +\define@key{thmstyle}{headstyle}[]{% + \thmt@setheadstyle{#1}% +} +\def\thmt@setheadstyle#1{% \thmt@style@headstyle{% \def\NAME{\the\thm@headfont ##1}% \def\NUMBER{\bgroup\@upn{##2}\egroup}% - \def\NOTE{\if=##3=\else\bgroup\ \the\thm@notefont(##3)\egroup\fi}% + \def\NOTE{\if=##3=\else\bgroup\thmt@space\the\thm@notefont(##3)\egroup\fi}% }% \def\thmt@tmp{#1}% \@onelevel@sanitize\thmt@tmp @@ -70,7 +78,7 @@ \else \thmt@style@headstyle\@xa{% \the\thmt@style@headstyle - #1 + #1% }% \fi %\showthe\thmt@style@headstyle diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-autoref.sty b/Master/texmf-dist/tex/latex/thmtools/thm-autoref.sty index 72f2d174660..ea5ac3709b2 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-autoref.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-autoref.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-autoref}[2010/08/09 v50] +\ProvidesPackage {thm-autoref}[2011/06/02 v61] \RequirePackage{thm-patch, aliasctr, parseargs, keyval} diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-beamer.sty b/Master/texmf-dist/tex/latex/thmtools/thm-beamer.sty index 1257fd1455a..65db6fa224e 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-beamer.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-beamer.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-beamer}[2010/08/09 v50] +\ProvidesPackage {thm-beamer}[2011/06/02 v61] \newif\ifthmt@hasoverlay \def\thmt@parsetheoremargs#1{% \parse{% diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-kv.sty b/Master/texmf-dist/tex/latex/thmtools/thm-kv.sty index bd1de2e94b2..9ec3ee57217 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-kv.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-kv.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-kv}[2010/08/09 v50] +\ProvidesPackage {thm-kv}[2011/06/02 v61] \let\@xa\expandafter \let\@nx\noexpand @@ -42,39 +42,77 @@ \RequirePackage{keyval,kvsetkeys,thm-patch} -\@ifpackagelater{kvsetkeys}{2010/07/02}{% - % assume Heiko goes along with my patch... -}{% - \RequirePackage{etex} - \PackageInfo{thm-kv}{kvsetkeys patch applied}% - \long\def\kv@processor@default#1#2#3{% - \protected@edef\kvsu@fam{#1}% new - \@onelevel@sanitize\kvsu@fam% new - \protected@edef\kvsu@key{#2}% new - \@onelevel@sanitize\kvsu@key% new - \unless\ifcsname KV@#1@\kvsu@key\endcsname - \unless\ifcsname KVS@#1@handler\endcsname - \kv@error@unknownkey{#1}{\kvsu@key}% +\long\def\thmt@kv@processor@default#1#2#3{% + \def\kvsu@fam{#1}% new + \@onelevel@sanitize\kvsu@fam% new + \def\kvsu@key{#2}% new + \@onelevel@sanitize\kvsu@key% new + \unless\ifcsname KV@#1@\kvsu@key\endcsname + \unless\ifcsname KVS@#1@handler\endcsname + \kv@error@unknownkey{#1}{\kvsu@key}% + \else + \csname KVS@#1@handler\endcsname{#2}{#3}% + % still using #2 #3 here is intentional: handler might + % be used for strange stuff like implementing key names + % that contain strange characters or other strange things. + \relax + \fi + \else + \ifx\kv@value\relax + \unless\ifcsname KV@#1@\kvsu@key @default\endcsname + \kv@error@novalue{#1}{\kvsu@key}% + \else + \csname KV@#1@\kvsu@key @default\endcsname + \relax + \fi + \else + \csname KV@#1@\kvsu@key\endcsname{#3}% + \fi + \fi +} + +\@ifpackagelater{kvsetkeys}{2011/04/06}{% + % Patch has disappeared somewhere... thanksalot. + \PackageInfo{thm-kv}{kvsetkeys patch (v1.13 or later)} + \long\def\tmp@KVS@PD#1#2#3{% no non-etex-support here... + \unless\ifcsname KV@#1@#2\endcsname + \unless\ifcsname KVS@#1@handler\endcsname + \kv@error@unknownkey{#1}{#2}% \else \csname KVS@#1@handler\endcsname{#2}{#3}% - % still using #2 #3 here is intentional: handler might - % be used for strange stuff like implementing key names - % that contain strange characters or other strange things. \relax \fi \else \ifx\kv@value\relax - \unless\ifcsname KV@#1@\kvsu@key @default\endcsname - \kv@error@novalue{#1}{\kvsu@key}% + \unless\ifcsname KV@#1@#2@default\endcsname + \kv@error@novalue{#1}{#2}% \else - \csname KV@#1@\kvsu@key @default\endcsname + \csname KV@#1@#2@default\endcsname \relax \fi \else - \csname KV@#1@\kvsu@key\endcsname{#3}% + \csname KV@#1@#2\endcsname{#3}% \fi \fi + }% + \ifx\tmp@KVS@PD\KVS@ProcessorDefault + \let\KVS@ProcessorDefault\thmt@kv@processor@default + \def\kv@processor@default#1#2{% + \begingroup + \csname @safe@activestrue\endcsname + \let\ifincsname\iftrue + \edef\KVS@temp{\endgroup + \noexpand\KVS@ProcessorDefault{#1}{\unexpanded{#2}}% + }% + \KVS@temp } + \else + \PackageError{thm-kv}{kvsetkeys patch failed, try kvsetkeys v1.13 or earlier} + \fi +}{% + \RequirePackage{etex} + \PackageInfo{thm-kv}{kvsetkeys patch applied (pre-1.13)}% + \let\kv@processor@default\thmt@kv@processor@default } \newcommand\thmt@mkignoringkeyhandler[1]{% @@ -271,6 +309,7 @@ \thmt@thmuse@iskvfalse \def\thmt@newoptarg{\@gobble}% \def\thmt@newoptargextra{}% + \let\thmt@shortoptarg\@empty \def\thmt@warn@unusedkeys{}% \@for\thmt@fam:=\thmt@thmuse@families\do{% \kvsetkeys{\thmt@fam}{#1}% @@ -280,7 +319,9 @@ \@xa\thmt@newoptarg \thmt@newoptargextra\@empty }% - \protected@edef\thmt@shortoptarg{\thmt@newoptarg\@empty}% + \ifx\thmt@shortoptarg\@empty + \protected@edef\thmt@shortoptarg{\thmt@newoptarg\@empty}% + \fi \thmt@warn@unusedkeys \else \def\thmt@optarg{#1}% @@ -319,8 +360,13 @@ \addtotheorempostheadhook[local]{\label{#1}}% } \thmt@define@thmuse@key{name}{% - \def\thmt@newoptarg{#1\@iden}% + \thmt@setnewoptarg #1\@iden% +} +\newcommand\thmt@setnewoptarg[1][]{% + \def\thmt@shortoptarg{#1}\thmt@setnewlongoptarg } +\def\thmt@setnewlongoptarg #1\@iden{% + \def\thmt@newoptarg{#1\@iden}} \providecommand\thmt@suspendcounter[2]{% \@xa\protected@edef\csname the#1\endcsname{#2}% diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-listof.sty b/Master/texmf-dist/tex/latex/thmtools/thm-listof.sty index fd805131af2..9dbdb7fbe6a 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-listof.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-listof.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-listof}[2010/08/09 v50] +\ProvidesPackage {thm-listof}[2011/06/02 v61] \let\@xa=\expandafter \let\@nx=\noexpand \RequirePackage{thm-patch,keyval,kvsetkeys} @@ -28,13 +28,15 @@ \def\thmtlo@oldchapter{0}% \newcommand\thmtlo@chaptervspacehack{} \ifcsname c@chapter\endcsname - \def\thmtlo@chaptervspacehack{% - \ifnum \value{chapter}>\thmtlo@oldchapter\relax - % new chapter, add vspace to loe. - \addtocontents{loe}{\protect\addvspace{10\p@}}% - \xdef\thmtlo@oldchapter{\arabic{chapter}}% - \fi - }% + \ifx\c@chapter\relax\else + \def\thmtlo@chaptervspacehack{% + \ifnum \value{chapter}>\thmtlo@oldchapter\relax + % new chapter, add vspace to loe. + \addtocontents{loe}{\protect\addvspace{10\p@}}% + \xdef\thmtlo@oldchapter{\arabic{chapter}}% + \fi + }% + \fi \fi \providecommand\listtheoremname{List of Theorems} diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-llncs.sty b/Master/texmf-dist/tex/latex/thmtools/thm-llncs.sty index cf9cf50220d..7691cb1526a 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-llncs.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-llncs.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-llncs}[2010/08/09 v50] +\ProvidesPackage {thm-llncs}[2011/06/02 v61] \@ifclasslater{llncs}{2010/04/15}{}{% \PackageWarningNoLine{thmtools}{% LLNCS.cls too old, not supported by thmtools diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-ntheorem.sty b/Master/texmf-dist/tex/latex/thmtools/thm-ntheorem.sty index a4786b89bef..17184c69122 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-ntheorem.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-ntheorem.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,9 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-ntheorem}[2010/08/09 v50] +\ProvidesPackage {thm-ntheorem}[2011/06/02 v61] + +\providecommand\thmt@space{ } \def\thmt@declaretheoremstyle@setup{} \def\thmt@declaretheoremstyle#1{% @@ -95,7 +97,7 @@ \item[\hskip\labelsep\theorem@headerfont% \def\NAME{\theorem@headerfont ####1}% \def\NUMBER{\bgroup\@upn{####2}\egroup}% - \def\NOTE{\if=####3=\else\bgroup\ (####3)\egroup\fi}% + \def\NOTE{\if=####3=\else\bgroup\thmt@space(####3)\egroup\fi}% \csname thmt@headstyle@#1\endcsname \theorem@separator ] @@ -113,7 +115,7 @@ \item[\hskip\labelsep\theorem@headerfont% \def\NAME{\the\thm@headfont ####1}% \def\NUMBER{\bgroup\@upn{####2}\egroup}% - \def\NOTE{\if=####3=\else\bgroup\ (####3)\egroup\fi}% + \def\NOTE{\if=####3=\else\bgroup\thmt@space(####3)\egroup\fi}% #1% \theorem@separator ] diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-patch.sty b/Master/texmf-dist/tex/latex/thmtools/thm-patch.sty index 8a8955bb444..492aa2531fd 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-patch.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-patch.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-patch}[2010/08/09 v50] +\ProvidesPackage {thm-patch}[2011/06/02 v61] \RequirePackage{parseargs} \newif\ifthmt@isstarred diff --git a/Master/texmf-dist/tex/latex/thmtools/thm-restate.sty b/Master/texmf-dist/tex/latex/thmtools/thm-restate.sty index ee8c52826a7..93f7d343212 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thm-restate.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thm-restate.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thm-restate}[2010/08/09 v50] +\ProvidesPackage {thm-restate}[2011/06/02 v61] \RequirePackage{thmtools} \let\@xa\expandafter \let\@nx\noexpand @@ -158,7 +158,7 @@ \label{thmt@@#3}% \fi % this will be the collected body. - ##1 + ##1% \csname end#2\endcsname % if we faked the counter values, restore originals now. \ifthmt@thisistheone\else\thmt@restorecounters\fi @@ -191,17 +191,27 @@ ,restate phase 1% ,restate phase 2% } +\newcommand\thmt@splitrestateargs[1][]{% + \g@addto@macro\thmt@storedoptargs{,#1}% + \def\tmp@a##1\@{\def\thmt@storename{##1}}% + \tmp@a +} \newif\ifthmt@restatethis \define@key{restate phase 1}{restate}{% - \thmt@debug{we will restate as #1}% + \thmt@thmuse@iskvtrue + \def\thmt@storedoptargs{}% discard the first time around + \thmt@splitrestateargs #1\@ + \def\thmt@storedoptargs{}% discard the first time around + %\def\thmt@storename{#1}% + \thmt@debug{we will restate as `\thmt@storename' with more args + `\thmt@storedoptargs'}% \@namedef{thmt@unusedkey@restate}{}% % spurious "unused key" fixes itself once we are after tracknames... \thmt@restatethistrue - \def\thmt@storedoptargs{}% - \def\thmt@storename{#1}% \protected@edef\tmp@a{% \@nx\thmt@thisistheonetrue + \@nx\def\@nx\@currenvir{\thmt@envname}% \@nx\@xa\@nx\thmt@restatable\@nx\@xa[\@nx\thmt@storedoptargs]% {\thmt@envname}{\thmt@storename}% }% @@ -214,11 +224,15 @@ \define@key{restate phase 2}{restate}{% % do not store restate as a key for repetition: % infinite loop. + % instead, retain the added keyvals + % overwriting thmt@storename should be safe here, it's been + % xdefd into the postheadhook + \thmt@splitrestateargs #1\@ } \kv@set@family@handler{restate phase 2}{% \ifthmt@restatethis - \@xa\@xa\@xa\g@addto@macro\@xa\@xa\@xa\thmt@storedoptargs\@xa\@xa\@xa{% - \@xa\kv@key\@xa=\kv@value,}% + \@xa\@xa\@xa\g@addto@macro\@xa\@xa\@xa\thmt@storedoptargs\@xa\@xa\@xa{\@xa\@xa\@xa,% + \@xa\kv@key\@xa=\kv@value}% \fi } diff --git a/Master/texmf-dist/tex/latex/thmtools/thmdef-shaded.sty b/Master/texmf-dist/tex/latex/thmtools/thmdef-shaded.sty index e4c76ba7926..0f6e99c614a 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thmdef-shaded.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thmdef-shaded.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thmdef-shaded}[2010/08/09 v50] +\ProvidesPackage {thmdef-shaded}[2011/06/02 v61] \define@key{thmdef}{shaded}[{}]{% \thmt@trytwice{}{% \RequirePackage{shadethm}% @@ -36,6 +36,9 @@ \define@key{thmt@shade}{rulecolor}{\thmt@definecolor{shaderulecolor}{#1}} \define@key{thmt@shade}{rulewidth}{\setlength\shadeboxrule{#1}} \define@key{thmt@shade}{margin}{\setlength\shadeboxsep{#1}} +\define@key{thmt@shade}{padding}{\setlength\shadeboxsep{#1}} +\define@key{thmt@shade}{leftmargin}{\setlength\shadeleftshift{#1}} +\define@key{thmt@shade}{rightmargin}{\setlength\shaderightshift{#1}} \def\thmt@colorlet#1#2{% %\typeout{don't know how to let color `#1' be like color `#2'!}% \@xa\let\csname\string\color@#1\@xa\endcsname diff --git a/Master/texmf-dist/tex/latex/thmtools/thmdef-thmbox.sty b/Master/texmf-dist/tex/latex/thmtools/thmdef-thmbox.sty index edf11a8ceff..8cafb47b017 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thmdef-thmbox.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thmdef-thmbox.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thmdef-thmbox}[2010/08/09 v50] +\ProvidesPackage {thmdef-thmbox}[2011/06/02 v61] \define@key{thmdef}{thmbox}[L]{% \thmt@trytwice{% \let\oldproof=\proof diff --git a/Master/texmf-dist/tex/latex/thmtools/thmtools.sty b/Master/texmf-dist/tex/latex/thmtools/thmtools.sty index 08cb34fc6e2..0d520f53577 100644 --- a/Master/texmf-dist/tex/latex/thmtools/thmtools.sty +++ b/Master/texmf-dist/tex/latex/thmtools/thmtools.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {thmtools}[2010/08/09 v50] +\ProvidesPackage {thmtools}[2011/06/02 v61] \DeclareOption{debug}{% \def\thmt@debug{\typeout}% } diff --git a/Master/texmf-dist/tex/latex/thmtools/unique.sty b/Master/texmf-dist/tex/latex/thmtools/unique.sty index 21b7efa0127..de213925cc8 100644 --- a/Master/texmf-dist/tex/latex/thmtools/unique.sty +++ b/Master/texmf-dist/tex/latex/thmtools/unique.sty @@ -11,7 +11,7 @@ %% The `thmtools' package has the LPPL maintenance status: maintained. %% Current Maintainer is Ulrich M. Schwarz, ulmi@absatzen.de %% -%% Copyright (C) 2008-2010 by Ulrich M. Schwarz. +%% Copyright (C) 2008-2011 by Ulrich M. Schwarz. %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, version 1.3a. @@ -20,7 +20,7 @@ %% %% \NeedsTeXFormat {LaTeX2e} -\ProvidesPackage {unique}[2010/08/09 v50] +\ProvidesPackage {unique}[2011/06/02 v61] \DeclareOption{unq}{% \newwrite\uniq@channel |