summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex
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/tcolorbox.doc.documentation.tex
parent7f8fffa1c8b5b30f8e2a9fd4b76778147dbb9128 (diff)
CTAN sync 202004290303
Diffstat (limited to 'macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex')
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex1111
1 files changed, 763 insertions, 348 deletions
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}}