summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/tcolorbox
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-04-29 03:03:01 +0000
committerNorbert Preining <norbert@preining.info>2020-04-29 03:03:01 +0000
commit817ecb96eab4ed6494ddb6b8d0f17c2947a91196 (patch)
treee224845d8908ce3e353eee67b768525a2f65097a /macros/latex/contrib/tcolorbox
parent7f8fffa1c8b5b30f8e2a9fd4b76778147dbb9128 (diff)
CTAN sync 202004290303
Diffstat (limited to 'macros/latex/contrib/tcolorbox')
-rw-r--r--macros/latex/contrib/tcolorbox/CHANGES34
-rw-r--r--macros/latex/contrib/tcolorbox/README4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbbreakable.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex659
-rw-r--r--macros/latex/contrib/tcolorbox/tcbexternal.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbfitting.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbhooks.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcblistings.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcblistingscore.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex19
-rw-r--r--macros/latex/contrib/tcolorbox/tcbmagazine.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbminted.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbposter.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbprocessing.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbraster.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbskins.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbtheorems.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbvignette.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcbxparse.code.tex6
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdfbin273844 -> 273848 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example.pdfbin457482 -> 457493 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example.tex7
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdfbin442454 -> 442583 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.abstract.tex3
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.beamer.tex1
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.bib118
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex8
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex13
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex1111
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex48
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex51
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.hooks.tex2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex3
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.intro.tex21
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex35
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex18
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty65
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex18
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex9
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.pdfbin7054767 -> 7151414 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.sty29
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.tex22
45 files changed, 1692 insertions, 710 deletions
diff --git a/macros/latex/contrib/tcolorbox/CHANGES b/macros/latex/contrib/tcolorbox/CHANGES
index 2a1b6dfb15..0d3fa0e696 100644
--- a/macros/latex/contrib/tcolorbox/CHANGES
+++ b/macros/latex/contrib/tcolorbox/CHANGES
@@ -1,7 +1,7 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -1114,3 +1114,33 @@ version 4.22 (2019/11/15)
'raster before skip' and 'raster after skip' did not accept glue anymore.
- new initialization option (#80): 'reset counter on overlays'
+version 4.30 (2020/04/28)
+- bug fix (#88): 'parskip' and 'noparskip' had side-effects for the box content
+ in combination with 'height fill' and 'parbox=false'
+- bug fix (#90) in library 'documentation':
+ initialize 'doc description' for every docXXX to be empty
+- Internal box counter renamed to remove warnings when using \includeonly
+- library 'documentation':
+ * major code overhaul to support simultaneous documentation of
+ similar commands, environments, keys, path operations (#89).
+ * Note that the new code reserves a small additional amount of vertical space
+ for documented macros which may result in changed page breaks.
+ * Note that documentation heads are now embedded inside a 'raster'
+ which requires other customizations for vertical space (if needed)
+ * new macros and environments: 'docCommands', 'docEnvironments',
+ 'docKeys', '\tcbmakedocSubKeys', 'docPathOperations'
+ * new options: 'doc index' (#91), 'doc name', 'doc parameter',
+ 'doc keypath', 'doc sort index', 'doc no index',
+ 'doc raster command', 'doc raster environment', 'doc raster key',
+ 'doc raster path', 'doc raster'
+ * additional option setting for: '\docAuxCommand', '\docAuxEnvironment',
+ '\docAuxKey', '\docValue', '\docColor', '\docCounter', '\docLength'
+ * superfluous and undocumented opton 'color frame' removed (#94)
+ * '\refAux' and '\refAuxcs' are not longer colored, if colorlinks=false (#95)
+- library 'listingsutf8':
+ safeguard against compiling with other engines than pdf(la)tex (#92)
+- library 'fitting':
+ '\tcbfitdim' is described in more detail (#96)
+- library 'poster':
+ poster width and height caveats described in more detail (#98)
+
diff --git a/macros/latex/contrib/tcolorbox/README b/macros/latex/contrib/tcolorbox/README
index a16ef87400..bf06996dfa 100644
--- a/macros/latex/contrib/tcolorbox/README
+++ b/macros/latex/contrib/tcolorbox/README
@@ -1,7 +1,7 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex b/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex
index f32bef367e..0a3145d215 100644
--- a/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbbreakable.code.tex: Code for breakable colorboxes
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\let\tcb@parboxrestore@true=\tcb@parboxrestore
\let\tcb@parboxrestore@false\tcb@parbox@false@settings
diff --git a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex
index 79f32da93e..49c70baefb 100644
--- a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbdocumentation.code.tex: Code for LaTeX documentations
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,9 +17,9 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
-\tcbuselibrary{listings,skins,xparse,external}
+\tcbuselibrary{listings,skins,xparse,external,raster}
\RequirePackage{pifont}[2005/04/12]
\RequirePackage{marvosym}[2011/07/20]
@@ -83,9 +83,7 @@
{\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}}
\def\oarg#1{%
\colOpt{{\ttfamily[}\meta{#1}{\ttfamily]}}}
-
-\newrobustcmd\tcb@cs[1]{{\catcode`\_=12\relax\catcode`\@11\relax\ttfamily\char`\\\scantokens{#1}\unskip}}
-\newrobustcmd\tcb@scantokens[1]{{\catcode`\_=12\relax\catcode`\@11\relax\ttfamily\scantokens{#1}\unskip}}
+\def\brackets#1{{\ttfamily\char`\{}#1{\ttfamily\char`\}}}
\newif\iftcb@doc@toindex
\newif\iftcb@doc@colorize
@@ -135,7 +133,6 @@
color value={#1},color color={#1},color counter={#1},color length={#1}, color path={#1}},
color option/.store in=\kvtcb@col@opt,
color hyperlink/.store in=\kvtcb@colhyper,
- color frame/.store in=\kvtcb@colhyper,
index actual/.store in=\idx@actual,
index quote/.store in=\idx@quote,
index level/.store in=\idx@level,
@@ -154,7 +151,21 @@
doc head path/.style={doc@head@path/.style={#1}},
doc head/.style={doc head command={#1},doc head environment={#1},doc head key={#1},
doc head path={#1}},
+ doc raster command/.style={doc@raster@command/.style={#1}},
+ doc raster environment/.style={doc@raster@environment/.style={#1}},
+ doc raster key/.style={doc@raster@key/.style={#1}},
+ doc raster path/.style={doc@raster@path/.style={#1}},
+ doc raster/.style={doc raster command={#1},doc raster environment={#1},doc raster key={#1},
+ doc raster path={#1}},
doc label/.store in=\kvtcb@doc@label,
+ doc index/.store in=\kvtcb@doc@index,
+ doc sort index/.store in=\kvtcb@doc@sortindex,
+ doc@name/.store in=\kvtcb@doc@name,
+ doc parameter/.store in=\kvtcb@doc@parameter,
+ doc name/.style={doc@name={#1},doc label={#1},doc index={#1},doc sort index={#1}},
+ doc keypath/.store in=\kvtcb@doc@keypath,
+ doc@sub@keypath/.style={doc keypath/.code={
+ \ifblank{##1}{\def\kvtcb@doc@keypath{#1}}{\def\kvtcb@doc@keypath{#1/##1}}}},
before doc body command/.store in=\kvtcb@doc@body@command@before,
after doc body command/.store in=\kvtcb@doc@body@command@after,
before doc body environment/.store in=\kvtcb@doc@body@environment@before,
@@ -169,6 +180,7 @@
,after doc body key={#1},after doc body path={#1}},
doc description/.store in=\kvtcb@doc@description,%
doc into index/.is if=tcb@doc@toindex,%
+ doc no index/.style={doc into index=false},
doc updated/.style={before upper={\tcbdocmarginnote{\tcbdocupdated{#1}}}},
doc new/.style={before upper={\tcbdocmarginnote{\tcbdocnew{#1}}}},
doc new and updated/.style 2 args={before upper={\tcbdocmarginnote{\tcbdocnew{#1}\\\tcbdocupdated{#2}}}},
@@ -263,47 +275,28 @@
}
\newrobustcmd{\tcbIndexPrintComC}[1]{\tcb@Index@Print@ComC{#1}{\kvtcb@col@command}}
-\def\tcb@Print@Com#1{\textcolor{\kvtcb@col@command}{\tcb@doc@bfseries\tcb@cs{#1}}}
\newrobustcmd{\tcbIndexPrintEnvCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@environment}{\kvtcb@text@env}}
\newrobustcmd{\tcbIndexPrintEnvC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@environment}}
-\def\tcb@Print@Env#1{\textcolor{\kvtcb@col@environment}{\tcb@doc@bfseries\tcb@scantokens{#1}}}
\newrobustcmd{\tcbIndexPrintKeyCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@key}{\kvtcb@text@key}}
\newrobustcmd{\tcbIndexPrintKeyC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@key}}
-\def\tcb@Print@Key#1{\textcolor{\kvtcb@col@key}{\tcb@doc@bfseries\tcb@scantokens{#1}}}
\newrobustcmd{\tcbIndexPrintPathCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@path}{\kvtcb@text@path}}
\newrobustcmd{\tcbIndexPrintPathC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@path}}
-\def\tcb@Print@Path#1{\textcolor{\kvtcb@col@path}{\tcb@doc@bfseries\tcb@scantokens{#1}}}
\newrobustcmd{\tcbIndexPrintValCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@value}{\kvtcb@text@value}}
\newrobustcmd{\tcbIndexPrintValC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@value}}
-\def\tcb@Print@Val#1{\textcolor{\kvtcb@col@value}{\tcb@doc@bfseries\tcb@scantokens{#1}}}
\newrobustcmd{\tcbIndexPrintColCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@color}{\kvtcb@text@color}}
\newrobustcmd{\tcbIndexPrintColC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@color}}
-\def\tcb@Print@Col#1{\textcolor{\kvtcb@col@color}{\tcb@doc@bfseries\tcb@scantokens{#1}}}
\newrobustcmd{\tcbIndexPrintCountCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@counter}{\kvtcb@text@counter}}
\newrobustcmd{\tcbIndexPrintCountC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@counter}}
-\def\tcb@Print@Count#1{\textcolor{\kvtcb@col@counter}{\tcb@doc@bfseries\tcb@scantokens{#1}}}
\newrobustcmd{\tcbIndexPrintLenCA}[1]{\tcb@Index@Print@ComCA{#1}{\kvtcb@col@length}{\kvtcb@text@length}}
\newrobustcmd{\tcbIndexPrintLenC}[1]{\tcb@Index@Print@ComC{#1}{\kvtcb@col@length}}
-\def\tcb@Print@Len#1{\textcolor{\kvtcb@col@length}{\tcb@doc@bfseries\tcb@cs{#1}}}
-
-\def\tcb@index@Com#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintComC{#1}}\fi}
-\def\tcb@index@Env#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintEnvCA{#1}}\kvtcb@index@command{\kvtcb@text@envs\idx@level#1\idx@actual\tcbIndexPrintEnvC{#1}}\fi}
-\def\tcb@index@Key#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintKeyCA{#1}}\kvtcb@index@command{\kvtcb@text@keys\idx@level#1\idx@actual\tcbIndexPrintKeyC{#1}}\fi}%
-\def\tcb@index@KeyPath#1#2{\iftcb@doc@toindex\kvtcb@index@command{#2\idx@actual\tcbIndexPrintKeyCA{#2}}\kvtcb@index@command{\kvtcb@text@keys\idx@level#1\idx@actual\tcbIndexPrintKeyC{/#1/}\idx@level#2\idx@actual\tcbIndexPrintKeyC{#2}}\fi}%
-\def\tcb@index@Path#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintPathCA{#1}}\kvtcb@index@command{\kvtcb@text@paths\idx@level#1\idx@actual\tcbIndexPrintPathC{#1}}\fi}
-\def\tcb@index@Val#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintValCA{#1}}\kvtcb@index@command{\kvtcb@text@values\idx@level#1\idx@actual\tcbIndexPrintValC{#1}}\fi}
-\def\tcb@index@Col#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintColCA{#1}}\kvtcb@index@command{\kvtcb@text@colors\idx@level#1\idx@actual\tcbIndexPrintColC{#1}}\fi}
-\def\tcb@index@Count#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintCountCA{#1}}\kvtcb@index@command{\kvtcb@text@counters\idx@level#1\idx@actual\tcbIndexPrintCountC{#1}}\fi}
-\def\tcb@index@Len#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintLenCA{#1}}\kvtcb@index@command{\kvtcb@text@lengths\idx@level#1\idx@actual\tcbIndexPrintLenC{#1}}\fi}
-\def\brackets#1{{\ttfamily\char`\{}#1{\ttfamily\char`\}}}
\newenvironment{tcb@manual@entry}{\begin{list}{}{%
\setlength{\leftmargin}{\kvtcb@doc@left}%
@@ -313,121 +306,506 @@
\setlength{\rightmargin}{\kvtcb@doc@right}%
}\item}{\end{list}}
-\def\tcb@manual@top#1{\itemsep=0pt\parskip=0pt\item\strut{#1}\par\topsep=0pt}
-
\def\tcb@doc@do@description{%
- \ifx\kvtcb@doc@description\@empty\else\tcblower\raggedleft(\kvtcb@doc@description)\fi%
+ \ifx\kvtcb@doc@description\@empty\else\tcblower\raggedleft\strut(\kvtcb@doc@description)\strut\fi%
}
\newtcolorbox{tcb@doc@head}[1]{blank,colback=white,colframe=white,
code={\tcbdimto\tcb@temp@grow@left{-\kvtcb@doc@indentleft}%
\tcbdimto\tcb@temp@grow@right{-\kvtcb@doc@indentright}},
- grow to left by=\tcb@temp@grow@left,%
+ grow to left by=\tcb@temp@grow@left,
grow to right by=\tcb@temp@grow@right,
sidebyside,sidebyside align=top,
sidebyside gap=-\tcb@w@upper@real,
- phantom=\phantomsection,%
- enlarge bottom by=-0.2\baselineskip,#1}
+ phantom=\phantomsection,#1}
-% main documentation environments
-\newenvironment{docCommand}[3][]{\tcbset{doc label={#2},#1}%
- \begin{tcb@manual@entry}%
- \begin{tcb@doc@head}{doc@head@command}%
- \tcb@Print@Com{#2}\tcb@index@Com{#2}\protected@edef\@currentlabel{\noexpand\tcb@cs{#2}}\label{com:\kvtcb@doc@label}{\ttfamily #3}%
- \tcb@doc@do@description%
- \end{tcb@doc@head}\nobreak\tcbset{before upper=}\kvtcb@doc@body@command@before\ignorespaces}%
- {\ifvmode\else\unskip\fi\kvtcb@doc@body@command@after\end{tcb@manual@entry}}
-
-\newenvironment{docCommand*}{\bgroup\tcb@doc@toindexfalse\begin{docCommand}}{\end{docCommand}\egroup}
-
-\newenvironment{docEnvironment}[3][]{\tcbset{doc label={#2},#1}%
- \begin{tcb@manual@entry}%
- \begin{tcb@doc@head}{doc@head@environment}%
- \strut\cs{begin}\brackets{\tcb@Print@Env{#2}}\tcb@index@Env{#2}\protected@edef\@currentlabel{#2}\label{env:\kvtcb@doc@label}{\ttfamily #3}\par%
- \strut~~\meta{\kvtcb@text@envcontent}\par%
- \strut\cs{end}\brackets{\tcb@Print@Env{#2}}%
- \tcb@doc@do@description%
- \end{tcb@doc@head}\nobreak\tcbset{before upper=}\kvtcb@doc@body@environment@before\ignorespaces}%
- {\ifvmode\else\unskip\fi\kvtcb@doc@body@environment@after\end{tcb@manual@entry}}
-
-\newenvironment{docEnvironment*}{\bgroup\tcb@doc@toindexfalse\begin{docEnvironment}}{\end{docEnvironment}\egroup}
-
-\NewDocumentEnvironment{docKey}{ O{} +O{} m m +m }{\tcbset{doc label={#3},#2,doc description={#5}}%
- \begin{tcb@manual@entry}%
- \begin{tcb@doc@head}{doc@head@key}%
- \ifblank{#1}{%
- \tcb@Print@Key{#3}\tcb@index@Key{#3}\protected@edef\@currentlabel{#3}\label{key:\kvtcb@doc@label}{\ttfamily #4}%
- }{%
- \tcb@Print@Key{/#1/#3}%
- \tcb@index@KeyPath{#1}{#3}\protected@edef\@currentlabel{/#1/#3}\label{key:/#1/\kvtcb@doc@label}{\ttfamily #4}%
- }%
- \tcb@doc@do@description%
- \end{tcb@doc@head}\nobreak\tcbset{before upper=}\kvtcb@doc@body@key@before\ignorespaces}%
- {\ifvmode\else\unskip\fi\kvtcb@doc@body@key@after\end{tcb@manual@entry}}
-
-\newenvironment{docKey*}{\bgroup\tcb@doc@toindexfalse\begin{docKey}}{\end{docKey}\egroup}
-
-\def\tcbmakedocSubKey#1#2{%
- \NewDocumentEnvironment{#1}{ O{} +O{} m m +m }{%
- \ifblank{##1}{\def\tcb@key@path{#2}}{\def\tcb@key@path{#2/##1}}%
- \begin{docKey}[\tcb@key@path][##2]{##3}{##4}{##5}}%
- {\end{docKey}}%
- \newenvironment{#1*}{\bgroup\tcb@doc@toindexfalse\begin{#1}}{\end{#1}\egroup}%
-}
-\newenvironment{docPathOperation}[3][]{\tcbset{doc label={#2},#1}%
- \begin{tcb@manual@entry}%
- \begin{tcb@doc@head}{doc@head@path}%
- \colFade{\tcb@cs{path ...}}\
- \tcb@Print@Path{#2}\tcb@index@Path{#2}\protected@edef\@currentlabel{#2}\label{path:\kvtcb@doc@label}{\ttfamily #3}%
- \ \colFade{\tcb@scantokens{...;}}
- \tcb@doc@do@description%
- \end{tcb@doc@head}\nobreak\tcbset{before upper=}\kvtcb@doc@body@path@before\ignorespaces}%
- {\ifvmode\else\unskip\fi\kvtcb@doc@body@path@after\end{tcb@manual@entry}}
-
-\newenvironment{docPathOperation*}{\bgroup\tcb@doc@toindexfalse\begin{docPathOperation}}{\end{docPathOperation}\egroup}
-
-\DeclareDocumentCommand\docAuxCommand{sm}{%
- \tcb@Print@Com{#2}%
- \IfBooleanTF{#1}{}{\tcb@index@Com{#2}}%
-}
+\ExplSyntaxOn
-\DeclareDocumentCommand\docAuxEnvironment{sm}{%
- \tcb@Print@Env{#2}%
- \IfBooleanTF{#1}{}{\tcb@index@Env{#2}}%
-}
-\DeclareDocumentCommand\docAuxKey{sO{}m}{%
- \ifblank{#2}{%
- \tcb@Print@Key{#3}%
- \IfBooleanTF{#1}{}{\tcb@index@Key{#3}}%
- }{%
- \tcb@Print@Key{/#2/#3}%
- \IfBooleanTF{#1}{}{\tcb@index@KeyPath{#2}{#3}}%
-}}
+\cs_new_nopar:Npn \__tcobox_sanitize_tl:n #1
+ {
+ \group_begin:
+ \tl_rescan:nn
+ {
+ \char_set_catcode_letter:N \_
+ \char_set_catcode_letter:N \@
+ }
+ {
+ #1
+ }
+ \group_end:
+ }
+\cs_generate_variant:Nn \__tcobox_sanitize_tl:n { V }
-\DeclareDocumentCommand\docColor{sm}{%
- \tcb@Print@Col{#2}%
- \IfBooleanTF{#1}{}{\tcb@index@Col{#2}}%
-}
-\DeclareDocumentCommand\docCounter{sm}{%
- \tcb@Print@Count{#2}%
- \IfBooleanTF{#1}{}{\tcb@index@Count{#2}}%
-}
+\cs_new_nopar:Npn \__tcobox_print_docname:
+ {
+ \texttt{\tcb@doc@bfseries\__tcobox_sanitize_tl:V\kvtcb@doc@name}
+ }
-\DeclareDocumentCommand\docLength{sm}{%
- \tcb@Print@Len{#2}%
- \IfBooleanTF{#1}{}{\tcb@index@Len{#2}}%
-}
+\cs_new_nopar:Npn \__tcobox_print_cs_docname:
+ {
+ \texttt{\tcb@doc@bfseries\c_backslash_str\__tcobox_sanitize_tl:V\kvtcb@doc@name}
+ }
+
+
+\NewDocumentCommand \tcb@scantokens { m }
+ {
+ \texttt{\__tcobox_sanitize_tl:n{#1}}
+ }
+
+\NewDocumentCommand \tcb@cs { m }
+ {
+ \texttt{\c_backslash_str\__tcobox_sanitize_tl:n{#1}}
+ }
+
+
+% main documentation environments
+
+\seq_new:N \g__tcobox_label_seq
+
+
+\cs_new:Npn \__tcobox_doc_entry_begin:nnn #1#2#3
+ {
+ \tcbset{doc~name=, doc~parameter=, doc~description=, #1}
+ \begin{tcb@manual@entry}
+ \seq_clear:N \g__tcobox_label_seq
+ \begin{tcbraster}[raster~columns=1,raster~row~skip=0pt,
+ raster~after~skip=4.1pt,raster~force~size=false,doc@raster@#3]
+ \seq_set_from_clist:Nn \l_tmpa_seq {#2}
+ \seq_if_empty:NT \l_tmpa_seq
+ {
+ \seq_put_left:Nn \l_tmpa_seq {}
+ }
+ \seq_map_inline:Nn \l_tmpa_seq
+ {
+ \group_begin:
+ \tcbset{##1}
+ \begin{tcb@doc@head}{doc@head@#3}
+ \strut
+ \use:c { __tcobox_doc_head_#3: }
+ \strut
+ \end{tcb@doc@head}
+ \group_end:
+ }
+ \end{tcbraster}
+ \seq_clear:N \g__tcobox_label_seq
+ \nobreak
+ \tcbset{before~upper=}
+ \use:c { kvtcb@doc@body@#3@before }
+ \ignorespaces
+ }
+
+
+\cs_new:Npn \__tcobox_doc_entry_end:n #1
+ {
+ \ifvmode\else\unskip\fi
+ \use:c { kvtcb@doc@body@#1@after }
+ \end{tcb@manual@entry}
+ }
+
+
+\cs_new_nopar:Npn \__tcobox_print_command:
+ {
+ \textcolor{\kvtcb@col@command}{\__tcobox_print_cs_docname:}
+ }
+
+\cs_new_nopar:Npn \__tcobox_index_command:
+ {
+ \iftcb@doc@toindex
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintComC{\kvtcb@doc@index}}
+ \fi
+ }
+
+\cs_new:Npn \__tcobox_doc_head_command:
+ {
+ \__tcobox_print_command:
+ \__tcobox_index_command:
+ \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label
+ {
+ \protected@edef\@currentlabel{\noexpand\tcb@cs{\kvtcb@doc@name}}
+ \label{com:\kvtcb@doc@label}
+ \seq_gput_left:NV \g__tcobox_label_seq \kvtcb@doc@label
+ }
+ {\ttfamily\kvtcb@doc@parameter}
+ \tcb@doc@do@description
+ }
+
+
+\NewDocumentEnvironment{docCommands}{ +O{} +m }
+ {
+ \__tcobox_doc_entry_begin:nnn {#1}{#2}{command}
+ }
+ {
+ \__tcobox_doc_entry_end:n { command }
+ }
+
+
+\NewDocumentEnvironment{docCommand}{ +O{} m +m }
+ {
+ \__tcobox_doc_entry_begin:nnn {doc~name={#2},doc~parameter={#3},#1}{}{command}
+ }
+ {
+ \__tcobox_doc_entry_end:n { command }
+ }
+
+
+\NewDocumentEnvironment{docCommand*}{}
+ {
+ \group_begin:
+ \tcb@doc@toindexfalse
+ \begin{docCommand}
+ }
+ {
+ \end{docCommand}
+ \group_end:
+ }
+
+
+\cs_new_nopar:Npn \__tcobox_print_environment:
+ {
+ \textcolor{\kvtcb@col@environment}{\__tcobox_print_docname:}
+ }
+
+\cs_new_nopar:Npn \__tcobox_index_environment:
+ {
+ \iftcb@doc@toindex
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintEnvCA{\kvtcb@doc@index}}
+ \kvtcb@index@command{\kvtcb@text@envs\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintEnvC{\kvtcb@doc@index}}
+ \fi
+ }
+
+\cs_new:Npn \__tcobox_doc_head_environment:
+ {
+ \strut\cs{begin}\brackets{\__tcobox_print_environment:}
+ \__tcobox_index_environment:
+ \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label
+ {
+ \protected@edef\@currentlabel{\kvtcb@doc@name}
+ \label{env:\kvtcb@doc@label}
+ \seq_gput_left:NV \g__tcobox_label_seq \kvtcb@doc@label
+ }
+ {\ttfamily\kvtcb@doc@parameter}\par
+ \strut\nobreakspace\nobreakspace\meta{\kvtcb@text@envcontent}\par
+ \strut\cs{end}\brackets{\__tcobox_print_environment:}
+ \tcb@doc@do@description
+ }
+
+
+\NewDocumentEnvironment{docEnvironments}{ +O{} +m }
+ {
+ \__tcobox_doc_entry_begin:nnn {#1}{#2}{environment}
+ }
+ {
+ \__tcobox_doc_entry_end:n { environment }
+ }
+
+
+\NewDocumentEnvironment{docEnvironment}{ +O{} m +m }
+ {
+ \__tcobox_doc_entry_begin:nnn {doc~name={#2},doc~parameter={#3},#1}{}{environment}
+ }
+ {
+ \__tcobox_doc_entry_end:n { environment }
+ }
+
+
+\NewDocumentEnvironment{docEnvironment*}{}
+ {
+ \group_begin:
+ \tcb@doc@toindexfalse
+ \begin{docEnvironment}
+ }
+ {
+ \end{docEnvironment}
+ \group_end:
+ }
+
+
+\cs_new_nopar:Npn \__tcobox_print_key:
+ {
+ \textcolor{\kvtcb@col@key}{\tcb@doc@bfseries\ttfamily
+ \tl_if_empty:NF \kvtcb@doc@keypath
+ {
+ /\__tcobox_sanitize_tl:V\kvtcb@doc@keypath/
+ }
+ \__tcobox_sanitize_tl:V\kvtcb@doc@name}
+ }
+
+\cs_new_nopar:Npn \__tcobox_index_key:
+ {
+ \iftcb@doc@toindex
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintKeyCA{\kvtcb@doc@index}}
+ \tl_if_empty:NTF \kvtcb@doc@keypath
+ {
+ \kvtcb@index@command{\kvtcb@text@keys\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintKeyC{\kvtcb@doc@index}}
+ }
+ {
+ \kvtcb@index@command{\kvtcb@text@keys\idx@level\kvtcb@doc@keypath\idx@actual\tcbIndexPrintKeyC{/\kvtcb@doc@keypath/}
+ \idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintKeyC{\kvtcb@doc@index}}
+ }
+ \fi
+ }
+
+\cs_new:Npn \__tcobox_doc_head_key:
+ {
+ \__tcobox_print_key:
+ \__tcobox_index_key:
+ \tl_if_empty:NTF \kvtcb@doc@keypath
+ {
+ \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label
+ {
+ \protected@edef\@currentlabel{\kvtcb@doc@name}
+ \label{key:\kvtcb@doc@label}
+ \seq_gput_left:NV \g__tcobox_label_seq \kvtcb@doc@label
+ }
+ }
+ {
+ \tl_set:Nx \l_tmpa_tl {/\kvtcb@doc@keypath/\kvtcb@doc@label}
+ \seq_if_in:NVF \g__tcobox_label_seq \l_tmpa_tl
+ {
+ \protected@edef\@currentlabel{/\kvtcb@doc@keypath/\kvtcb@doc@name}
+ \label{key:/\kvtcb@doc@keypath/\kvtcb@doc@label}
+ \seq_gput_left:NV \g__tcobox_label_seq \l_tmpa_tl
+ }
+ }
+ {\ttfamily\kvtcb@doc@parameter}
+ \tcb@doc@do@description
+ }
+
+
+\NewDocumentEnvironment{docKeys}{ +O{} +m }
+ {
+ \__tcobox_doc_entry_begin:nnn {doc~keypath=,#1}{#2}{key}
+ }
+ {
+ \__tcobox_doc_entry_end:n { key }
+ }
+
+
+\NewDocumentEnvironment{docKey}{ O{} +O{} m m +m }
+ {
+ \__tcobox_doc_entry_begin:nnn
+ {
+ doc~keypath=#1,doc~name={#3},doc~parameter={#4},doc~description={#5},#2
+ }
+ {}{key}
+ }
+ {
+ \__tcobox_doc_entry_end:n { key }
+ }
+
+
+\NewDocumentEnvironment{docKey*}{}
+ {
+ \group_begin:
+ \tcb@doc@toindexfalse
+ \begin{docKey}
+ }
+ {
+ \end{docKey}
+ \group_end:
+ }
+
+
+\NewDocumentCommand \tcbmakedocSubKey { m m }
+ {
+ \NewDocumentEnvironment{#1}{ O{} +O{} m m +m }
+ {
+ \__tcobox_doc_entry_begin:nnn
+ {
+ doc@sub@keypath=#2,
+ doc~keypath=##1,
+ doc~name={##3},
+ doc~parameter={##4},
+ doc~description={##5},
+ ##2
+ }
+ {}{key}
+ }
+ {
+ \__tcobox_doc_entry_end:n { key }
+ }
+ \NewDocumentEnvironment{#1*}{}
+ {
+ \group_begin:
+ \tcb@doc@toindexfalse
+ \begin{#1}
+ }
+ {
+ \end{#1}
+ \group_end:
+ }
+ }
+
+
+\NewDocumentCommand \tcbmakedocSubKeys { m m }
+ {
+ \NewDocumentEnvironment{#1}{ +O{} +m }
+ {
+ \__tcobox_doc_entry_begin:nnn
+ {
+ doc@sub@keypath=#2,
+ doc~keypath=,
+ ##1
+ }
+ {##2}{key}
+ }
+ {
+ \__tcobox_doc_entry_end:n { key }
+ }
+ }
+
+
+\cs_new_nopar:Npn \__tcobox_print_path:
+ {
+ \textcolor{\kvtcb@col@path}{\__tcobox_print_docname:}
+ }
+
+\cs_new_nopar:Npn \__tcobox_index_path:
+ {
+ \iftcb@doc@toindex
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintPathCA{\kvtcb@doc@index}}
+ \kvtcb@index@command{\kvtcb@text@paths\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintPathC{\kvtcb@doc@index}}
+ \fi
+ }
+
+\cs_new:Npn \__tcobox_doc_head_path:
+ {
+ \colFade{\tcb@cs{path~...}}~\__tcobox_print_path:
+ \__tcobox_index_path:
+ \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label
+ {
+ \protected@edef\@currentlabel{\kvtcb@doc@name}
+ \label{path:\kvtcb@doc@label}
+ \seq_gput_left:NV \g__tcobox_label_seq \kvtcb@doc@label
+ }
+ {\ttfamily\kvtcb@doc@parameter{}~\colFade{...;}}
+ \tcb@doc@do@description
+ }
+
+
+\NewDocumentEnvironment{docPathOperations}{ +O{} +m }
+ {
+ \__tcobox_doc_entry_begin:nnn {#1}{#2}{path}
+ }
+ {
+ \__tcobox_doc_entry_end:n { path }
+ }
+
+
+\NewDocumentEnvironment{docPathOperation}{ +O{} m +m }
+ {
+ \__tcobox_doc_entry_begin:nnn {doc~name={#2},doc~parameter={#3},#1}{}{path}
+ }
+ {
+ \__tcobox_doc_entry_end:n { path }
+ }
+
+
+\NewDocumentEnvironment{docPathOperation*}{}
+ {
+ \group_begin:
+ \tcb@doc@toindexfalse
+ \begin{docPathOperation}
+ }
+ {
+ \end{docPathOperation}
+ \group_end:
+ }
+
+
+\NewDocumentCommand \docAuxCommand { s +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~name={#3},#2}
+ \__tcobox_print_command:
+ \IfBooleanF{#1}{\__tcobox_index_command:}
+ \group_end:
+ }
+
+\NewDocumentCommand \docAuxEnvironment { s +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~name={#3},#2}
+ \__tcobox_print_environment:
+ \IfBooleanF{#1}{\__tcobox_index_environment:}
+ \group_end:
+ }
+
+
+\NewDocumentCommand \docAuxKey { s O{} +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~keypath={#2},doc~name={#4},#3}
+ \__tcobox_print_key:
+ \IfBooleanF{#1}{\__tcobox_index_key:}
+ \group_end:
+ }
+
+
+\NewDocumentCommand \docValue { s +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~name={#3},#2}
+ \textcolor{\kvtcb@col@value}{\__tcobox_print_docname:}
+ \IfBooleanF{#1}
+ {
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintValCA{\kvtcb@doc@index}}
+ \kvtcb@index@command{\kvtcb@text@values\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintValC{\kvtcb@doc@index}}
+ }
+ \group_end:
+ }
+
+
+\NewDocumentCommand \docColor { s +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~name={#3},#2}
+ \textcolor{\kvtcb@col@color}{\__tcobox_print_docname:}
+ \IfBooleanF{#1}
+ {
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintColCA{\kvtcb@doc@index}}
+ \kvtcb@index@command{\kvtcb@text@colors\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintColC{\kvtcb@doc@index}}
+ }
+ \group_end:
+ }
+
+
+\NewDocumentCommand \docCounter { s +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~name={#3},#2}
+ \textcolor{\kvtcb@col@counter}{\__tcobox_print_docname:}
+ \IfBooleanF{#1}
+ {
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintCountCA{\kvtcb@doc@index}}
+ \kvtcb@index@command{\kvtcb@text@counters\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintCountC{\kvtcb@doc@index}}
+ }
+ \group_end:
+ }
+
+
+\NewDocumentCommand \docLength { s +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~name={#3},#2}
+ \textcolor{\kvtcb@col@length}{\__tcobox_print_cs_docname:}
+ \IfBooleanF{#1}
+ {
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintLenCA{\kvtcb@doc@index}}
+ \kvtcb@index@command{\kvtcb@text@lengths\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintLenC{\kvtcb@doc@index}}
+ }
+ \group_end:
+ }
+
+
+\ExplSyntaxOff
-\DeclareDocumentCommand\docValue{sm}{%
- \tcb@Print@Val{#2}%
- \IfBooleanTF{#1}{}{\tcb@index@Val{#2}}%
-}
\setrefcountdefault{-1}
-\DeclareDocumentCommand\tcb@ref@doc{msm}{%
+\NewDocumentCommand\tcb@ref@doc{msm}{%
\hyperref[#1:#3]{\texttt{\ref*{#1:#3}}%
\IfBooleanTF{#2}{}{%
\ifnum\getpagerefnumber{#1:#3}=\thepage%
@@ -441,8 +819,15 @@
\def\refKey{\tcb@ref@doc{key}}
\def\refPathOperation{\tcb@ref@doc{path}}
-\def\refAux#1{\textcolor{\kvtcb@colhyper}{\tcb@scantokens{#1}}}
-\def\refAuxcs#1{\textcolor{\kvtcb@colhyper}{\tcb@cs{#1}}}
+\AtBeginDocument{%
+ \ifHy@colorlinks
+ \def\refAux#1{\textcolor{\kvtcb@colhyper}{\tcb@scantokens{#1}}}%
+ \def\refAuxcs#1{\textcolor{\kvtcb@colhyper}{\tcb@cs{#1}}}%
+ \else
+ \def\refAux#1{\tcb@scantokens{#1}}%
+ \def\refAuxcs#1{\tcb@cs{#1}}%
+ \fi%
+}
\newenvironment{absquote}
{\list{}{\leftmargin2cm\rightmargin\leftmargin}%
@@ -496,8 +881,20 @@
\let\tcb@doc@index@pgf=\tcb@doc@index@pgfsection%
\def\tcb@doc@index@doc{%
- \let\tcb@index@Com=\SpecialMainIndex%%
- \let\tcb@index@Env=\SpecialMainEnvIndex%
+ \ExplSyntaxOn
+ \def \__tcobox_index_command:
+ {
+ \iftcb@doc@toindex
+ \SpecialMainIndex{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintComC{\kvtcb@doc@index}}
+ \fi
+ }
+ \def \__tcobox_index_environment:
+ {
+ \iftcb@doc@toindex
+ SpecialMainEnvIndex{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintEnvC{\kvtcb@doc@index}}
+ \fi
+ }
+ \ExplSyntaxOff
\tcbset{index german settings}%
\EnableCrossrefs%
\PageIndex%
@@ -507,19 +904,19 @@
\tcbset{%
reset@documentation/.style={%
- },
- documentation listing style=tcbdocumentation,
+ },
+ initialize@reset=reset@documentation,
doc left=2em,
doc right=0pt,
doc left indent=-2em,
doc right indent=0pt,
doc head=,
+ doc raster=,
before doc body=,
after doc body=,
- doc description=,
+ documentation listing style=tcbdocumentation,
doc into index=true,
doc marginnote=,
- initialize@reset=reset@documentation,
color option=Option,
color definition=Definition,
color hyperlink=Hyperlink,
diff --git a/macros/latex/contrib/tcolorbox/tcbexternal.code.tex b/macros/latex/contrib/tcolorbox/tcbexternal.code.tex
index 2697820f39..ebf274f9b0 100644
--- a/macros/latex/contrib/tcolorbox/tcbexternal.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbexternal.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbexternal.code.tex: Code for externalization
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\tcbuselibrary{pro@cessing}
diff --git a/macros/latex/contrib/tcolorbox/tcbfitting.code.tex b/macros/latex/contrib/tcolorbox/tcbfitting.code.tex
index 5604168b28..cf641991be 100644
--- a/macros/latex/contrib/tcolorbox/tcbfitting.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbfitting.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbfitting.code.tex: Code for fit boxes
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\newdimen\tcbfitdim
\newdimen\tcb@lowerfitdim
diff --git a/macros/latex/contrib/tcolorbox/tcbhooks.code.tex b/macros/latex/contrib/tcolorbox/tcbhooks.code.tex
index b549b68292..135d78236e 100644
--- a/macros/latex/contrib/tcolorbox/tcbhooks.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbhooks.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbhooks.code.tex: Code for adding hooks
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\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 348cf2fe35..aedb6eb143 100644
--- a/macros/latex/contrib/tcolorbox/tcblistings.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcblistings.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcblistings.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\RequirePackage{listings}[2007/02/22]
diff --git a/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex b/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex
index 5d58c94dd1..a241e3e3c1 100644
--- a/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcblistingscode.code.tex: Auxiliary code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\tcbuselibrary{pro@cessing}
diff --git a/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex b/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex
index 984b402a46..fa62475ca1 100644
--- a/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcblistingsutf8.code.tex: Code for colorboxes with listings in UTF-8
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,11 +17,22 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
-\RequirePackage{listingsutf8}[2011/11/10]
\tcbuselibrary{listings}
+\RequirePackage{iftex}
+\ifpdftex
+ \let\tcb@temp\relax%
+\else
+ \tcb@info{Library `listingsutf8' is compatible with pdftex only.
+ Library `listings` is loaded instead.}%
+ \let\tcb@temp\endinput
+\fi
+\tcb@temp
+
+\RequirePackage{listingsutf8}[2011/11/10]
+
\tcbset{
listing utf8/.style={listing inputencoding=utf8/#1},
}
diff --git a/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex b/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
index de09b64411..444c3867aa 100644
--- a/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbmagazine.code.tex: Code for box sets and magazine styles
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\tcbuselibrary{breakable}
diff --git a/macros/latex/contrib/tcolorbox/tcbminted.code.tex b/macros/latex/contrib/tcolorbox/tcbminted.code.tex
index 7b04019180..e5574ff669 100644
--- a/macros/latex/contrib/tcolorbox/tcbminted.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbminted.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbminted.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\RequirePackage{minted}[2011/09/17]
diff --git a/macros/latex/contrib/tcolorbox/tcbposter.code.tex b/macros/latex/contrib/tcolorbox/tcbposter.code.tex
index afab882a04..712095687b 100644
--- a/macros/latex/contrib/tcolorbox/tcbposter.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbposter.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbposter.code.tex: Code for posters
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\tcbuselibrary{breakable,magazine,skins,fitting}
diff --git a/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex b/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
index c1d54c06ad..522d1469ff 100644
--- a/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbprocessing.code.tex: Code for conditional processing
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\RequirePackage{pdftexcmds}
\RequirePackage{shellesc}
diff --git a/macros/latex/contrib/tcolorbox/tcbraster.code.tex b/macros/latex/contrib/tcolorbox/tcbraster.code.tex
index 628afd55ae..faf8c7cc31 100644
--- a/macros/latex/contrib/tcolorbox/tcbraster.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbraster.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\newcounter{tcbrastercolumn}
\newcounter{tcbrasterrow}
diff --git a/macros/latex/contrib/tcolorbox/tcbskins.code.tex b/macros/latex/contrib/tcolorbox/tcbskins.code.tex
index 6b820a7e7b..cf0dc29e96 100644
--- a/macros/latex/contrib/tcolorbox/tcbskins.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbskins.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbskins.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\RequirePackage{tikz}[2010/10/13]
diff --git a/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex b/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
index fa78d3e006..6bcd0fef7e 100644
--- a/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\tcbuselibrary{skins}
diff --git a/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex b/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex
index 9bfcc7252c..c158bdd77b 100644
--- a/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbtheorems.code.tex: Code for theorems in colorboxes
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\RequirePackage{amsmath}
diff --git a/macros/latex/contrib/tcolorbox/tcbvignette.code.tex b/macros/latex/contrib/tcolorbox/tcbvignette.code.tex
index 127a24d400..dbc07bdf1e 100644
--- a/macros/latex/contrib/tcolorbox/tcbvignette.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbvignette.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbvignette.code.tex: Code for ornamental frames
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\tcbuselibrary{skins}
diff --git a/macros/latex/contrib/tcolorbox/tcbxparse.code.tex b/macros/latex/contrib/tcolorbox/tcbxparse.code.tex
index 632c7a5cad..13daf19c84 100644
--- a/macros/latex/contrib/tcolorbox/tcbxparse.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbxparse.code.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcbxparse.code.tex: Code for xparse features
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.22}
+\tcb@set@library@version{4.30}
\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
index 19b53e887f..a88e74ad07 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex
index 633a3fee86..5c52d044a4 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcolorbox-example-poster.tex: a poster example for tcolorbox
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf
index 8164207f0c..e1de6b9fba 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example.tex b/macros/latex/contrib/tcolorbox/tcolorbox-example.tex
index 7cf8a140ec..f1f61989b8 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcolorbox-example.tex: an example for tcolorbox
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,6 +17,9 @@
%%
%% This work consists of all files listed in README
%%
+% arara: pdflatex: { }
+% arara: pdflatex: { synctex: yes }
+%
\documentclass{article}
\usepackage{tikz,lipsum,lmodern}
\usepackage[most]{tcolorbox}
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf
index 062efe05a1..f3e875a401 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex
index fd1f0c51f3..aca460f293 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex
@@ -1,9 +1,9 @@
% \LaTeX-Main\
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcolorbox-tutorial-poster.tex: a tutorial for poster creation with tcolorbox
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.abstract.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.abstract.tex
index ecd45a34e1..058a4c162f 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.abstract.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.abstract.tex
@@ -79,7 +79,7 @@
\footnote{Prof.~Dr.~Dr.~Thomas F.~Sturm, Institut f\"{u}r Mathematik und Informatik,
Universit\"{a}t der Bundeswehr M\"{u}nchen, D-85577 Neubiberg, Germany;
email: \href{mailto:thomas.sturm@unibw.de}{thomas.sturm@unibw.de}}\par\medskip
-\normalsize\url{http://www.ctan.org/pkg/tcolorbox}\par
+\normalsize\url{https://www.ctan.org/pkg/tcolorbox}\par
\url{https://github.com/T-F-S/tcolorbox}}
\end{center}
\bigskip
@@ -98,6 +98,7 @@
interior style={fill overzoom image=goldshade.png,fill image opacity=0.25},
colbacktitle=red!50!yellow!75!black,
enlargepage flexible=\baselineskip,pad at break*=3mm,
+ height fixed for=first and middle,
watermark color=yellow!75!red!25!white,
watermark text={\bfseries\Large Contents},
attach boxed title to top center={yshift=-0.25mm-\tcboxedtitleheight/2,yshifttext=2mm-\tcboxedtitleheight/2},
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.beamer.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.beamer.tex
index 0fcb15e5a3..ec70fd713a 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.beamer.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.beamer.tex
@@ -91,6 +91,7 @@ This style is not intended to be used directly, but in concealed way by applying
\end{dispListing}
\end{docTcbKey}
+\clearpage
\begin{docTcbKey}[][doc new={2019-03-01}]{alert}{=\textless\meta{overlay specification}\textgreater}{style, no default, initially unset}
Sets the \refKey{/tcb/beamer alerted} style in dependency of
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib b/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib
index 8f1e4f7924..be37700ea1 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib
@@ -1,61 +1,61 @@
-@manual{hoffmann:2018a,
+@manual{hoffmann:listings,
author = {Carsten Heinz and Brooks Moses and Jobst Hoffmann},
title = {The Listings Package},
- url = {http://mirror.ctan.org/macros/latex/contrib/listings/listings.pdf},
- version = {1.7},
- date = {2018-09-02},
+ url = {https://mirror.ctan.org/macros/latex/contrib/listings/listings.pdf},
+ version = {1.8d},
+ date = {2020-03-24},
language = {english}
}
@manual{schoepf:2001a,
author = {Rainer Sch{\"o}pf and Bernd Raichle and Chris Rowley},
title = {A New Implementation of {\LaTeX}'s verbatim and verbatim* Environments},
- url = {http://mirror.ctan.org/macros/latex/required/tools/verbatim.pdf},
+ url = {https://mirror.ctan.org/macros/latex/required/tools/verbatim.pdf},
date = {2001-03-12},
}
-@techreport{sturm:2007b,
+@techreport{sturm:mathe1,
author = {Thomas F. Sturm},
title = {Mathematik 1 (B.Eng.)},
type = {Vorlesungs-Skriptum},
institution = {Universit{\"a}t der Bundeswehr M{\"u}nchen},
address = {Neubiberg},
url = {https://www.unibw.de/bw/professuren/thomas-sturm},
- year = 2007,
+ year = 2019,
language = {german}
}
-@techreport{sturm:2008b,
+@techreport{sturm:mathe2,
author = {Thomas F. Sturm},
title = {Mathematik 2 (B.Eng.)},
type = {Vorlesungs-Skriptum},
institution = {Universit{\"a}t der Bundeswehr M{\"u}nchen},
address = {Neubiberg},
url = {https://www.unibw.de/bw/professuren/thomas-sturm},
- year = 2008,
+ year = 2019,
language = {german}
}
-@techreport{sturm:2010a,
+@techreport{sturm:mathe3,
author = {Thomas F. Sturm},
title = {H{\"o}here Mathematik: Fortgeschrittene mathematische Methoden (M.Eng.)},
type = {Vorlesungs-Skriptum},
institution = {Universit{\"a}t der Bundeswehr M{\"u}nchen},
address = {Neubiberg},
url = {https://www.unibw.de/bw/professuren/thomas-sturm},
- year = 2010,
+ year = 2019,
language = {german}
}
-@book{sturm:2016e,
+@book{sturm:latex,
author = {Thomas F. Sturm},
title = {\LaTeX -- Einführung in das Textsatzsystem},
publisher = {Leibnitz Universität Hannover IT Services (LUIS)},
address = {Hannover},
- edition = 11,
+ edition = 12,
series = {IT-Handb\"ucher},
url = {https://www.luis.uni-hannover.de/buch.html?&titel=latex},
- date = {2016-08},
+ date = {2019-07},
language = {german}
}
@@ -63,141 +63,137 @@
@manual{tantau:tikz_and_pgf,
author = {Till Tantau},
title = {The TikZ and PGF Packages},
- subtitle = {Manual for version 3.1.1},
- url = {http://mirrors.ctan.org/graphics/pgf/base/doc/pgfmanual.pdf},
- date = {2019-02-02},
+ subtitle = {Manual for version 3.1.5b},
+ url = {https://mirrors.ctan.org/graphics/pgf/base/doc/pgfmanual.pdf},
+ date = {2020-01-08},
}
@manual{tantau:beamer,
author = {Till Tantau and Joseph Wright and Vedran Mileti\'{c}},
title = {The Beamer Class},
- subtitle = {User Guide for version 3.55},
- url = {http://mirrors.ctan.org/macros/latex/contrib/beamer/doc/beameruserguide.pdf},
- date = {2018-12-02},
+ subtitle = {User Guide for version 3.57},
+ url = {https://mirrors.ctan.org/macros/latex/contrib/beamer/doc/beameruserguide.pdf},
+ date = {2019-09-30},
}
-@manual{carlisle:2007a,
+@manual{carlisle:ltxdoc,
author = {David Carlisle},
title = {The file ltxdoc.dtx for use with \LaTeXe},
- url = {http://mirror.ctan.org/macros/latex/base/ltxdoc.dtx},
- date = {2007-11-11}
+ url = {https://mirror.ctan.org/macros/latex/base/ltxdoc.pdf},
+ date = {2019-09-16}
}
-@manual{carlisle:2016a,
+@manual{carlisle:tabularx,
author = {David Carlisle},
title = {The tabularx package},
- url = {http://mirror.ctan.org/macros/latex/required/tools/tabularx.pdf},
- date = {2016-02-03}
+ url = {https://mirror.ctan.org/macros/latex/required/tools/tabularx.pdf},
+ date = {2020-01-15}
}
@manual{mittelbach:2011a,
author = {Frank Mittelbach},
title = {The doc and shortvrb Packages},
- url = {http://mirror.ctan.org/macros/latex/base/doc.dtx},
+ url = {https://mirror.ctan.org/macros/latex/base/doc.dtx},
date = {2011-06-30}
}
+
+@manual{mittelbach:multicol,
+ author = {Frank Mittelbach},
+ title = {An environment for multicolumn output},
+ url = {https://mirror.ctan.org/macros/latex/required/tools/multicol.pdf},
+ date = {2020-02-02},
+}
+
+
@manual{breitenlohner:1998a,
author = {Peter Breitenlohner},
title = {The $\varepsilon$-\TeX\ manual},
version = {2},
- url = {http://mirrors.ctan.org/systems/doc/etex/etex_man.pdf},
+ url = {https://mirrors.ctan.org/systems/doc/etex/etex_man.pdf},
date = {1998-02},
}
-@manual{oberdiek:2016b,
+@manual{oberdiek:listingsutf8,
author = {Heiko Oberdiek},
title = {The listingsutf8 package},
- url = {http://mirror.ctan.org/macros/latex/contrib/oberdiek/listingsutf8.pdf},
- date = {2016-05-16},
+ url = {http://mirrors.ctan.org/macros/latex/contrib/listingsutf8/listingsutf8.pdf},
+ date = {2019-12-10},
}
+
@manual{robertson:2014a,
author = {Will Robertson},
title = {A couple of things involving environments},
- url = {http://mirror.ctan.org/macros/latex/contrib/environ/environ.pdf},
+ url = {https://mirror.ctan.org/macros/latex/contrib/environ/environ.pdf},
date = {2014-05-04},
}
-@manual{lehmann:2018a,
+@manual{lehmann:etoolbox,
author = {Philipp Lehman and Joseph Wright},
title = {The etoolbox Package},
- url = {http://mirror.ctan.org/macros/latex/contrib/etoolbox/etoolbox.pdf},
- date = {2018-08-19},
+ url = {https://mirror.ctan.org/macros/latex/contrib/etoolbox/etoolbox.pdf},
+ date = {2019-09-21},
}
@manual{cubitt:2018a,
author = {Toby Cubitt},
title = {The cleveref Package},
- url = {http://mirror.ctan.org/macros/latex/contrib/cleveref/cleveref.pdf},
+ url = {https://mirror.ctan.org/macros/latex/contrib/cleveref/cleveref.pdf},
date = {2018-03-27},
}
-@manual{rudolph:2011a,
- author = {Konrad Rudolph},
- title = {The minted package},
- subtitle = {Highlighted source code in \LaTeX},
- url = {http://mirror.ctan.org/macros/latex/contrib/minted/minted.pdf},
- date = {2011-09-17},
-}
@manual{poore:minted,
author = {Geoffrey M. Poore},
title = {The minted package},
subtitle = {Highlighted source code in \LaTeX},
- url = {http://mirror.ctan.org/macros/latex/contrib/minted/minted.pdf},
+ url = {https://mirror.ctan.org/macros/latex/contrib/minted/minted.pdf},
date = {2017-07-19},
}
@online{pygments:web,
title = {Pygments},
subtitle = {Python syntax highlighter},
- date = {2018},
- url = {http://pygments.org/},
+ date = {2019},
+ url = {https://pygments.org/},
}
@manual{latexproject:xparse,
author = {The \LaTeX3 Project},
title = {The xparse Package},
- url = {http://mirror.ctan.org/macros/latex/contrib/l3packages/xparse.pdf},
- date = {2018-10-17},
+ url = {https://mirror.ctan.org/macros/latex/contrib/l3packages/xparse.pdf},
+ date = {2020-03-06},
}
@manual{arseneau:2011a,
author = {Donald Arseneau},
title = {The varwidth package},
- url = {http://mirrors.ctan.org/macros/latex/contrib/varwidth/varwidth-doc.pdf},
+ url = {https://mirrors.ctan.org/macros/latex/contrib/varwidth/varwidth-doc.pdf},
date = {2011-09-26},
}
-@manual{mittelbach:2015a,
- author = {Frank Mittelbach},
- title = {An environment for multicolumn output},
- url = {http://mirror.ctan.org/macros/latex/required/tools/multicol.pdf},
- date = {2015-09-30},
-}
-
@manual{rahtz:hyperref,
author = {Sebastian Rahtz and Heiko Oberdiek},
title = {Hypertext marks in \LaTeX: a manual for hyperref},
- url = {http://mirrors.ctan.org/macros/latex/contrib/hyperref/doc/manual.pdf},
- date = {2018-09},
+ url = {https://mirrors.ctan.org/macros/latex/contrib/hyperref/doc/manual.pdf},
+ date = {2020-01},
language = {english}
}
-@manual{oberdiek:2016a,
+@manual{oberdiek:bookmark,
author = {Heiko Oberdiek},
title = {The bookmark package},
- url = {http://mirrors.ctan.org/macros/latex/contrib/oberdiek/bookmark.pdf},
- date = {2016-05-17},
+ url = {https://mirrors.ctan.org/macros/latex/contrib/bookmark/bookmark.pdf},
+ date = {2019-12-03},
language = {english}
}
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex
index ba0b05cbd8..4ebaee76d9 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex
@@ -239,6 +239,7 @@ The |break at| option can be used to insert better break points by hand.
\end{dispExample}
\end{docTcbKey}
+\enlargethispage*{1cm}
\begin{docTcbKey}{enlargepage}{=\meta{length}\colOpt{/\meta{length}/\ldots/\meta{length}}}{no default, initially |0pt|}
Inserts a |\enlargethispage|\marg{length} to the pages of the break sequence,
@@ -367,6 +368,8 @@ The |break at| option can be used to insert better break points by hand.
and \refKey{/tcb/pad after break}.
\end{docTcbKey}
+\enlargethispage*{5mm}
+
\begin{docTcbKey}{pad at break*}{=\meta{length}}{style, no default}
Sets \refKey{/tcb/pad at break} to \meta{length} and
\refKey{/tcb/enlargepage flexible} to an appropriate value such that
@@ -529,7 +532,6 @@ and \refKey{/tcb/enlarge bottom at break by}.
\refKey{/tcb/extras} overwrites this key.
\end{docTcbKey}
-\enlargethispage*{1cm}
\begin{docTcbKey}[][doc new=2015-07-16]{extras unbroken and last}{=\marg{options}}{no default, initially unset}
This is an abbreviation for setting
\refKey{/tcb/extras unbroken} and
@@ -537,6 +539,7 @@ and \refKey{/tcb/enlarge bottom at break by}.
\refKey{/tcb/extras} overwrites this key.
\end{docTcbKey}
+\clearpage
\begin{docTcbKey}[][doc new=2015-07-16]{extras first and middle}{=\marg{options}}{no default, initially unset}
This is an abbreviation for setting
@@ -545,7 +548,6 @@ and \refKey{/tcb/enlarge bottom at break by}.
\refKey{/tcb/extras} overwrites this key.
\end{docTcbKey}
-\clearpage
\begin{docTcbKey}[][doc new=2018-07-26]{extras title after break}{=\marg{options}}{no default, initially unset}
If the box has a \refKey{/tcb/title after break}, then the \meta{options}
@@ -609,7 +611,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:2015a}.
+|multicols| environment from the |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.coreoptions.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex
index dfe82a456e..f053690e3f 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex
@@ -6,7 +6,7 @@
For the \meta{options} in \refEnv{tcolorbox} respectively \refCom{tcbset}
the following |pgf| keys can be applied. The key tree path |/tcb/| is not to
be used inside these macros. It is easy to add your own style keys using
-the syntax for |pgf| keys, see \cite{tantau:tikz_and_pgf,sturm:2016e} or the examples
+the syntax for |pgf| keys, see \cite{tantau:tikz_and_pgf,sturm:latex} or the examples
starting from page~\pageref{sec:latextutorial}.
@@ -738,6 +738,7 @@ This is a demonstration text for showing how line breaking works.
Shortcut for setting \refKey{/tcb/halign lower} to \docValue{flush right}.
\end{docTcbKey}
+\clearpage
\begin{docTcbKey}[][doc updated=2015-05-07]{flushleft title}{}{style, no value}
Shortcut for setting \refKey{/tcb/halign title} to \docValue{flush left}.
@@ -751,7 +752,6 @@ This is a demonstration text for showing how line breaking works.
Shortcut for setting \refKey{/tcb/halign title} to \docValue{flush right}.
\end{docTcbKey}
-\clearpage
\begin{marker}
The vertical alignment settings are only relevant for boxes which are larger
@@ -1151,6 +1151,7 @@ This is the lower part.
\end{exdispExample}
\end{docTcbKey}
+\enlargethispage*{1cm}
\begin{docTcbKey}{right}{=\meta{length}}{style, no default, initially \texttt{4mm}}
Sets the right space between all text parts and frame (additional to |boxsep|).
@@ -1165,6 +1166,7 @@ This is a \textbf{tcolorbox}.
\end{exdispExample}
\end{docTcbKey}
+\clearpage
\begin{docTcbKey}[][doc new=2017-02-16]{right*}{=\meta{length}}{style, no default}
Sets \refKey{/tcb/right} such that \meta{length} is the distance between
@@ -2395,7 +2397,7 @@ have a lower part.
This style sets \refKey{/tcb/before upper} and \refKey{/tcb/after upper}
and several geometry keys to support a |tabularx| with the
given \meta{preamble}.
- The packages |tabularx| \cite {carlisle:2016a}, |array|, and |colortbl|
+ The packages |tabularx| \cite {carlisle:tabularx}, |array|, and |colortbl|
have to be loaded separately.
\begin{exdispExample}{tabularx_1}
% \usepackage{array,tabularx}
@@ -3046,6 +3048,7 @@ enforce the \refKey{/tcb/before} setting.
the box follows a heading.
\end{docTcbKey}
+\enlargethispage*{1cm}
\begin{docTcbKey}[][doc new=2017-02-23]{parfillskip restore}{\colOpt{=true\textbar false}}{default |true|, initially |true|}
If this option is set to be |true|, the minimum value of |\parfillskip| is
@@ -4085,7 +4088,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:2016a}
+ Sets a PDF bookmark with the given \meta{text}, if the package |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}
@@ -4102,7 +4105,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:2016a} can be given.
+ from the package |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,
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex
index cda39d43fa..4ba5b569bf 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex
@@ -8,14 +8,17 @@ like this one. Actually, the visual nature follows the approach from
Till Tantau's |pgf| \cite{tantau:tikz_and_pgf} documentation.
Typically, this library is assumed to be used in conjunction with the
class |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:
\begin{dispListing}
\tcbuselibrary{documentation}
\end{dispListing}
-This also loads the library \mylib{listings}, see \Vref{sec:listings},
+This also loads
the library \mylib{skins}, see \Vref{sec:skins},
-the library \mylib{xparse}\tcbdocmarginnote{\tcbdocnew{2014-09-19}}, see \Vref{sec:xparse},
+the library \mylib{raster}, see \Vref{sec:raster},
+the library \mylib{listings}, see \Vref{sec:listings},
+the library \mylib{xparse}, see \Vref{sec:xparse},
and a bunch of packages, namely
|pifont|, |marvosym|, |makeidx|, |marginnote|, |refcount|, and |hyperref|.
@@ -50,9 +53,12 @@ For |minted| \cite{poore:minted} support, load:
\end{dispListing}
+%\clearpage
+%-------------------------------------------------------------------------------
\subsection{Macros of the Library}
-\enlargethispage*{15mm}
-\begin{docEnvironment}[doclang/environment content=command description]{docCommand}{\oarg{options}\marg{name}\marg{parameters}}
+
+\begin{docEnvironment}[doclang/environment content=command description,doc updated=2020-04-22]
+ {docCommand}{\oarg{options}\marg{name}\marg{parameters}}
Documents a \LaTeX\ macro with given \meta{name} where \meta{name} is
written without backslash. The given \meta{options} are set with \refCom{tcbset}.
This macro takes mandatory or optional \meta{parameters}.
@@ -74,15 +80,43 @@ For |minted| \cite{poore:minted} support, load:
\end{docEnvironment}
-\begin{docEnvironment}[doclang/environment content=command description]{docCommand*}{\oarg{options}\marg{name}\marg{parameters}}
+\begin{docEnvironment}[doclang/environment content=command description,doc updated=2020-04-22]
+ {docCommand*}{\oarg{options}\marg{name}\marg{parameters}}
Identical to \refEnv{docCommand}, but without index entry.
\end{docEnvironment}
-%\clearpage
+\begin{docEnvironment}[doclang/environment content=command description,doc new=2020-04-22]
+ {docCommands}{\oarg{options}\brackets{\marg{variant1},\marg{variant2},...}}
+ Documents several (similar) \LaTeX\ macro variants simultaneously.
+ The given \meta{options} are set with \refCom{tcbset} and are valid for
+ all variants and the documentation text.
+ Every variant is described by an option set \meta{variant1}, \meta{variant2}, and so on.
+ The most crucial options are \refKey{/tcb/doc name} and \refKey{/tcb/doc parameter}.
+\begin{dispExample}
+\begin{docCommands}[
+ doc no index, % no index entries for this example
+ doc name = newtheorem,
+ doc parameter = \marg{envname},
+ ]
+ {
+ { },
+ { doc parameter = \marg{envname}\oarg{numbered within} },
+ { doc parameter = \oarg{numbered like}\marg{envname} },
+ { doc name = newtheorem* },
+ }
+ example
+\end{docCommands}
+\end{dispExample}
+\end{docEnvironment}
+
+
+
+\clearpage
{\let\xdocEnvironment\docEnvironment
\let\endxdocEnvironment\enddocEnvironment
-\begin{xdocEnvironment}[doclang/environment content=environment description]{docEnvironment}{\oarg{options}\marg{name}\marg{parameters}}
+\begin{xdocEnvironment}[doclang/environment content=environment description,doc updated=2020-04-22]
+ {docEnvironment}{\oarg{options}\marg{name}\marg{parameters}}
Documents a \LaTeX\ environment with given \meta{name}.
The given \meta{options} are set with \refCom{tcbset}.
This environment takes mandatory or optional \meta{parameters}.
@@ -106,12 +140,56 @@ For |minted| \cite{poore:minted} support, load:
{\let\xdocEnvironment\docEnvironment
\let\endxdocEnvironment\enddocEnvironment
-\begin{xdocEnvironment}[doclang/environment content=environment description]{docEnvironment*}{\oarg{options}\marg{name}\marg{parameters}}
+\begin{xdocEnvironment}[doclang/environment content=environment description,doc updated=2020-04-22]
+ {docEnvironment*}{\oarg{options}\marg{name}\marg{parameters}}
Identical to \refEnv{docEnvironment}, but without index entry.
\end{xdocEnvironment}}
+
\clearpage
-\begin{docEnvironment}[doclang/environment content=key description,doc updated=2014-09-29]{docKey}{\oarg{key path}\oarg{options}\marg{name}\marg{parameters}\marg{description}}
+{\let\xdocEnvironment\docEnvironment
+\let\endxdocEnvironment\enddocEnvironment
+\begin{xdocEnvironment}[doclang/environment content=environment description,doc new=2020-04-22]
+ {docEnvironments}{\oarg{options}\brackets{\marg{variant1},\marg{variant2},...}}
+ Documents several (similar) \LaTeX\ environment variants simultaneously.
+ The given \meta{options} are set with \refCom{tcbset} and are valid for
+ all variants and the documentation text.
+ Every variant is described by an option set \meta{variant1}, \meta{variant2}, and so on.
+ The most crucial options are \refKey{/tcb/doc name} and \refKey{/tcb/doc parameter}.
+\begin{dispExample}
+\begin{docEnvironments}[
+ doc no index, % no index entries for this example
+ doc parameter = \oarg{options}\marg{title},
+ doclang/environment content = box content,
+ ]
+ {
+ {
+ doc name = redbox,
+ doc description = a red colored box,
+ },
+ {
+ doc name = greenbox,
+ doc description = a green colored box,
+ },
+ {
+ doc name = bluebox,
+ doc description = a blue colored box,
+ },
+ {
+ doc name = custombox,
+ doc parameter = \oarg{options}\marg{color}\marg{title},
+ doc description = a colored box,
+ },
+ }
+ example
+\end{docEnvironments}
+\end{dispExample}
+\end{xdocEnvironment}}
+
+
+\clearpage
+\begin{docEnvironment}[doclang/environment content=key description,doc updated=2020-04-22]
+ {docKey}{\oarg{key path}\oarg{options}\marg{name}\marg{parameters}\marg{description}}
Documents a key with given \meta{name} and an optional \meta{key path}.
The given \meta{options} are set with \refCom{tcbset}.
This key takes mandatory or optional \meta{parameters} as value
@@ -126,15 +204,46 @@ For |minted| \cite{poore:minted} support, load:
\end{docEnvironment}
-\begin{docEnvironment}[doclang/environment content=key description,doc updated=2014-09-29]{docKey*}{\oarg{key path}\oarg{options}\marg{name}\marg{parameters}\marg{description}}
+\begin{docEnvironment}[doclang/environment content=key description,doc updated=2020-04-22]
+ {docKey*}{\oarg{key path}\oarg{options}\marg{name}\marg{parameters}\marg{description}}
Identical to \refEnv{docKey}, but without index entry.
\end{docEnvironment}
+\begin{docEnvironment}[doclang/environment content=key description,doc new=2020-04-22]
+ {docKeys}{\oarg{options}\brackets{\marg{variant1},\marg{variant2},...}}
+ Documents several (similar) key variants simultaneously.
+ The given \meta{options} are set with \refCom{tcbset} and are valid for
+ all variants and the documentation text.
+ Every variant is described by an option set \meta{variant1}, \meta{variant2}, and so on.
+ The most crucial options are
+ \refKey{/tcb/doc keypath}, \refKey{/tcb/doc name}, \refKey{/tcb/doc parameter},
+ and \refKey{/tcb/doc description}.
+\begin{dispExample}
+\begin{docKeys}[
+ doc no index, % no index entries for this example
+ doc keypath = mykeyroot,
+ doc parameter = {=\meta{length}},
+ ]
+ {
+ {
+ doc name = width,
+ doc description = initially \texttt{10cm},
+ },
+ {
+ doc name = height,
+ doc description = initially \texttt{7cm},
+ },
+ }
+ example
+\end{docKeys}
+\end{dispExample}
+\end{docEnvironment}
+\clearpage
\begin{docEnvironment}[doclang/environment content=operation description,
- doc new=2019-09-18]{docPathOperation}{\oarg{options}\marg{name}\marg{parameters}}
+ doc new and updated={2019-09-18}{2020-04-22}]{docPathOperation}{\oarg{options}\marg{name}\marg{parameters}}
Documents a \tikzname\ path operation with given \meta{name}.
The given \meta{options} are set with \refCom{tcbset}.
This \tikzname\ path operation takes mandatory or optional \meta{parameters}.
@@ -149,113 +258,191 @@ For |minted| \cite{poore:minted} support, load:
\begin{docEnvironment}[doclang/environment content=command description,
- doc new=2019-09-17]{docPathOperation*}{\oarg{options}\marg{name}\marg{parameters}}
+ doc new and updated={2019-09-18}{2020-04-22}]{docPathOperation*}{\oarg{options}\marg{name}\marg{parameters}}
Identical to \refEnv{docPathOperation}, but without index entry.
\end{docEnvironment}
+\begin{docEnvironment}[doclang/environment content=command description,
+ doc new={2020-04-22}]{docPathOperations}{\oarg{options}\brackets{\marg{variant1},\marg{variant2},...}}
+ Documents several (similar) \tikzname\ path operation variants simultaneously.
+ The given \meta{options} are set with \refCom{tcbset} and are valid for
+ all variants and the documentation text.
+ Every variant is described by an option set \meta{variant1}, \meta{variant2}, and so on.
+ The most crucial options are \refKey{/tcb/doc name} and \refKey{/tcb/doc parameter}.
+\begin{dispExample}
+\begin{docPathOperations}[
+ doc no index, % no index entries for this example
+ ]
+ {
+ {
+ doc name = rectangle,
+ doc parameter = \meta{corner or cycle},
+ },
+ {
+ doc name = circle,
+ doc parameter = \oarg{options},
+ },
+ {
+ doc name = ellipse,
+ doc parameter = \oarg{options},
+ },
+ }
+ example
+\end{docPathOperations}
+\end{dispExample}
+\end{docEnvironment}
-
-
-
-
-
-\begin{docCommand}{docValue}{\marg{name}}
+\clearpage
+\begin{docCommands}[doc parameter=\oarg{options}\marg{name}]
+ {
+ {
+ doc name = docValue,
+ doc updated=2020-04-23,
+ },
+ {
+ doc name = docValue*,
+ },
+ }
Documents a value with given \meta{name}. Typically, this is a value for a key.
- This value is automatically indexed.
+ The given \meta{options} are set with \refCom{tcbset}.
+ This value is automatically indexed for \refCom{docValue}
+ and has no index entry for \refCom{docValue*}.
\begin{dispExample}
-A feasible value for \refKey{/foo/footitle} is \docValue{foovalue}.
+A feasible value for \refKey{/foo/footitle} is \docValue*{foovalue}.
\end{dispExample}
-\end{docCommand}
-
+\end{docCommands}
-\begin{docCommand}{docValue*}{\marg{name}}
- Identical to \refCom{docValue}, but without index entry.
-\end{docCommand}
-\clearpage
-\begin{docCommand}[doc updated=2014-10-09]{docAuxCommand}{\marg{name}}
+\begin{docCommands}[doc parameter=\oarg{options}\marg{name}]
+ {
+ {
+ doc name = docAuxCommand,
+ doc updated = 2020-04-23,
+ },
+ {
+ doc name = docAuxCommand*,
+ },
+ }
Documents an auxiliary or minor \LaTeX\ macro with given \meta{name}
where \meta{name} is written without backslash.
- This macro is automatically indexed.
+ The given \meta{options} are set with \refCom{tcbset}.
+ This macro is automatically indexed for \refCom{docAuxCommand}
+ and has no index entry for \refCom{docAuxCommand*}.
\begin{dispExample}
The macro \docAuxCommand{fooaux} holds some interesting data.
\end{dispExample}
-\end{docCommand}
+\end{docCommands}
-\begin{docCommand}[doc updated=2014-10-09]{docAuxCommand*}{\marg{name}}
- Identical to \refCom{docAuxCommand}, but without index entry.
-\end{docCommand}
-\begin{docCommand}{docAuxEnvironment}{\marg{name}}
+
+\begin{docCommands}[doc parameter=\oarg{options}\marg{name}]
+ {
+ {
+ doc name = docAuxEnvironment,
+ doc updated = 2020-04-23,
+ },
+ {
+ doc name = docAuxEnvironment*,
+ },
+ }
Documents an auxiliary or minor \LaTeX\ environment with given \meta{name}.
- This macro is automatically indexed.
+ The given \meta{options} are set with \refCom{tcbset}.
+ This macro is automatically indexed indexed for \refCom{docAuxEnvironment}
+ and has no index entry for \refCom{docAuxEnvironment*}.
\begin{dispExample}
The environment \docAuxEnvironment{fooauxenv} holds some interesting data.
\end{dispExample}
-\end{docCommand}
-
-\begin{docCommand}{docAuxEnvironment*}{\oarg{key path}\marg{name}}
- Identical to \refCom{docAuxEnvironment}, but without index entry.
-\end{docCommand}
-
-
-
-\begin{docCommand}{docAuxKey}{\oarg{key path}\marg{name}}
+\end{docCommands}
+
+
+\begin{docCommands}[doc parameter=\oarg{key path}\oarg{options}\marg{name}]
+ {
+ {
+ doc name = docAuxKey,
+ doc updated = 2020-04-23,
+ },
+ {
+ doc name = docAuxKey*,
+ },
+ }
Documents an auxiliary key with given \meta{name} and an optional \meta{key path}.
- It is automatically indexed.
+ The given \meta{options} are set with \refCom{tcbset}.
+ It is automatically indexed for \refCom{docAuxKey}
+ and has no index entry for \refCom{docAuxKey*}.
\begin{dispExample}
The key \docAuxKey[foo]{fooaux} holds some interesting data.
\end{dispExample}
-\end{docCommand}
+\end{docCommands}
-\begin{docCommand}{docAuxKey*}{\oarg{key path}\marg{name}}
- Identical to \refCom{docAuxKey}, but without index entry.
-\end{docCommand}
-
-\begin{docCommand}[doc new=2015-01-08]{docCounter}{\marg{name}}
- Documents a counter with given \meta{name}. The counter is automatically indexed.
+\begin{docCommands}[doc parameter=\oarg{options}\marg{name}]
+ {
+ {
+ doc name = docCounter,
+ doc updated = 2020-04-23,
+ },
+ {
+ doc name = docCounter*,
+ },
+ }
+ Documents a counter with given \meta{name}.
+ The given \meta{options} are set with \refCom{tcbset}.
+ The counter is automatically indexed for \refCom{docCounter}
+ and has no index entry for \refCom{docCounter*}.
\begin{dispExample}
The counter \docCounter{foocounter} can be used for computation.
\end{dispExample}
-\end{docCommand}
+\end{docCommands}
-\begin{docCommand}[doc new=2015-01-08]{docCounter*}{\marg{name}}
- Identical to \refCom{docCounter}, but without index entry.
-\end{docCommand}
-\begin{docCommand}[doc new=2015-01-08]{docLength}{\marg{name}}
- Documents a counter with given \meta{name}. The counter is automatically indexed.
+\clearpage
+\begin{docCommands}[doc parameter=\oarg{options}\marg{name}]
+ {
+ {
+ doc name = docLength,
+ doc updated = 2020-04-23,
+ },
+ {
+ doc name = docLength*,
+ },
+ }
+ Documents a length with given \meta{name}.
+ The given \meta{options} are set with \refCom{tcbset}.
+ The length is automatically indexed for \refCom{docLength}
+ and has no index entry for \refCom{docLength*}.
\begin{dispExample}
The length \docLength{foolength} can be used for computation.
\end{dispExample}
-\end{docCommand}
-
-\begin{docCommand}[doc new=2015-01-08]{docLength*}{\marg{name}}
- Identical to \refCom{docLength}, but without index entry.
-\end{docCommand}
-
-\clearpage
-
-\begin{docCommand}{docColor}{\marg{name}}
- Documents a color with given \meta{name}. The color is automatically indexed.
+\end{docCommands}
+
+
+\begin{docCommands}[doc parameter=\oarg{options}\marg{name}]
+ {
+ {
+ doc name = docColor,
+ doc updated = 2020-04-23,
+ },
+ {
+ doc name = docColor*,
+ },
+ }
+ Documents a color with given \meta{name}.
+ The given \meta{options} are set with \refCom{tcbset}.
+ The color is automatically indexed for \refCom{docColor}
+ and has no index entry for \refCom{docColor*}.
\begin{dispExample}
The color \docColor{foocolor} is available.
\end{dispExample}
-\end{docCommand}
-
-\begin{docCommand}{docColor*}{\marg{name}}
- Identical to \refCom{docColor}, but without index entry.
-\end{docCommand}
+\end{docCommands}
\begin{docCommand}{cs}{\marg{name}}
- Macro from |ltxdoc| \cite{carlisle:2007a} to typeset a command word \meta{name}
+ Macro from |ltxdoc| \cite{carlisle:ltxdoc} to typeset a command word \meta{name}
where the backslash is prefixed. The library overwrites the original macro.
\begin{dispExample}
This is a \cs{foocommand}.
@@ -272,7 +459,7 @@ This is a \meta{text}.
\begin{docCommand}{marg}{\marg{text}}
- Macro from |ltxdoc| \cite{carlisle:2007a} to typeset a \meta{text} with
+ Macro from |ltxdoc| \cite{carlisle:ltxdoc} to typeset a \meta{text} with
curly brackets as a mandatory argument. The library overwrites the original macro.
\begin{dispExample}
This is a mandatory \marg{argument}.
@@ -280,13 +467,14 @@ This is a mandatory \marg{argument}.
\end{docCommand}
\begin{docCommand}{oarg}{\marg{text}}
- Macro from |ltxdoc| \cite{carlisle:2007a} to typeset a \meta{text} with
+ Macro from |ltxdoc| \cite{carlisle:ltxdoc} to typeset a \meta{text} with
square brackets as an optional argument. The library overwrites the original macro.
\begin{dispExample}
This is an optional \oarg{argument}.
\end{dispExample}
\end{docCommand}
+\clearpage
\begin{docCommand}{brackets}{\marg{text}}
Sets the given \meta{text} with curly brackets.
@@ -295,7 +483,6 @@ This is an optional \oarg{argument}.
\end{dispExample}
\end{docCommand}
-\clearpage
{\let\xdispExample\dispExample
\let\endxdispExample\enddispExample
@@ -367,9 +554,9 @@ heading line. Optionally, such a box can be split in an upper and a lower part.
\end{docEnvironment}
\clearpage
-\begin{docCommand}{tcbmakedocSubKey}{\marg{name}\marg{key path}}
+\begin{docCommand}[doc updated=2020-04-22]{tcbmakedocSubKey}{\marg{name}\marg{key path}}
Creates a new environment \meta{name} based on \refEnv{docKey} for the
- documentation of keys with the given \meta{key path} as default.
+ documentation of keys with the given \meta{key path} as root.
The new environment \meta{name} takes the same para\-meters as \refEnv{docKey} itself.
A second starred environment \meta{name} is also created, which is identical
to \meta{name} but without index entry.
@@ -387,6 +574,34 @@ Some key (not indexed).
\end{docCommand}
+\begin{docCommand}[doc new=2020-04-22]{tcbmakedocSubKeys}{\marg{name}\marg{key path}}
+ Creates a new environment \meta{name} based on \refEnv{docKeys} for the
+ documentation of keys with the given \meta{key path} as root.
+ The new environment \meta{name} takes the same para\-meters as \refEnv{docKeys} itself.
+\begin{dispExample}
+\tcbmakedocSubKeys{docFooKeys}{foo}
+
+\begin{docFooKeys}[
+ doc parameter = {=\meta{nothing}},
+ doc description = {no default, initially empty},
+ ]
+ {
+ {
+ doc name = foodummy 2,
+ },
+ {
+ doc name = foo another dummy 2,
+ doc no index,
+ }
+ }
+Some description.
+\end{docFooKeys}
+\end{dispExample}
+\end{docCommand}
+
+
+\clearpage
+
\begin{docCommand}{refCom}{\marg{name}}
References a documented \LaTeX\ macro with given \meta{name} where \meta{name} is
written without backslash. The page reference is suppressed if it links
@@ -421,7 +636,7 @@ We have created \refEnv*{foocolorbox} as an example.
\end{dispExample}
\end{docCommand}
-\clearpage
+
\begin{docCommand}{refKey}{\marg{name}}
References a documented key with given \meta{name} where \meta{name}
is the full path name of the key.
@@ -440,6 +655,7 @@ We have created \refKey*{/foo/footitle} as an example.
\end{dispExample}
\end{docCommand}
+\clearpage
\begin{docCommand}[doc new=2019-09-17]{refPathOperation}{\marg{name}}
References a documented \tikzname\ path operation with given \meta{name}.
@@ -459,24 +675,25 @@ We have created \refPathOperation*{fooop} as an example.
-\begin{docCommand}{refAux}{\marg{name}}
- References some auxiliary environment, key, value, or color. The hyperlink color is
- used, but there is no real link.
+\begin{docCommand}[doc updated=2020-02-11]{refAux}{\marg{name}}
+ References some auxiliary environment, key, value, or color.
+ The \meta{name} is colored according to \refKey{/tcb/color hyperlink},
+ if |hyperref| colorlinks are set, but there is no real link.
\begin{dispExample}
Some pages back, one can see \refAux{/foo/footitle} as an example.
\end{dispExample}
\end{docCommand}
-\begin{docCommand}{refAuxcs}{\marg{name}}
+\begin{docCommand}[doc updated=2020-02-11]{refAuxcs}{\marg{name}}
References some auxiliary macro \meta{name} where \meta{name} is
- written without backslash. The hyperlink color is
- used, but there is no real link.
+ written without backslash.
+ The \meta{name} is colored according to \refKey{/tcb/color hyperlink},
+ if |hyperref| colorlinks are set, but there is no real link.
\begin{dispExample}
Some pages back, one can see \refAuxcs{fooaux} as an example.
\end{dispExample}
\end{docCommand}
-\clearpage
\begin{docCommand}{colDef}{\marg{text}}
Sets \meta{text} with the command color, see \refKey{/tcb/color command}.
@@ -492,6 +709,7 @@ 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}.
@@ -538,7 +756,458 @@ with another note.
\clearpage
-\subsection{Option Keys of the Library}
+%-------------------------------------------------------------------------------
+\subsection{Entry Content Option Keys}
+
+
+\begin{docTcbKey}[][doc new={2020-04-22}]{doc name}{=\meta{name}}{no default, initially empty}
+ Sets the \meta{name} of the entry to document, i.e. the \meta{name} of the
+ command, environment, key, etc. For \refEnv{docCommand}, \refEnv{docEnvironment}, etc.
+ the \meta{name} is set by a mandatory parameter, but can also be set
+ by \refKey{/tcb/doc name}.
+ \refKey{/tcb/doc name} also sets \meta{name} to
+ \refKey{/tcb/doc label}, \refKey{/tcb/doc index},
+ and \refKey{/tcb/doc sort index}.
+\begin{dispExample}
+\begin{docCommands}[
+ doc no index, % no index entries for this example
+ doc name = bfseries,
+ ] {}
+ Font setting to bold face.
+\end{docCommands}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new={2020-04-22}]{doc parameter}{=\meta{parameters}}{no default, initially empty}
+ Sets the \meta{parameters} of the entry to document, i.e. the \meta{parameters} of the
+ command, environment, key, etc. For \refEnv{docCommand}, \refEnv{docEnvironment}, etc.
+ the \meta{parameters} is set by a mandatory option, but can also be set
+ by \refKey{/tcb/doc parameter}.
+\begin{dispExample}
+\begin{docCommands}[
+ doc no index, % no index entries for this example
+ doc name = textbf,
+ doc parameter = \marg{text},
+ ] {}
+ Sets \meta{text} in bold face.
+\end{docCommands}
+\end{dispExample}
+\end{docTcbKey}
+
+
+
+\begin{docTcbKey}[][doc new={2020-04-22}]{doc keypath}{=\meta{key path}}{no default, initially empty}
+ Sets the \meta{key path} of the key to document. For \refEnv{docKey}
+ and \refEnv{docKey*} the \meta{key path} is set by a specialized option,
+ but can also be set by \refKey{/tcb/doc keypath}.
+\begin{dispExample}
+\begin{docKeys}[
+ doc no index, % no index entries for this example
+ doc keypath = tikz,
+ doc name = fill,
+ doc parameter = \colOpt{=\meta{color}},
+ doc description = default is scope's color setting,
+ ] {}
+ This option causes the path to be filled.
+\end{docKeys}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+
+\begin{docTcbKey}{doc description}{=\meta{description}}{no default, initially empty}
+ Sets a (short!) additional \meta{description} for
+ \refEnv{docCommand}, \refEnv{docEnvironment}, or \refEnv{docPathOperation}.
+ Such a description is
+ mandatory for \refEnv{docKey}.
+\begin{dispExample}
+\begin{docCommand*}[doc description=my description]{myCommandF}{\marg{argument}}
+ This is the documentation of \refCom{myCommandF} which takes one \meta{argument}.
+ \refCom{myCommandF} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\begin{marker}
+Note that the description \meta{text} may overlap with the text on the left
+hand side if too long. Linebreaks can be used inside the \meta{text}.
+\end{marker}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new={2019-09-18}]{doc label}{=\meta{text}}{no default, initially unset}
+ If used inside the option list of \refEnv{docCommand}, \refEnv{docEnvironment},
+ \refEnv{docKey}, etc, then \meta{text} is used
+ for labeling instead of the name of the definition.
+\begin{dispExample}
+\begin{docPathOperation*}[doc label=pathline]{-{}-}{\meta{coordinate or cycle}}
+ This is the documentation of \refPathOperation{pathline}.
+\end{docPathOperation*}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc new={2020-01-07}]{doc index}{=\meta{text}}{no default, initially unset}
+ If used inside the option list of \refEnv{docCommand}, \refEnv{docEnvironment},
+ \refEnv{docKey}, etc, then \meta{text} is used
+ for the index instead of the name of the definition.
+\begin{dispExample}
+\begin{docPathOperation}[doc index=foo path (horizontal then vertical),
+ doc label=pathline2]{-\textbar}{\meta{coordinate or cycle}}
+ This is the documentation of \refPathOperation{pathline2}.
+\end{docPathOperation}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new={2020-04-23}]{doc sort index}{=\meta{text}}{no default, initially unset}
+ If used inside the option list of \refEnv{docCommand}, \refEnv{docEnvironment},
+ \refEnv{docKey}, etc, then \meta{text} is used
+ for as sort key for the index instead of the name of the definition.
+\begin{dispListing}
+\begin{docCommands}[
+ doc name = l_tcobox_example_tl,
+ doc sort index = example_tl, % sorted unter e like example
+ ]{}
+\end{docCommands}
+\end{dispListing}
+\end{docTcbKey}
+
+\clearpage
+
+\begin{docTcbKey}{doc into index}{\colOpt{=true\textbar false}}{default |true|, initially |true|}
+ If set to |false|, no index entries are written for the main documentation
+ environments. The same effect is achieved by using e.\,g.\ \refEnv{docCommand*}
+ instead of \refEnv{docCommand}.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new={2020-04-22}]{doc no index}{}{style, initially unset}
+ If set, no index entries are written for the main documentation
+ environments. This is a shortcut for using \refKey{/tcb/doc into index}|=false|.
+\end{docTcbKey}
+
+
+
+\begin{docTcbKey}[][doc new=2014-09-19]{doc marginnote}{=\meta{options}}{no default, initially empty}
+ Sets style \meta{options} for the displayed box of the \refCom{tcbdocmarginnote} command.
+\begin{dispExample}
+\tcbset{doc marginnote={colframe=blue!50!white,colback=blue!5!white}}%
+This is some text\tcbdocmarginnote{Note A}
+which is commented by a note inside the margin.
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc new=2014-09-19]{doc new}{=\meta{date}}{style, no default}
+ Adds a a marginnote with a 'New: \meta{data}' message at the beginning of
+ the upper box part. The intended use is inside the option list of
+ \refEnv{docCommand}, \refEnv{docEnvironment}, etc.
+ \makeatletter\renewcommand*{\tcbdocnew}[1]{\kvtcb@text@new: #1}\makeatother%
+\begin{dispExample}
+\begin{docCommand}[doc new=2000-01-01]{foosomething}{\marg{text}}
+Some command for something.
+\end{docCommand}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2014-09-19]{doc updated}{=\meta{date}}{style, no default}
+ Adds a marginnote with a 'Updated: \meta{data}' message at the beginning of
+ the upper box part. See \refKey{/tcb/doc new}.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2014-09-19]{doc new and updated}{=\marg{new date}\marg{update date}}{style, no default}
+ Adds a marginnote with 'New: \meta{new date}' and 'Updated: \meta{update data}' messages at the beginning of
+ the upper box part. See \refKey{/tcb/doc new}.
+\end{docTcbKey}
+
+
+
+\clearpage
+%-------------------------------------------------------------------------------
+\subsection{Entry Customization Option Keys}
+
+
+\begin{docTcbKey}{doc left}{=\meta{length}}{no default, initially |2em|}
+ Sets the left hand offset of the documentation texts from
+ \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
+\begin{dispExample}
+\begin{docCommand*}[doc left=2cm,doc left indent=-2cm]{myCommandA}{\marg{argument}}
+ This is the documentation of \refCom{myCommandA} which takes one \meta{argument}.
+ \refCom{myCommandA} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{doc right}{=\meta{length}}{no default, initially |0em|}
+ Sets the right hand offset of the documentation texts from
+ \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
+\begin{dispExample}
+\begin{docCommand*}[doc right=2cm]{myCommandB}{\marg{argument}}
+ This is the documentation of \refCom{myCommandB} which takes one \meta{argument}.
+ \refCom{myCommandB} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{doc left indent}{=\meta{length}}{no default, initially |-2em|}
+ Sets the left hand indent of documentation heads from
+ \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
+\begin{dispExample}
+\begin{docCommand*}[doc left indent=2cm]{myCommandC}{\marg{argument}}
+ This is the documentation of \refCom{myCommandC} which takes one \meta{argument}.
+ \refCom{myCommandC} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{doc right indent}{=\meta{length}}{no default, initially |0pt|}
+ Sets the right hand indent of documentation heads from
+ \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
+\begin{dispExample}
+\begin{docCommand*}[doc right indent=-10mm,doc right=10mm,
+ doc description=test value]{myCommandD}{\marg{argument}}
+ This is the documentation of \refCom{myCommandD} which takes one \meta{argument}.
+ \refCom{myCommandD} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+The head lines of the main documentation environments \refEnv{docCommand},
+\refEnv{docEnvironment}, \refEnv{docKey}, etc, are |tcolorbox|es inside a
+\refEnv{tcbraster}.
+Options to the surrounding |tcbraster|s and the embedded
+|tcolorbox|es can be given using the following keys.
+
+
+\begin{docTcbKeys}[
+ doc name = doc raster command,
+ doc parameter = {=\meta{options}},
+ doc description = {no default, initially empty},
+ doc new = 2020-04-24,
+]{}
+ Sets \meta{options} for the surrounding \refEnv{tcbraster} of\\
+ \refEnv{docCommand}, \refEnv{docCommand*}, and \refEnv{docCommands}.
+
+\begin{dispExample}
+\tcbset{doc raster command={raster before skip=7mm,raster after skip=0mm}}
+
+The is an example text.
+
+\begin{docCommand*}{myCommandI}{\marg{argument}}
+ This is the documentation of \refCom{myCommandI} which takes one \meta{argument}.
+ \refCom{myCommandI} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+
+\end{docTcbKeys}
+
+
+\begin{docTcbKeys}[
+ doc name = doc raster environment,
+ doc parameter = {=\meta{options}},
+ doc description = {no default, initially empty},
+ doc new = 2020-04-24,
+]{}
+ Sets \meta{options} for the surrounding \refEnv{tcbraster} of\\
+ \refEnv{docEnvironment}, \refEnv{docEnvironment*}, and \refEnv{docEnvironments}.
+\end{docTcbKeys}
+
+
+\begin{docTcbKeys}[
+ doc name = doc raster key,
+ doc parameter = {=\meta{options}},
+ doc description = {no default, initially empty},
+ doc new = 2020-04-24,
+]{}
+ Sets \meta{options} for the surrounding \refEnv{tcbraster} of\\
+ \refEnv{docKey}, \refEnv{docKey*}, and \refEnv{docKeys}.
+\end{docTcbKeys}
+
+
+\begin{docTcbKeys}[
+ doc name = doc raster path,
+ doc parameter = {=\meta{options}},
+ doc description = {no default, initially empty},
+ doc new = 2020-04-24,
+]{}
+ Sets \meta{options} for the surrounding \refEnv{tcbraster} of\\
+ \refEnv{docPathOperation}, \refEnv{docPathOperation*}, and \refEnv{docPathOperations}.
+\end{docTcbKeys}
+
+
+\begin{docTcbKeys}[
+ doc name = doc raster,
+ doc parameter = {=\meta{options}},
+ doc description = {no default, initially empty},
+ doc new = 2020-04-24,
+]{}
+ Shortcut for setting the same \meta{options} for
+ \refKey{/tcb/doc raster command}, \refKey{/tcb/doc raster environment},
+ \refKey{/tcb/doc raster key}, and \refKey{/tcb/doc raster path}.
+\end{docTcbKeys}
+
+
+\begin{docTcbKey}{doc head command}{=\meta{options}}{no default, initially empty}
+ Sets \meta{options} for the head line of
+ \refEnv{docCommand}, \refEnv{docCommand*}, and \refEnv{docCommands}.
+\begin{dispExample}
+\tcbset{doc head command={interior style={fill,left color=red!20!white,
+ right color=blue!20!white}}}
+
+\begin{docCommand*}{myCommandE}{\marg{argument}}
+ This is the documentation of \refCom{myCommandE} which takes one \meta{argument}.
+ \refCom{myCommandE} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+
+\begin{docTcbKey}{doc head environment}{=\meta{options}}{no default, initially empty}
+ Sets \meta{options} for the head line of
+ \refEnv{docEnvironment}, \refEnv{docEnvironment*}, and \refEnv{docEnvironments}.
+\begin{dispExample}
+\tcbset{doc head environment={beamer,boxsep=2pt,arc=2pt,colback=green!20!white}}
+
+\begin{docEnvironment*}{myEnvironment}{\marg{argument}}
+ This is the documentation of \refEnv{myEnvironment} which
+ takes one \meta{argument}.
+\end{docEnvironment*}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{doc head key}{=\meta{options}}{no default, initially empty}
+ Sets \meta{options} for the head line of
+ \refEnv{docKey}, \refEnv{docKey*}, and \refEnv{docKeys}.
+\begin{dispExample}
+\tcbset{doc head key={boxsep=4pt,arc=4pt,boxrule=0.6pt,
+ frame style=fill,interior style=fill,colframe=green!50!black}}
+
+\begin{docKey}{/foo/myKey}{}{no value}
+ This is the documentation of \refKey{/foo/myKey}.
+\end{docKey}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2019-09-18]{doc head path}{=\meta{options}}{no default, initially empty}
+ Sets \meta{options} for the head line of
+ \refEnv{docPathOperation}, \refEnv{docPathOperation*}, and \refEnv{docPathOperations}.
+\begin{dispExample}
+\tcbset{doc head command={interior style={fill,left color=red!7!white,
+ right color=blue!7!white}}}
+
+\begin{docPathOperation*}{-{}-}{\meta{coordinate or cycle}}
+ This is the documentation of \refPathOperation{-{}-}.
+\end{docPathOperation*}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc updated=2019-09-18]{doc head}{=\meta{options}}{no default, initially empty}
+ Shortcut for setting the same \meta{options} for
+ \refKey{/tcb/doc head command}, \refKey{/tcb/doc head environment},
+ \refKey{/tcb/doc head key}, and \refKey{/tcb/doc head path}.
+\end{docTcbKey}
+
+
+\clearpage
+
+The description texts of the main documentation environments \refEnv{docCommand},
+\refEnv{docEnvironment}, \refEnv{docKey}, etc, are set in a compact form without
+indention and |parskip=0pt|. This settings can overruled by using the following
+keys to insert code before (or after) the description texts.
+
+\begin{docTcbKey}[][doc new=2015-10-09]{before doc body command}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} before the description texts
+ of \refEnv{docCommand} and \refEnv{docCommand*}.
+\begin{dispExample}
+\tcbset{before doc body command={%
+ \setlength{\parindent}{2.5em}%
+ \setlength{\parskip}{1ex plus 0.75ex minus 0.25ex}%
+}}
+
+\begin{docCommand*}{myCommandG}{\marg{argument}}
+ This is the documentation of \refCom{myCommandG} which takes one \meta{argument}.
+ \refCom{myCommandG} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2015-10-09]{after doc body command}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} after the description texts
+ of \refEnv{docCommand} and \refEnv{docCommand*}.
+\begin{dispExample}
+\tcbset{after doc body command={%
+ \hfill\nolinebreak[1]\hspace*{\fill}\textcolor{red}{$\diamondsuit$}%
+}}
+
+\begin{docCommand*}{myCommandH}{\marg{argument}}
+ This is the documentation of \refCom{myCommandH} which takes one \meta{argument}.
+ \refCom{myCommandH} does some funny things with its \meta{argument}.
+\end{docCommand*}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2015-10-09]{before doc body environment}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} before the description texts
+ of \refEnv{docEnvironment} and \refEnv{docEnvironment*}.
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc new=2015-10-09]{after doc body environment}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} after the description texts
+ of \refEnv{docEnvironment} and \refEnv{docEnvironment*}.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2015-10-09]{before doc body key}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} before the description texts
+ of \refEnv{docKey} and \refEnv{docKey*}.
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc new=2015-10-09]{after doc body key}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} after the description texts
+ of \refEnv{docKey} and \refEnv{docKey*}.
+\end{docTcbKey}
+
+\clearpage
+
+\begin{docTcbKey}[][doc new=2019-09-18]{before doc body path}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} before the description texts
+ of \refEnv{docPathOperation} and \refEnv{docPathOperation*}.
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc new=2019-09-18]{after doc body path}{=\meta{code}}{no default, initially empty}
+ Executes \meta{code} after the description texts
+ of \refEnv{docPathOperation} and \refEnv{docPathOperation*}.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new and updated={2015-10-09}{2019-09-18}]{before doc body}{=\meta{options}}{no default, initially empty}
+ Shortcut for setting the same \meta{options} for
+ \refKey{/tcb/before doc body command}, \refKey{/tcb/before doc body environment},
+ \refKey{/tcb/before doc body key}, and \refKey{/tcb/before doc body path}.
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc new and updated={2015-10-09}{2019-09-18}]{after doc body}{=\meta{options}}{no default, initially empty}
+ Shortcut for setting the same \meta{options} for
+ \refKey{/tcb/after doc body command}, \refKey{/tcb/after doc body environment},
+ \refKey{/tcb/after doc body key}, and \refKey{/tcb/after doc body path}.
+\end{docTcbKey}
+
+
+
+
+
+
+
+\clearpage
+\subsection{General Customization Option Keys}
\begin{docTcbKey}[][doc updated=2015-03-16]{docexample}{}{style, no value}
Sets the style for \refEnv{dispExample} and \refEnv{dispListing}
@@ -556,7 +1225,7 @@ with another note.
\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:2018a}.
+ Sets the options from the package |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 'normal' listings.\\
@@ -566,7 +1235,7 @@ with another note.
\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:2018a}.
+ for the |listings| package, see \cite{hoffmann:listings}.
Note that this is not identical to the key
\refKey{/tcb/listing style} which is used for 'normal' listings.\\
Used for \refKey{/tcb/listing engine}|=listings| only.
@@ -667,7 +1336,8 @@ instead. Also see \refKey{/tcb/docexample}.
\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
- \emph{before} |tcolorbox|.
+ \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|.
\end{itemize}
@@ -771,6 +1441,9 @@ instead. Also see \refKey{/tcb/docexample}.
\clearpage
+%-------------------------------------------------------------------------------
+\subsection{Language Option Keys}
+
The following keys are provided for language specific settings.
The English language is predefined.
@@ -856,269 +1529,11 @@ The English language is predefined.
-\clearpage
-\begin{docTcbKey}{doc left}{=\meta{length}}{no default, initially |2em|}
- Sets the left hand offset of the documentation texts from
- \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
-\begin{dispExample}
-\begin{docCommand*}[doc left=2cm,doc left indent=-2cm]{myCommandA}{\marg{argument}}
- This is the documentation of \refCom{myCommandA} which takes one \meta{argument}.
- \refCom{myCommandA} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\end{docTcbKey}
-
-\begin{docTcbKey}{doc right}{=\meta{length}}{no default, initially |0em|}
- Sets the right hand offset of the documentation texts from
- \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
-\begin{dispExample}
-\begin{docCommand*}[doc right=2cm]{myCommandB}{\marg{argument}}
- This is the documentation of \refCom{myCommandB} which takes one \meta{argument}.
- \refCom{myCommandB} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\end{docTcbKey}
-
-\begin{docTcbKey}{doc left indent}{=\meta{length}}{no default, initially |-2em|}
- Sets the left hand indent of documentation heads from
- \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
-\begin{dispExample}
-\begin{docCommand*}[doc left indent=2cm]{myCommandC}{\marg{argument}}
- This is the documentation of \refCom{myCommandC} which takes one \meta{argument}.
- \refCom{myCommandC} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\end{docTcbKey}
-
-\enlargethispage*{10mm}
-\begin{docTcbKey}{doc right indent}{=\meta{length}}{no default, initially |0pt|}
- Sets the right hand indent of documentation heads from
- \refEnv{docCommand}, \refEnv{docEnvironment}, \refEnv{docKey}, etc, to \meta{length}.
-\begin{dispExample}
-\begin{docCommand*}[doc right indent=-10mm,doc right=10mm,
- doc description=test value]{myCommandD}{\marg{argument}}
- This is the documentation of \refCom{myCommandD} which takes one \meta{argument}.
- \refCom{myCommandD} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\end{docTcbKey}
-
-\clearpage
-The head lines of the main documentation environments \refEnv{docCommand},
-\refEnv{docEnvironment}, \refEnv{docKey}, etc, are set inside |tcolorbox|es.
-Options to these |tcolorbox|es can be given using the following keys.
-
-\begin{docTcbKey}{doc head command}{=\meta{options}}{no default, initially empty}
- Sets \meta{options} for the head line of \refEnv{docCommand} and \refEnv{docCommand*}.
-\begin{dispExample}
-\tcbset{doc head command={interior style={fill,left color=red!20!white,
- right color=blue!20!white}}}
-
-\begin{docCommand*}{myCommandE}{\marg{argument}}
- This is the documentation of \refCom{myCommandE} which takes one \meta{argument}.
- \refCom{myCommandE} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\end{docTcbKey}
-
-\begin{docTcbKey}{doc head environment}{=\meta{options}}{no default, initially empty}
- Sets \meta{options} for the head line of \refEnv{docEnvironment} and \refEnv{docEnvironment*}.
-\begin{dispExample}
-\tcbset{doc head environment={beamer,boxsep=2pt,arc=2pt,colback=green!20!white,
- after=\par\smallskip}}
-
-\begin{docEnvironment*}{myEnvironment}{\marg{argument}}
- This is the documentation of \refEnv{myEnvironment} which
- takes one \meta{argument}.
-\end{docEnvironment*}
-\end{dispExample}
-\end{docTcbKey}
-
-\begin{docTcbKey}{doc head key}{=\meta{options}}{no default, initially empty}
- Sets \meta{options} for the head line of \refEnv{docKey} and \refEnv{docKey*}.
-\begin{dispExample}
-\tcbset{doc head key={boxsep=4pt,arc=4pt,boxrule=0.6pt,
- frame style=fill,interior style=fill,colframe=green!50!black}}
-
-\begin{docKey*}{/foo/myKey}{}{no value}
- This is the documentation of \refKey{/foo/myKey}.
-\end{docKey*}
-\end{dispExample}
-\end{docTcbKey}
-
-\clearpage
-\begin{docTcbKey}[][doc new=2019-09-18]{doc head path}{=\meta{options}}{no default, initially empty}
- Sets \meta{options} for the head line of \refEnv{docPathOperation} and \refEnv{docPathOperation*}.
-\begin{dispExample}
-\tcbset{doc head command={interior style={fill,left color=red!7!white,
- right color=blue!7!white}}}
-
-\begin{docPathOperation*}{-{}-}{\meta{coordinate or cycle}}
- This is the documentation of \refPathOperation{-{}-}.
-\end{docPathOperation*}
-\end{dispExample}
-\end{docTcbKey}
-
-
-\begin{docTcbKey}[][doc updated=2019-09-18]{doc head}{=\meta{options}}{no default, initially empty}
- Shortcut for setting the same \meta{options} for
- \refKey{/tcb/doc head command}, \refKey{/tcb/doc head environment},
- \refKey{/tcb/doc head key}, and \refKey{/tcb/doc head path}.
-\end{docTcbKey}
-
-
-The description texts of the main documentation environments \refEnv{docCommand},
-\refEnv{docEnvironment}, \refEnv{docKey}, etc, are set in a compact form without
-indention and |parskip=0pt|. This settings can overruled by using the following
-keys to insert code before (or after) the description texts.
-
-\begin{docTcbKey}[][doc new=2015-10-09]{before doc body command}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} before the description texts
- of \refEnv{docCommand} and \refEnv{docCommand*}.
-\begin{dispExample}
-\tcbset{before doc body command={%
- \setlength{\parindent}{2.5em}%
- \setlength{\parskip}{1ex plus 0.75ex minus 0.25ex}%
-}}
-
-\begin{docCommand*}{myCommandG}{\marg{argument}}
- This is the documentation of \refCom{myCommandG} which takes one \meta{argument}.
- \refCom{myCommandG} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\end{docTcbKey}
-
-
-\begin{docTcbKey}[][doc new=2015-10-09]{after doc body command}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} after the description texts
- of \refEnv{docCommand} and \refEnv{docCommand*}.
-\begin{dispExample}
-\tcbset{after doc body command={%
- \hfill\nolinebreak[1]\hspace*{\fill}\textcolor{red}{$\diamondsuit$}%
-}}
-
-\begin{docCommand*}{myCommandH}{\marg{argument}}
- This is the documentation of \refCom{myCommandH} which takes one \meta{argument}.
- \refCom{myCommandH} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\end{docTcbKey}
-
-\clearpage
-\begin{docTcbKey}[][doc new=2015-10-09]{before doc body environment}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} before the description texts
- of \refEnv{docEnvironment} and \refEnv{docEnvironment*}.
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new=2015-10-09]{after doc body environment}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} after the description texts
- of \refEnv{docEnvironment} and \refEnv{docEnvironment*}.
-\end{docTcbKey}
-
-
-\begin{docTcbKey}[][doc new=2015-10-09]{before doc body key}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} before the description texts
- of \refEnv{docKey} and \refEnv{docKey*}.
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new=2015-10-09]{after doc body key}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} after the description texts
- of \refEnv{docKey} and \refEnv{docKey*}.
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new=2019-09-18]{before doc body path}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} before the description texts
- of \refEnv{docPathOperation} and \refEnv{docPathOperation*}.
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new=2019-09-18]{after doc body path}{=\meta{code}}{no default, initially empty}
- Executes \meta{code} after the description texts
- of \refEnv{docPathOperation} and \refEnv{docPathOperation*}.
-\end{docTcbKey}
-
-
-\begin{docTcbKey}[][doc new and updated={2015-10-09}{2019-09-18}]{before doc body}{=\meta{options}}{no default, initially empty}
- Shortcut for setting the same \meta{options} for
- \refKey{/tcb/before doc body command}, \refKey{/tcb/before doc body environment},
- \refKey{/tcb/before doc body key}, and \refKey{/tcb/before doc body path}.
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new and updated={2015-10-09}{2019-09-18}]{after doc body}{=\meta{options}}{no default, initially empty}
- Shortcut for setting the same \meta{options} for
- \refKey{/tcb/after doc body command}, \refKey{/tcb/after doc body environment},
- \refKey{/tcb/after doc body key}, and \refKey{/tcb/after doc body path}.
-\end{docTcbKey}
-%\clearpage
-\begin{docTcbKey}{doc description}{=\meta{text}}{no default, initially empty}
- Sets a (short!) additional description \meta{text} for
- \refEnv{docCommand}, \refEnv{docEnvironment}, or \refEnv{docPathOperation}.
- Such a description is
- mandatory for \refEnv{docKey}.
-\begin{dispExample}
-\begin{docCommand*}[doc description=my description]{myCommandF}{\marg{argument}}
- This is the documentation of \refCom{myCommandF} which takes one \meta{argument}.
- \refCom{myCommandF} does some funny things with its \meta{argument}.
-\end{docCommand*}
-\end{dispExample}
-\begin{marker}
-Note that the description \meta{text} may overlap with the text on the left
-hand side if too long. Linebreaks can be used inside the \meta{text}.
-\end{marker}
-\end{docTcbKey}
\clearpage
-\begin{docTcbKey}[][doc new={2019-09-18}]{doc label}{=\meta{text}}{no default, initially unset}
- If used inside the option list of \refEnv{docCommand}, \refEnv{docEnvironment},
- \refEnv{docKey}, or \refEnv{docPathOperation}, then \meta{text} is used
- for labeling instead of the name of the definition.
-\begin{dispExample}
-\begin{docPathOperation*}[doc label=pathline]{-{}-}{\meta{coordinate or cycle}}
- This is the documentation of \refPathOperation{pathline}.
-\end{docPathOperation*}
-\end{dispExample}
-\end{docTcbKey}
-
-
-\begin{docTcbKey}{doc into index}{\colOpt{=true\textbar false}}{default |true|, initially |true|}
- If set to |false|, no index entries are written for the main documentation
- environments. The same effect is achieved by using e.\,g.\ \refEnv{docCommand*}
- instead of \refEnv{docCommand}.
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new=2014-09-19]{doc marginnote}{=\meta{options}}{no default, initially empty}
- Sets style \meta{options} for the displayed box of the \refCom{tcbdocmarginnote} command.
-\begin{dispExample}
-\tcbset{doc marginnote={colframe=blue!50!white,colback=blue!5!white}}%
-This is some text\tcbdocmarginnote{Note A}
-which is commented by a note inside the margin.
-\end{dispExample}
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new=2014-09-19]{doc new}{=\meta{date}}{style, no default}
- Adds a a marginnote with a 'New: \meta{data}' message at the beginning of
- the upper box part. The intended use is inside the option list of
- \refEnv{docCommand}, \refEnv{docEnvironment}, etc.
- \makeatletter\renewcommand*{\tcbdocnew}[1]{\kvtcb@text@new: #1}\makeatother%
-\begin{dispExample}
-\begin{docCommand}[doc new=2000-01-01]{foosomething}{\marg{text}}
-Some command for something.
-\end{docCommand}
-\end{dispExample}
-\end{docTcbKey}
-
-\begin{docTcbKey}[][doc new=2014-09-19]{doc updated}{=\meta{date}}{style, no default}
- Adds a marginnote with a 'Updated: \meta{data}' message at the beginning of
- the upper box part. See \refKey{/tcb/doc new}.
-\end{docTcbKey}
-
-
-\begin{docTcbKey}[][doc new=2014-09-19]{doc new and updated}{=\marg{new date}\marg{update date}}{style, no default}
- Adds a marginnote with 'New: \meta{new date}' and 'Updated: \meta{update data}' messages at the beginning of
- the upper box part. See \refKey{/tcb/doc new}.
-\end{docTcbKey}
\subsection{Predefined Colors of the Library}\tcbdocmarginnote{\tcbdocupdated{2019-09-18}}
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex
index f6b20fb2e2..c91bc1bb19 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex
@@ -18,7 +18,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
Fills the current path with an external image referenced by \meta{file name}.
The image is put in the center of the path, but it is not resized to fit into
the path area.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill plain image=goldshade.png]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
@@ -34,9 +34,10 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
The image is put in the center of the path, but it is not resized to fit into
the path area.
The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
-\path[draw,fill plain image*={width=2.5cm}{goldshade.png}]
+\path[draw,
+ fill plain image*={width=2.5cm}{goldshade.png}]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
\foreach \w in {45,90,...,315}
{ -- (\w:1.5cm) } -- cycle;
@@ -49,7 +50,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
Fills the current path with the given \meta{graphical code}.
The result is put in the center of the path, but it is not resized to fit into
the path area. Note that this is almost identical to the standard |path picture| option.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill plain picture={%
\draw[red!50!yellow,line width=2mm]
@@ -70,7 +71,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\begin{docTikzKey}{fill stretch image}{=\meta{file name}}{no default, initially unset}
Fills the current path with an external image referenced by \meta{file name}.
The image is stretched to fill the path area.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[fill stretch image=goldshade.png]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
@@ -85,7 +86,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
Fills the current path with an external image referenced by \meta{file name}.
The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command.
The image is stretched to fill the path area.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[fill stretch image*=
{angle=90,origin=c}{goldshade.png}]
@@ -100,7 +101,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\begin{docTikzKey}{fill stretch picture}{=\meta{graphical code}}{no default, initially unset}
Fills the current path with the given \meta{graphical code}.
The result is stretched to fill the path area.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill stretch picture={%
\draw[red!50!yellow,line width=2mm]
@@ -121,7 +122,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\begin{docTikzKey}{fill overzoom image}{=\meta{file name}}{no default, initially unset}
Fills the current path with an external image referenced by \meta{file name}.
The image is zoomed such that the path area fills the image.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[fill overzoom image=goldshade.png]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
@@ -136,7 +137,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
Fills the current path with an external image referenced by \meta{file name}.
The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command.
The image is zoomed such that the path area fills the image.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[fill overzoom image*=
{angle=90,origin=c}{goldshade.png}]
@@ -151,7 +152,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\begin{docTikzKey}{fill overzoom picture}{=\meta{graphical code}}{no default, initially unset}
Fills the current path with the given \meta{graphical code}.
The result is zoomed such that the path area fills the image.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill overzoom picture={%
\draw[red!50!yellow,line width=2mm]
@@ -173,7 +174,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
Fills the current path with an external image referenced by \meta{file name}.
The image is zoomed such that it fits inside the path area.
Typically, some parts of the path area will stay unfilled.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill zoom image=goldshade.png]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
@@ -189,7 +190,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command.
The image is zoomed such that it fits inside the path area.
Typically, some parts of the path area will stay unfilled.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill zoom image*=
{angle=90,origin=c}{goldshade.png}]
@@ -205,7 +206,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
Fills the current path with the given \meta{graphical code}.
The result is zoomed such that it fits inside the path area.
Typically, some parts of the path area will stay unfilled.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill zoom picture={%
\draw[red!50!yellow,line width=2mm]
@@ -228,7 +229,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
The image is zoomed such that it fits inside the path area, but it never
gets enlarged.
Typically, some parts of the path area will stay unfilled.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill shrink image=goldshade.png]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
@@ -245,9 +246,10 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
The image is zoomed such that it fits inside the path area, but it never
gets enlarged.
Typically, some parts of the path area will stay unfilled.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
-\path[draw,fill shrink image*={width=1.5cm}{goldshade.png}]
+\path[draw,
+ fill shrink image*={width=1.5cm}{goldshade.png}]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
\foreach \w in {45,90,...,315}
{ -- (\w:1.5cm) } -- cycle;
@@ -261,7 +263,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
The result is zoomed such that it fits inside the path area, but it never
gets enlarged.
Typically, some parts of the path area will stay unfilled.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill shrink picture={%
\draw[red!50!yellow,line width=2mm]
@@ -281,7 +283,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\subsection{Fill Tile}
\begin{docTikzKey}{fill tile image}{=\meta{file name}}{no default, initially unset}
Fills the current path with a tile pattern using an external image referenced by \meta{file name}.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[fill tile image=pink_marble.png]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
@@ -295,7 +297,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\begin{docTikzKey}{fill tile image*}{=\marg{graphics options}\marg{file name}}{no default, initially unset}
Fills the current path with a tile pattern using an external image referenced by \meta{file name}.
The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[fill tile image*={width=1cm}{pink_marble.png}]
(2.75,-0.75) -- (3,0) -- (2.75,0.75)
@@ -307,7 +309,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\begin{docTikzKey}{fill tile picture}{=\meta{graphical code}}{no default, initially unset}
Fills the current path with a tile pattern using the given \meta{graphical code}.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill tile picture={%
\draw[red!50!yellow,line width=2mm]
@@ -326,7 +328,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
\begin{docTikzKey}{fill tile picture*}{=\marg{fraction}\marg{graphical code}}{no default, initially unset}
Fills the current path with a tile pattern using the given \meta{graphical code}.
The graphic is resized by \meta{fraction}.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[draw,fill tile picture*={0.25}{%
\draw[red!50!yellow,line width=2mm]
@@ -384,7 +386,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk
for the image fill options. This can be just together with
\refKey{/tikz/fill stretch image}, \refKey{/tikz/fill overzoom image}, \refKey{/tikz/fill zoom image},
and \refKey{/tikz/fill tile image}.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\path[fill image options={width=1cm},
fill tile image=pink_marble.png]
@@ -429,7 +431,7 @@ all corners by little arcs. |\tcbpatcharcangular| is a patch which
straightens the arcs. To say it more prosaic, the little arcs are replaced
by little straight lines.
-\begin{dispExample*}{sbs,lefthand ratio=0.66}
+\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower}
\begin{tikzpicture}
\draw[thick,rounded corners=8pt]
(0,0) -- (0,2) -- (1,3.25) -- (2,2) -- (2,0)
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex
index 8ff8fa0792..20feddda9a 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex
@@ -93,14 +93,32 @@ elaborate methods to create new commands.
An existing macro is redefined.
\end{docCommand}
-\enlargethispage*{1cm}
+
+\clearpage
+
+\begin{docCommands}[
+ doc name = tcbfitdim,
+ doc description = {read-only \LaTeX\ length},
+ doc updated = 2020-04-24,
+ ]{}
+ This is a \LaTeX\ length adapted automatically by most variants of
+ \refKey{/tcb/fit algorithm}. Therefore, it never is to be
+ changed by the user, but may be applied read-only.
+ The \refCom{tcbfitdim} corresponds to the font size and may also
+ be used to calculate box margins or other distances in dependency.
+ The initial and maximum value for \refCom{tcbfitdim} is set by
+ \refKey{/tcb/fit basedim}.
+\end{docCommands}
+
+
\begin{docCommand}{tcbfontsize}{\marg{factor}}
Selects a font size inside a tcolorbox which is scaled with the given
- \meta{factor} relative to \docAuxCommand{tcbfitdim}.%
- %, see Subsection \ref{subsec:fit} from page \pageref{subsec:fit}.
+ \meta{factor} relative to \refCom{tcbfitdim}.
+ Also see \refKey{/tcb/fit fontsize macros}
\begin{dispExample*}{sbs,lefthand ratio=0.6}
-\tcbset{colback=red!5!white,colframe=red!75!black}
+\tcbset{colback=red!5!white,size=small,
+ colframe=red!75!black}
\begin{tcolorbox}[fit basedim=10pt]
{\tcbfontsize{0.25} Very tiny,}\\
{\tcbfontsize{0.5} Small,}\\
@@ -109,6 +127,18 @@ elaborate methods to create new commands.
{\tcbfontsize{4} Huge.}
\end{tcolorbox}
\end{dispExample*}
+\begin{dispExample*}{sbs,lefthand ratio=0.6}
+\tcbset{colback=red!5!white,size=small,
+ colframe=red!75!black}
+\begin{tcolorbox}[fit basedim=10pt,
+ fit to height=2cm]
+ {\tcbfontsize{0.25} Very tiny,}\\
+ {\tcbfontsize{0.5} Small,}\\
+ {\tcbfontsize{1} Normal,}\\
+ {\tcbfontsize{2} Large,}\\
+ {\tcbfontsize{4} Huge.}
+\end{tcolorbox}
+\end{dispExample*}
\end{docCommand}
@@ -124,6 +154,7 @@ The algorithm will fail, if a different selected font size does not change the
overall size of the box content.
The \refCom{tcboxfit} macro uses this algorithm by default.
+
\medskip
\begin{marker}
The fit control keys are only applicable to unbreakable boxes without
@@ -139,7 +170,7 @@ The \refCom{tcboxfit} macro uses this algorithm by default.
like \refCom{tcboxfit} where the given \meta{box content} is fitted to
the width and height of the box. Therefore, the box has to have a fixed height.
If no fixed height is given, a square box is constructed.
- The font dimension \docAuxCommand{tcbfitdim} can also be used to adjust
+ The font dimension \refCom{tcbfitdim} can also be used to adjust
the margins of the box since a box with a tiny font may not need large
margins. The number of constructed boxes is saved to the macro \docAuxCommand{tcbfitsteps}
for analysis.
@@ -196,6 +227,8 @@ The \refCom{tcboxfit} macro uses this algorithm by default.
\begin{docTcbKey}{fit basedim}{=\meta{length}}{no default, initially |10pt|}
Sets the starting font dimension for the font size adjustment algorithm
to \meta{length}. The algorithm never enlarges this dimension.
+ Therefore, the final \refCom{tcbfitdim} is identical to or small than
+ \meta{length}.
\begin{dispExample*}{sbs,lefthand ratio=0.6}
\tcbset{colback=red!5!white,colframe=red!75!black}
@@ -213,7 +246,7 @@ The \refCom{tcboxfit} macro uses this algorithm by default.
\begin{docTcbKey}{fit skip}{=\meta{real value}}{no default, initially |1.2|}
- Sets the skip value of the selected font to \meta{real value} times \docAuxCommand{tcbfitdim}.
+ Sets the skip value of the selected font to \meta{real value} times \refCom{tcbfitdim}.
\begin{dispExample*}{sbs,lefthand ratio=0.6}
% \usepackage{lipsum}
@@ -236,8 +269,9 @@ The \refCom{tcboxfit} macro uses this algorithm by default.
|\tiny|, |\scriptsize|, |\footnotesize|, |\small|, |\normalsize|,
|\large|, |\Large|, |\LARGE|, |\huge|, and |\Huge|,
to set font sizes relative to
- the current \docAuxCommand{tcbfitdim}. Note that the display skip values for
+ the current \refCom{tcbfitdim}. Note that the display skip values for
mathematical formulas are respected by the redefined macros.
+ Also see \refCom{tcbfontsize}.
\begin{dispExample*}{sbs,lefthand ratio=0.6}
% \usepackage{lipsum}
@@ -395,7 +429,8 @@ This is a tcolorbox. This is a tcolorbox. This is a tcolorbox.
\clearpage
\begin{docTcbKey}{fit algorithm}{=\meta{name}}{no default, initially |fontsize|}
Sets the algorithm for the fitting process \emph{after} optionally width and height
-are adapted.
+are adapted. In the following, adapting the font size means adapting
+\refCom{tcbfitdim}.
Feasible values for \meta{name} are:
\begin{itemize}
\item\docValue{fontsize} (initial):
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.hooks.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.hooks.tex
index 33782234fe..9d00380f42 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.hooks.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.hooks.tex
@@ -369,6 +369,8 @@ This example uses a public domain picture from\\
\end{dispExample}
\end{docTcbKey}
+\enlargethispage*{1cm}
+
\begin{docTcbKey}{watermark tikz app on}{=\meta{part} is \meta{graphical code}}{no default}
Appends a \refKey{/tcb/watermark tikz on} the named \meta{part} of a break sequence.
\end{docTcbKey}
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex
index 4a41654264..ef1ebcf055 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex
@@ -106,6 +106,7 @@ The created boxes are not numbered. This is the default. The option may
be used to overrule a previous option.
\end{newTcbKey}
+\enlargethispage*{1cm}
\begin{newTcbKey}[][doc new=2019-10-18]{reset counter on overlays}{\colOpt{=true\textbar false}}{default |true|, initially |false|}
For |beamer| slides, this invokes the |\resetcounteronoverlays| command
@@ -218,7 +219,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:2018a}.
+ of the package |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 84d9b00b05..4c8fb7683a 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.intro.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.intro.tex
@@ -4,22 +4,19 @@
\section{Introduction}%
\tcbset{external/prefix=external/intro_}%
The package originates from the first edition of my book
-\flqq{\citetitle{sturm:2016e}\frqq~\cite{sturm:2016e}
+\flqq{\citetitle{sturm:latex}\frqq~\cite{sturm:latex}
in about 2006.
For the \LaTeX\ examples and tutorials given there, I wanted to have
accentuated and colored boxes to display source code and
compiled text in combination.
Since, in my opinion, this type of boxes is also quite useful to highlight definitions
and theorems, I applied them for my lecture notes in
-mathematics \cite{sturm:2007b,sturm:2008b,sturm:2010a}
+mathematics \cite{sturm:mathe1,sturm:mathe2,sturm:mathe3}
as well.
With this package, you are invited to apply these boxes for similar projects.
-Starting with version 2.00, for all internal calculations
-$\varepsilon$-\TeX\ \cite{breitenlohner:1998a} expressions are used
-in replacement of the package |calc|.
-The breaking news for version 2.00 is the support for breakable boxes.
-This new feature allows new applications of the package without
+The breaking news for version 2.00 was the support for breakable boxes.
+This feature allows new applications of the package without
affecting the core package too much if you do not need boxes to break automatically.
With version 2.20, the often requested 'side by side' mode for listings has been added.
With version 3.00, boxed titles are introduced together with improved
@@ -52,7 +49,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:2001a},
-|etoolbox| \cite{lehmann:2018a},
+|etoolbox| \cite{lehmann:etoolbox},
and |environ| \cite{robertson:2014a}.
|tcolorbox| itself is loaded in the usual manner in the preamble:
\begin{dispListing}
@@ -101,14 +98,14 @@ The following keys are used inside |\tcbuselibrary| respectively
\end{docTcbKey}
\begin{docTcbKey}[library]{listings}{}{\mylib{listings}}
- Loads the package |listings| \cite{hoffmann:2018a} and provides additional
+ Loads the package |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:2018a} and
- |listingsutf8| \cite{oberdiek:2016b} for UTF-8 support.
+ Loads the packages |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}
from page~\pageref{sec:listings}.
@@ -186,7 +183,7 @@ The following keys are used inside |\tcbuselibrary| respectively
\end{docTcbKey}
\begin{docTcbKey}[library]{all}{}{style, no value}
- Loads all libraries. Use this shortcut only, if you indend to use the
+ Loads all libraries. Use this shortcut only, if you intend to use the
\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 2abe145bb6..0be60d6e07 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:2018a} to typeset
+This library uses the package |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:2018a}.
+This also loads the package |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
@@ -43,17 +43,19 @@ To reactivate this setting, if overwritten by other libraries, use
\subsubsection{Loading \mylib{listingsutf8}}
\begin{marker}
This library is not needed (and troublesome) when using Xe\LaTeX\ or Lua\LaTeX.
+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:2016b} by loading the library
+the package |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:2018a}
-and |listingsutf8| \cite{oberdiek:2016b}.
+and the packages |listings| \cite{hoffmann:listings}
+and |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
@@ -322,7 +324,7 @@ This is my \LaTeX\ box.
\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:2018a}
+ Sets the options from the package |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.
@@ -352,7 +354,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:2018a}.
+ for the |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,
@@ -425,6 +427,8 @@ For an combined example of using |\lstinline| inside a |tcolorbox|, see
\subsection{Option Keys of the \mylib{listingsutf8} Library}
\begin{marker}
The \mylib{listingsutf8} library is not needed (and troublesome) when using Xe\LaTeX\ or Lua\LaTeX.
+Therefore, loading this library is automatically replaced by loading
+\mylib{listings} only, if pdf\LaTeX\ is \emph{not} used.
\end{marker}
The \mylib{listingsutf8} library is an extension of the
@@ -433,10 +437,10 @@ 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:2016b}.
+ together with UTF-8 support from the package |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:2016b}, e.\,g.\ |latin1|
+ 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
@@ -635,7 +639,7 @@ This is a \LaTeX\ example.
\end{dispExample}
\end{docTcbKey}
-%\enlargethispage*{1cm}
+\clearpage
\begin{docTcbKey}[][doc new=2014-11-14]{pdf comment}{\colOpt{=\meta{filename}}}{style, default listing file, initially unset}
Uses a PDF file denoted by \meta{filename} as \textit{comment} for the listing.
@@ -744,6 +748,7 @@ This is a \LaTeX\ example.
\end{dispExample}
\end{docTcbKey}
+\clearpage
\begin{docTcbKey}{text outside listing}{}{no value}
Typesets the environment content side by side as listing in a |tcolorbox|
@@ -760,7 +765,7 @@ This is a \LaTeX\ example.
\end{docTcbKey}
-\clearpage
+
\begin{docTcbKey}{listing side comment}{}{style, no value}
Typesets the environment content side by side as listing in the left (upper)
part and a given comment in the right (lower) part.
@@ -786,8 +791,8 @@ This is a \LaTeX\ example.
\end{dispExample}
\end{docTcbKey}
+\clearpage
-\enlargethispage*{2cm}
\begin{docTcbKey}{listing outside comment}{}{no value}
Typesets the environment content side by side as listing in a |tcolorbox|
and a given comment outside the box in the right part of the page.
@@ -820,7 +825,7 @@ This is a \LaTeX\ example.
\end{docTcbKey}
-\clearpage
+
\begin{docTcbKey}{listing above text}{}{no value}
Typesets the environment content as listing in a |tcolorbox|
and as compiled text outside and below the box.
@@ -842,6 +847,7 @@ This is a \LaTeX\ example.
The distance between box and text is controlled by \refKey{/tcb/after}.
\end{docTcbKey}
+\clearpage
\begin{docTcbKey}{text above listing}{}{no value}
Typesets the environment content as listing in a |tcolorbox|
@@ -865,7 +871,7 @@ This is a \LaTeX\ example.
\end{docTcbKey}
-\clearpage
+
\begin{docTcbKey}{listing above comment}{}{no value}
Typesets the environment content as listing in a |tcolorbox|
and a given comment outside and below the box.
@@ -888,6 +894,7 @@ This is a \LaTeX\ example.
The distance between box and comment is controlled by \refKey{/tcb/after}.
\end{docTcbKey}
+\clearpage
\begin{docTcbKey}{comment above listing}{}{no value}
Typesets the environment content as listing in a |tcolorbox|
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex
index 3be23c743a..2587521132 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.poster.tex
@@ -194,12 +194,17 @@ documentation:\par
\begin{posterTcbKey}[][doc new=2017-07-03]{width}{=\meta{length}}{no default, initially \cs{linewidth}}
Sets \meta{length} as width of the poster. For a typical poster, this has not
- to be set manually.
+ to be set manually. Especially, if \refKey{/tcb/posterset/coverage} is present,
+ use |coverage={width=|\meta{length}|}| instead to change the overall width.
\end{posterTcbKey}
+\enlargethispage*{1cm}
+
\begin{posterTcbKey}[][doc new=2017-07-03]{height}{=\meta{length}}{no default, initially unset}
Sets \meta{length} as height of the poster. For a typical poster, this has not
to be set manually, but is set automatically to an appropriate value.
+ If \refKey{/tcb/posterset/coverage} is present, use only one if any option
+ |coverage={height=|\meta{length}|}| or |poster={height=|\meta{length}|}|.
\end{posterTcbKey}
@@ -248,6 +253,11 @@ The \meta{option list} can contain any |tcolorbox| option.
\refKey{/tcb/top}, \refKey{/tcb/bottom}.
\item Poster background can be changed by \refKey{/tcb/colback},
\refKey{/tcb/interior style}, \refKey{/tcb/interior style image}, etc.
+\item Do not use \refKey{/tcb/poster/width} and \refKey{/tcb/poster/height}
+ in combination with a \emph{coverage}. Note that you may use
+ \refKey{/tcb/width} and \refKey{/tcb/height} inside
+ the \emph{coverage} \meta{option list}. Note that this also is not
+ necessary when \refKey{/tcb/spread} is applied.
\end{itemize}
\end{postersetTcbKey}
@@ -556,7 +566,8 @@ poster listing.
\end{exdispExample}
\end{posterlocTcbKey}
-\enlargethispage*{2cm}
+\clearpage
+
\begin{docTcbKey}[][doc new=2017-07-03]{placeholder}{}{style, no value}
If the box content of a \refKey{/tcb/posterloc/sequence} is too short
to fill all reserved box parts, the empty boxes are drawn with
@@ -578,7 +589,7 @@ poster listing.
\end{docTcbKey}
-\clearpage
+
\begin{posterlocTcbKey}[][doc new=2017-07-03]{xshift}{=\meta{length}}{no default, initially |0pt|}
Horizontal shift of a box by \meta{length}.
\begin{exdispExample}{xshift}
@@ -592,6 +603,7 @@ poster listing.
\end{exdispExample}
\end{posterlocTcbKey}
+\clearpage
\begin{posterlocTcbKey}[][doc new=2017-07-03]{yshift}{=\meta{length}}{no default, initially |0pt|}
Vertical shift of a box by \meta{length}.
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty b/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty
index 18385877c0..cf10fbe2c0 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty
@@ -66,6 +66,7 @@
\urlstyle{sf}
\tcbmakedocSubKey{docTcbKey}{tcb}
+\tcbmakedocSubKeys{docTcbKeys}{tcb}
\tcbmakedocSubKey{langTcbKey}{tcb/doclang}
\tcbmakedocSubKey{newTcbKey}{tcb/new}
\tcbmakedocSubKey{boxTcbKey}{tcb/boxtitle}
@@ -78,26 +79,63 @@
\def\tikzname{Ti\emph{k}Z}
+
\newrobustcmd{\tcbIndexPrintSkinCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@key}{Skin}}
\newrobustcmd{\tcbIndexPrintSkinC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@key}}
-\def\tcb@index@Skin#1{\iftcb@doc@toindex\index{#1\idx@actual\tcbIndexPrintSkinCA{#1}}\index{Skins\idx@level#1\idx@actual\tcbIndexPrintSkinC{#1}}\fi}%
-
-\newenvironment{docSkin}[2][]{\begin{tcb@manual@entry}%
- \begin{tcb@doc@head}{colback=magenta!5!white,interior style=fill,#1}%
- \hypertarget{skin:#2}{\tcb@Print@Key{/tcb/skin=}\tcb@Print@Val{#2}\tcb@index@Skin{#2}\protected@edef\@currentlabel{#2}\label{skin:#2}\hfill(skin)}%
- \end{tcb@doc@head}}%
- {\end{tcb@manual@entry}}
\def\refSkin{\tcb@ref@doc{skin}}
\newrobustcmd{\tcbIndexPrintFadCA}[1]{\tcb@Index@Print@CA{#1}{\kvtcb@col@value}{fading}}
\newrobustcmd{\tcbIndexPrintFadC}[1]{\tcb@Index@Print@C{#1}{\kvtcb@col@value}}
-\def\tcb@Print@Fad#1{\textcolor{\kvtcb@col@value}{\bfseries\tcb@scantokens{#1}}}
-\def\tcb@index@Fad#1{\iftcb@doc@toindex\kvtcb@index@command{#1\idx@actual\tcbIndexPrintFadCA{#1}}\kvtcb@index@command{Fadings\idx@level#1\idx@actual\tcbIndexPrintFadC{#1}}\fi}
-\DeclareDocumentCommand\docFading{sm}{%
- \tcb@Print@Fad{#2}%
- \IfBooleanTF{#1}{}{\tcb@index@Fad{#2}}%
-}
+
+\ExplSyntaxOn
+
+\NewDocumentEnvironment{docSkin}{ O{} m }
+ {
+ \__tcobox_doc_entry_begin:nnn
+ {
+ doc~keypath=tcb,
+ doc~name={skin},
+ doc~label={skin=#2},
+ doc~parameter={=\docValue*[nophantom]{#2}},
+ doc~description={skin},
+ #1,
+ doc~no~index,
+ doc~head~key =
+ {
+ colback=magenta!5!white,interior~style=fill,
+ phantom=
+ {
+ \protected@edef\@currentlabel{#2}
+ \label{skin:#2}
+ \index{#2\idx@actual\tcbIndexPrintSkinCA{#2}}
+ \index{Skins\idx@level#2\idx@actual\tcbIndexPrintSkinC{#2}}
+ },
+ }
+ }
+ {}{key}
+ }
+ {
+ \__tcobox_doc_entry_end:n { key }
+ }
+
+
+\NewDocumentCommand \docFading { s +O{} m }
+ {
+ \group_begin:
+ \tcbset{doc~name={#3},#2}
+ \textcolor{\kvtcb@col@value}{\__tcobox_print_docname:}
+ \IfBooleanF{#1}
+ {
+ \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintFadCA{\kvtcb@doc@index}}
+ \kvtcb@index@command{Fadings\idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintFadC{\kvtcb@doc@index}}
+ }
+ \group_end:
+ }
+
+\ExplSyntaxOff
+
+
\newtcolorbox{marker}[1][]{enhanced,
before skip=2mm,after skip=3mm,
@@ -202,6 +240,7 @@
documentation listing style=mydocumentation,%
sbs/.style={sidebyside,before lower app={\tcbset{sidebyside=false}}},%
innerbox/.style={reset,documentation listing style=mydocumentation,
+ doc keypath/.store in=\kvtcb@doc@keypath,
docexample/.style={docexample original},%
},
beforeafter example/.style={
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
index 8c18743cec..adfbd7f091 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
@@ -2764,7 +2764,7 @@ Click me to jump to Box A.
Such, the |tcolorbox| is made a clickable button (depending on the previewer).
\begin{dispExample*}{sbs,lefthand ratio=0.7}
\begin{tcolorbox}[enhanced,colback=red!50,
- hyperurl=http://www.ctan.org/pkg/tcolorbox]
+ hyperurl=https://www.ctan.org/pkg/tcolorbox]
View CTAN with a browser.
\end{tcolorbox}
\end{dispExample*}
@@ -2813,6 +2813,8 @@ Open example file on Page~3.
\meta{options} are applied.
\end{docTcbKey}
+\enlargethispage*{1cm}
+
\begin{docTcbKey}[][doc new=2017-02-03]{hyperurl* node}{=\marg{options}\marg{url}\marg{node}}{no default, initially unset}
Identical to \refKey{/tcb/hyperurl node}, but additional |hyperref| \cite{rahtz:hyperref}
\meta{options} are applied.
@@ -2945,7 +2947,9 @@ from converting to draft mode.
\end{marker}
\end{docCommand}
-\enlargethispage*{2cm}
+
+\clearpage
+
\begin{docTcbKey}{draftmode}{\colOpt{=true\textbar false}}{default |true|, initially |false|}
If set to |true|, the \emph{draft mode} is started.
If set to |false|, the \emph{draft mode} is stopped.
@@ -3630,6 +3634,8 @@ Nevertheless, this skin can be applied independently.
\end{itemize}
\end{docSkin}
+\clearpage
+
\begin{docTcbKey}{bicolor}{}{style, no value}
This is an abbreviation for setting |skin=bicolor|.
\end{docTcbKey}
@@ -3659,6 +3665,8 @@ Nevertheless, this skin can be applied independently.
\end{tcbraster}
\end{dispExample}
+\enlargethispage*{1cm}
+
\begin{docTcbKey}{colbacklower}{=\meta{color}}{no default, initially \texttt{black!15!white}}
Sets the background \meta{color} of the lower part. It depends on the skin,
if this value is used.
@@ -4659,7 +4667,9 @@ are drawn by the codes given by
%\tcbuselibrary{skins,breakable}
\tikzset{coltria/.style={fill=red!15!white}}
-\newtcolorbox{freebox}[1][]{empty,breakable,leftrule=5mm,left=2mm,
+\newtcolorbox{freebox}[1][]{empty,
+ breakable,height fixed for=first and middle,
+ leftrule=5mm,left=2mm,
frame style={fill,top color=red!75!black,bottom color=red!75!black,middle color=red},
colback=yellow!50!white,
watermark color=red!50!yellow!75!white,
@@ -4926,6 +4936,8 @@ is used as middle part of the break sequence of \refSkin{freelance}.
See \refKey{/tcb/skin middle is subskin of} for a substitute of this key.
\end{docTcbKey}
+\enlargethispage*{1cm}
+
\begin{docTcbKey}{extend freelancelast}{=\meta{options}}{no default, initially empty}
The \meta{options} are added to the skin definition of \refSkin{freelancelast} which
is used as last part of the break sequence of \refSkin{freelance}.
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex
index c1d9d7efc0..ebf9f137d5 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.vignette.tex
@@ -138,6 +138,7 @@ is used internally.
\end{tikzpicture}
\end{dispExample*}
+\enlargethispage*{1cm}
\begin{vigTcbKey}[][doc new=2016-04-22]{inside node}{=\meta{name}}{style, initally unset}
Places the \refCom{tcbvignette} inside the node with the given \meta{name}.
@@ -151,6 +152,7 @@ is used internally.
\end{dispExample*}
\end{vigTcbKey}
+\clearpage
\begin{vigTcbKey}[][doc new=2016-04-22]{outside node}{=\meta{name}}{style, initally unset}
Places the \refCom{tcbvignette} outside the node with the given \meta{name}.
@@ -221,6 +223,8 @@ is used internally.
\end{dispExample*}
\end{vigTcbKey}
+\clearpage
+
\begin{vigTcbKey}[][doc new=2016-04-22]{vertical size}{=\meta{length}}{style, initially |2mm|}
Sets \refKey{/tcb/vig/north size} and \refKey{/tcb/vig/south size},
to the given \meta{length}.
@@ -280,7 +284,6 @@ be set \emph{before} \refKey{/tcb/vig/outside node} is used.
\end{dispExample*}
\end{vigTcbKey}
-\clearpage
\begin{vigTcbKey}[][doc new=2016-04-22]{east style}{=\marg{style}}{no default, initially |red!75!black|}
Sets \tikzname\ \meta{style} options for the east \emph{vignette} part.
@@ -292,6 +295,7 @@ be set \emph{before} \refKey{/tcb/vig/outside node} is used.
\end{dispExample*}
\end{vigTcbKey}
+\clearpage
\begin{vigTcbKey}[][doc new=2016-04-22]{west style}{=\marg{style}}{no default, initially |red!75!white|}
Sets \tikzname\ \meta{style} options for the west \emph{vignette} part.
@@ -363,6 +367,7 @@ be set \emph{before} \refKey{/tcb/vig/outside node} is used.
\end{vigTcbKey}
+
\begin{vigTcbKey}[][doc new=2016-04-22]{base color}{=\meta{color}}{no default}
Sets the base color for \refKey{/tcb/vig/raised color},
\refKey{/tcb/vig/lowered color}, \refKey{/tcb/finish fading vignette}.
@@ -455,6 +460,8 @@ These fadings are much \emph{weaker} than the normal fadings.
\end{tcboxedraster}
+\clearpage
+
\begin{vigTcbKey}[][doc new=2016-04-22]{fade in}{\colOpt{=\marg{style}}}{style, default |white|}
Sets the four style options
\refKey{/tcb/vig/north style},
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.pdf b/macros/latex/contrib/tcolorbox/tcolorbox.pdf
index 4b4189edeb..79654b9ebb 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.sty b/macros/latex/contrib/tcolorbox/tcolorbox.sty
index 9c34ae6be0..5a0f6214f8 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.sty
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcolorbox.sty: Text color boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,8 +18,8 @@
%% This work consists of all files listed in README
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tcolorbox}[2019/11/15 version 4.22 text color boxes]
-\def\tcb@version{4.22}
+\ProvidesPackage{tcolorbox}[2020/04/28 version 4.30 text color boxes]
+\def\tcb@version{4.30}
\RequirePackage{pgf}[2008/01/15]
\RequirePackage{verbatim}[2003/08/22]
@@ -50,8 +50,9 @@
\newcounter{tcbbreakpart}
\newcounter{tcblayer}
-\newcount\tcolorbox@number
+\newcounter{tcolorbox@number}
+\def\tcb@info#1{\PackageInfo{tcolorbox}{#1}}
\def\tcb@warning#1{\PackageWarning{tcolorbox}{#1}}
\def\tcb@error#1#2{\PackageError{tcolorbox}{#1}{#2}}
@@ -289,12 +290,12 @@
parskip/.style={before={\ifnum\lastnodetype=-1\relax\else\par%
\ifvmode\edef\tcb@prevdepth{\the\glueexpr\prevdepth+\lineskip+\parskip}%
\def\tcb@undo@before{\addvspace{-\glueexpr\tcb@prevdepth}}%
- \pagebreak[0]\fi\fi\parindent\z@},
+ \pagebreak[0]\fi\fi\noindent},
after={\tcb@parfillskip@check\par}},
noparskip/.style={before={\ifnum\lastnodetype=-1\relax\else\par%
\ifvmode\edef\tcb@prevdepth{\the\glueexpr\prevdepth+\lineskip}%
\def\tcb@undo@before{\addvspace{-\glueexpr\smallskipamount+\tcb@prevdepth}}%
- \pagebreak[0]\smallskip\fi\fi\parindent\z@},
+ \pagebreak[0]\smallskip\fi\fi\noindent},
after={\tcb@parfillskip@check\par\smallskip}},
nobeforeafter/.style={before=,after=},
force nobeforeafter/.code={\tcbset@late@options{nobeforeafter}},
@@ -973,14 +974,18 @@
\Collect@Body\tcbox@inner@hbox@collected%
}
+% save 'comment' from 'verbatim'
+\let\tcb@verbatim@comment\comment
+\let\tcb@verbatim@endcomment\endcomment
+
\def\tcb@@end@v@@d{%
- \endcomment%
+ \tcb@verbatim@endcomment%
\tcb@layer@dec%
}
\def\tcb@@capture@v@@d{%
\let\endtcolorbox\tcb@@end@v@@d%
- \comment%
+ \tcb@verbatim@comment%
}
\long\def\tcbox@inner@hbox@collected#1{%
@@ -989,8 +994,8 @@
}
\def\tcb@count@boxes{%
- \global\advance\tcolorbox@number by 1\relax%
- \edef\thetcolorboxnumber{\number\tcolorbox@number}%
+ \global\advance\c@tcolorbox@number by 1\relax%
+ \edef\thetcolorboxnumber{\number\c@tcolorbox@number}%
\expandafter\ifx\csname tcolorboxpage@\thetcolorboxnumber\endcsname\relax%
\edef\thetcolorboxpage{\number\c@page}%
\else%
@@ -1000,8 +1005,6 @@
\def\tcolorbox@label{\@newl@bel{tcolorboxpage}}%
-%\write\@auxout{\string\providecommand\string\tcolorbox@label[2]{}}%
-
\def\tcolorbox@savepage#1{%
\@bsphack%
\write\@auxout{\string\tcolorbox@label{#1}{\number\c@page}}%
@@ -1074,7 +1077,7 @@
\def\tcb@layer@pushup{%
\tcb@count@boxes%
- \global\advance\tcolorbox@number by -1\relax%
+ \global\advance\c@tcolorbox@number by -1\relax%
\stepcounter{tcblayer}%
\ifnum\c@tcblayer>1%
\tcbset{breakable@true/.code=}%
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.tex b/macros/latex/contrib/tcolorbox/tcolorbox.tex
index db8286bbb8..33791d4810 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.tex
@@ -1,9 +1,9 @@
% \LaTeX-Main\
-%% The LaTeX package tcolorbox - version 4.22 (2019/11/15)
+%% The LaTeX package tcolorbox - version 4.30 (2020/04/28)
%% tcolorbox.tex: Manual
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2019 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,10 +18,10 @@
%%
%% This work consists of all files listed in README
%%
-% arara: pdflatex: { shell: yes }
+% arara: pdflatex: { shell: yes, synctex: yes }
% arara: biber
-% arara: pdflatex: { shell: yes }
-% arara: pdflatex: { shell: yes }
+% arara: pdflatex: { shell: yes, synctex: yes }
+% arara: pdflatex: { shell: yes, synctex: yes }
% arara: pdflatex: { shell: yes, synctex: yes }
% arara: pdflatex: { shell: yes, synctex: yes }
%
@@ -43,8 +43,8 @@
\setlength{\bibitemsep}{\smallskipamount}
\addbibresource{tcolorbox.doc.bib}
-\def\version{4.22}%
-\def\datum{2019/11/15}%
+\def\version{4.30}%
+\def\datum{2020/04/28}%
\makeindex
\hypersetup{
@@ -55,10 +55,16 @@
}
\usepackage{pgfplots}
+\pgfplotsset{compat=1.17}
+\nocite{breitenlohner:1998a}
+
+%\geometry{showframe}
%\tcbset{draftmode}
\tcbset{/tcb/external/-}% for final run
-%\includeonly{tcolorbox.doc.initoptions}
+%\includeonly{tcolorbox.doc.picturecredits}
+
+%\hypersetup{colorlinks=false}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}