An ongoing project that is not just another package to provide theorem
environments. Thmtools' aim is to provide new features, but to rely on
another package to provide the customary theorem commands.
Features that are under consideration, in no particular order:
- Key=val interface, because I can't remember which optional
parameter is the parent counter and which is the sibling counter.
Try thm-kv.sty, part of thmtools.
You can define your own keys. For example, you can have
a key-val interface to shadethm.sty
- List-of-theorems, similar to the way ntheorem already has them.
Try thm-listof.sty, part of thmtools.
- Better hyperref support (\autoref). An article about the hoops one
has to jump through to make it work appeared in Die TeXnische
Komödie. Try thm-autoref.sty, part of thmtools.
- A numbering scheme that turns off the number if there is only a
single theorem. This comes up sometimes in comp.text.tex and is useful
for journal submissions. See unique, part of thmtools.
- A \thref command similar to ntheorem's, but that doesn't break xr
and hyperref. Unlikely, since we have \autoref, which works.
- A lot of people ask for a way of restating theorems, like a \ref
that gives the whole body.
Try thm-restate.sty, part of thmtools.
- Complex theorem names, like "Remark 1 on Theorem 4.7". Possibly
with a fancy \ref mechanism that only says "Remark 1" if close enough
to Theorem 4.7. Possibly also clairvoyant names, when a preliminary remark
precedes the actual theorem.
Current version available here:
Current version on CTAN:
v0.1beta6.
- 0.1beta12 fixes a hyperref/thm-restate bug reported by Sylvain Chevillard.
- 0.1beta11 fixes minor bugs.
- 0.1beta10 updates the docs and fixes minor bugs.
- 0.1beta9 allows multiple calls to \listoftheorems.
- 0.1beta8 adds an optional key-val argument to \listoftheorems. Currently supported keys:
- numwidth=(length) sets the space allocated for the numbers
- showall, ignoreall show or ignore all environments
- show={envlist},ignore={envlist},onlynamed={envlist} show those environments
always/never/only when they have an optarg.
All three suggestions due to Jörg Sommer.
- 0.1beta7 adds another layer of indirection so that the format of the list-of-theorems
can be customized. This is not documented because there is no user-friendly interface to it yet.
- 0.1beta6 (There is no beta5. Remember if you've already stepped the number next time.)
fixes a bug in the new parsing mechanism and adds support for thmbox and shadethm.
- 0.1beta4 uses a new parser, parseargs, for thm-patch. This means that thmtools now
supports beamer's angle bracket overlay specifiers in theorem environments. This also means
that you're now using a parser which has not been tested as much as the other one, which is
why older versions are still available for download.
- 0.1beta3 fixes missing vertical space in the LoE.
- 0.1beta2 introduces a starred form of restatable and renames the theorem-hooks.
There are also now the full complement of four hooks.
- First thmtools bundle release Feb. 09, 2008.
- thm-restate added Feb. 05, 2008.
- restate should store more counters: i.e., restated equations
will get net numbers and possibly shouldn't.
- Not tested enough.