diff options
Diffstat (limited to 'macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex')
-rw-r--r-- | macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex | 102 |
1 files changed, 56 insertions, 46 deletions
diff --git a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex index f0463342ce..3eff9746f8 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 6.1.0 (2023/09/26) +%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10) %% tcbdocumentation.code.tex: Code for LaTeX documentations %% %% ------------------------------------------------------------------------------------------- -%% Copyright (c) 2006-2023 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de> +%% Copyright (c) 2006-2024 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{6.1.0} +\tcb@set@library@version{6.2.0} -\tcbuselibrary{listings,skins,xparse,external,raster} +\tcbuselibrary{listings,skins,external,raster} \ifdefined\printindex\else% \RequirePackage{makeidx}[2000/03/29]% @@ -198,6 +198,11 @@ keywords bold/.default=true,% keywords bold/true/.code={\let\tcb@doc@bfseries\bfseries}, keywords bold/false/.code={\let\tcb@doc@bfseries\mdseries}, + doc key prefix/.store in=\kvtcb@doc@keyprefix, + index key formatter/.code={\let\kvtcb@doc@format@key=#1}, + index keys formatter/.code={\let\kvtcb@doc@format@keys=#1}, + index key formatter/.default=\@firstofone, + index keys formatter/.default=\@firstofone, } @@ -289,7 +294,7 @@ \NewDocumentCommand{\tcbIndexPrintEnvCA}{m}{\tcb@Index@Print@CA{#1}{\kvtcb@col@environment}{\kvtcb@text@env}} \NewDocumentCommand{\tcbIndexPrintEnvC}{m}{\tcb@Index@Print@C{#1}{\kvtcb@col@environment}} -\NewDocumentCommand{\tcbIndexPrintKeyCA}{m}{\tcb@Index@Print@CA{#1}{\kvtcb@col@key}{\kvtcb@text@key}} +\NewDocumentCommand{\tcbIndexPrintKeyCA}{m}{\tcb@Index@Print@CA{#1}{\kvtcb@col@key}} \NewDocumentCommand{\tcbIndexPrintKeyC}{m}{\tcb@Index@Print@C{#1}{\kvtcb@col@key}} \NewDocumentCommand{\tcbIndexPrintPathCA}{m}{\tcb@Index@Print@CA{#1}{\kvtcb@col@path}{\kvtcb@text@path}} @@ -333,7 +338,7 @@ \ExplSyntaxOn -\cs_new_nopar:Npn \__tcobox_new_bool_key:nn #1 #2 +\cs_new_nopar:Npn \__tcobox_new_bool_key:Nn #1 #2 { \bool_new:N #1 \tcbset @@ -345,15 +350,15 @@ } } -\__tcobox_new_bool_key:nn \l__tcobox_doc_toindex_bool { doc~into~index } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_colors_bool { index~gather~colors } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_commands_bool { index~gather~commands } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_counters_bool { index~gather~counters } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_environments_bool { index~gather~environments } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_keys_bool { index~gather~keys } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_lengths_bool { index~gather~lengths } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_paths_bool { index~gather~paths } -\__tcobox_new_bool_key:nn \l__tcobox_doc_gather_values_bool { index~gather~values } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_toindex_bool { doc~into~index } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_colors_bool { index~gather~colors } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_commands_bool { index~gather~commands } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_counters_bool { index~gather~counters } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_environments_bool { index~gather~environments } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_keys_bool { index~gather~keys } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_lengths_bool { index~gather~lengths } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_paths_bool { index~gather~paths } +\__tcobox_new_bool_key:Nn \l__tcobox_doc_gather_values_bool { index~gather~values } \cs_new_nopar:Npn \__tcobox_sanitize_tl:n #1 @@ -397,7 +402,7 @@ % main documentation environments \seq_new:N \g__tcobox_label_seq - +\seq_new:N \l__tcobox_tmpa_seq \cs_new:Npn \__tcobox_doc_entry_begin:nnn #1#2#3 { @@ -406,12 +411,12 @@ \seq_gclear: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_set_from_clist:Nn \l__tcobox_tmpa_seq {#2} + \seq_if_empty:NT \l__tcobox_tmpa_seq { - \seq_put_left:Nn \l_tmpa_seq {} + \seq_put_left:Nn \l__tcobox_tmpa_seq {} } - \seq_map_inline:Nn \l_tmpa_seq + \seq_map_inline:Nn \l__tcobox_tmpa_seq { \group_begin: \tcbset{##1} @@ -460,11 +465,11 @@ { \__tcobox_print_command: \__tcobox_index_command: - \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label + \seq_if_in:NoF \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 + \seq_gput_right:No \g__tcobox_label_seq { \kvtcb@doc@label } } {\ttfamily\kvtcb@doc@parameter} \tcb@doc@do@description @@ -522,11 +527,11 @@ { \strut\cs{begin}\brackets{\__tcobox_print_environment:} \__tcobox_index_environment: - \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label + \seq_if_in:NoF \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 + \seq_gput_right:No \g__tcobox_label_seq { \kvtcb@doc@label } } {\ttfamily\kvtcb@doc@parameter}\par \strut{\ttfamily\nobreakspace\nobreakspace}\meta{\kvtcb@text@envcontent}\par @@ -570,7 +575,7 @@ \textcolor{\kvtcb@col@key}{\tcb@doc@bfseries\ttfamily \tl_if_empty:NF \kvtcb@doc@keypath { - /\__tcobox_sanitize_tl:V\kvtcb@doc@keypath/ + \kvtcb@doc@keyprefix\__tcobox_sanitize_tl:V\kvtcb@doc@keypath/ } \__tcobox_sanitize_tl:V\kvtcb@doc@name} } @@ -579,15 +584,15 @@ { \bool_if:NT \l__tcobox_doc_toindex_bool { - \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintKeyCA{\kvtcb@doc@index}} + \kvtcb@index@command{\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintKeyCA{\kvtcb@doc@index}{\kvtcb@doc@format@key\kvtcb@text@key}} \bool_if:NT \l__tcobox_doc_gather_keys_bool { \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@doc@format@keys\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/} + \kvtcb@index@command{\kvtcb@doc@format@keys\kvtcb@text@keys\idx@level\kvtcb@doc@keypath\idx@actual\tcbIndexPrintKeyC{\kvtcb@doc@keyprefix\kvtcb@doc@keypath/} \idx@level\kvtcb@doc@sortindex\idx@actual\tcbIndexPrintKeyC{\kvtcb@doc@index}} } } @@ -600,20 +605,20 @@ \__tcobox_index_key: \tl_if_empty:NTF \kvtcb@doc@keypath { - \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label + \seq_if_in:NoF \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 + \seq_gput_right:No \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 + \tl_set:Ne \l__tcobox_tmpa_tl {\kvtcb@doc@keyprefix\kvtcb@doc@keypath/\kvtcb@doc@label} + \seq_if_in:NoF \g__tcobox_label_seq { \l__tcobox_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 + \protected@edef\@currentlabel{\kvtcb@doc@keyprefix\kvtcb@doc@keypath/\kvtcb@doc@name} + \label{key:\kvtcb@doc@keyprefix\kvtcb@doc@keypath/\kvtcb@doc@label} + \seq_gput_right:No \g__tcobox_label_seq { \l__tcobox_tmpa_tl } } } {\ttfamily\kvtcb@doc@parameter} @@ -655,17 +660,18 @@ } -\NewDocumentCommand \tcbmakedocSubKey { m m } +\NewDocumentCommand \tcbmakedocSubKey { +O{} m m } { - \NewDocumentEnvironment{#1}{ O{} +O{} m m +m } + \NewDocumentEnvironment{#2}{ O{} +O{} m m +m } { \__tcobox_doc_entry_begin:nnn { - doc@sub@keypath=#2, + doc@sub@keypath=#3, doc~keypath=##1, doc~name={##3}, doc~parameter={##4}, doc~description={##5}, + #1, ##2 } {}{key} @@ -673,27 +679,28 @@ { \__tcobox_doc_entry_end:n { key } } - \NewDocumentEnvironment{#1*}{} + \NewDocumentEnvironment{#2*}{} { \group_begin: \bool_set_false:N \l__tcobox_doc_toindex_bool - \begin{#1} + \begin{#2} } { - \end{#1} + \end{#2} \group_end: } } -\NewDocumentCommand \tcbmakedocSubKeys { m m } +\NewDocumentCommand \tcbmakedocSubKeys { +O{} m m } { - \NewDocumentEnvironment{#1}{ +O{} +m } + \NewDocumentEnvironment{#2}{ +O{} +m } { \__tcobox_doc_entry_begin:nnn { - doc@sub@keypath=#2, + doc@sub@keypath=#3, doc~keypath=, + #1, ##1 } {##2}{key} @@ -725,11 +732,11 @@ { \colFade{\tcb@cs{path~...}}~\__tcobox_print_path: \__tcobox_index_path: - \seq_if_in:NVF \g__tcobox_label_seq \kvtcb@doc@label + \seq_if_in:NoF \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 + \seq_gput_right:No \g__tcobox_label_seq { \kvtcb@doc@label } } {\ttfamily\kvtcb@doc@parameter{}~\colFade{...;}} \tcb@doc@do@description @@ -1017,6 +1024,9 @@ index annotate=true, english language, keywords bold, + doc key prefix={/}, + index key formatter, + index keys formatter, } % deprecated |