# coloredtheorem A colorful boxed theorem environment, combining `tcolorbox` and breakable boxes. It supports full `tcolorbox` customization, automatic numbering, `\label{...}` and `\ref{…}`, and `\listof…` ## About * **Package:** coloredtheorem — A colorful boxed theorem environment * **Copyright:** 2024 © João M. Lourenço * **CTAN:** https://ctan.org/pkg/coloredtheorem * **Repository:** https://github.com/joaomlourenco/coloredtheorem * **License:** The LaTeX Project Public License 1.3c ## Introduction The `coloredtheorem` package is a simple environment that allows to write stuff inside boxes from `tcolorbox`. If necessary the boxes gracefully overflow to the next page. This package takes no options and includes `tcolorbox` if necessary. You may include `tcolorbox` with your own favourite options prior to including this package. Akin to `\newtheorem` from the `amsmath` package, the user should start by defining a new _theorem/box_ group and customize its aspect. Each new environment will have its own counter/numbering. Notice that `\label{...}` and `\ref{...}` work as expected. There is also a command to generate the corresponding _\listof..._ ## Usage * `\usepackage{coloredtheorem}` * Load Load the `coloredtheorem` package. This package will load `tcolorbox` if necessary. * `\cthnewtheorem{}{}[]` * Create a new boxed algorithm-like environment. * `` is the suffix for the new environment being defined, e.g., `algoritm`. The effective environment name will be `cth`, e.g., `cthalgorithm`. * `` is the (printable) name or the new environment being defined, e.g., _Algorithm_. * `` default options for the environment being defined (this argument is optional). These options are passed straight to the `tcolorbox` environment, so anything valid for `tcolorbox` is also valid here. * `\begin{}{}[]\end{}` * Create a new _algorithm-like_ box with the given contents. ∗ `` is the alternative caption for the `\cthlistofs` (see below). * `` is the sffix for environment name, e.g., `algorithm`. * `` is the caption/title of the box. If the caption is left empty, this box will not be listed with the `\cthlistofs` (see below). * `` options to be passed to the `tcolorbox` environment, which will override the defaults given in `\cthnewalgorithm` (this argument is optional). * `` the contents to by typeset inside the colored environment. * `\listofs` * `` is the environment name suffix, e.g., `\cthlistofalgorithms`. Please notice that there is a ‘s’ (plural) after ``. ## Example Let’s start by creating two new environments, one for _algorithms_ and another for _examples_, both defaulting to a gray frame, the former with a yellowish background and the latter with a lighter gray background. ```latex \cthnewtheorem{algorithm}{Algorithm}[coltitle=black, colback=yellow!10, colframe=black!15] \cthnewtheorem{example}{Example}[coltitle=black, colback=black!5, colframe=black!30] ``` The box with Algorithm 1, which uses the default visual that was given when creating the environment with `\cthnewtheorem` and gracefully overflows onto the next page, was created with: ```latex \begin{cthalgorithm}{Advance a counter to the next value in a domain $\omega \in \mathbb{N}$.} Algorithm body here! \end{cthalgorithm} ``` image _(page break here)_ image The box Example 1, which uses the default visual for the environment (as given to `\cthnewtheorem...`), was created with: ```latex \begin{cthexample}{This is an example!} Example body here! \end{cthexample} ``` image Now, let’s create a new box for Algorithm 1, but with a different customized visual, which will affect only this entry! Notice that the customization argument is passed straight to the `tcolorbox` environment, so anything valid for `tcolorbox` is also valid here. Algorithm 2 was created with the following code: ```latex \begin{cthalgorithm} {Advance a counter to the next value in a domain $\omega \in \mathbb{N}$, but now with a customized visual. Also, notice that this algorithm breaks the page boundaries.} [coltitle=white, colback=green!10, colframe=green!70!black, colbacktitle=\sffamily\bfseries\large, fonttitle=red!50!white] Algorithm body here! \end{cthalgorithm} ``` image _(page break here)_ image And now and example with no caption and a different visual... this example will not go into the` \listofexamples` below! image Now let’s print the lists of algorithms and examples. Remember to add the prefix `cthth` to the `listof`, i.e., `\cthlistofalgorithms` and `\cthlistofexamples`! ## List of Algorithms image ## List of Examples image