diff options
Diffstat (limited to 'macros/latex/contrib/tcolorbox')
49 files changed, 676 insertions, 445 deletions
diff --git a/macros/latex/contrib/tcolorbox/CHANGES.md b/macros/latex/contrib/tcolorbox/CHANGES.md index 5aaa4f6f21..bd48493c90 100644 --- a/macros/latex/contrib/tcolorbox/CHANGES.md +++ b/macros/latex/contrib/tcolorbox/CHANGES.md @@ -22,7 +22,73 @@ and this project adheres to -## [6.2.0] +## [6.4.1] - 2024-10-22 + +### Changed +- Updated `zref-clever` support so that `label type` can also work with `label is label` (issue #295) +- Documentation: change mention of `tikz` to `tikzfill.image` in skins description (issue #293) +- `tcolorbox-tutorial-poster.tex`: Using `breakafterinrun` to break long sequences of dashes (issue #294) + + + +## [6.4.0] - 2024-09-27 + +### Added +- Libary `documentation`: + - `\refPkg` for referring packages on CTAN (issue #290) + +### Changed +- Precautions for tikz options with square brackets (issue #284) +- Usage warnings added for deprecated options `before example`, `after example`, and `graphical environment` (issue #284) +- Documenation for TikZ Picture Option Keys adapted (issue #285) +- Label `tcolorbox` added to LaTeX hooks (issue #287) +- Libary `minted`: Minted option `envname` now supported by package `minted` directly (issue #2) + +### Fixed +- Libary `minted`: `minted Warning: Macro \minted@def@optcl is deprecated with minted v3` (issue #2) +- `tcolorbox-tutorial-poster.tex`: minted v3 seems to need escaped comma `\,` instead of `,` inside `breakafter` + + + +## [6.3.0] - 2024-07-10 + +### Added +- Library `documentation`: + - Option `page ref formatter` (issue #273) +- First experimental partial tagging support: suppress tagging of drawing (issue #283) + This works for lualatex only. + +### Changed +- The base package loads `tikz` now instead of `pgf`. + All skins, including the `standard` family, use `tikzpicture` as internal environment now. +- Boolean marker to detect if inside a `tcb@savebox` introduced (issue #262) +- LaTeX usrguide cited for `\NewDocumentCommand` and friends (issue #263) +- Stricter checks on box names in `\newtcbox` and friends (issue #264) +- Checks on formatter like `index key formatter` enforced (issue #265) +- Needed LaTeX version updated to 2023-11-01 +- More meaningful error message in case of `\DeclareTColorBox` with same auto counter (issue #276) +- Library `theorems`: + - Options `ams align`, `ams align*`, `ams gather`, and `ams gather*` are now shortcuts + for the upper part only (issue #282) + - Documentation for `ams align`, `ams align*`, `ams gather`, and `ams gather*` adapted, i.e. + exclusion of lower parts documented (issue #282) +- Technical information: The package documentation is now produced with lualatex instead of pdflatex + +### Deprecated +- The option `graphical environment` is useless now, since all environments are based on `tikzpicture` now. + +### Removed +- Documentation for the deprecated options `before example` and `after example` +- Documentation for the deprecated option `graphical environment` + +### Fixed +- `\@nobreakfalse` added to `\tcb@parbox@false@settings` to avoid + decreased space before list with `parbox=false` following a section heading (issue #270) +- Documentation typos fixed (issue #279) + + + +## [6.2.0] - 2024-01-10 ### Added - New convenience options for box content additions (issue #250) diff --git a/macros/latex/contrib/tcolorbox/README.md b/macros/latex/contrib/tcolorbox/README.md index 27f6edf11d..d3f6affd07 100644 --- a/macros/latex/contrib/tcolorbox/README.md +++ b/macros/latex/contrib/tcolorbox/README.md @@ -1,4 +1,4 @@ -# The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +# The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) > Copyright (c) 2006-2024 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de> diff --git a/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex b/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex index 90ece8e5a5..2ac98f28cd 100644 --- a/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbbreakable.code.tex: Code for breakable colorboxes %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \RequirePackage{pdfcol} \pdfcolInitStack{tcb@breakable} @@ -82,6 +82,7 @@ \reserved@a% \@endpefalse% \global\@newlistfalse% + \tcb@set@savebox@construction@true% \let\tcbbreak\tcb@@break% \iftcb@usecolorstack% \pdfcolSwitchStack{tcb@breakable}% @@ -551,7 +552,7 @@ \let\tcb@before@middle=\@empty% \let\tcb@before@last=\@empty% \iftcb@multicol% - \long\def\tcb@after@first{\par}% using \columnbreak here kills multicols' algortihm sometimes + \long\def\tcb@after@first{\par}% using \columnbreak here kills multicols' algorithm sometimes \long\def\tcb@after@middle{\par\vfill}% \else% \long\def\tcb@after@first{\par\pagebreak\tcb@enlbreak@next}% @@ -827,7 +828,7 @@ \csname tcb@break@ch@\tcb@split@state\endcsname% \tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}% \tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}% - \tcb@drawing@env@begin% + \begin{tcb@drawing}% \tcb@extensions@preframe% % draw frame and interior \tcb@adraw@frame% @@ -842,7 +843,7 @@ \tcb@tdraw@upper% \tcb@tdraw@lower% \tcb@extensions@final% - \tcb@drawing@env@end% + \end{tcb@drawing}% \endgroup% } @@ -857,7 +858,7 @@ \csname tcb@break@ch@\tcb@split@state\endcsname% \tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}% \tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}% - \tcb@drawing@env@begin% + \begin{tcb@drawing}% \tcb@extensions@preframe% % draw frame and interior \tcb@adraw@frame% @@ -868,7 +869,7 @@ \tcb@tdraw@title% \tcb@tdraw@upper% \tcb@extensions@final% - \tcb@drawing@env@end% + \end{tcb@drawing}% \endgroup% } @@ -883,7 +884,7 @@ \csname tcb@break@ch@\tcb@split@state\endcsname% \tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}% \tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}% - \tcb@drawing@env@begin% + \begin{tcb@drawing}% \tcb@extensions@preframe% % draw frame and interior \tcb@adraw@frame% @@ -897,7 +898,7 @@ \tcb@tdraw@title% \tcb@tdraw@lower% \tcb@extensions@final% - \tcb@drawing@env@end% + \end{tcb@drawing}% \endgroup% } @@ -912,7 +913,7 @@ \csname tcb@break@ch@\tcb@split@state\endcsname% \tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}% \tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}% - \tcb@drawing@env@begin% + \begin{tcb@drawing}% \tcb@extensions@preframe% % draw frame and interior \tcb@adraw@frame% @@ -923,7 +924,7 @@ \tcb@tdraw@title% \tcb@tdraw@lower% \tcb@extensions@final% - \tcb@drawing@env@end% + \end{tcb@drawing}% \endgroup% } diff --git a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex index 3eff9746f8..676c69caf0 100644 --- a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbdocumentation.code.tex: Code for LaTeX documentations %% %% ------------------------------------------------------------------------------------------- @@ -17,13 +17,13 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{listings,skins,external,raster} \ifdefined\printindex\else% \RequirePackage{makeidx}[2000/03/29]% - \AddToHook{begindocument/before}{% + \AddToHook{begindocument/before}[tcolorbox]{% \@ifpackageloaded{imakeidx}{% \tcb@warning{`imakeidx' package should be loaded before `documentation' library}% }{}}% @@ -66,7 +66,7 @@ \DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}} \def\meta@font@select{\rmfamily\itshape} -\AtEndPreamble{% +\AtEndPreamble[tcolorbox]{% \@ifpackageloaded{doc}{% }{% code taken from doc.sty \ifx\l@nohyphenation\undefined @@ -199,10 +199,6 @@ keywords bold/true/.code={\let\tcb@doc@bfseries\bfseries}, keywords bold/false/.code={\let\tcb@doc@bfseries\mdseries}, doc key prefix/.store in=\kvtcb@doc@keyprefix, - index key formatter/.code={\let\kvtcb@doc@format@key=#1}, - index keys formatter/.code={\let\kvtcb@doc@format@keys=#1}, - index key formatter/.default=\@firstofone, - index keys formatter/.default=\@firstofone, } @@ -232,7 +228,7 @@ value=value,values=Values}}, } -\AtBeginDocument{% +\AtBeginDocument[tcolorbox]{% \csname tcb@doc@index@\idx@format\endcsname% \hypersetup{ citecolor=\kvtcb@colhyper, @@ -337,6 +333,43 @@ \ExplSyntaxOn +\tcbset{ + index~key~formatter / .code = + { + \__tcobox_store_formatter_in:nN {#1} \kvtcb@doc@format@key + }, + index~key~formatter / .default = \use:n, + index~keys~formatter / .code = + { + \__tcobox_store_formatter_in:nN {#1} \kvtcb@doc@format@keys + }, + index~keys~formatter / .default = \use:n, + page~ref~formatter / .code = + { + \__tcobox_store_formatter_in:nN {#1} \kvtcb@doc@format@page + }, + page~ref~formatter / .default = \use:n, +} + + +\cs_if_exist:NF \__tcobox_store_formatter_in:nN + { + \cs_new_protected:Npn \__tcobox_store_formatter_in:nN #1#2 + { + \__tcobox_if_single_cs:nTF {#1} + { \cs_set_eq:NN #2 #1 } + { + \tcb@error + { + Invalid~formatter~ "\tl_to_str:n {#1}" ~passed~to \MessageBreak + "\pgfkeyscurrentkey". \MessageBreak + A~formatter~should~be~a~single~command~taking~one \MessageBreak + mandatory~argument + } + } + } + } + \cs_new_nopar:Npn \__tcobox_new_bool_key:Nn #1 #2 { @@ -879,7 +912,7 @@ \IfBooleanTF{#2}{}{% \ifnum\getpagerefnumber{#1:#3}=\thepage\relax% \else% - \textsuperscript{{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char213}% + \kvtcb@doc@format@page{{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char213}% \,\kvtcb@text@pageshort\,\pageref*{#1:#3}}% \fi}}% } @@ -889,7 +922,16 @@ \def\refKey{\tcb@ref@doc{key}} \def\refPathOperation{\tcb@ref@doc{path}} -\AtBeginDocument{% +\NewDocumentCommand \refPkg { O{#2} m } {% + \href{https://ctan.org/pkg/#1}% + {% + \refAux{#2}% + \kvtcb@doc@format@page{{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char213}% + \,CTAN}% + }% +} + +\AtBeginDocument[tcolorbox]{% \ifHy@colorlinks \def\refAux#1{\textcolor{\kvtcb@colhyper}{\tcb@scantokens{#1}}}% \def\refAuxcs#1{\textcolor{\kvtcb@colhyper}{\tcb@cs{#1}}}% @@ -1027,12 +1069,11 @@ doc key prefix={/}, index key formatter, index keys formatter, + page ref formatter=\textsuperscript, } % deprecated \tcbset{ - before example/.store in=\kvtcb@beforeexample, - after example/.store in=\kvtcb@afterexample, - before example=\par\smallskip, - after example=, + before example/.code = {\tcb@warning@deprecatedkey{v3.50 (2015/03/16)}}, + after example/.code = {\tcb@warning@deprecatedkey{v3.50 (2015/03/16)}}, } diff --git a/macros/latex/contrib/tcolorbox/tcbexternal.code.tex b/macros/latex/contrib/tcolorbox/tcbexternal.code.tex index 0bfa994f68..b69f6089a2 100644 --- a/macros/latex/contrib/tcolorbox/tcbexternal.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbexternal.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbexternal.code.tex: Code for externalization %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{pro@cessing} @@ -111,14 +111,14 @@ \def\tcbexternal@pdfmissing@warning{% \tcb@warning{File '\tcbexternal@job@pdf' missing. - Compilation error or shell-escape wasn't enabled or a subdirectory could'nt be generated}% + Compilation error or shell-escape wasn't enabled or a subdirectory couldn't be generated}% \message{Load '\tcbexternal@job@source' instead}% \tcbexternal@inputsource% } \def\tcbexternal@pdfmissing@error{% \tcb@error{File '\tcbexternal@job@pdf' missing. - Compilation error or shell-escape wasn't enabled or a subdirectory could'nt be generated}{}% + Compilation error or shell-escape wasn't enabled or a subdirectory couldn't be generated}{}% } \def\tcbexternal@inputpdf{% diff --git a/macros/latex/contrib/tcolorbox/tcbfitting.code.tex b/macros/latex/contrib/tcolorbox/tcbfitting.code.tex index 0e34e15ad5..c042bfad40 100644 --- a/macros/latex/contrib/tcolorbox/tcbfitting.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbfitting.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbfitting.code.tex: Code for fit boxes %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \newdimen\tcbfitdim \newdimen\tcb@lowerfitdim diff --git a/macros/latex/contrib/tcolorbox/tcbhooks.code.tex b/macros/latex/contrib/tcolorbox/tcbhooks.code.tex index b3edf95636..79534fff84 100644 --- a/macros/latex/contrib/tcolorbox/tcbhooks.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbhooks.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbhooks.code.tex: Code for adding hooks %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbset{% before upper app/.code={\appto\kvtcb@before@upper{#1}},% diff --git a/macros/latex/contrib/tcolorbox/tcblistings.code.tex b/macros/latex/contrib/tcolorbox/tcblistings.code.tex index 195076eee1..c189baab3d 100644 --- a/macros/latex/contrib/tcolorbox/tcblistings.code.tex +++ b/macros/latex/contrib/tcolorbox/tcblistings.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcblistings.code.tex: Code for colorboxes with listings %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \RequirePackage{listings}[2007/02/22] diff --git a/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex b/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex index 48241a94d5..6fc6f597cb 100644 --- a/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex +++ b/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcblistingscode.code.tex: Auxiliary code for colorboxes with listings %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{pro@cessing} diff --git a/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex b/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex index 0c9b2b7e8c..69c651081d 100644 --- a/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex +++ b/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcblistingsutf8.code.tex: Code for colorboxes with listings in UTF-8 %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{listings} diff --git a/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex b/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex index 81180a8eb8..1d6d55e60d 100644 --- a/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbmagazine.code.tex: Code for box sets and magazine styles %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{breakable} diff --git a/macros/latex/contrib/tcolorbox/tcbminted.code.tex b/macros/latex/contrib/tcolorbox/tcbminted.code.tex index cae9e8d707..3380129f48 100644 --- a/macros/latex/contrib/tcolorbox/tcbminted.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbminted.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbminted.code.tex: Code for colorboxes with listings %% %% ------------------------------------------------------------------------------------------- @@ -18,12 +18,14 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \RequirePackage{minted}[2021/12/24] % to be removed, if integrated into the minted package (#281) -\minted@def@optcl{envname}{-P envname}{#1} +\IfPackageAtLeastTF{minted}{2024/08/25}{}{% + \minted@def@optcl{envname}{-P envname}{#1}% +} \tcbuselibrary{listings@core} diff --git a/macros/latex/contrib/tcolorbox/tcbposter.code.tex b/macros/latex/contrib/tcolorbox/tcbposter.code.tex index 49abfc651a..eaf2a7e8e9 100644 --- a/macros/latex/contrib/tcolorbox/tcbposter.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbposter.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbposter.code.tex: Code for posters %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{breakable,magazine,skins,fitting} diff --git a/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex b/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex index ce0ae43075..55d595ce94 100644 --- a/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbprocessing.code.tex: Code for conditional processing %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \ExplSyntaxOn diff --git a/macros/latex/contrib/tcolorbox/tcbraster.code.tex b/macros/latex/contrib/tcolorbox/tcbraster.code.tex index 3551030092..9955d76a3e 100644 --- a/macros/latex/contrib/tcolorbox/tcbraster.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbraster.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \newcounter{tcbrastercolumn} \newcounter{tcbrasterrow} diff --git a/macros/latex/contrib/tcolorbox/tcbskins.code.tex b/macros/latex/contrib/tcolorbox/tcbskins.code.tex index 3fbad78584..3917f90b9d 100644 --- a/macros/latex/contrib/tcolorbox/tcbskins.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbskins.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbskins.code.tex: Code for colorboxes with different skins %% %% ------------------------------------------------------------------------------------------- @@ -17,15 +17,10 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} -\RequirePackage{tikz}[2010/10/13] \RequirePackage{tikzfill.image} -\newenvironment{tikzpicture@tcb@hooked}{% - \edef\tcb@tikzpicture@begin{\noexpand\tikzpicture[\expandonce\tcb@tikz@option@hook]}% - \tcb@tikzpicture@begin\tcb@tikz@begin@hook}{\tcb@tikz@end@hook\endtikzpicture} - \def\tcb@creategeonodes@true{% \begin{scope}[every node/.style={line width=0mm,inner sep=0mm,outer sep=0mm,draw=none,fill=none,rectangle}] \node[name=frame,at={(0,0)},above right,minimum width=\tcb@width,minimum height=\tcb@height]{}; @@ -438,7 +433,7 @@ \tcbset{% base@unbroken/.style={% - clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,% + clear@spec,geometry nodes,% set@outerboundary=\tcb@boundaryframe@standard,% shape@of@skin=unbroken,% set@extensions@preframe={\kvtcb@shadow},% @@ -446,7 +441,7 @@ set@extensions@final={\tcb@apply@finish}% },% base@first/.style={% - clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,% + clear@spec,geometry nodes,% set@outerboundary=\tcb@boundaryframe@pathfirst,% shape@of@skin=first,% set@extensions@preframe={\kvtcb@shadow},% @@ -454,7 +449,7 @@ set@extensions@final={\tcb@apply@finish}% },% base@middle/.style={% - clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,% + clear@spec,geometry nodes,% set@outerboundary=\tcb@boundaryframe@pathmiddle,% shape@of@skin=middle,% set@extensions@preframe={\kvtcb@shadow},% @@ -462,7 +457,7 @@ set@extensions@final={\tcb@apply@finish}% },% base@last/.style={% - clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,% + clear@spec,geometry nodes,% set@outerboundary=\tcb@boundaryframe@pathlast,% shape@of@skin=last,% set@extensions@preframe={\kvtcb@shadow},% @@ -885,7 +880,7 @@ segmentation code={\tcb@drawspec@widgetsegment},% skin first=widgetmiddle,skin middle=widgetmiddle,skin last=widgetlast} -\tcb@new@skin{spartan}{graphical environment=tikzpicture@tcb@hooked,geometry nodes=true,shape@of@skin=unbroken,% +\tcb@new@skin{spartan}{geometry nodes=true,shape@of@skin=unbroken,% set@extensions@preframe=,set@extensions@postframe={\tcb@apply@underlay},set@extensions@final=,% frame engine=spartan,interior titled engine=spartan,interior engine=spartan,title engine=spartan,segmentation engine=spartan,% set@outerboundary=\tcb@boundaryframe@standard,% @@ -893,7 +888,7 @@ \tcbset{spartan/.style={skin=spartan}} -\tcb@new@skin{draft}{clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,shape@of@skin=unbroken,% +\tcb@new@skin{draft}{clear@spec,geometry nodes,shape@of@skin=unbroken,% frame engine=empty,interior titled engine=empty,interior engine=empty,segmentation engine=path,title empty,% segmentation style={draw=black,dashed}, set@extensions@postframe=, diff --git a/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex b/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex index 551971a0df..58d1519396 100644 --- a/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{skins} diff --git a/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex b/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex index f53eda79a5..0d71f06470 100644 --- a/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbtheorems.code.tex: Code for theorems in colorboxes %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \RequirePackage{amsmath} @@ -138,7 +138,7 @@ % insert box with name and number \mode_leave_vertical: \box_use_drop:N \l__tcobox_tmpa_box - % insert formated title + % insert formatted title \group_begin: \__tcobox_theo_format_description:n{#3} \group_end: @@ -260,11 +260,31 @@ description~font/.default =, description~formatter/.code = { - \cs_set_eq:NN \__tcobox_theo_format_description:n #1 + \__tcobox_store_formatter_in:nN {#1} \__tcobox_theo_format_description:n }, description~formatter/.default = \__tcobox_theo_format_description_standard:n, } + +\cs_if_exist:NF \__tcobox_store_formatter_in:nN + { + \cs_new_protected:Npn \__tcobox_store_formatter_in:nN #1#2 + { + \__tcobox_if_single_cs:nTF {#1} + { \cs_set_eq:NN #2 #1 } + { + \tcb@error + { + Invalid~formatter~ "\tl_to_str:n {#1}" ~passed~to \MessageBreak + "\pgfkeyscurrentkey". \MessageBreak + A~formatter~should~be~a~single~command~taking~one \MessageBreak + mandatory~argument + } + } + } + } + + \ExplSyntaxOff @@ -298,16 +318,16 @@ ams equation*/.style={ams equation* upper,ams equation* lower},% ams align upper/.style={before upper*=\tcb@hack@amsmath\align,after upper*=\endalign},% ams align lower/.style={before lower*=\tcb@hack@amsmath\align,after lower*=\endalign},% - ams align/.style={ams align upper,ams align lower},% + ams align/.style={ams align upper},% ams align* upper/.style={before upper*=\tcb@hack@amsmath\csname align*\endcsname,after upper*=\endalign},% ams align* lower/.style={before lower*=\tcb@hack@amsmath\csname align*\endcsname,after lower*=\endalign},% - ams align*/.style={ams align* upper,ams align* lower},% + ams align*/.style={ams align* upper},% ams gather upper/.style={before upper*=\tcb@hack@amsmath\gather,after upper*=\endgather},% ams gather lower/.style={before lower*=\tcb@hack@amsmath\gather,after lower*=\endgather},% - ams gather/.style={ams gather upper,ams gather lower},% + ams gather/.style={ams gather upper},% ams gather* upper/.style={before upper*=\tcb@hack@amsmath\csname gather*\endcsname,after upper*=\endgather},% ams gather* lower/.style={before lower*=\tcb@hack@amsmath\csname gather*\endcsname,after lower*=\endgather},% - ams gather*/.style={ams gather* upper,ams gather* lower},% + ams gather*/.style={ams gather* upper},% ams nodisplayskip upper/.style={before upper=\vskip-\abovedisplayskip},% ams nodisplayskip lower/.style={before lower=\vskip-\abovedisplayskip},% ams nodisplayskip/.style={ams nodisplayskip upper,ams nodisplayskip lower},% diff --git a/macros/latex/contrib/tcolorbox/tcbvignette.code.tex b/macros/latex/contrib/tcolorbox/tcbvignette.code.tex index e177bb33d4..8fbef36136 100644 --- a/macros/latex/contrib/tcolorbox/tcbvignette.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbvignette.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbvignette.code.tex: Code for ornamental frames %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \tcbuselibrary{skins} diff --git a/macros/latex/contrib/tcolorbox/tcbxparse.code.tex b/macros/latex/contrib/tcolorbox/tcbxparse.code.tex index cf60ef0731..f35617ba69 100644 --- a/macros/latex/contrib/tcolorbox/tcbxparse.code.tex +++ b/macros/latex/contrib/tcolorbox/tcbxparse.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcbxparse.code.tex: Code for xparse features %% %% ------------------------------------------------------------------------------------------- @@ -18,6 +18,6 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{6.2.0} +\tcb@set@library@version{6.4.1} \RequirePackage{xparse}[2013/12/31] diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf Binary files differindex e39ddaa037..7c44895ef9 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf +++ b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex index ffa291103b..f05c43b331 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcolorbox-example-poster.tex: a poster example for tcolorbox %% %% ------------------------------------------------------------------------------------------- diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf Binary files differindex 809b35a2ca..37defc93c6 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf +++ b/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example.tex b/macros/latex/contrib/tcolorbox/tcolorbox-example.tex index 1adaa24d7e..ecf620f622 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox-example.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox-example.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcolorbox-example.tex: an example for tcolorbox %% %% ------------------------------------------------------------------------------------------- diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf Binary files differindex eb23961967..3fd463512d 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf +++ b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex index ae550c5c6d..ab70955520 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex @@ -1,5 +1,5 @@ % \LaTeX-Main\ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcolorbox-tutorial-poster.tex: a tutorial for poster creation with tcolorbox %% %% ------------------------------------------------------------------------------------------- @@ -18,8 +18,8 @@ %% %% This work consists of all files listed in README %% -% arara: pdflatex: { shell: yes } -% arara: pdflatex: { shell: yes } +% arara: pdflatex +% arara: pdflatex \documentclass[12pt]{article} \usepackage[a3paper,landscape]{geometry} @@ -1373,7 +1373,7 @@ Our poster is finished now. Just go to the next page to see the final result. \tcbinputlisting{standard jigsaw,size=minimal,toprule=0.5mm,bottomrule=0.5mm,boxsep=2mm, colback=white,opacityback=0.75,listing only, enforce breakable,tcb@poster@boxheight,before skip=-\interlineskip,height fixed for=all, - minted options={tabsize=2,fontsize=\small,breaklines,breakafter={,]-}}, + minted options={tabsize=2,fontsize=\small,breaklines,breakafter={\,\]-},breakafterinrun}, listing file=tcolorbox-example-poster.tex}% } \end{tcbposter} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib b/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib index be1c60b666..e38e91c3d4 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib @@ -209,3 +209,9 @@ } +@manual{latexproject:usrguide, + author = {The \LaTeX{} Project Team}, + title = {{\LaTeX} for authors --- current version}, + url = {https://mirrors.ctan.org/macros/latex/base/usrguide.pdf}, + date = {2023-05-23}, +} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex index a86994c7e2..288354d6b5 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex @@ -7,7 +7,7 @@ The library is loaded by a package option or inside the preamble by: \begin{dispListing} \tcbuselibrary{breakable} \end{dispListing} -This also loads the package |pdfcol|. +This also loads the package \refPkg{pdfcol}. \subsection{Technical Overview} The library \mylib{breakable} supports the automatic breaking of a |tcolorbox|. @@ -114,7 +114,7 @@ parameters. The differences are: color changing commands, your color may not survive the break to the next box. See the documentation for \refKey{/tcb/use color stack} for more information. \item\tcbdocmarginnote{\tcbdocnew{2014-10-30}} - The |perpage| option of the |footmisc| package is deliberately deactivated + The |perpage| option of the \refPkg{footmisc} package is deliberately deactivated inside a breakable box since all footnotes are placed at the end of the box (possibly far away from the reference point). \item\tcbdocmarginnote{\tcbdocnew{2016-02-15}} @@ -127,7 +127,7 @@ parameters. The differences are: Lua\TeX\ version 0.95 changes the behavior of the basic |\vsplit| (a bug?!) resulting in badly broken boxes. Thanks to Jeremy Engel, the \mylib{breakable} library contains a patch for this which - also loads the the |ifluatex| package. + also loads the the \refPkg{ifluatex} package. \end{itemize} @@ -252,7 +252,7 @@ The |break at| option can be used to insert better break points by hand. The example code enlarged the second partial box by one line, the third partial box by two lines, and all following parts are not enlarged. \begin{marker} - If an automated page break occures before the first partial box, the + If an automated page break occurs before the first partial box, the page enlargement is applied to the page before the first partial box \emph{and} again to the page of the first partial box. Insert a manual break to prevent this.\\ In general, |enlargepage| should be used at the final stage of a document @@ -315,7 +315,7 @@ The |break at| option can be used to insert better break points by hand. color changing commands, your color may not survive the break to the next box. For some engines, there is support for additional color stacks which allow colors to survive breaks. Such an color stack can be activated - by \refKey{/tcb/use color stack} with help of the |pdfcol| package. + by \refKey{/tcb/use color stack} with help of the \refPkg{pdfcol} package. This can be done globally or per box. \begin{marker} Note that activating \refKey{/tcb/use color stack} inserts a color command with a \emph{whatsit} @@ -326,9 +326,9 @@ The |break at| option can be used to insert better break points by hand. \begin{itemize} \item pdf\TeX: color stacks supported. \item Lua\TeX: color stacks supported, but you should consider loading the - |luacolor| package \emph{instead} which avoids the spacing problem. + \refPkg{luacolor} package \emph{instead} which avoids the spacing problem. \item Xe\TeX: color stacks not supported (yet?). From hearsay, - with the |fontspec| package, you may use |\addfontfeatures{Color=mycolor}| + with the \refPkg{fontspec} package, you may use |\addfontfeatures{Color=mycolor}| to add a font color which survives the break. \end{itemize} If |pdfcol| cannot initialize an additional color stack for the used engine, @@ -513,7 +513,7 @@ and \refKey{/tcb/enlarge bottom at break by}. \item the segmentation line (or similar) is drawn as first element of the partial box containing the \emph{lower part}, if \refKey{/tcb/segmentation at break} is set to be |true|. - \item the segmenation line (or similar) is not drawn at all, if + \item the segmentation line (or similar) is not drawn at all, if \refKey{/tcb/segmentation at break} is set to be |false|. This may be preferable for skins like \refSkin{bicolor}, \refSkin{tile}, or \refSkin{beamer}. @@ -682,7 +682,7 @@ code which \emph{may} have to be adapted. \begin{tcolorbox}[enhanced jigsaw,size=small,breakable,colback=yellow!10!white, colframe=red!50!white,break at=3cm,height fixed for=all] Unbreakable |tcolorbox|es can be used without special care inside a -|multicols| environment from the |multicol| package \cite{mittelbach:multicol}. +|multicols| environment from the \refPkg{multicol} package \cite{mittelbach:multicol}. Since version 3.10, a breakable |tcolorbox| detects, if it is used inside a |multicols| environment. But choosing break points for a breakable box diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.coremacros.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coremacros.tex index 0847f09775..34d6769fa4 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.coremacros.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coremacros.tex @@ -214,7 +214,8 @@ numbered title and options. \begin{docCommand}{NewTColorBox}{\oarg{init options}\marg{name}\marg{specification}\marg{options}} Creates a new environment \meta{name} based on \refEnv{tcolorbox}.\\ Basically, \refCom{NewTColorBox} operates like |\NewDocumentEnvironment|. This means, - the new environment \meta{name} is constructed with the given argument \meta{specification}. + the new environment \meta{name} is constructed with the + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if an environment with \meta{name} has already been defined. The \meta{options} are given to the underlying \refEnv{tcolorbox}.\\ Note that \refKey{/tcb/savedelimiter} is set to the given \meta{name} @@ -275,7 +276,8 @@ This is a tcolorbox. Creates a new command \texttt{\textbackslash}\meta{name} based on \refEnv{tcolorbox}. In contrast to \refCom{NewTColorBox}, also the \meta{content} of the |tcolorbox| is specified.\\ Basically, \refCom{NewTotalTColorBox} operates like |\NewDocumentCommand|. This means, - the new command \texttt{\textbackslash}\meta{name} is constructed with the given argument \meta{specification}. + the new command \texttt{\textbackslash}\meta{name} is constructed with the given + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if \texttt{\textbackslash}\meta{name} has already been defined. The \meta{options} are given to the underlying \refEnv{tcolorbox} which is filled with the specified \meta{content}.\\ @@ -387,7 +389,8 @@ The \xmybox[green]{quick} brown \xmybox{fox} \xmybox[blue]{jumps} over the \begin{docCommand}{NewTCBox}{\oarg{init options}\brackets{\texttt{\textbackslash}\meta{name}}\marg{specification}\marg{options}} Creates a new command \texttt{\textbackslash}\meta{name} based on \refCom{tcbox}. Basically, \refCom{NewTCBox} operates like |\NewDocumentCommand|. This means, - the new command \texttt{\textbackslash}\meta{name} is constructed with the given argument \meta{specification}. + the new command \texttt{\textbackslash}\meta{name} is constructed with the given + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if \texttt{\textbackslash}\meta{name} has already been defined. The \meta{options} are given to the underlying \refCom{tcbox}.\\ Note that \refKey{/tcb/savedelimiter} is set to the given \meta{name} @@ -437,7 +440,8 @@ The \xmybox[green]{quick} brown \xmybox{fox} \xmybox[blue]{jumps} over the Creates a new command \texttt{\textbackslash}\meta{name} based on \refCom{tcbox}. In contrast to \refCom{NewTCBox}, also the \meta{content} of the |tcbox| is specified.\\ Basically, \refCom{NewTotalTCBox} operates like |\NewDocumentCommand|. This means, - the new command \texttt{\textbackslash}\meta{name} is constructed with the given argument \meta{specification}. + the new command \texttt{\textbackslash}\meta{name} is constructed with the + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if \texttt{\textbackslash}\meta{name} has already been defined. The \meta{options} are given to the underlying \refCom{tcbox} which is filled with the specified \meta{content}.\\ @@ -461,7 +465,7 @@ done in the same way, e.\,g. \myverb{\textit}, \myverb{\itshape}\\ or \myverb[brown]{\texttt}, \myverb[brown]{\ttfamily}. \end{dispExample} -The next example uses |\lstinline| from the |listings| package to +The next example uses |\lstinline| from the \refPkg{listings} package to typeset the verbatim content. \begin{dispExample} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex index e20936d76b..6c4ffb27b1 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex @@ -2640,7 +2640,7 @@ Lower part. \begin{docTcbKey}{varwidth upper}{\colOpt{=\meta{length}}}{style, default \refKey{/tcb/width}} This style places the upper part content into a |varwidth| environment. - This style needs the |varwidth| package \cite{arseneau:2011a} to be loaded manually. + This style needs the \refPkg{varwidth} package \cite{arseneau:2011a} to be loaded manually. The resulting box has a maximal width of \meta{length}. This option is only senseful for a \refCom{tcbox}. \begin{exdispExample*}{varwidth_upper}{sbs,lefthand ratio=0.6} @@ -3104,11 +3104,11 @@ inside the document preamble. \begin{docTcbKey}[][doc new={2020-09-25}]{before skip balanced}{=\meta{glue}}{no default, initially |0.5\textbackslash baselineskip plus 2pt|} Inserts some vertical space before the colored box. This style sets \refKey{/tcb/before}.\par If the depth of the - preceeding \TeX\ box is between |0pt| and |0.3\baselineskip|, - the distance between the \emph{baseline} of the preceeding \TeX\ box and the tcolorbox - ist set to \meta{glue}$+$|0.3\baselineskip|.\par - If the depth is larger, the distance of the preceeding \TeX\ box and the tcolorbox - ist set to \meta{glue}.\par + preceding \TeX\ box is between |0pt| and |0.3\baselineskip|, + the distance between the \emph{baseline} of the preceding \TeX\ box and the tcolorbox + is set to \meta{glue}$+$|0.3\baselineskip|.\par + If the depth is larger, the distance of the preceding \TeX\ box and the tcolorbox + is set to \meta{glue}.\par Alternatively, see \refKey{/tcb/before skip} which ignores the \emph{baseline}. \begin{exdispExample*}{before_skip_balanced}{sbs,lefthand ratio=0.6} @@ -3174,7 +3174,7 @@ line 4 g Inserts some vertical space of the given \meta{glue} before the colored box. This style sets \refKey{/tcb/before}. In contrast to \refKey{/tcb/before skip balanced}, this \meta{glue} is - relative to the lower edge of the preceeding box and not to the baseline. + relative to the lower edge of the preceding box and not to the baseline. \begin{exdispExample*}{before_skip}{sbs,lefthand ratio=0.6} Some text. \begin{tcolorbox}[before skip=1cm, @@ -3268,7 +3268,7 @@ text after \refKey{/tcb/before skip balanced} and \refKey{/tcb/after skip balanced} (see note on page~\pageref{subsec:surroundings}).\par Sets the keys |before| and |after| to values which are - recommended, if the package |parskip| \emph{is} used and there is no better + recommended, if the package \refPkg{parskip} \emph{is} used and there is no better idea for |before| and |after|. This is similar to: \begin{dispListing} \tcbset{parskip/.style={before={\par\pagebreak[0]\parindent=0pt}, @@ -3281,7 +3281,7 @@ text after \refKey{/tcb/before skip balanced} and \refKey{/tcb/after skip balanced} (see note on page~\pageref{subsec:surroundings}).\par Sets the keys |before| and |after| to values which are - recommended, if the package |parskip| is \emph{not} used and there is no better + recommended, if the package \refPkg{parskip} is \emph{not} used and there is no better idea for |before| and |after|. This is similar to: \begin{dispListing} \tcbset{noparskip/.style={before={\par\pagebreak[0]\smallskip\parindent=0pt}, @@ -3293,13 +3293,13 @@ text after This options is considered to be superseded by \refKey{/tcb/before skip balanced} and \refKey{/tcb/after skip balanced} (see note on page~\pageref{subsec:surroundings}).\par - Tries to detect the usage of the package |parskip| and sets + Tries to detect the usage of the package \refPkg{parskip} and sets the keys |before| and |after| accordingly. Actually, the following is done: \begin{itemize} \item If the length of |\parskip| is greater than |0pt| at the beginning of the document, - \refKey{/tcb/parskip} is executed. Here, the usage of package |parskip| is \emph{assumed}. + \refKey{/tcb/parskip} is executed. Here, the usage of package \refPkg{parskip} is \emph{assumed}. \item Otherwise, if the length of |\parskip| is not greater than |0pt| at the beginning of the document, - \refKey{/tcb/noparskip} is executed. Here, the absence of package |parskip| is \emph{assumed}. + \refKey{/tcb/noparskip} is executed. Here, the absence of package \refPkg{parskip} is \emph{assumed}. \end{itemize} \end{docTcbKey} @@ -4315,7 +4315,7 @@ related operations which do not produce visible text. \item Labels are ensured to reference the correct page number. \item The \meta{code} is executed only once even during fitting operations for title and box content. -\item In combination with the |hyperref| package, the hyper anchor is set +\item In combination with the \refPkg{hyperref} package, the hyper anchor is set to the upper left corner of the |tcolorbox|, i.\,e.\ links inside the pdf document will jump to the box pleasantly. \item Since the \meta{code} is executed inside a \TeX\ group, only global @@ -4343,8 +4343,8 @@ Note that this option is not getting reset by \refKey{/tcb/reset}. \begin{docTcbKey}[][doc new=2023-02-08]{label is zlabel}{}{no value, initially unset} Sets |\zlabel| as labelling for |tcolorbox| (global or per box). When \refKey{/tcb/label} and friends are used, the underlying labeling macro is |\zlabel|. -This needs the |zref| package \cite{oberdiek:zref} or packages building upon |zref| to be loaded. -References can be made by |\zref|. If the |zref-clever| package \cite{barros:zref-clever} is loaded, +This needs the \refPkg{zref} package \cite{oberdiek:zref} or packages building upon \refPkg{zref} to be loaded. +References can be made by |\zref|. If the \refPkg{zref-clever} package \cite{barros:zref-clever} is loaded, |\zcref|, |\zcpageref|, and similar macros can be applied. Note that this option is not getting reset by \refKey{/tcb/reset}. \end{docTcbKey} @@ -4362,8 +4362,9 @@ from page \pageref{sec:numberedboxes}, e.\,g.\ \refKey{/tcb/new/auto counter}. \begin{docTcbKey}[][doc new=2014-11-28]{phantomlabel}{=\meta{marker}}{no default, initially unset} Equivalent to \refKey{/tcb/label} for an \emph{unnumbered} box. -A |\phantomsection| from the package |hyperref| \cite{rahtz:hyperref} is used to set a correct -hyperlink target. This is not needed for a numbered box. +A |\phantomsection| from the package \refPkg{hyperref} \cite{rahtz:hyperref} is used to set a correct +hyperlink target. +This is not needed and should typically not be used for a numbered box. \end{docTcbKey} \clearpage @@ -4384,20 +4385,21 @@ from page \pageref{sec:numberedboxes}. \end{docTcbKey} -\begin{docTcbKey}[][doc updated=2023-02-09]{label type}{=\meta{type}}{no default, initially unset} +\begin{docTcbKey}[][doc updated=2024-10-22]{label type}{=\meta{type}}{no default, initially unset} This option has a different meaning based upon the chosen labeling mechanism. \begin{itemize} \item If \refKey{/tcb/label is label} is active:\par - The option key \refKey{/tcb/label type} can be used only in conjunction with the |cleveref| package - \cite{cubitt:2018a} which has to be loaded separately. + The option key \refKey{/tcb/label type} can be used in conjunction with the \refPkg{cleveref} package + \cite{cubitt:2018a} or the \refPkg{zref-clever} package \cite{barros:zref-clever} + which have to be loaded separately. \meta{type} has to be a cross-reference type \emph{known} to |cleveref| like |theorem|, |algorithm|, |result|, etc. References made with |cleveref| - will use this type. Note that using |label type| will result in compilation - errors, if |cleveref| is not loaded. - For an example, see \Vref{theo:meanvaluetheorem}. + will use this type. For an example, see \Vref{theo:meanvaluetheorem}. + Recent versions of \refPkg{zref-clever} also work with \refKey{/tcb/label is label} + and \refKey{/tcb/label type} can be used as described below for \refKey{/tcb/label is zlabel}. \item If \refKey{/tcb/label is zlabel} is active:\par - The option key \refKey{/tcb/label type} can be used only in conjunction with the |zref-clever| package - \cite{barros:zref-clever} + The option key \refKey{/tcb/label type} can be used only in conjunction with the + \refPkg{zref-clever} package \cite{barros:zref-clever} which has to be loaded separately. \meta{type} has to be a cross-reference type \emph{known} to |zref-clever|. This \meta{type} is bound to an automatic |tcolorbox| counter which has to be set up using @@ -4418,9 +4420,9 @@ Removes a \refKey{/tcb/label type}, if set before. \clearpage \begin{docTcbKey}[][doc new and updated={2016-06-22}{2023-02-08}]{nameref}{=\meta{text}}{no default, initially unset} -If the |nameref| package is loaded, the given \meta{text} is used for +If the \refPkg{nameref} package is loaded, the given \meta{text} is used for corresponding |\nameref| macros. -If the |zref-titleref| package is loaded, the given \meta{text} is used to +If the \refPkg{zref-titleref} package is loaded, the given \meta{text} is used to set the reference text for |\ztitleref|. Typically, the \meta{text} will be chosen to be identical or nearly identical to the one for \refKey{/tcb/title}. @@ -4453,7 +4455,7 @@ The most likely use case is to set a \emph{short title} for the \clearpage \begin{docTcbKey}[][doc new=2017-02-03]{hypertarget}{=\meta{marker}}{no default, initially unset} -A |\hypertarget| from the package |hyperref| \cite{rahtz:hyperref} is used to +A |\hypertarget| from the package \refPkg{hyperref} \cite{rahtz:hyperref} is used to create an internal link of an anchor \meta{marker}. This \meta{marker} can be referenced by |\hyperlink| or \refKey{/tcb/hyperlink}. @@ -4472,7 +4474,7 @@ Click me to jump to Box B. \begin{docTcbKey}[][doc new=2017-02-10]{bookmark}{=\meta{text}}{no default, initially unset} - Sets a PDF bookmark with the given \meta{text}, if the package |bookmark| \cite{oberdiek:bookmark} + Sets a PDF bookmark with the given \meta{text}, if the package \refPkg{bookmark} \cite{oberdiek:bookmark} is loaded. This bookmark is set with an automated destination (the current box) and is set one level below the current bookmark level. \begin{dispExample*}{sbs,lefthand ratio=0.7} @@ -4489,7 +4491,7 @@ to see the bookmark. \begin{docTcbKey}[][doc new=2017-02-10]{bookmark*}{=\marg{options}\marg{text}}{no default, initially unset} Identical to \refKey{/tcb/bookmark}, but additional \meta{options} - from the package |bookmark| \cite{oberdiek:bookmark} can be given. + from the package \refPkg{bookmark} \cite{oberdiek:bookmark} can be given. \begin{dispExample*}{sbs,lefthand ratio=0.7} % \usepackage{bookmark}% \begin{tcolorbox}[colback=red!10,colframe=red!50!black, @@ -4691,8 +4693,7 @@ It is precise only, if \refKey{/tcb/check odd page} was set. See \Fullref{sec:external} for the \mylib{external} library of |tcolorbox|. \end{marker} -If the \emph{externalization} library of the \texttt{tikz} package is used -and \refKey{/tcb/graphical environment} is set to |tikzpicture|, +If the \emph{externalization} library of the \refPkg{tikz} package is used, a |tcolorbox| could trigger the externalization process which will arise a compilation error. @@ -4734,7 +4735,7 @@ inside the current \TeX\ group and is not affected by \refKey{/tcb/reset}. it may be used inside the option list of a |tcolorbox| to set the externalization \meta{file name} for the first |tikzpicture| which is discovered \emph{inside} the box content. - The package |tikz| \cite{tantau:tikz_and_pgf} or the library \mylib{skins} has to be loaded to use this option. + The package \refPkg{tikz} \cite{tantau:tikz_and_pgf} or the library \mylib{skins} has to be loaded to use this option. Additionally, |\usetikzlibrary{external}| has to be used. \end{docTcbKey} @@ -4742,7 +4743,7 @@ inside the current \TeX\ group and is not affected by \refKey{/tcb/reset}. Convenience option which calls |/tikz/external/remake next|. Typically, it may be used inside the option list of a |tcolorbox| to force the remake of the first |tikzpicture| which is discovered \emph{inside} the box content. - The package |tikz| \cite{tantau:tikz_and_pgf} or the library \mylib{skins} has to be loaded to use this option. + The package \refPkg{tikz} \cite{tantau:tikz_and_pgf} or the library \mylib{skins} has to be loaded to use this option. Additionally, |\usetikzlibrary{external}| has to be used. \end{docTcbKey} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex index 9934cd5c86..939c5d4dbe 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex @@ -5,9 +5,9 @@ \tcbset{external/prefix=external/documentation_}% This library has the single purpose to support \LaTeX\ package documentations like this one. Actually, the visual nature follows the approach from -Till Tantau's |pgf| \cite{tantau:tikz_and_pgf} documentation. +Till Tantau's \refPkg{pgf} \cite{tantau:tikz_and_pgf} documentation. Typically, this library is assumed to be used in conjunction with the -class |ltxdoc| or alike. +class \refPkg{ltxdoc} or alike. Denis Bitouz\'e, Muzimuzhi, and many others provided very valuable input for this library. The library is loaded by a package option or inside the preamble by: @@ -19,17 +19,17 @@ the library \mylib{skins}, see \Vref{sec:skins}, the library \mylib{raster}, see \Vref{sec:raster}, the library \mylib{listings}, see \Vref{sec:listings}, and a bunch of packages, namely -|makeidx|, |marginnote|, |refcount|, and |hyperref|. -The packages |pifont| and |marvosym| should be installed for some symbols, but +\refPkg{makeidx}, \refPkg{marginnote}, \refPkg{refcount}, and \refPkg{hyperref}. +The packages \refPkg{pifont} and \refPkg{marvosym} should be installed for some symbols, but need not to be loaded. \begin{marker} -The package |makeidx| is loaded only, if \docAuxCommand*{printindex} is -\emph{not} already defined. Therefore, one can include an alternative to |makeidx| like -|imakeidx| \emph{before} the library |documentation| is used. +The package \refPkg{makeidx} is loaded only, if \docAuxCommand*{printindex} is +\emph{not} already defined. Therefore, one can include an alternative to \refPkg{makeidx} like +\refPkg{imakeidx} \emph{before} the library |documentation| is used. \end{marker} \begin{marker} -The package |marginnote| is loaded only, if \docAuxCommand*{marginnote} is +The package \refPkg{marginnote} is loaded only, if \docAuxCommand*{marginnote} is \emph{not} already defined. \end{marker} \begin{marker} @@ -47,7 +47,7 @@ For UTF-8 support load (ignore this when using Xe\LaTeX): \tcbuselibrary{listingsutf8,documentation} \end{dispListing} -For |minted| \cite{poore:minted} support, load: +For \refPkg{minted} \cite{poore:minted} support, load: \begin{dispListing} \tcbuselibrary{documentation,minted} \tcbset{listing engine=minted} @@ -704,6 +704,21 @@ Some pages back, one can see \refAuxcs{fooaux} as an example. \end{docCommand} +\begin{docCommand}[doc new=2024-09-18]{refPkg}{\oarg{ctanname}\marg{name}} + References a package \meta{name} on \href{https://ctan.org}{CTAN} with + hyperlink \mbox{|https://ctan.org/pkg/|\meta{name}}. + Using the option \meta{ctanname} creates the hyperlink + \mbox{|https://ctan.org/pkg/|\meta{ctanname}}. +\begin{dispExample} +Hyperlinks are created with help of the \refPkg{hyperref} package.\par +The package \refPkg[frankenstein]{dialogue} is part of the +\refPkg{frankenstein} bundle of packages. +\end{dispExample} +\end{docCommand} + + +\clearpage + \begin{docCommand}{colDef}{\marg{text}} Sets \meta{text} with the command color, see \refKey{/tcb/color command}. \begin{dispExample} @@ -718,8 +733,6 @@ This is my \colOpt{text}. \end{dispExample} \end{docCommand} -\clearpage - \begin{docCommand}[doc new=2019-09-18]{colFade}{\marg{text}} Sets \meta{text} with the fade color, see \refKey{/tcb/color fade}. \begin{dispExample} @@ -730,7 +743,7 @@ This is my \colFade{text}. \begin{docCommand}[doc new=2014-09-19]{tcbdocmarginnote}{\oarg{options}\marg{text}} Creates a |tcolorbox| note with the given \meta{text} inside the margin using - the |marginnote| package. The style of the |tcolorbox| is predefined and can be + the \refPkg{marginnote} package. The style of the |tcolorbox| is predefined and can be altered by \refKey{/tcb/doc marginnote} and the given \meta{options}. \begin{dispExample} Some text\tcbdocmarginnote{Note A} @@ -953,7 +966,7 @@ hand side if too long. Linebreaks can be used inside the \meta{text}. \begin{dispListing} \begin{docCommands}[ doc name = l_tcobox_example_tl, - doc sort index = example_tl, % sorted unter e like example + doc sort index = example_tl, % sorted under e like example ]{} \end{docCommands} \end{dispListing} @@ -1313,7 +1326,7 @@ keys to insert code before (or after) the description texts. \end{docTcbKey} \begin{docTcbKey}{documentation listing options}{=\meta{key list}}{no default,\\\hspace*{\fill} initially |style=tcbdocumentation|} - Sets the options from the package |listings| \cite{hoffmann:listings}. + Sets the options from the package \refPkg{listings} \cite{hoffmann:listings}. They are used inside \refEnv{dispExample} and \refEnv{dispListing} to typeset the listings. Note that this is not identical to the key \refKey{/tcb/listing options} which is used for \enquote{normal} listings.\\ @@ -1323,14 +1336,14 @@ keys to insert code before (or after) the description texts. \begin{docTcbKey}{documentation listing style}{=\meta{listing style}}{no default, initially |tcbdocumentation|} Abbreviation for |documentation listing options={style=...}|. This key sets a \meta{style} - for the |listings| package, see \cite{hoffmann:listings}. + for the \refPkg{listings} package, see \cite{hoffmann:listings}. Note that this is not identical to the key \refKey{/tcb/listing style} which is used for \enquote{normal} listings.\\ Used for \refKey{/tcb/listing engine}|=listings| only. \end{docTcbKey} \begin{docTcbKey}{documentation minted options}{=\meta{key list}}{no default,\\\hspace*{\fill} initially |tabsize=2,fontsize=\textbackslash small|} - Sets the options from the package |minted| \cite{poore:minted} + Sets the options from the package \refPkg{minted} \cite{poore:minted} which are used during typesetting of the listing, if used. Note that this is not identical to the key \refKey{/tcb/minted options} which is used for \enquote{normal} listings.\\ @@ -1339,7 +1352,7 @@ keys to insert code before (or after) the description texts. \begin{docTcbKey}{documentation minted style}{=\meta{key list}}{no default, initially unset} Sets a \meta{style} known to |Pygments| \cite{pygments:web} for - the package |minted| \cite{poore:minted}, if used. + the package \refPkg{minted} \cite{poore:minted}, if used. Note that this is not identical to the key \refKey{/tcb/minted style} which is used for \enquote{normal} listings.\\ Used for \refKey{/tcb/listing engine}|=minted| only. @@ -1347,36 +1360,13 @@ keys to insert code before (or after) the description texts. \begin{docTcbKey}[][doc new=2017-04-24]{documentation minted language}{=\meta{programming language}}{no default, initially |latex|} Sets a \meta{programming language} known to |Pygments| \cite{pygments:web} - for the package |minted| \cite{poore:minted}, if used. + for the package \refPkg{minted} \cite{poore:minted}, if used. Note that this is not identical to the key \refKey{/tcb/minted language} which is used for \enquote{normal} listings.\\ Used for \refKey{/tcb/listing engine}|=minted| only. \end{docTcbKey} -\begin{marker} -The following two keys are deprecated and without function (v3.50 and above). -Use \refKey{/tcb/before} and \refKey{/tcb/after} with appropriate values -instead. Also see \refKey{/tcb/docexample}. -\end{marker} - -\begin{docTcbKey}[][doc updated=2015-03-16]{before example}{=\meta{macros}}{no default, initially empty} -\smallskip\begin{deprecated} - Sets the \meta{macros} which are executed before \refEnv{dispExample} and \refEnv{dispListing} - additional to \refKey{/tcb/before}. -\end{deprecated} -\end{docTcbKey} - -\enlargethispage*{1cm} - -\begin{docTcbKey}{after example}{=\meta{macros}}{no default, initially empty} -\smallskip\begin{deprecated} - Sets the \meta{macros} which are executed after \refEnv{dispExample} and \refEnv{dispListing} - additional to \refKey{/tcb/after}. -\end{deprecated} -\end{docTcbKey} - -\clearpage \begin{docTcbKey}[][doc new=2017-04-25]{keywords bold}{\colOpt{=true\textbar false}}{default |true|, initially |true|} Keyword used in \refEnv{docEnvironment}, \refEnv{docCommand}, etc. are printed boldface (or not). Since the typewriter font is used, the effect may be @@ -1391,6 +1381,24 @@ instead. Also see \refKey{/tcb/docexample}. \end{dispExample*} \end{docTcbKey} +\clearpage + +\begin{docTcbKeys} + { + { + doc name = page ref formatter, + doc new = {2024-03-13}, + doc parameter = \colOpt{=\meta{macro}}, + doc description = {no default, initially \texttt{\textbackslash textsuperscript}}, + } + } +Sets \meta{macro} as formatter for page references like the +reference to \refEnv{tcolorbox}. +The default setting puts the page reference in a |\textsuperscript|. +It may be changed to |\fakesuperscript| to cope with superiors problems +in combination with the \refPkg{realscripts} package or just otherwise for user customization. +\end{docTcbKeys} + \begin{docTcbKey}[][doc new=2015-01-09]{index command}{=\meta{macro}}{no default, initially \cs{index}} @@ -1425,11 +1433,11 @@ instead. Also see \refKey{/tcb/docexample}. \item\docValue{pgfchapter}: The index is formatted like in the |pgf| documentation (as a chapter). \item\docValue{pgf}: Alias for |pgfsection|. \item\docValue{doc}: The index is assumed to be formatted by |doc| or |ltxdoc|. The usage of |makeindex| - with |-s gind.ist| is assumed. The package |hypdoc| has to be loaded + with |-s gind.ist| is assumed. The package \refPkg{hypdoc} has to be loaded \emph{before} |tcolorbox|. Only a limited set of customizations will work! This option cannot be unset when used! \item\docValue{off}: The index is not formatted by |tcolorbox|. Use this, if - the index is formatted by other package like |imakeidx|. + the index is formatted by other package like \refPkg{imakeidx}. \end{itemize} \end{docTcbKey} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.external.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.external.tex index b7a10c2331..d60af1c986 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.external.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.external.tex @@ -16,7 +16,7 @@ The whole procedure saves compilation time, if such a snippet is costly to compile but needs to compile just once or very seldom. There are very good alternatives to this library. One should consider -the |standalone| package or the \tikzname\ externalization library instead. +the \refPkg{standalone} package or the \tikzname\ externalization library instead. The \mylib{external} library is something in between and can be seen as poor man variant of the \tikzname\ externalization library. @@ -74,7 +74,7 @@ executed. \documentclass[a4paper]{book}% for example \usepackage{...}% anything % ... -% Tpyically, all or the very most settings for the document. +% Typically, all or the very most settings for the document. \tcbEXTERNALIZE% Typically, just before \begin{document} @@ -500,7 +500,7 @@ in this case. \clearpage \begin{docCommand}[doc new=2015-03-11]{newtcbexternalizeenvironment}{\marg{newenv}\marg{env}\marg{options}\marg{begin}\marg{end}} Creates a new environment \meta{newenv} which is based on - \refEnv{tcbexternal}. This enviroment takes \emph{at least} + \refEnv{tcbexternal}. This environment takes \emph{at least} one optional parameter and one mandatory parameter. These two parameters are passed to \refEnv{tcbexternal}. Further, the given \meta{options} are always added to the option list of \refEnv{tcbexternal}.\par @@ -532,7 +532,7 @@ a & This table is externalized as snippet. Obviously, \begin{docCommand}[doc new=2015-03-11]{newtcbexternalizetcolorbox}{\marg{newenv}\marg{env}\marg{options}\marg{begin end options}} Creates a new environment \meta{newenv} which is based on - \refEnv{tcbexternal}. This enviroment takes \emph{at least} + \refEnv{tcbexternal}. This environment takes \emph{at least} one optional parameter and one mandatory parameter. These two parameters are passed to \refEnv{tcbexternal}. Further, the given \meta{options} are always added to the option list of \refEnv{tcbexternal}.\par @@ -619,14 +619,14 @@ or name points to another subdirectory than |external|, this has to be adapted. -\item\textbf{I use the |minted| package and I get a cache directory for +\item\textbf{I use the \refPkg{minted} package and I get a cache directory for every externalized snippet.}\\ To avoid this problem, there are several ways. \begin{itemize} \item If you do not need |minted| inside the snippet code, you may use |\usepackage{minted}| \emph{after} \refCom{tcbEXTERNALIZE} or use \refCom{tcbifexternal} to switch |minted| off for the external code. - If |minted| is already included by another package, add the following to + If \refPkg{minted} is already included by another package, add the following to your preamble: \begin{dispListing} \tcbset{external/PassOptionsToPackage={draft}{minted}} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex index 9f1f4627ca..dfce46b546 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex @@ -16,7 +16,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk \begin{marker} Up to version 5.1.1 (2022/06/24) of |tcolorbox|, \tikzname\ image and picture fill extensions were documented here. These extensions are now separate \tikzname\ libraries -and part of the |tikzfill| package where they are documented now. +and part of the \refPkg{tikzfill} package where they are documented now. \end{marker} @@ -63,7 +63,7 @@ To be more specific, they determine the east-to-west and the north-to-south dime which may be not the maximal dimensions for a non-rectangular node. Note that the following dimensions are measured exactly including the line width of the border line. If a new rectangle or node with the same dimensions -and a border is to be drawn, this border width has to be substracted. +and a border is to be drawn, this border width has to be subtracted. \begin{docCommand}[doc new=2014-09-19]{tcbsettowidthofnode}{\marg{register}\marg{node}} Sets the east-to-west dimension of the given \meta{node} @@ -88,7 +88,7 @@ and a border is to be drawn, this border width has to be substracted. \node[align=center,draw=red,fill=yellow] (A) {This is my\\example node}; \tcbsetmacrotowidthofnode\mywidth{A} \tcbsetmacrotoheightofnode\myheight{A} - \path[fill=blue!25!white] % rectangle widthout border + \path[fill=blue!25!white] % rectangle without border ([xshift=2mm]A.south east) rectangle node{Copy} +(\mywidth,\myheight); \node[draw=blue,fill=blue!25!white, % standard border width 0.4pt @@ -107,7 +107,7 @@ The following auxiliary macro is defined by the \mylib{skins} library. \begin{docCommand}[doc new and updated={2016-02-03}{2023-02-28}]{tcbhypernode}{\marg{macro}\marg{node}} % Sets the east-to-west dimension of the given \meta{node} % to the \TeX\ \meta{register}. - Applies a hyperlink creating \meta{macro} from the package |hyperref| \cite{rahtz:hyperref} + Applies a hyperlink creating \meta{macro} from the package \refPkg{hyperref} \cite{rahtz:hyperref} to an existing |tikz| \meta{node}. \refCom{tcbhypernode} can only be used inside a |tikzpicture| environment. The last argument of the \meta{macro} is to be omitted and should stand diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex index 14f9e7b577..a541659c37 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex @@ -145,7 +145,8 @@ The library is loaded by a package option or inside the preamble by: \begin{docCommand}{NewTCBoxFit}{\oarg{init options}\brackets{\texttt{\textbackslash}\meta{name}}\marg{specification}\marg{options}} Creates a new command \texttt{\textbackslash}\meta{name} based on \refCom{tcboxfit}. Basically, \refCom{NewTCBoxFit} operates like |\NewDocumentCommand|. This means, - the new command \texttt{\textbackslash}\meta{name} is constructed with the given argument \meta{specification}. + the new command \texttt{\textbackslash}\meta{name} is constructed with the given + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if \texttt{\textbackslash}\meta{name} has already been defined. The \meta{options} are given to the underlying \refCom{tcboxfit}.\\ Note that \refKey{/tcb/savedelimiter} is set to the given \meta{name} @@ -192,7 +193,8 @@ The library is loaded by a package option or inside the preamble by: Creates a new command \texttt{\textbackslash}\meta{name} based on \refCom{tcboxfit}. In contrast to \refCom{NewTCBoxFit}, also the \meta{content} of the |tcboxfit| is specified.\\ Basically, \refCom{NewTotalTCBoxFit} operates like |\NewDocumentCommand|. This means, - the new command \texttt{\textbackslash}\meta{name} is constructed with the given argument \meta{specification}. + the new command \texttt{\textbackslash}\meta{name} is constructed with the given + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if \texttt{\textbackslash}\meta{name} has already been defined. The \meta{options} are given to the underlying \refCom{tcboxfit} which is filled with the specified \meta{content}.\\ @@ -620,7 +622,7 @@ if necessary. \begin{docTcbKey}{fit maxstep}{=\meta{number}}{no default, initially |20|} Sets the maximal step size for the font size adjustment algorithm. - In normal situations, the algorithm stops before reaching the intial value of 20 steps. + In normal situations, the algorithm stops before reaching the initial value of 20 steps. If the box content does not shrink, this value prevents an endless loop. \end{docTcbKey} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.graphics.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.graphics.tex index fe441d4821..a85091895e 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.graphics.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.graphics.tex @@ -132,7 +132,7 @@ specify a file system \meta{directory} where the image files are located. \end{dispListing} \smallskip \begin{marker} -The |\graphicspath| macro from the |graphics| package is superior to this option. +The |\graphicspath| macro from the \refPkg{graphics} package is superior to this option. \refKey{/tcb/graphics directory} may be used especially for \refCom{tcbincludepdf}. \end{marker} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex index b068d58eaf..8d0c7459b2 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex @@ -173,7 +173,7 @@ need to be set inside the preamble. \end{marker} \begin{newTcbKey}[][doc updated=2014-12-01]{crefname}{=\marg{singular}\marg{plural}}{no default, initially unset} - This option key can be used only in conjunction with the |cleveref| package + This option key can be used only in conjunction with the \refPkg{cleveref} package \cite{cubitt:2018a} which has to be loaded separately. It creates a cross-reference type for the new |tcolorbox|'es, where the lowercase \meta{singular} and \meta{plural} forms of the cross-reference are given. @@ -183,7 +183,7 @@ need to be set inside the preamble. \begin{newTcbKey}[][doc updated=2014-12-01]{Crefname}{=\marg{singular}\marg{plural}}{no default, initially unset} - This option key can be used only in conjunction with the |cleveref| package + This option key can be used only in conjunction with the \refPkg{cleveref} package \cite{cubitt:2018a} which has to be loaded separately. It creates a cross-reference type for the new |tcolorbox|'es, where the uppercase \meta{singular} and \meta{plural} forms of the cross-reference are given. @@ -224,7 +224,7 @@ Feasible values for \meta{name} are: \item\docValue{figures}: blend into the standard |figure| environment. \item\docValue{tables}: blend into the standard |table| environment. \item\docValue{listings}: blend into the standard |lstlisting| environment - of the package |listings| \cite{hoffmann:listings}. + of the package \refPkg{listings} \cite{hoffmann:listings}. \begin{marker} Note that |blend into=listings| can only be used in the document content or, preferably, inside a |\AtBeginDocument| clause! Using it without diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.intro.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.intro.tex index 548c70e081..f7b5d4cf7d 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.intro.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.intro.tex @@ -48,7 +48,7 @@ for some hints. The short story is: you have to install not only \subsection{Loading the Package} The base package |tcolorbox| loads the packages -|pgf| \cite{tantau:tikz_and_pgf}, |verbatim| \cite{schoepf:verbatim}, +|tikz| \cite{tantau:tikz_and_pgf}, |verbatim| \cite{schoepf:verbatim}, |etoolbox| \cite{lehmann:etoolbox}, and |environ| \cite{robertson:2014a}. |tcolorbox| itself is loaded in the usual manner in the preamble: @@ -81,7 +81,7 @@ The following keys are used inside |\tcbuselibrary| respectively |\usepackage| without the key tree path |/tcb/library/|. \begin{docTcbKey}[library]{skins}{}{\mylib{skins}} - Loads the package |tikz| \cite{tantau:tikz_and_pgf} and provides additional + Loads the package \refPkg[tikzfill]{tikzfill.image} and provides additional styles (skins) for the appearance of the colored boxes; see Section~\ref{sec:skins} from page~\pageref{sec:skins}. \end{docTcbKey} @@ -98,13 +98,13 @@ The following keys are used inside |\tcbuselibrary| respectively \end{docTcbKey} \begin{docTcbKey}[library]{listings}{}{\mylib{listings}} - Loads the package |listings| \cite{hoffmann:listings} and provides additional + Loads the package \refPkg{listings} \cite{hoffmann:listings} and provides additional macros for typesetting listings which are described in Section~\ref{sec:listings} from page~\pageref{sec:listings}. \end{docTcbKey} \begin{docTcbKey}[library]{listingsutf8}{}{\mylib{listingsutf8}} - Loads the packages |listings| \cite{hoffmann:listings} and + Loads the packages \refPkg{listings} \cite{hoffmann:listings} and |listingsutf8| \cite{oberdiek:listingsutf8} for UTF-8 support. This is a variant of the library \mylib{listings} and is described in Section \ref{sec:listings} @@ -112,7 +112,7 @@ The following keys are used inside |\tcbuselibrary| respectively \end{docTcbKey} \begin{docTcbKey}[library]{minted}{}{\mylib{minted}} - Loads the package |minted| \cite{poore:minted} to + Loads the package \refPkg{minted} \cite{poore:minted} to typeset listings with the |Pygments| \cite{pygments:web} tool, also see \Vref{sec:listings}. \end{docTcbKey} @@ -151,7 +151,7 @@ The following keys are used inside |\tcbuselibrary| respectively \clearpage \begin{docTcbKey}[library]{xparse}{}{\mylib{xparse}} - Loads the package |xparse| and is considered a legacy library kept for compatibility; + Loads the package \refPkg{xparse} and is considered a legacy library kept for compatibility; see Section~\ref{sec:xparse} from page~\pageref{sec:xparse}. \end{docTcbKey} @@ -178,7 +178,7 @@ The following keys are used inside |\tcbuselibrary| respectively \begin{docTcbKey}[library]{most}{}{style, no value} Loads all libraries except \mylib{minted}, \mylib{documentation}, and \mylib{xparse}. Use this shortcut, if you want to use all features of |tcolorbox| - with exception of using the |minted| package and using + with exception of using the \refPkg{minted} package and using the specialized \mylib{documentation} library. \end{docTcbKey} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex index c2e8b5fe27..59fbe4390e 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex @@ -27,12 +27,12 @@ the settings of a previous loaded library. A library is never loaded twice. \subsubsection{Loading \mylib{listings}} -This library uses the package |listings| \cite{hoffmann:listings} to typeset +This library uses the package \refPkg{listings} \cite{hoffmann:listings} to typeset listings. It is loaded by a package option or inside the preamble by: \begin{dispListing} \tcbuselibrary{listings} \end{dispListing} -This also loads the package |listings| \cite{hoffmann:listings}. +This also loads the package \refPkg{listings} \cite{hoffmann:listings}. The \refKey{/tcb/listing engine} is set to |listings| by the library. To reactivate this setting, if overwritten by other libraries, use @@ -47,15 +47,15 @@ Therefore, loading this library is automatically replaced by loading \mylib{listings} only, if pdf\LaTeX\ is \emph{not} used. \end{marker} To extend |listings| for UTF-8 encoded sources, you can use the support from -the package |listingsutf8| \cite{oberdiek:listingsutf8} by loading the library +the package \refPkg{listingsutf8} \cite{oberdiek:listingsutf8} by loading the library variant \mylib{listingsutf8}. \begin{dispListing} \tcbuselibrary{listingsutf8} \tcbset{listing utf8=latin1}% optional; `latin1' is the default. \end{dispListing} This also loads the library \mylib{listings} -and the packages |listings| \cite{hoffmann:listings} -and |listingsutf8| \cite{oberdiek:listingsutf8}. +and the packages \refPkg{listings} \cite{hoffmann:listings} +and \refPkg{listingsutf8} \cite{oberdiek:listingsutf8}. The \refKey{/tcb/listing engine} is set to |listings| by the library. To reactivate this setting, if overwritten by other libraries, use @@ -66,19 +66,27 @@ To reactivate this setting, if overwritten by other libraries, use \clearpage \subsubsection{Loading \mylib{minted}} -This library uses the package |minted| \cite{poore:minted} to typeset +This library uses the package \refPkg{minted} \cite{poore:minted} to typeset listings. It is loaded by a package option or inside the preamble by: \begin{dispListing} \tcbuselibrary{minted} \end{dispListing} -This also loads the package |minted| \cite{poore:minted}. +This also loads the package \refPkg{minted} \cite{poore:minted}. \begin{marker} -The |minted| package uses the external tool |Pygments| \cite{pygments:web} +To use the legacy version v2.9 of \refPkg{minted}, write +\begin{dispListing} +\usepackage{minted2} +\end{dispListing} +\emph{before} loading the library! +\end{marker} + +\begin{marker} +The \refPkg{minted} package uses the external tool |Pygments| \cite{pygments:web} to apply syntax highlighting. It has to be installed and set up, before the library can be used, see \cite{poore:minted} and \cite{pygments:web}. The \refEnv{tcolorbox} library \mylib{minted} does not work, if the package -|minted| \cite{poore:minted} does not work. +\refPkg{minted} \cite{poore:minted} does not work. \end{marker} The \refKey{/tcb/listing engine} is set to |minted| by the library. @@ -282,7 +290,8 @@ This is my \LaTeX\ box. \begin{docCommand}{NewTCBListing}{\oarg{init options}\marg{name}\marg{specification}\marg{options}} Creates a new environment \meta{name} based on \refEnv{tcblisting}.\\ Basically, \refCom{NewTCBListing} operates like |\NewDocumentEnvironment|. This means, - the new environment \meta{name} is constructed with the given argument \meta{specification}. + the new environment \meta{name} is constructed with the + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if \meta{name} has already been defined. The \meta{options} are given to the underlying \refEnv{tcblisting}.\\ Note that \refKey{/tcb/savedelimiter} is set to the given \meta{name} @@ -339,7 +348,7 @@ This is my \clearpage \begin{marker} -With date of 2018-05-12, the |xparse| \cite{latexproject:xparse} package +With date of 2018-05-12, the \refPkg{xparse} \cite{latexproject:xparse} package changed the argument collection process (now part of the \LaTeX\ kernel). Spaces are ignored which leads to a serious change for listing environments ending with an optional argument like \verb+O{}+. @@ -429,7 +438,8 @@ Note that the following code uses \verb+!O{}+ now. \begin{docCommand}{NewTCBInputListing}{\oarg{init options}\brackets{\texttt{\textbackslash}\meta{name}}\marg{specification}\marg{options}} Creates a new command \texttt{\textbackslash}\meta{name} based on \refCom{tcbinputlisting}. Basically, \refCom{NewTCBInputListing} operates like |\NewDocumentCommand|. This means, - the new command \texttt{\textbackslash}\meta{name} is constructed with the given argument \meta{specification}. + the new command \texttt{\textbackslash}\meta{name} is constructed with the + given \LaTeX3 argument \meta{specification} following \cite{latexproject:usrguide}. An error is issued if \texttt{\textbackslash}\meta{name} has already been defined. The \meta{options} are given to the underlying \refCom{tcbinputlisting}.\\ The \meta{init options} allow setting up automatic numbering, @@ -469,7 +479,7 @@ Note that the following code uses \verb+!O{}+ now. \subsection{Option Keys of the \mylib{listings} Library}\label{sec:speclistingkeys} \begin{docTcbKey}{listing options}{=\meta{key list}}{no default, initially |style=tcblatex|} - Sets the options from the package |listings| \cite{hoffmann:listings} + Sets the options from the package \refPkg{listings} \cite{hoffmann:listings} which are used during typesetting of the listing. For \LaTeX\ listings, there is a predefined |listings| style named |tcblatex| which can be used. @@ -485,7 +495,7 @@ and in compiled form. Additionally, we use line numbers here. \begin{docTcbKey}{no listing options}{}{no value, initially unset} Abbreviation for |listing options={}|. - This removes all options for the |listings| package. + This removes all options for the \refPkg{listings} package. This includes the \refEnv{tcblisting} standard style |tcblatex| and the encoding presets. Use this option, if you want to set the |listings| options outside of \refEnv{tcblisting}, e.\,g.\ globally in the preamble. @@ -499,7 +509,7 @@ All \textit{listings} options removed. \begin{docTcbKey}{listing style}{=\meta{style}}{no default, initially |tcblatex|} Abbreviation for |listing options={style=...}|. This key sets a \meta{style} - for the |listings| package, see \cite{hoffmann:listings}. + for the \refPkg{listings} package, see \cite{hoffmann:listings}. For \LaTeX, there is a predefined style named |tcblatex|. \begin{dispExample} \begin{tcblisting}{colback=red!5!white,colframe=red!75!black, @@ -513,14 +523,14 @@ Here, we use the predefined style. \begin{docTcbKey}{listing inputencoding}{=\meta{encoding}}{no default, initially \texttt{\cs inputencodingname}} Sets the input encoding value for the predefined listing style |tcblatex| and |tcbdocumentation| from the library \mylib{documentation}. - The initial value is derived from the package |inputenc| if used. + The initial value is derived from the package \refPkg{inputenc} if used. \end{docTcbKey} \begin{docTcbKey}{listing remove caption}{\colOpt{=true\textbar false}}{default |true|, initially |true|} -If set to |true|, some part of the caption building code of the |listings| package -is silenced to prevent some unwanted interaction with the |hyperref| package resulting +If set to |true|, some part of the caption building code of the \refPkg{listings} package +is silenced to prevent some unwanted interaction with the \refPkg{hyperref} package resulting in additional vertical space. -If set to |false|, the |listings| package code is kept unchanged. +If set to |false|, the \refPkg{listings} package code is kept unchanged. Note that listings outside \refEnv{tcblisting} and \refCom{tcbinputlisting} are always processed normally. Typically, a user is not expected to use this key at all. @@ -528,7 +538,7 @@ Typically, a user is not expected to use this key at all. \begin{docTcbKey}{every listing line}{=\meta{text}}{no default, initially unset/empty} Inserts some \meta{text} to the begin of every line of a listing. -Note that this a hack of the |listings| package code. This may become unusable +Note that this a hack of the \refPkg{listings} package code. This may become unusable or superfluous in the future. \begin{dispExample} \newtcblisting{commandshell}{colback=black,colupper=white,colframe=yellow!75!black, @@ -582,14 +592,14 @@ all options from \Vref{sec:speclistingkeys} are applicable. \begin{docTcbKey}{listing utf8}{=\meta{one-byte-encoding}}{style, no default, initially |latin1|} Abbreviation for using \refKey{/tcb/listing inputencoding} - together with UTF-8 support from the package |listingsutf8| \cite{oberdiek:listingsutf8}. + together with UTF-8 support from the package \refPkg{listingsutf8} \cite{oberdiek:listingsutf8}. This option is available only for the library variant \mylib{listingsutf8}. The \meta{one-byte-encoding} is one of the applicable encodings from \cite{oberdiek:listingsutf8}, e.\,g.\ |latin1| which is the default.\par Be aware that this means restriction to this specific \meta{one-byte-encoding}: e.\,g.\ |latin1| comprises umlauts and other accented characters, but not - the Euro sign. If you want to use the |listings| package \emph{and} \flqq real\frqq\ + the Euro sign. If you want to use the \refPkg{listings} package \emph{and} \flqq real\frqq\ UTF-8 source code, then do \emph{not} use \mylib{listingsutf8} but \mylib{listings} with \refKey{/tcb/listing inputencoding}|=utf8| @@ -621,7 +631,7 @@ Sets a \meta{programming language} known to |Pygments| \cite{pygments:web}. \begin{docTcbKey}[][doc updated={2021-12-15}]{minted options}{=\meta{key list}}{no default, initially \linebreak see \refKey{/tcb/default minted options}} - Sets the options from the package |minted| \cite{poore:minted} + Sets the options from the package \refPkg{minted} \cite{poore:minted} which are used during typesetting of the listing. Also see \refKey{/tcb/minted options app} and \refKey{/tcb/minted options pre}. \begin{dispExample} @@ -650,7 +660,7 @@ Sets a \meta{programming language} known to |Pygments| \cite{pygments:web}. \clearpage \begin{docTcbKey}[][doc new={2021-12-15}]{default minted options}{=\meta{key list}}{no default, initially |tabsize=2,fontsize=\textbackslash small,|\linebreak|breaklines,autogobble|} - Sets the options from the package |minted| \cite{poore:minted} + Sets the options from the package \refPkg{minted} \cite{poore:minted} which are used during typesetting of the listing, if \refKey{/tcb/minted options} are \emph{not} used. The intended use is inside the preamble to change the default behavior. @@ -1178,6 +1188,7 @@ This \meta{system command} is added to \refKey{/tcb/process code}. \end{marker} \end{docTcbKey} +\enlargethispage*{5mm} \begin{docTcbKey}[][doc new=2014-11-14]{run pdflatex}{\colOpt{=\meta{arguments}}}{style, no default, initially unset} Issues a |pdflatex| compilation of the listing with the given \meta{arguments}. diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex index 085d789a36..be79860d6b 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex @@ -9,7 +9,7 @@ with |tcolorbox|es. A \refEnv{tcbposter} is a |tikzpicture| where |tcolorbox|es can be placed in a column oriented manner using \refCom{posterbox} commands. -This base concept is more or less copied from the great |baposter| package. +This base concept is more or less copied from the great \refPkg{baposter} package. The \mylib{raster} library, see \Fullref{sec:raster}, can produce similar looking results and may be more appropriate diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty b/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty index 3eabd88b1e..b73d8b3285 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty @@ -36,6 +36,9 @@ \tcbuselibrary{most,documentation} \tcbifexternal{}{% + \IfFileExists{minted2.sty}{\RequirePackage{minted2}}{}% + % Avoid https://github.com/gpoore/minted/issues/414 + % and spurious errors where minted v3 complains about .tcbtemp files \tcbuselibrary{minted}% \tcbset{listing engine=listings,initialize@reset={listing engine=listings}}% } @@ -204,7 +207,7 @@ docCounter,docLength, meta,marg, oarg, - refCom,refEnv,refKey, + refCom,refEnv,refKey,refPathOperation,refAux,refAuxcs,refPkg, sarg, tcbmakedocSubKey,tcbdocmarginnote,tcbdocnew,tcbdocupdated, % skins @@ -276,9 +279,9 @@ before skip=\medskipamount,after skip=\medskipamount,frame style={}}, } -\newtcbexternalizetcolorbox{exdispExample}{dispExample}{environment with percent=false,minipage}{beforeafter example} +\newtcbexternalizetcolorbox{exdispExample}{dispExample}{environment with percent=false,minipage,compiler=lualatex}{beforeafter example} -\newtcbexternalizetcolorbox{exdispExample*}{dispExample*}{environment with percent=false,minipage}{beforeafter example} +\newtcbexternalizetcolorbox{exdispExample*}{dispExample*}{environment with percent=false,minipage,compiler=lualatex}{beforeafter example} \newcommand{\inputpreamblelisting}[1]{% \tcbinputlisting{title=Definition in the preamble:, diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skincatalog.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skincatalog.tex index ece3b4bc35..9f79252f3e 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skincatalog.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skincatalog.tex @@ -117,7 +117,6 @@ defined just for this documentation. \begin{tcolorbox}[skintable=standard] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |pgfpicture|\\ \refKey{/tcb/frame engine}: \> |standard|\\ \refKey{/tcb/interior titled engine}: \> |standard|\\ \refKey{/tcb/interior engine}: \> |standard|\\ @@ -143,7 +142,6 @@ defined just for this documentation. \begin{tcolorbox}[skintable=standard jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |pgfpicture|\\ \refKey{/tcb/frame engine}: \> |standardjigsaw|\\ \refKey{/tcb/interior titled engine}: \> |standard|\\ \refKey{/tcb/interior engine}: \> |standard|\\ @@ -185,7 +183,6 @@ have some \enquote{enhanced} features, the |enhanced| skin is what you are looki \begin{tcolorbox}[skintable=enhanced] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |path|\\ \refKey{/tcb/interior titled engine}: \> |path|\\ \refKey{/tcb/interior engine}: \> |path|\\ @@ -297,7 +294,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=enhancedfirst] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathfirst|\\ \refKey{/tcb/interior titled engine}: \> |pathfirst|\\ \refKey{/tcb/interior engine}: \> |pathfirst|\\ @@ -322,7 +318,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=enhancedmiddle] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathmiddle|\\ \refKey{/tcb/interior titled engine}: \> |pathmiddle|\\ \refKey{/tcb/interior engine}: \> |pathmiddle|\\ @@ -346,7 +341,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=enhancedlast] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathlast|\\ \refKey{/tcb/interior titled engine}: \> |pathlast|\\ \refKey{/tcb/interior engine}: \> |pathlast|\\ @@ -368,7 +362,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=enhanced jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathjigsaw|\\ \refKey{/tcb/interior titled engine}: \> |path|\\ \refKey{/tcb/interior engine}: \> |path|\\ @@ -404,7 +397,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=enhancedfirst jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathfirstjigsaw|\\ \refKey{/tcb/interior titled engine}: \> |pathfirst|\\ \refKey{/tcb/interior engine}: \> |pathfirst|\\ @@ -429,7 +421,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=enhancedmiddle jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathmiddlejigsaw|\\ \refKey{/tcb/interior titled engine}: \> |pathmiddle|\\ \refKey{/tcb/interior engine}: \> |pathmiddle|\\ @@ -509,7 +500,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=enhancedlast] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathlastjigsaw|\\ \refKey{/tcb/interior titled engine}: \> |pathlast|\\ \refKey{/tcb/interior engine}: \> |pathlast|\\ @@ -537,7 +527,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolor] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |path|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -694,7 +683,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolorfirst] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathfirst|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -720,7 +708,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolormiddle] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathmiddle|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -746,7 +733,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolorlast] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathlast|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -772,7 +758,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolor jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathjigsaw|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -805,7 +790,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolorfirst jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathfirstjigsaw|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -833,7 +817,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolormiddle jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathmiddlejigsaw|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -860,7 +843,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=bicolorlast jigsaw] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathlastjigsaw|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -891,7 +873,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=tile] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -923,7 +904,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=tilefirst] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -949,7 +929,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=tilemiddle] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -976,7 +955,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=tilelast] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -1006,7 +984,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=beamer] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |path|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -1069,7 +1046,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=beamerfirst] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathfirst|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -1094,7 +1070,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=beamermiddle] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathmiddle|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -1118,7 +1093,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=beamerlast] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathlast|\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -1145,7 +1119,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=widget] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |path|\\ \refKey{/tcb/interior titled engine}: \> |path|\\ \refKey{/tcb/interior engine}: \> |path|\\ @@ -1184,7 +1157,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=widgetfirst] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathfirst|\\ \refKey{/tcb/interior titled engine}: \> |pathfirst|\\ \refKey{/tcb/interior engine}: \> |pathfirst|\\ @@ -1208,7 +1180,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=widgetmiddle] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathmiddle|\\ \refKey{/tcb/interior titled engine}: \> |pathmiddle|\\ \refKey{/tcb/interior engine}: \> |pathmiddle|\\ @@ -1231,7 +1202,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=widgetlast] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |pathlast|\\ \refKey{/tcb/interior titled engine}: \> |pathlast|\\ \refKey{/tcb/interior engine}: \> |pathlast|\\ @@ -1257,7 +1227,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=empty] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> |empty|\\ \refKey{/tcb/interior engine}: \> |empty|\\ @@ -1348,7 +1317,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=emptyfirst] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> |empty|\\ \refKey{/tcb/interior engine}: \> |empty|\\ @@ -1375,7 +1343,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=emptymiddle] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> |empty|\\ \refKey{/tcb/interior engine}: \> |empty|\\ @@ -1401,7 +1368,6 @@ Nevertheless, this skin can be applied independently. \begin{tcolorbox}[skintable=emptylast] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |empty|\\ \refKey{/tcb/interior titled engine}: \> |empty|\\ \refKey{/tcb/interior engine}: \> |empty|\\ @@ -1520,7 +1486,6 @@ are drawn by the codes given by \begin{tcolorbox}[skintable=spartan] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |spartan|\\ \refKey{/tcb/interior titled engine}: \> |spartan|\\ \refKey{/tcb/interior engine}: \> |spartan|\\ @@ -1551,7 +1516,6 @@ are drawn by the codes given by \begin{tcolorbox}[skintable=draft] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> \emph{special}\\ \refKey{/tcb/interior titled engine}: \> \emph{special}\\ \refKey{/tcb/interior engine}: \> \emph{special}\\ @@ -1612,7 +1576,6 @@ you would have used \refKey{/tcb/freelance} before. \begin{tcolorbox}[skintable=freelance] \begin{tabbing} \refKey{/tcb/interior titled engine}: \=\kill - \refKey{/tcb/graphical environment}: \> |tikzpicture|\\ \refKey{/tcb/frame engine}: \> |freelance|\\ \refKey{/tcb/interior titled engine}: \> |freelance|\\ \refKey{/tcb/interior engine}: \> |freelance|\\ diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex index e92d81a644..108e0245d7 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex @@ -7,8 +7,7 @@ The library is loaded by a package option or inside the preamble by: \begin{dispListing} \tcbuselibrary{skins} \end{dispListing} -This also loads the package |tikz| \cite{tantau:tikz_and_pgf}. Typically but not necessarily, -the following skins use |tikz| instead of |pgf|. +This also loads the package \refPkg[tikzfill]{tikzfill.image}. In the following, general settings and options of the library are documented. @@ -1013,7 +1012,7 @@ The text is centered by default \begin{docTcbKey}{varwidth boxed title}{\colOpt{=\meta{length}}}{initially unset} The title text content is captured with a |varwidth| environment with a width of \meta{length}. -This style needs the |varwidth| package \cite{arseneau:2011a} to be loaded manually. +This style needs the \refPkg{varwidth} package \cite{arseneau:2011a} to be loaded manually. By default, the resulting boxed title is somewhat smaller than the main box. \begin{exdispExample*}{varwidth_boxed_title}{sbs,lefthand ratio=0.66} % \usepackage{varwidth} @@ -1036,7 +1035,7 @@ By default, the resulting boxed title is somewhat smaller than the main box. \begin{docTcbKey}{varwidth boxed title*}{\colOpt{=\meta{length}}}{initially unset} The title text content is captured with a |varwidth| environment with a width of main box width plus \meta{length}. -This style needs the |varwidth| package \cite{arseneau:2011a} to be loaded manually. +This style needs the \refPkg{varwidth} package \cite{arseneau:2011a} to be loaded manually. By default, the resulting boxed title is somewhat smaller than the main box. \begin{exdispExample*}{varwidth_boxed_title_star}{sbs,lefthand ratio=0.66} % \usepackage{varwidth} @@ -1059,9 +1058,7 @@ By default, the resulting boxed title is somewhat smaller than the main box. \clearpage \subsection{Watermark Option Keys}\label{subsec:watermarks} -The following watermark options are applicable for all skins which -use |tikzpicture| as \refKey{/tcb/graphical environment}. -Therefore, the skin \refSkin{standard} does not support these watermarks, +The skin \refSkin{standard} does not support these watermarks, but all other skins, e.\,g.\ \refSkin{enhanced}. \begin{marker} @@ -1479,9 +1476,7 @@ Donau\-dampf\-schiff\-fahrts\-ka\-pi\-t\"ans\-m\"ut\-zen\-fran\-sen \clearpage \subsection{Border Line Option Keys}\label{subsec:borderline} -The following borderline options are applicable for most skins which -use |tikzpicture| as \refKey{/tcb/graphical environment}. -Therefore, the skin \refSkin{standard} does not support these border lines, +The skin \refSkin{standard} does not support these border lines, but most other skins, e.\,g.\ \refSkin{enhanced}. The borderlines are independent from the normal |tcolorbox| rules. @@ -1714,9 +1709,7 @@ but adapt to breakable boxes. \clearpage \subsection{Shadow Option Keys}\label{subsec:shadows} -The following shadow options are applicable for most skins which -use |tikzpicture| as \refKey{/tcb/graphical environment}. -Therefore, the skin \refSkin{standard} does not support these shadows, +The skin \refSkin{standard} does not support these shadows, but most other skins, e.\,g.\ \refSkin{enhanced}. The shadows are stackable, i.\,e.\ several different shadows can be @@ -2087,7 +2080,7 @@ This is a tcolorbox. from the frame outline. A positive \meta{offset} value shrinks the shadow and a negative \meta{offset} value enlarges the shadow. The shadow is filled along a \tikzname\ path with the given \tikzname\ \meta{options}.\\ - The shadows adapt to the rounded corners of the |tcolorbox|. A shrinked shadow + The shadows adapt to the rounded corners of the |tcolorbox|. A shrunken shadow will switch to sharp corners if necessary, an enlarged shadow may become more rounded depending on several factors. But \refKey{/tcb/sharp corners} have sharp shadows. @@ -2255,7 +2248,7 @@ This is a tcolorbox. \clearpage \subsubsection{\tikzname\ Shadows} -Alternativ to the package shadow options described before, shadows from +Alternative to the package shadow options described before, shadows from the \flqq Shadows Library\frqq\ of \tikzname\ can be used. Such shadows can be added directly to the frame path using \refKey{/tcb/frame style}. @@ -2292,11 +2285,6 @@ Such shadows can be added directly to the frame path using \refKey{/tcb/frame st \clearpage \subsection{\tikzname\ Picture Option Keys}\label{subsec:tikzpicture} -The following general options are applicable for skins which -use |tikzpicture| as \refKey{/tcb/graphical environment}. -Therefore, the skin \refSkin{standard} does not support these options, -but most other skins, e.\,g.\ \refSkin{enhanced}. - \begin{docTcbKey}{tikz}{=\meta{tikz option list}}{no default, initially empty} Adds the given \meta{tikz option list} to the main |tikzpicture| environment @@ -2730,12 +2718,12 @@ Finishes are intended for special effects like highlights or glosses or text ove \clearpage \subsection{Hyper Option Keys}\label{subsec:hyper} -All options of this section need the package |hyperref| \cite{rahtz:hyperref} +All options of this section need the package \refPkg{hyperref} \cite{rahtz:hyperref} to be loaded separately. All these options are implemented as \refKey{/tcb/finish} and can be disabled by \refKey{/tcb/no finish}. \begin{marker} -If the package |hyperref| \cite{rahtz:hyperref} is not loaded or if +If the package \refPkg{hyperref} \cite{rahtz:hyperref} is not loaded or if the \refSkin{standard} skin is used, all hyper option are silently ignored. \end{marker} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.technical.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.technical.tex index 1e6960ffd2..a9fbc31bb2 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.technical.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.technical.tex @@ -62,13 +62,6 @@ option from the core package has to be set. \clearpage -\begin{docTcbKey}{graphical environment}{=\meta{name}}{no default, initially \texttt{pgfpicture}} - Sets the graphical environment for the |tcolorbox| to \meta{name}. - Feasible values are |pgfpicture| and |tikzpicture| or environments which - inherit from one of these two. This key is set by a \refKey{/tcb/skin} and - may seldom be used directly. -\end{docTcbKey} - The skin of a |tcolorbox| is drawn by up to four \emph{engines}. Afterwards, the text content is drawn which is not part of a skin. The four steps are: @@ -85,18 +78,6 @@ The four steps are: by \refKey{/tcb/title engine}. \end{enumerate} -%Every engine for the up to four steps can be set to one of the following types: -%\begin{enumerate} -%\item\docValue{standard}: the original code from the core package. -%\item\docValue{path}: a |tikz| path which can be controlled by options. -%\item\docValue{pathfirst}: a |tikz| path which can be controlled by options. -%\item\docValue{pathmiddle}: a |tikz| path which can be controlled by options. -%\item\docValue{pathlast}: a |tikz| path which can be controlled by options. -%\item\docValue{freelance}: arbitrary user code. -%\item\docValue{spartan}: a quite spartan code. -%\end{enumerate} -%\clearpage - \begin{docTcbKey}{frame engine}{=\meta{name}}{no default, initially \texttt{standard}} Sets the \emph{frame} drawing engine for a box to \meta{name}. Typically, this key is set by a \refKey{/tcb/skin}. @@ -644,7 +625,7 @@ These color names are \item\docColor{tcbcolframe} set by \refKey{/tcb/colframe} (frame color) \item\docColor{tcbcolback} set by \refKey{/tcb/colback} (background color) \item\docColor{tcbcolbacktitle} set by \refKey{/tcb/colbacktitle} (background color of the title) -\item\docColor{tcbcolbacklower} set by \refKey{/tcb/colbacklower} (skin dependend background color +\item\docColor{tcbcolbacklower} set by \refKey{/tcb/colbacklower} (skin dependent background color of the lower part; needs \mylib{skins} to be loaded) \item\docColor{tcbcolupper} set by \refKey{/tcb/colupper} (text color upper part) \item\docColor{tcbcollower} set by \refKey{/tcb/collower} (text color lower part) diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex index 4884e85f57..fdb5564454 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex @@ -7,7 +7,7 @@ The library is loaded by a package option or inside the preamble by: \begin{dispListing} \tcbuselibrary{theorems} \end{dispListing} -This also loads the package |amsmath|. +This also loads the package \refPkg{amsmath}. Denis Bitouz\'e, Muzimuzhi, and many others provided very valuable input for this library. @@ -195,7 +195,7 @@ To switch off the \texttt{nameref} feature permanently, add \end{dispExample} \clearpage -\refCom{tcbhighmath} can be used in symbiosis with the |empheq| package +\refCom{tcbhighmath} can be used in symbiosis with the \refPkg{empheq} package which allows to specify own boxing commands to mark multiline formulas. \begin{dispExample} @@ -243,7 +243,7 @@ E&=mc^2 + \int_a^b x\, dx \begin{docTcbKey}{separator sign}{=\meta{sign}}{no default, initially |:|} The given \meta{sign} is used inside the title text of a theorem - as separater between display name combined with number and + as separator between display name combined with number and the specific title text. It is omitted, if there is no specific title text. \begin{dispExample} @@ -706,91 +706,140 @@ created by hand or using \refCom{newtcbtheorem}. \end{docTcbKey} \clearpage -\begin{docTcbKey}{ams align upper}{}{style, no value} +\begin{docTcbKeys}[ + doc parameter = , + doc description = {style, no value}, + ] + { + { + doc name = ams align upper, + }, + { + doc name = ams align, + doc updated = 2024-06-27, + } + } Adds an |amsmath| |align| environment to the start and end of the upper part. -\end{docTcbKey} - -\begin{docTcbKey}{ams align lower}{}{style, no value} - Adds an |amsmath| |align| environment to the start and end - of the lower part. -\end{docTcbKey} - -\begin{docTcbKey}{ams align}{}{style, no value} - Adds an |amsmath| |align| environment to the start and end - of the upper \emph{and} lower part. \begin{dispExample} \begin{tcolorbox}[ams align,colback=yellow!10!white,colframe=red!50!black] \sum\limits_{n=1}^{\infty} \frac{1}{n} &= \infty.\\ \int x^2 ~\text{d}x &= \frac13 x^3 + c. \end{tcolorbox} \end{dispExample} -\end{docTcbKey} - -\begin{docTcbKey}{ams align* upper}{}{style, no value} - Adds an |amsmath| |align*| environment to the start and end - of the upper part. -\end{docTcbKey} +\begin{marker} + Boxes with \refKey{/tcb/ams align upper} or \refKey{/tcb/ams align} + cannot have a lower part! + For a lower part, use \refKey{/tcb/ams nodisplayskip upper} instead. +\end{marker} +\end{docTcbKeys} -\begin{docTcbKey}{ams align* lower}{}{style, no value} - Adds an |amsmath| |align*| environment to the start and end +\begin{docTcbKey}{ams align lower}{}{style, no value} + Adds an |amsmath| |align| environment to the start and end of the lower part. \end{docTcbKey} -\begin{docTcbKey}{ams align*}{}{style, no value} + +\begin{docTcbKeys}[ + doc parameter = , + doc description = {style, no value}, + ] + { + { + doc name = ams align* upper, + }, + { + doc name = ams align*, + doc updated = 2024-06-27, + } + } Adds an |amsmath| |align*| environment to the start and end - of the upper \emph{and} lower part. + of the upper part. \begin{dispExample} \begin{tcolorbox}[ams align*,colback=yellow!10!white,colframe=red!50!black] \sum\limits_{n=1}^{\infty} \frac{1}{n} &= \infty.\\ \int x^2 ~\text{d}x &= \frac13 x^3 + c. \end{tcolorbox} \end{dispExample} -\end{docTcbKey} - -\clearpage -\begin{docTcbKey}{ams gather upper}{}{style, no value} - Adds an |amsmath| |gather| environment to the start and end - of the upper part. -\end{docTcbKey} +\begin{marker} + Boxes with \refKey{/tcb/ams align* upper} or \refKey{/tcb/ams align*} + cannot have a lower part! + For a lower part, use \refKey{/tcb/ams nodisplayskip upper} instead. +\end{marker} +\end{docTcbKeys} -\begin{docTcbKey}{ams gather lower}{}{style, no value} - Adds an |amsmath| |gather| environment to the start and end +\begin{docTcbKey}{ams align* lower}{}{style, no value} + Adds an |amsmath| |align*| environment to the start and end of the lower part. \end{docTcbKey} -\begin{docTcbKey}{ams gather}{}{style, no value} + +\clearpage +\begin{docTcbKeys}[ + doc parameter = , + doc description = {style, no value}, + ] + { + { + doc name = ams gather upper, + }, + { + doc name = ams gather, + doc updated = 2024-06-27, + } + } Adds an |amsmath| |gather| environment to the start and end - of the upper \emph{and} lower part. + of the upper part. \begin{dispExample} \begin{tcolorbox}[ams gather,colback=yellow!10!white,colframe=red!50!black] \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.\\ \int x^2 ~\text{d}x = \frac13 x^3 + c. \end{tcolorbox} \end{dispExample} -\end{docTcbKey} - -\begin{docTcbKey}{ams gather* upper}{}{style, no value} - Adds an |amsmath| |gather*| environment to the start and end - of the upper part. -\end{docTcbKey} +\begin{marker} + Boxes with \refKey{/tcb/ams gather upper} or \refKey{/tcb/ams gather} + cannot have a lower part! + For a lower part, use \refKey{/tcb/ams nodisplayskip upper} instead. +\end{marker} +\end{docTcbKeys} -\begin{docTcbKey}{ams gather* lower}{}{style, no value} - Adds an |amsmath| |gather*| environment to the start and end +\begin{docTcbKey}{ams gather lower}{}{style, no value} + Adds an |amsmath| |gather| environment to the start and end of the lower part. \end{docTcbKey} -\begin{docTcbKey}{ams gather*}{}{style, no value} +\begin{docTcbKeys}[ + doc parameter = , + doc description = {style, no value}, + ] + { + { + doc name = ams gather* upper, + }, + { + doc name = ams gather*, + doc updated = 2024-06-27, + } + } Adds an |amsmath| |gather*| environment to the start and end - of the upper \emph{and} lower part. + of the upper part. \begin{dispExample} \begin{tcolorbox}[ams gather*,colback=yellow!10!white,colframe=red!50!black] \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.\\ \int x^2 ~\text{d}x = \frac13 x^3 + c. \end{tcolorbox} \end{dispExample} -\end{docTcbKey} +\begin{marker} + Boxes with \refKey{/tcb/ams gather* upper} or \refKey{/tcb/ams gather*} + cannot have a lower part! + For a lower part, use \refKey{/tcb/ams nodisplayskip upper} instead. +\end{marker} +\end{docTcbKeys} +\begin{docTcbKey}{ams gather* lower}{}{style, no value} + Adds an |amsmath| |gather*| environment to the start and end + of the lower part. +\end{docTcbKey} \clearpage \begin{docTcbKey}{ams nodisplayskip upper}{}{style, no value} @@ -851,8 +900,8 @@ New colored mathematical environments are easily created using \clearpage \begin{docTcbKey}{theorem style}{=\meta{name}}{no default, initially |standard|} Applies a predefined style \meta{name} to the theorem environment. Some of -the feasible \meta{name} values resemble style names from the packages |theorem| -and |ntheorem| to give convenient access to known patterns. +the feasible \meta{name} values resemble style names from the packages \refPkg{theorem} +and \refPkg{ntheorem} to give convenient access to known patterns. \begin{marker} The styles alter \refKey{/tcb/separator sign}, \refKey{/tcb/description delimiters}, \refKey{/tcb/terminator sign}, and more. Therefore, one should apply such @@ -969,7 +1018,7 @@ identically colored. All following environments are numbered with a common counter, but this can be changed easily. Here, the counter output is supplemented by the subsection number. -Further, the |cleveref| package \cite{cubitt:2018a} is used for clever +Further, the \refPkg{cleveref} package \cite{cubitt:2018a} is used for clever references. \inputpreamblelisting{G} @@ -1159,8 +1208,8 @@ Let's try a more conservative approach: Instead of creating theorem environments with the methods described before, environments from other packages can be boxed with a |tcolorbox|. -Environments may be created e.g. by methods from the |theorem| package or -the |amsthm| package. \refCom{tcolorboxenvironment} can be used to put a box +Environments may be created e.g. by methods from the \refPkg{theorem} package or +the \refPkg{amsthm} package. \refCom{tcolorboxenvironment} can be used to put a box around these environments. \inputpreamblelisting{K} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex index 733c356d8e..8ea72010fe 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex @@ -140,7 +140,7 @@ is used internally. \enlargethispage*{1cm} -\begin{vigTcbKey}[][doc new=2016-04-22]{inside node}{=\meta{name}}{style, initally unset} +\begin{vigTcbKey}[][doc new=2016-04-22]{inside node}{=\meta{name}}{style, initially unset} Places the \refCom{tcbvignette} inside the node with the given \meta{name}. The outer limits of the \emph{vignette} are adapted to the node geometry. \begin{dispExample*}{sbs,righthand width=3cm,center lower} @@ -154,7 +154,7 @@ is used internally. \clearpage -\begin{vigTcbKey}[][doc new=2016-04-22]{outside node}{=\meta{name}}{style, initally unset} +\begin{vigTcbKey}[][doc new=2016-04-22]{outside node}{=\meta{name}}{style, initially unset} Places the \refCom{tcbvignette} outside the node with the given \meta{name}. The inner limits of the \emph{vignette} are adapted to the node geometry. \begin{dispExample*}{sbs,righthand width=3cm,center lower} @@ -167,7 +167,7 @@ is used internally. \end{vigTcbKey} -\begin{vigTcbKey}[][doc new=2016-04-22]{over node}{=\meta{name}}{style, initally unset} +\begin{vigTcbKey}[][doc new=2016-04-22]{over node}{=\meta{name}}{style, initially unset} Places the \refCom{tcbvignette} over the node with the given \meta{name}. The outer limits of the \emph{vignette} are adapted to the node geometry, but are shifted to the outside by \refKey{/tcb/vig/over node offset}. diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.xparse.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.xparse.tex index 280d91bd56..cbe8dbaba6 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.xparse.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.xparse.tex @@ -7,14 +7,14 @@ The library is loaded by a package option or inside the preamble by: \begin{dispListing} \tcbuselibrary{xparse} \end{dispListing} -This loads the package |xparse| \cite{latexproject:xparse}. +This loads the package \refPkg{xparse} \cite{latexproject:xparse}. Note that up to version 5.0.2 this library contained code which -needed the |xparse| package. Since nowadays this package has become +needed the \refPkg{xparse} package. Since nowadays this package has become basically a part of the \LaTeX\ kernel, the code of the library was migrated to other parts of the |tcolorbox| package. So, the remaining library is nearly a stub which only loads |xparse|. Instead of including the |xparse| library, it is recommended to include the -|xparse| package directly, \textbf{if really needed} (the \LaTeX\ kernel contains +\refPkg{xparse} package directly, \textbf{if really needed} (the \LaTeX\ kernel contains essentially everything needed). The library is kept for compatibility. diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.pdf b/macros/latex/contrib/tcolorbox/tcolorbox.pdf Binary files differindex a7499395e4..a961290073 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.pdf +++ b/macros/latex/contrib/tcolorbox/tcolorbox.pdf diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.sty b/macros/latex/contrib/tcolorbox/tcolorbox.sty index be2dc7e19b..6815ef0159 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.sty +++ b/macros/latex/contrib/tcolorbox/tcolorbox.sty @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcolorbox.sty: Text color boxes %% %% ------------------------------------------------------------------------------------------- @@ -17,11 +17,12 @@ %% %% This work consists of all files listed in README %% -\NeedsTeXFormat{LaTeX2e}[2021-11-15] -\ProvidesPackage{tcolorbox}[2024/01/10 version 6.2.0 text color boxes] -\def\tcb@version{6.2.0} +\NeedsTeXFormat{LaTeX2e}[2023-11-01] +\ProvidesPackage{tcolorbox}[2024/10/22 version 6.4.1 text color boxes] +\def\tcb@version{6.4.1} -\RequirePackage{pgf}[2008/01/15] +%\RequirePackage{pgf}[2008/01/15] +\RequirePackage{tikz}[2023/01/15] \RequirePackage{verbatim}[2003/08/22] \RequirePackage{environ}[2013/04/01] \RequirePackage{etoolbox}[2011/01/03] @@ -57,6 +58,7 @@ \ExplSyntaxOn \bool_new:N \l__tcobox_prevent_init_overwrite_bool +\bool_new:N \l__tcobox_savebox_construction_bool \box_new:N \l__tcobox_tmpa_box \dim_new:N \l__tcobox_tmpa_dim \fp_new:N \l__tcobox_tmpa_fp @@ -71,7 +73,9 @@ \def\tcb@info#1{\PackageInfo{tcolorbox}{#1}} \def\tcb@warning#1{\PackageWarning{tcolorbox}{#1}} \def\tcb@error#1#2{\PackageError{tcolorbox}{#1}{#2}} - +\def\tcb@warning@deprecatedkey#1{% + \tcb@warning{`\pgfkeyscurrentkey' key is deprecated hence ignored since #1.}% +} % key management \pgfkeys{/tcb/.is family} @@ -561,7 +565,6 @@ toggle left and right/evenpage/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@evenpage\tcbset{check odd page}}, toggle left and right/forced/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@forced}, toggle left and right/.default=evenpage, - graphical environment/.store in=\kvtcb@graphenv, % frame engine/.is choice, frame engine/standard/.style={frame code=\tcb@drawframe@standard}, @@ -930,6 +933,11 @@ } +\bool_new:N \g__tcobox_cleveref_loaded_bool +\AddToHook{package/cleveref/after} + { \bool_gset_true:N \g__tcobox_cleveref_loaded_bool } + + \cs_new:Npn \__tcobox_label_label:n #1 { \quark_if_nil:NTF \l__tcobox_kv_labeltype_tl @@ -937,16 +945,12 @@ \label{#1} } { - \exp_last_unbraced:NNV \label[\l__tcobox_kv_labeltype_tl]{#1} - } - } - - -\cs_new_protected:Npn \__tcobox_zcsetup_reftype:n #1 - { - \cs_if_exist:NT \zcsetup - { - \zcsetup { reftype={#1} } + \group_begin: + \exp_args:NV \__tcobox_zcsetup_reftype:n \l__tcobox_kv_labeltype_tl + \bool_if:NTF \g__tcobox_cleveref_loaded_bool + { \exp_last_unbraced:NNV \label[\l__tcobox_kv_labeltype_tl]{#1} } + { \label{#1} } + \group_end: } } @@ -966,6 +970,15 @@ } +\cs_new_protected:Npn \__tcobox_zcsetup_reftype:n #1 + { + \cs_if_exist:NT \zcsetup + { + \zcsetup { reftype={#1} } + } + } + + \tcbset { label /.style = { phantom={\__tcobox_label:n{#1}} }, @@ -1003,22 +1016,13 @@ IfBooleanF/.code~n~args={2}{\IfBooleanF{#1}{\pgfkeysalso{#2}}}, } -\IfFormatAtLeastTF{2023-06-01} - { - \def\tcb@set@parbox@indent@{ - \exp_args:Nne \hook_gput_next_code:nn {para/begin} - { \__tcobox_set_parbox_indent:n { \thetcolorboxnumber } } - \let\tcb@set@parbox@indent\@empty - } - } - { - % Note: To be removed in future - \def\tcb@set@parbox@indent@{ - \vspace{-\parskip} - \noindent - \let\tcb@set@parbox@indent\@empty - } - } + +\def\tcb@set@parbox@indent@{ + \exp_args:Nne \hook_gput_next_code:nn {para/begin} + { \__tcobox_set_parbox_indent:n { \thetcolorboxnumber } } + \let\tcb@set@parbox@indent\@empty +} + \cs_new_protected:Npn \__tcobox_set_parbox_indent:n #1 { @@ -1027,12 +1031,20 @@ { \int_compare_p:nNn { #1 } = { \thetcolorboxnumber } } % and if inside a "tcb@savebox" env (upper or lower part is non-empty), % hence not at the time of using saved \tcb@upperbox or \tcb@lowerbox - { \cs_if_exist_p:N \tcbbreak } + { \l__tcobox_savebox_construction_bool } { \OmitIndent } } + +\def\tcb@set@savebox@construction@true + { + \bool_set_true:N \l__tcobox_savebox_construction_bool + } +\bool_set_false:N \l__tcobox_savebox_construction_bool + + \ExplSyntaxOff \def\tcb@parbox@true@indent{}% @@ -1045,6 +1057,7 @@ \let\tcb@parboxrestore=\@parboxrestore \def\tcb@parbox@false@settings{% + \@nobreakfalse% \let\par\@@par% \linewidth\hsize% \@totalleftmargin\z@% @@ -1082,6 +1095,7 @@ \reserved@a \@endpefalse% \global\@newlistfalse% + \tcb@set@savebox@construction@true% \let\tcbbreak\@@par% \csname tcb@parbox@use@\kvtcb@parbox\endcsname% \tcb@minipage{#2}% @@ -1100,7 +1114,7 @@ % counter for float -\AtBeginDocument{% +\AtBeginDocument[tcolorbox]{% \@ifundefined{c@float@type}% {\edef\ftype@tcbfloat{\ifx\c@figure\@undefined 1\else 4\fi}}% {\edef\ftype@tcbfloat{\the\c@float@type}% @@ -1591,7 +1605,7 @@ \fi% }{% \csxdef{tcb@ehg@current@\tcb@ehgid}{#1}% - \begingroup\edef\x{\endgroup\noexpand\AtEndDocument{\noexpand\tcb@saveehg{\tcb@ehgid}}}\x% + \begingroup\edef\x{\endgroup\noexpand\AtEndDocument[tcolorbox]{\noexpand\tcb@saveehg{\tcb@ehgid}}}\x% }% } @@ -2025,17 +2039,44 @@ \fi% } -\def\tcb@drawing@env@begin{% - \csname tcb@before@\tcb@split@state\endcsname% - \begin{\kvtcb@graphenv}% - \tcb@bbdraw% - \tcb@apply@graph@patches% -} -\def\tcb@drawing@env@end{% - \end{\kvtcb@graphenv}% - \csname tcb@after@\tcb@split@state\endcsname% -} +\let\tcb@tikz@option@hook\@empty +\let\tcb@tikz@begin@hook\@empty +\let\tcb@tikz@end@hook\@empty + +\ExplSyntaxOn + +\exp_args_generate:n {nNo} + +\NewSocket{tagsupport/tcb/drawing/begin}{0} +\NewSocket{tagsupport/tcb/drawing/end}{0} +\NewSocketPlug{tagsupport/tcb/drawing/begin}{suspend} + {\tag_mc_end_push:\tag_mc_begin:n{artifact}} +\NewSocketPlug{tagsupport/tcb/drawing/end}{resume} + {\tag_mc_end:\tag_mc_begin_pop:n{}} +\AssignSocketPlug{tagsupport/tcb/drawing/begin}{suspend} +\AssignSocketPlug{tagsupport/tcb/drawing/end}{resume} + +\NewDocumentEnvironment{ tcb@drawing }{ } + { + \use:c{ tcb@before@\tcb@split@state } + \exp_args:NnNo \begin{tikzpicture}[\tcb@tikz@option@hook] + \UseTaggingSocket{tcb/drawing/begin} + \SuspendTagging{tcb/drawing} + \tcb@tikz@begin@hook + \tcb@bbdraw + \tcb@apply@graph@patches + } + { + \tcb@tikz@end@hook + \ResumeTagging{tcb/drawing} + \UseTaggingSocket{tcb/drawing/end} + \end{tikzpicture} + \use:c{ tcb@after@\tcb@split@state } + } + +\ExplSyntaxOff + \def\tcb@set@normal@unbroken@beforeafter{% \let\tcb@before@unbroken=\kvtcb@beforebox% @@ -2077,7 +2118,8 @@ \tcb@ch% \tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}% \tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}% - \tcb@drawing@env@begin% + \begin{tcb@drawing}% + %\tcb@drawing@env@begin% \pgfsetbaseline{\the\dimexpr\kvtcb@baseline-\kvtcb@bbbottom\relax}% \tcb@extensions@preframe% % draw frame and interior @@ -2097,7 +2139,8 @@ \tcb@tdraw@upper% \iftcb@hasLower\tcb@tdraw@lower\fi% \tcb@extensions@final% - \tcb@drawing@env@end% + %\tcb@drawing@env@end% + \end{tcb@drawing}% } \let\tcb@drawcolorbox@standalone=\tcb@drawcolorbox @@ -2255,6 +2298,9 @@ } \def\tcb@proc@counter@auto#1{% + \ifcsdef{c@tcb@cnt@#1} + {\tcb@error{Auto counter for environment '#1' already defined}{}} + {}% \newcounter{tcb@cnt@#1}% \csxdef{tcb@cnt@#1}{tcb@cnt@#1}% \tcb@proc@counter@autoanduse{#1}% @@ -2297,6 +2343,33 @@ \ExplSyntaxOn +\prg_new_conditional:Npnn \__tcobox_if_single_cs:n #1 { p, TF } + { + \bool_lazy_and:nnTF + { \tl_if_single_p:n { #1 } } + { \token_if_cs_p:N #1 } + { \prg_return_true: } + { \prg_return_false: } + } + +\msg_new:nnn { tcolorbox } { invalid-box-name } + { + Invalid~box~name~`` \tl_to_str:n {#1} ''.~ + A~single~command~is~expected~after~space~trimming.~ + I'll~drop~this~box~definition. + } + +\cs_new:Npn \__tcobox_set_backslash_removed:Nn #1#2 + { + \__tcobox_if_single_cs:nTF { #2 } + { + \tl_set:Ne #1 { \exp_last_unbraced:Ne \cs_to_str:N { \tl_trim_spaces:n { #2 } } } + } + { + \msg_error:nnn { tcolorbox } { invalid-box-name } { #2 } + } + } + \cs_new:Npn \__tcobox_process_newtcolorbox:nn #1#2 { \bool_lazy_and:nnF @@ -2312,14 +2385,6 @@ } -\cs_new:Npn \__tcobox_set_backslash_removed:Nn #1#2 - { - \tl_set:Nn #1 { #2 } - \tl_trim_spaces:N #1 - \tl_set:Ne #1 { \exp_last_unbraced:NV \cs_to_str:N #1 } - } - - \NewDocumentCommand \__tcobox_new_tcolorbox:w { m +O{} >{\TrimSpaces} m o +o +m } { \__tcobox_process_newtcolorbox:nn { #2 }{ #3 } @@ -2505,28 +2570,36 @@ \__tcobox_new_TotalTCBox:w \ProvideDocumentCommand } +\NewDocumentCommand \tcolorboxenvironment { m +m } + { + \hook_gput_code:nnn{ env/#1/before }{ tcolorbox } + { + \begin{tcolorbox} + [{ + savedelimiter = {#1}, + #2, + wrap@environment, + code = \def\tcb@end@tcolorboxenvironment{\end{tcolorbox}} + }] + } + \hook_gput_code:nnn{ env/#1/after }{ tcolorbox } + { + \tcb@end@tcolorboxenvironment + } + } -\ExplSyntaxOff - - -\newcommand{\tcolorboxenvironment}[2]{% - \AddToHook{env/#1/before}{% - \begin{tcolorbox}[{savedelimiter={#1},#2,wrap@environment,% - code={\def\tcb@end@tcolorboxenvironment{\end{tcolorbox}}}}]% - }% - \AddToHook{env/#1/after}{% - \tcb@end@tcolorboxenvironment% - }% -} +\DeclareTotalTCBox{ \tcboxverb }{ O{} v }{ verbatim,#1 }{ #2 } -\DeclareTotalTCBox{\tcboxverb}{ O{} v }{verbatim,#1}{#2} +\DeclareTotalTColorBox{ \tcbsidebyside }{ +O{} +m +m } + { + code = \long\def\tcb@sbs@text@left{#2}\long\def\tcb@sbs@text@right{#3}, + #1, + sidebyside, + sidebyside@switch, + sidebyside@adapt@process + }{ \tcb@sbs@content } -\DeclareTotalTColorBox{\tcbsidebyside}{ +O{} +m +m }{% - code={\long\def\tcb@sbs@text@left{#2}\long\def\tcb@sbs@text@right{#3}},% - #1,% - sidebyside,% - sidebyside@switch,sidebyside@adapt@process% -}{\tcb@sbs@content} +\ExplSyntaxOff \def\tcb@addcontentsline#1#2{% @@ -2740,7 +2813,7 @@ \tcb@new@skin{standard}{frame engine=standard,interior titled engine=standard, interior engine=standard,segmentation engine=standard,title engine=standard, - graphical environment=pgfpicture,geometry nodes=false, + geometry nodes=false, set@extensions@preframe=,set@extensions@postframe={\tcb@apply@overlay},set@extensions@final=,% set@outerboundary=\tcb@boundaryframe@standard,% shape@of@skin=unbroken, @@ -2867,3 +2940,8 @@ \ProcessOptions* \begingroup\edef\x{\endgroup\noexpand\tcbuselibrary{\tcb@optionlist}}\x + +% deprecated +\tcbset{ + graphical environment/.code = {\tcb@warning@deprecatedkey{v6.3.0 (2024/07/10)}}, +} diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.tex b/macros/latex/contrib/tcolorbox/tcolorbox.tex index b7c1742391..9c5f8e6b11 100644 --- a/macros/latex/contrib/tcolorbox/tcolorbox.tex +++ b/macros/latex/contrib/tcolorbox/tcolorbox.tex @@ -1,5 +1,5 @@ % \LaTeX-Main\ -%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) +%% The LaTeX package tcolorbox - version 6.4.1 (2024/10/22) %% tcolorbox.tex: Manual %% %% ------------------------------------------------------------------------------------------- @@ -25,6 +25,18 @@ % arara: pdflatex: { shell: yes, synctex: yes } % arara: pdflatex: { shell: yes, synctex: yes } % +%\DocumentMetadata{ +% lang = en, +% pdfversion = 2.0, +% pdfstandard = ua-2, +% pdfstandard = a-4f, +% testphase = +% { +% phase-III, +% firstaid +% }, +% %uncompress, +%} \PassOptionsToPackage{pdftex,bookmarks,raiselinks,pageanchor,hyperindex,colorlinks,pdfusetitle,pdfpagelabels}{hyperref} \documentclass[a4paper,11pt]{ltxdoc} @@ -51,8 +63,8 @@ \setlength{\bibitemsep}{\smallskipamount} \addbibresource{tcolorbox.doc.bib} -\def\version{6.2.0}% -\def\datum{2024/01/10}% +\def\version{6.4.1}% +\def\datum{2024/10/22}% \makeindex \hypersetup{ @@ -68,7 +80,7 @@ %\geometry{showframe} %\tcbset{draftmode} \tcbset{/tcb/external/-}% for final run -%\includeonly{tcolorbox.doc.initoptions,tcolorbox.doc.index} +%\includeonly{tcolorbox.doc.coreoptions} %\hypersetup{colorlinks=false} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |