From b927b3c4405faf2fc0c1a8b34e07cc7c5dd5b5e8 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 15 Jul 2013 22:46:30 +0000 Subject: tcolorbox (15jul13) git-svn-id: svn://tug.org/texlive/trunk@31204 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/tcolorbox/tcbbreakable.code.tex | 14 +- .../tex/latex/tcolorbox/tcbdocumentation.code.tex | 36 ++- .../tex/latex/tcolorbox/tcbfitting.code.tex | 49 +++- .../tex/latex/tcolorbox/tcbhooks.code.tex | 72 +++--- .../tex/latex/tcolorbox/tcblistings.code.tex | 75 +++++- .../tex/latex/tcolorbox/tcblistingsutf8.code.tex | 4 +- .../tex/latex/tcolorbox/tcbskins.code.tex | 10 +- .../tex/latex/tcolorbox/tcbtheorems.code.tex | 48 +++- .../texmf-dist/tex/latex/tcolorbox/tcolorbox.sty | 269 +++++++++++++++++---- 9 files changed, 449 insertions(+), 128 deletions(-) (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex index 587368a99a4..b4edf570e2c 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcbbreakable.code.tex: Code for breakable colorboxes %% %% ------------------------------------------------------------------------------------------- @@ -17,10 +17,10 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \let\tcb@parboxrestore@true=\tcb@parboxrestore -\def\tcb@parboxrestore@false{\vskip-\parskip} +\def\tcb@parboxrestore@false{\vskip-\parskip\linewidth\hsize} \def\tcb@vbox#1#2{% \edef\reserved@a{% @@ -32,9 +32,13 @@ \reserved@a% \@endpefalse% \color@begingroup% + \textwidth\hsize% + \columnwidth\hsize% \csname tcb@parboxrestore@\kvtcv@parbox\endcsname% - \def\@mpfn{mpfootnote}\def\thempfn{\thempfootnote}\c@mpfootnote\z@% - \let\@footnotetext\@mpfootnotetext% + \def\@mpfn{mpfootnote}% + \def\thempfn{\thempfootnote}% + \c@mpfootnote\z@% + \let\@footnotetext\@mpfootnotetext% \@setminipage% \ignorespaces% \let\tcb@drawcolorbox=\tcb@drawcolorbox@standalone% diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex index 1aaa04ff63d..9c8de529ae5 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcbdocumentation.code.tex: Code for LaTeX documentations %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \tcbuselibrary{listings} @@ -26,6 +26,7 @@ \RequirePackage{marvosym}[2011/07/20] \RequirePackage{hyperref}[2012/02/06] \RequirePackage{makeidx}[2000/03/29] +\RequirePackage{refcount}[2011/10/16] \definecolor{Option}{rgb}{0.118,0.546,0.222} \definecolor{Definition}{rgb}{0.784,0.06,0.176} @@ -160,14 +161,14 @@ \def\manual@top#1{\itemsep=0pt\parskip=0pt\item\strut{#1}\par\topsep=0pt} % main documentation environments -\newenvironment{docCommand}[2]{\begin{manual@entry}% - \hypertarget{com:#1}{\manual@top{\disp@com{\cs{#1}}\index@Com{#1}\protected@edef\@currentlabel{\noexpand\cs{#1}}\label{com:#1}{\ttfamily #2}}}}% +\newenvironment{docCommand}[3][]{\begin{manual@entry}% + \tcbset{#1}\hypertarget{com:#2}{\manual@top{\disp@com{\cs{#2}}\index@Com{#2}\protected@edef\@currentlabel{\noexpand\cs{#2}}\label{com:#2}{\ttfamily #3}}}}% {\end{manual@entry}} -\newenvironment{docEnvironment}[2]{\begin{manual@entry}% - \hypertarget{env:#1}{\manual@top{\cs{begin}\brackets{\disp@com{#1}}\index@Env{#1}\protected@edef\@currentlabel{#1}\label{env:#1}{\ttfamily #2}}}% +\newenvironment{docEnvironment}[3][]{\begin{manual@entry}% + \tcbset{#1}\hypertarget{env:#2}{\manual@top{\cs{begin}\brackets{\disp@com{#2}}\index@Env{#2}\protected@edef\@currentlabel{#2}\label{env:#2}{\ttfamily #3}}}% \manual@top{~~\meta{\kvtcb@text@envcontent}}% - \manual@top{\cs{end}\brackets{\disp@com{#1}}}}% + \manual@top{\cs{end}\brackets{\disp@com{#2}}}}% {\end{manual@entry}} \newenvironment{docKey}[4][\@empty]{\begin{manual@entry}% @@ -186,11 +187,24 @@ \def\docColor#1{\disp@com{#1}\index@Col{#1}}% \def\docAuxCommand#1{\disp@com{\cs{#1}}\index@Com{#1}}% -\def\ref@doc#1{\hyperlink{#1}{\texttt{\ref*{#1}}\textsuperscript{\ding{213}\,\kvtcb@text@pageshort\,\pageref*{#1}}}} +\setrefcountdefault{-1} +\def\ref@doc#1{\hyperlink{#1}{\texttt{\ref*{#1}}% + \ifnum\getpagerefnumber{#1}=\thepage\else% + \textsuperscript{\ding{213}\,\kvtcb@text@pageshort\,\pageref*{#1}}\fi}} -\def\refCom#1{\ref@doc{com:#1}} -\def\refEnv#1{\ref@doc{env:#1}} -\def\refKey#1{\ref@doc{key:#1}} +\def\ref@doc@star#1{\hyperlink{#1}{\texttt{\ref*{#1}}}} + +\def\refCom@#1{\ref@doc{com:#1}} +\def\refCom@star#1{\ref@doc@star{com:#1}} +\def\refCom{\@ifstar\refCom@star\refCom@} + +\def\refEnv@#1{\ref@doc{env:#1}} +\def\refEnv@star#1{\ref@doc@star{env:#1}} +\def\refEnv{\@ifstar\refEnv@star\refEnv@} + +\def\refKey@#1{\ref@doc{key:#1}} +\def\refKey@star#1{\ref@doc@star{key:#1}} +\def\refKey{\@ifstar\refKey@star\refKey@} \newenvironment{absquote} {\list{}{\leftmargin2cm\rightmargin\leftmargin}% diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex index 0ce78004d7b..6305645aa4a 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcbfitting.code.tex: Code for fit boxes %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \newdimen\tcbfitdim \newdimen\tcb@lowerfitdim @@ -55,13 +55,18 @@ \def\tcb@@capture@fitbox{% \let\endtcolorbox=\relax% - \Collect@Body\tcbox@inner@fitbox% + \Collect@Body\tcbox@inner@fitbox@collected% } \def\tcbfontsize#1{\fontsize{#1\tcbfitdim}{#1\dimexpr\kvtcb@fit@skip\tcbfitdim}\selectfont} \def\tcb@setfontsize#1#2{\@setfontsize#1{#2\tcbfitdim}{#2\dimexpr\kvtcb@fit@skip\tcbfitdim}} +\long\def\tcbox@inner@fitbox@collected#1{% + \tcbox@inner@fitbox{#1}% + \tcb@finalize@environment% +} + \long\def\tcbox@inner@fitbox#1{% \tcbset{breakable@false,sidebyside=false}% \let\tcb@val@raisebase=\tcb@zpt% @@ -246,17 +251,41 @@ \tcb@ox{capture=fitbox,#1}{#2}% } -\long\def\tcb@newtcboxfit#1#2{\newcommand{#1}{\tcboxfit[#2]}} -\long\def\tcb@new@tcboxfit#1[#2]#3{\newcommand{#1}[#2]{\tcboxfit[#3]}} +\long\def\tcb@newtcboxfit#1#2{\expandafter\newcommand\csname#1\endcsname{\tcboxfit[#2,options@for=#1]}} + +\long\def\tcb@newtcboxfit@#1[#2]#3{\expandafter\newcommand\csname#1\endcsname[#2]{\tcboxfit[#3,options@for=#1]}} + +\long\def\tcb@newtcboxfit@@#1[#2][#3]#4{\expandafter\newcommand\csname#1\endcsname[#2][#3]{\tcboxfit[#4,options@for=#1]}} + +\long\def\tcb@new@tcboxfit@#1[#2]{% + \@ifnextchar[{\tcb@newtcboxfit@@{#1}[#2]}{\tcb@newtcboxfit@{#1}[#2]}} + +\long\def\tcb@new@tcboxfit#1{% + \preto\tcb@new@colopt{savedelimiter=#1}% + \cslet{tcb@opt@#1}{\tcb@new@colopt}% + \@ifnextchar[{\tcb@new@tcboxfit@{#1}}{\tcb@newtcboxfit{#1}}} + +\long\def\tcb@new@tcboxfit@opt[#1]#2{% + \tcb@proc@options@init{#1}{#2}% + \tcb@new@tcboxfit{#2}% +} + +\long\def\tcb@new@tcboxfit@bs#1{% + \edef\temp{\tcb@remove@bs{#1}}% + \tcb@new@tcboxfit{\temp}% +} + +\long\def\tcb@new@tcboxfit@opt@bs[#1]#2{% + \edef\temp{\tcb@remove@bs{#2}}% + \tcb@new@tcboxfit@opt[#1]{\temp}% +} -\long\def\tcb@new@@tcboxfit#1[#2][#3]#4{\newcommand{#1}[#2][#3]{\tcboxfit[#4]}} +\long\def\newtcboxfit{% + \def\tcb@new@colopt{}% + \@ifnextchar[{\tcb@new@tcboxfit@opt@bs}{\tcb@new@tcboxfit@bs}} -\long\def\new@tcboxfit#1[#2]{% - \@ifnextchar[{\tcb@new@@tcboxfit{#1}[#2]}{\tcb@new@tcboxfit{#1}[#2]}} -\long\def\newtcboxfit#1{% - \@ifnextchar[{\new@tcboxfit{#1}}{\tcb@newtcboxfit{#1}}} \tcbset{% reset@fitting/.style={% diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex index c1530e74ba5..c0cdd6ad05a 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcbhooks.code.tex: Code for adding hooks %% %% ------------------------------------------------------------------------------------------- @@ -18,36 +18,36 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \tcbset{% - before upper app/.code={\tcb@appto\kvtcb@before@upper{#1}},% - before upper pre/.code={\tcb@preto\kvtcb@before@upper{#1}},% - after upper app/.code={\tcb@appto\kvtcb@after@upper{#1}},% - after upper pre/.code={\tcb@preto\kvtcb@after@upper{#1}},% - before lower app/.code={\tcb@appto\kvtcb@before@lower{#1}},% - before lower pre/.code={\tcb@preto\kvtcb@before@lower{#1}},% - after lower app/.code={\tcb@appto\kvtcb@after@lower{#1}},% - after lower pre/.code={\tcb@preto\kvtcb@after@lower{#1}},% - before title app/.code={\tcb@appto\kvtcb@before@title{#1}},% - before title pre/.code={\tcb@preto\kvtcb@before@title{#1}},% - after title app/.code={\tcb@appto\kvtcb@after@title{#1}},% - after title pre/.code={\tcb@preto\kvtcb@after@title{#1}},% + before upper app/.code={\appto\kvtcb@before@upper{#1}},% + before upper pre/.code={\preto\kvtcb@before@upper{#1}},% + after upper app/.code={\appto\kvtcb@after@upper{#1}},% + after upper pre/.code={\preto\kvtcb@after@upper{#1}},% + before lower app/.code={\appto\kvtcb@before@lower{#1}},% + before lower pre/.code={\preto\kvtcb@before@lower{#1}},% + after lower app/.code={\appto\kvtcb@after@lower{#1}},% + after lower pre/.code={\preto\kvtcb@after@lower{#1}},% + before title app/.code={\appto\kvtcb@before@title{#1}},% + before title pre/.code={\preto\kvtcb@before@title{#1}},% + after title app/.code={\appto\kvtcb@after@title{#1}},% + after title pre/.code={\preto\kvtcb@after@title{#1}},% % % usable inside the document or in the preamble after setting before / after - before app/.code={\tcb@appto\kvtcb@beforebox{#1}},% - before pre/.code={\tcb@preto\kvtcb@beforebox{#1}},% - after app/.code={\tcb@appto\kvtcb@afterbox{#1}},% - after pre/.code={\tcb@preto\kvtcb@afterbox{#1}},% + before app/.code={\appto\kvtcb@beforebox{#1}},% + before pre/.code={\preto\kvtcb@beforebox{#1}},% + after app/.code={\appto\kvtcb@afterbox{#1}},% + after pre/.code={\preto\kvtcb@afterbox{#1}},% % - overlay unbroken app/.code={\tcb@appto\tcb@overlay@unbroken{#1}},% - overlay unbroken pre/.code={\tcb@preto\tcb@overlay@unbroken{#1}},% - overlay first app/.code={\tcb@appto\tcb@overlay@first{#1}},% - overlay first pre/.code={\tcb@preto\tcb@overlay@first{#1}},% - overlay middle app/.code={\tcb@appto\tcb@overlay@middle{#1}},% - overlay middle pre/.code={\tcb@preto\tcb@overlay@middle{#1}},% - overlay last app/.code={\tcb@appto\tcb@overlay@last{#1}},% - overlay last pre/.code={\tcb@preto\tcb@overlay@last{#1}},% + overlay unbroken app/.code={\appto\tcb@overlay@unbroken{#1}},% + overlay unbroken pre/.code={\preto\tcb@overlay@unbroken{#1}},% + overlay first app/.code={\appto\tcb@overlay@first{#1}},% + overlay first pre/.code={\preto\tcb@overlay@first{#1}},% + overlay middle app/.code={\appto\tcb@overlay@middle{#1}},% + overlay middle pre/.code={\preto\tcb@overlay@middle{#1}},% + overlay last app/.code={\appto\tcb@overlay@last{#1}},% + overlay last pre/.code={\preto\tcb@overlay@last{#1}},% % overlay app/.style={overlay unbroken app={#1},overlay first app={#1},overlay middle app={#1},overlay last app={#1}},% overlay pre/.style={overlay unbroken pre={#1},overlay first pre={#1},overlay middle pre={#1},overlay last pre={#1}},% @@ -59,16 +59,16 @@ overlay middle and last pre/.style={overlay middle pre={#1},overlay last pre={#1}},% % % skins: - frame code app/.code={\tcb@appto\tcb@frame@code{#1}},% - frame code pre/.code={\tcb@preto\tcb@frame@code{#1}},% - interior titled code app/.code={\tcb@appto\tcb@interiortitled@code{#1}},% - interior titled code pre/.code={\tcb@preto\tcb@interiortitled@code{#1}},% - interior code app/.code={\tcb@appto\tcb@interior@code{#1}},% - interior code pre/.code={\tcb@preto\tcb@interior@code{#1}},% - segmentation code app/.code={\tcb@appto\tcb@segmentation@code{#1}},% - segmentation code pre/.code={\tcb@preto\tcb@segmentation@code{#1}},% - title code app/.code={\tcb@appto\tcb@segmentation@code{#1}},% - title code pre/.code={\tcb@preto\tcb@segmentation@code{#1}},% + frame code app/.code={\appto\tcb@frame@code{#1}},% + frame code pre/.code={\preto\tcb@frame@code{#1}},% + interior titled code app/.code={\appto\tcb@interiortitled@code{#1}},% + interior titled code pre/.code={\preto\tcb@interiortitled@code{#1}},% + interior code app/.code={\appto\tcb@interior@code{#1}},% + interior code pre/.code={\preto\tcb@interior@code{#1}},% + segmentation code app/.code={\appto\tcb@segmentation@code{#1}},% + segmentation code pre/.code={\preto\tcb@segmentation@code{#1}},% + title code app/.code={\appto\tcb@segmentation@code{#1}},% + title code pre/.code={\preto\tcb@segmentation@code{#1}},% % watermark tikz app/.style={overlay app={\tcb@drawspec@watermark@tikz{#1}}}, watermark tikz pre/.style={overlay pre={\tcb@drawspec@watermark@tikz{#1}}}, diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex index c642a4583c7..9e3d2a12d1d 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcblistings.code.tex: Code for colorboxes with listings %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \RequirePackage{listings}[2007/02/22] @@ -143,7 +143,16 @@ } \long\def\tcbinputlisting#1{% - \begingroup\tcbset{#1}\tcb@inputlisting\endgroup% + \begingroup% + \stepcounter{tcblayer}% + \ifnum\c@tcblayer>\tcb@managed@layers@max% + \else% + \tcbset{every box on layer \number\c@tcblayer}% + \tcbset{every box on layer \number\c@tcblayer/.style={}}% + \fi% + \addtocounter{tcblayer}{-1}%´ + \tcbset{#1}% + \tcb@inputlisting\endgroup% } \newenvironment{tcboutputlisting}{% @@ -156,17 +165,63 @@ \tcb@temp{\kvtcb@tempfile}% }% -\long\def\tcb@newtcblisting#1#2{\newenvironment{#1}{\tcblisting{savedelimiter=#1,#2}}{\endtcblisting}} +\long\def\tcb@newtcblisting#1#2{\newenvironment{#1}{\tcblisting{#2,options@for=#1}}{\endtcblisting}} + +\long\def\tcb@newtcblisting@#1[#2]#3{\newenvironment{#1}[#2]{\tcblisting{#3,options@for=#1}}{\endtcblisting}} + +\long\def\tcb@newtcblisting@@#1[#2][#3]#4{\newenvironment{#1}[#2][#3]{\tcblisting{#4,options@for=#1}}{\endtcblisting}} + +\long\def\tcb@new@tcblisting@#1[#2]{% + \@ifnextchar[{\tcb@newtcblisting@@{#1}[#2]}{\tcb@newtcblisting@{#1}[#2]}} + +\long\def\tcb@new@tcblisting#1{% + \preto\tcb@new@colopt{savedelimiter=#1}% + \cslet{tcb@opt@#1}{\tcb@new@colopt}% + \@ifnextchar[{\tcb@new@tcblisting@{#1}}{\tcb@newtcblisting{#1}}} + +\long\def\tcb@new@tcblisting@opt[#1]#2{% + \tcb@proc@options@init{#1}{#2}% + \tcb@new@tcblisting{#2}% +} + +\long\def\newtcblisting{% + \def\tcb@new@colopt{}% + \@ifnextchar[{\tcb@new@tcblisting@opt}{\tcb@new@tcblisting}} + -\long\def\tcb@new@tcblisting#1[#2]#3{\newenvironment{#1}[#2]{\tcblisting{savedelimiter=#1,#3}}{\endtcblisting}} +\long\def\tcb@newtcbinputlisting#1#2{\expandafter\newcommand\csname#1\endcsname{\tcbinputlisting{#2,options@for=#1}}} -\long\def\tcb@new@@tcblisting#1[#2][#3]#4{\newenvironment{#1}[#2][#3]{\tcblisting{savedelimiter=#1,#4}}{\endtcblisting}} +\long\def\tcb@newtcbinputlisting@#1[#2]#3{\expandafter\newcommand\csname#1\endcsname[#2]{\tcbinputlisting{#3,options@for=#1}}} + +\long\def\tcb@newtcbinputlisting@@#1[#2][#3]#4{\expandafter\newcommand\csname#1\endcsname[#2][#3]{\tcbinputlisting{#4,options@for=#1}}} + +\long\def\tcb@new@tcbinputlisting@#1[#2]{% + \@ifnextchar[{\tcb@newtcbinputlisting@@{#1}[#2]}{\tcb@newtcbinputlisting@{#1}[#2]}} + +\long\def\tcb@new@tcbinputlisting#1{% + \preto\tcb@new@colopt{savedelimiter=#1}% + \cslet{tcb@opt@#1}{\tcb@new@colopt}% + \@ifnextchar[{\tcb@new@tcbinputlisting@{#1}}{\tcb@newtcbinputlisting{#1}}} + +\long\def\tcb@new@tcbinputlisting@opt[#1]#2{% + \tcb@proc@options@init{#1}{#2}% + \tcb@new@tcbinputlisting{#2}% +} + +\long\def\tcb@new@tcbinputlisting@bs#1{% + \edef\temp{\tcb@remove@bs{#1}}% + \tcb@new@tcbinputlisting{\temp}% +} + +\long\def\tcb@new@tcbinputlisting@opt@bs[#1]#2{% + \edef\temp{\tcb@remove@bs{#2}}% + \tcb@new@tcbinputlisting@opt[#1]{\temp}% +} -\long\def\new@tcblisting#1[#2]{% - \@ifnextchar[{\tcb@new@@tcblisting{#1}[#2]}{\tcb@new@tcblisting{#1}[#2]}} +\long\def\newtcbinputlisting{% + \def\tcb@new@colopt{}% + \@ifnextchar[{\tcb@new@tcbinputlisting@opt@bs}{\tcb@new@tcbinputlisting@bs}} -\long\def\newtcblisting#1{% - \@ifnextchar[{\new@tcblisting{#1}}{\tcb@newtcblisting{#1}}} \tcbset{% reset@listings/.style={% diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex index 180a53d3801..e97c59f903b 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcblistingsutf8.code.tex: Code for colorboxes with listings in UTF-8 %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \RequirePackage{listingsutf8}[2011/11/10] \tcbuselibrary{listings} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex index 07710cd7b4b..04be331c9ff 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcbskins.code.tex: Code for colorboxes with different skins %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \RequirePackage{tikz}[2010/10/13] @@ -765,7 +765,7 @@ } \def\tcb@drawspec@watermark@tikz#1{% - \setbox\tcb@waterbox=\hbox{\pgfinterruptpicture{\begin{tikzpicture}[color=\kvtcb@watermark@color]#1\end{tikzpicture}}\endpgfinterruptpicture}% + \setbox\tcb@waterbox=\hbox{\pgfinterruptpicture{\pgfsetbaseline{0pt}\begin{tikzpicture}[color=\kvtcb@watermark@color]#1\end{tikzpicture}}\endpgfinterruptpicture}% \tcb@drawspec@watermark% } @@ -919,7 +919,7 @@ } \tcbset{% - border@line app/.code={\tcb@appto\kvtcb@borderline{#1}},% + border@line app/.code={\appto\kvtcb@borderline{#1}},% borderline/.style args={#1#2#3}{border@line app={\tcb@border{#1}{#2}{#3}}},% no borderline/.code={\def\kvtcb@borderline{}},% } @@ -989,7 +989,7 @@ \tcbset{% - shad@w app/.code={\tcb@appto\kvtcb@shadow{#1}},% + shad@w app/.code={\appto\kvtcb@shadow{#1}},% shadow/.style args={#1#2#3#4}{shad@w app={\tcb@shadow{#1}{#2}{#3}{#4}}},% no shadow/.code={\def\kvtcb@shadow{}},% fuzzy shadow/.style args={#1#2#3#4#5}{shad@w app={% diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex index 9b18811f834..358fa624bf3 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcbtheorems.code.tex: Code for theorems in colorboxes %% %% ------------------------------------------------------------------------------------------- @@ -18,16 +18,41 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{2.33} +\tcb@set@library@version{2.40} \RequirePackage{amsmath} \def\tcb@hack@amsmath{\tcb@hack@currenvir\vskip-\abovedisplayskip} +\def\tcb@theo@title#1#2#3{% + \ifdefempty{#2}{\setbox\z@=\hbox{#1}}{\setbox\z@=\hbox{#1~#2}}% + \def\temp@a{#3}% + \ifx\temp@a\@empty\relax% + \unhbox\z@% + \else% + \setbox\z@=\hbox{\unhbox\z@:\ }% + \hangindent\wd\z@% + \hangafter=1% + \mbox{\unhbox\z@}#3% + \fi% +} + +\def\tcb@theo@listentry#1#2#3{% + \def\kvtcb@listentry{\numberline{#2}#3}% +} + +\def\tcb@theo@label#1#2{% + \def\temp@a{#2}% + \ifx\temp@a\@empty% + \else% + \tcbset{label={#1:#2}}% + \fi% +} + \tcbset{ theorem/.style args={#1#2#3#4}{% step and label={#2}{#4},% - title={\setbox\z@=\hbox{#1~\csname the#2\endcsname:\ }\hangindent\wd\z@\hangafter=1 \mbox{#1~\csname the#2\endcsname:\ }#3}},% + title={\letcs\tcb@temp{the#2}\tcb@theo@title{#1}{\tcb@temp}{#3}}},% math upper/.style={before upper=$\displaystyle,after upper=$},% math lower/.style={before lower=$\displaystyle,after lower=$},% math/.style={math upper,math lower},% @@ -55,8 +80,21 @@ highlight math style/.style={highlight math/.style={notitle,nophantom,#1}},% } -\newcommand{\tcbmaketheorem}[5]{% - \newtcolorbox{#1}[3][]{#3,theorem={#2}{#4}{##2}{#5:##3},##1}% +\newcommand{\newtcbtheorem}[5][]{% + \newtcolorbox[auto counter,#1]{#2}[3][]{#4,% + title={\tcb@theo@title{#3}{\thetcbcounter}{##2}}, + list entry={\numberline{\thetcbcounter}##2},% + code={\tcb@theo@label{#5}{##3}},% + ##1}% +} + + +\newcommand{\tcbmaketheorem}[6][]{% + \def\temp@a{#5}\ifx\temp@a\@empty% + \newtcbtheorem[#1]{#2}{#3}{#4}{#6}% + \else% + \newtcbtheorem[use counter=#5,#1]{#2}{#3}{#4}{#6}% + \fi% } \newtcbox{\tcboxmath}[1][]{nobeforeafter,math upper,tcbox raise base,#1} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty index c9eb2f4b935..59daeeb479a 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 2.33 (2013/07/04) +%% The LaTeX package tcolorbox - version 2.40 (2013/07/15) %% tcolorbox.sty: Text color boxes %% %% ------------------------------------------------------------------------------------------- @@ -18,12 +18,13 @@ %% This work consists of all files listed in README %% \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tcolorbox}[2013/07/04 version 2.33 text color boxes] -\def\tcb@version{2.33} +\ProvidesPackage{tcolorbox}[2013/07/15 version 2.40 text color boxes] +\def\tcb@version{2.40} \RequirePackage{pgf}[2008/01/15] \RequirePackage{verbatim}[2003/08/22] \RequirePackage{environ}[2013/04/01] +\RequirePackage{etoolbox}[2011/01/03] % register \newif\iftcb@lowerignored @@ -41,6 +42,7 @@ \newbox\tcb@phantombox \newcounter{tcbbreakpart} +\newcounter{tcblayer} % key management \pgfkeys{/tcb/.is family} @@ -308,14 +310,19 @@ \def\tcb@evenoddmode{easy}% }, check odd page/.default=true, - phantom/.store in=\kvtcb@phantom, + phantom/.code={\appto\kvtcb@phantom{#1}}, step and label/.style 2 args={phantom={\refstepcounter{#1}\label{#2}}},% - nophantom/.style={phantom=},% + step/.style={phantom={\refstepcounter{#1}}},% + label/.style={phantom={\label{#1}}},% + add to list/.style 2 args={phantom={\tcb@addcontentsline{#1}{#2}}}, + nophantom/.code={\def\kvtcb@phantom{}},% shield externalize/.is choice, shield externalize/true/.code={\let\tcb@shield@externalize=\tcb@shield@@externalize}, shield externalize/false/.code={\let\tcb@shield@externalize=\relax}, shield externalize/.default=true, lower separated/.is if=tcb@lowerseparated, + options@for/.code={\letcs\tcb@new@colop{tcb@opt@#1}\pgfkeysalsofrom\tcb@new@colop}, + list entry/.store in=\kvtcb@listentry, } \tcbset{% @@ -326,7 +333,7 @@ \let\tcb@parboxrestore=\@parboxrestore \def\tcb@parbox@use@false{% - \def\@parboxrestore{\leavevmode\let\@parboxrestore=\tcb@parboxrestore}% + \def\@parboxrestore{\leavevmode\linewidth\hsize\let\@parboxrestore=\tcb@parboxrestore}% } \let\tcb@parbox@use@true\relax% @@ -442,10 +449,61 @@ \def\tcb@@capture@hbox{% \let\endtcolorbox=\relax% - \Collect@Body\tcbox@inner@hbox% + \Collect@Body\tcbox@inner@hbox@collected% +} + +\long\def\tcbox@inner@hbox@collected#1{% + \tcbox@inner@hbox{#1}% + \tcb@finalize@environment% +} + + +\def\tcb@managed@layers@max{0} +\def\tcbsetmanagedlayers#1{% + \setcounter{tcblayer}{\tcb@managed@layers@max}% + \ifnum\c@tcblayer<#1\relax% + \loop + \stepcounter{tcblayer}% + \newbox\tcb@temp% + \cslet{tcb@footnote@\romannumeral\c@tcblayer}{\tcb@temp}% + \tcbset{every box on layer \number\c@tcblayer/.style={reset,every box}} + \ifnum\c@tcblayer<#1\repeat% + \else% + \fi% + \xdef\tcb@managed@layers@max{#1}% + \setcounter{tcblayer}{0}% +} +\@onlypreamble\tcbsetmanagedlayers +\tcbsetmanagedlayers{4}% + +\tcbset{% + every box/.style={}, + every box on layer 1/.style={every box}, + every box on higher layers/.style={reset,every box}, +} + +\def\tcb@layer@inc{% + \stepcounter{tcblayer}% + \ifnum\c@tcblayer>\tcb@managed@layers@max% + \tcbset{every box on higher layers}% + \else% + \expandafter\setbox\csname tcb@footnote@\romannumeral\c@tcblayer\endcsname\box\@mpfootins% + \csedef{tcb@footnote@cnt@\romannumeral\c@tcblayer}{\the\c@mpfootnote}% + \tcbset{every box on layer \number\c@tcblayer}% + \fi% +} + +\def\tcb@layer@dec{% + \ifnum\c@tcblayer>\tcb@managed@layers@max% + \else% + \expandafter\global\setbox\@mpfootins\box\csname tcb@footnote@\romannumeral\c@tcblayer\endcsname% + \setcounter{mpfootnote}{\csname tcb@footnote@cnt@\romannumeral\c@tcblayer\endcsname}% + \fi + \addtocounter{tcblayer}{-1}% } \long\def\tcb@@icolorbox[#1]{% + \tcb@layer@inc% \tcbset{capture=minipage,#1}% \tcb@hasLowerfalse% \csname tcb@@capture@\kvtcb@capture\endcsname% @@ -457,7 +515,12 @@ \unskip\tcb@after@box% \end{tcb@savebox}% \tcb@draw@color@box% + \tcb@finalize@environment% +} + +\def\tcb@finalize@environment{% \color{.}% hack for some special cases + \tcb@layer@dec% } \let\endtcolorbox=\tcb@endboxanddraw @@ -799,8 +862,10 @@ \long\def\tcb@ox#1#2{% \begingroup% + \tcb@layer@inc% \tcbset{#1}% \csname tcbox@inner@\kvtcb@capture\endcsname{#2}% + \tcb@layer@dec% \endgroup% } @@ -808,30 +873,164 @@ \tcb@ox{capture=hbox,#1}{#2}% } -\long\def\tcb@newtcolorbox#1#2{\newenvironment{#1}{\tcolorbox[savedelimiter=#1,#2]}{\endtcolorbox}} -\long\def\tcb@new@tcolorbox#1[#2]#3{\newenvironment{#1}[#2]{\tcolorbox[savedelimiter=#1,#3]}{\endtcolorbox}} +\tcbset{% + new/.cd,% + use counter/.code={\def\kvtcb@new@counter{#1}\let\tcb@proc@counter=\tcb@proc@counter@use}, + auto counter/.code={\let\tcb@proc@counter=\tcb@proc@counter@auto}, + use counter from/.code={\edef\kvtcb@new@counter{\csname tcb@cnt@#1\endcsname}\let\tcb@proc@counter=\tcb@proc@counter@from}, + no counter/.code={\let\tcb@proc@counter=\tcb@proc@counter@no}, + % + number within/.store in=\kvtcb@new@numberwithin, + number format/.store in=\kvtcb@new@format, + number freestyle/.store in=\kvtcb@new@freestyle, + % + list inside/.store in=\kvtcb@new@listof, + list type/.store in=\kvtcb@new@listtype, + % + reset@new/.style={no counter,number within=,number format=\arabic,number freestyle=,list inside=,list type=tcolorbox}, +} + +\def\tcb@proc@counter@autoanduse#1{% + \letcs\tcbcounter{tcb@cnt@#1}% + \ifx\kvtcb@new@numberwithin\@empty% + \csxdef{the\tcbcounter}{\expandafter\noexpand\kvtcb@new@format{\tcbcounter}}% + \else% + \@addtoreset{\tcbcounter}{\kvtcb@new@numberwithin}% + \csxdef{the\tcbcounter}{\expandafter\noexpand\csname the\kvtcb@new@numberwithin\endcsname .\expandafter\noexpand\kvtcb@new@format{\tcbcounter}}% + \fi% + \ifx\kvtcb@new@freestyle\@empty% + \else% + \csxdef{the\tcbcounter}{\kvtcb@new@freestyle}% + \fi% + \global\csletcs{thetcb@cnt@#1}{the\tcbcounter}% + \appto\tcb@new@colopt{,code={\letcs\tcbcounter{tcb@cnt@\kvtcb@savedelimiter}\letcs\thetcbcounter{thetcb@cnt@\kvtcb@savedelimiter}\preto\kvtcb@phantom{\refstepcounter{\tcbcounter}}}}% +} -\long\def\tcb@new@@tcolorbox#1[#2][#3]#4{\newenvironment{#1}[#2][#3]{\tcolorbox[savedelimiter=#1,#4]}{\endtcolorbox}} +\def\tcb@proc@counter@auto#1{% + \newcounter{tcb@cnt@#1}% + \csxdef{tcb@cnt@#1}{tcb@cnt@#1}% + \tcb@proc@counter@autoanduse{#1}% +} -\long\def\new@tcolorbox#1[#2]{% - \@ifnextchar[{\tcb@new@@tcolorbox{#1}[#2]}{\tcb@new@tcolorbox{#1}[#2]}} +\def\tcb@proc@counter@use#1{% + \csxdef{tcb@cnt@#1}{\kvtcb@new@counter}% + \tcb@proc@counter@autoanduse{#1}% +} -\long\def\newtcolorbox#1{% - \@ifnextchar[{\new@tcolorbox{#1}}{\tcb@newtcolorbox{#1}}} +\def\tcb@proc@counter@from#1{% + \csxdef{tcb@cnt@#1}{\kvtcb@new@counter}% + \global\csletcs{thetcb@cnt@#1}{the\kvtcb@new@counter}% + \appto\tcb@new@colopt{,code={\letcs\tcbcounter{tcb@cnt@\kvtcb@savedelimiter}\letcs\thetcbcounter{thetcb@cnt@\kvtcb@savedelimiter}\preto\kvtcb@phantom{\refstepcounter{\tcbcounter}}}}% +} +\def\tcb@proc@counter@no#1{% + \appto\tcb@new@colopt{,code={\let\tcbcounter=\@empty\let\thetcbcounter=\@empty}}% +}% -\long\def\tcb@newtcbox#1#2{\newcommand{#1}{\tcbox[#2]}} +\def\tcb@proc@options@init#1#2{% + \tcbset{new/.cd,reset@new,#1}% + \tcb@proc@counter{#2}% + \ifx\kvtcb@new@listof\@empty% + \else% + \csedef{tcb@lstof@#2}{\kvtcb@new@listof}% + \csedef{tcb@lsttp@#2}{\kvtcb@new@listtype}% + \appto\tcb@new@colopt{,add to list={\csname tcb@lstof@\kvtcb@savedelimiter\endcsname}{\csname tcb@lsttp@\kvtcb@savedelimiter\endcsname}}% + \fi% +}% -\long\def\tcb@new@tcbox#1[#2]#3{\newcommand{#1}[#2]{\tcbox[#3]}} +\long\def\tcb@newtcolorbox#1#2{\newenvironment{#1}{\tcolorbox[#2,options@for=#1]}{\endtcolorbox}} -\long\def\tcb@new@@tcbox#1[#2][#3]#4{\newcommand{#1}[#2][#3]{\tcbox[#4]}} +\long\def\tcb@newtcolorbox@#1[#2]#3{\newenvironment{#1}[#2]{\tcolorbox[#3,options@for=#1]}{\endtcolorbox}} -\long\def\new@tcbox#1[#2]{% - \@ifnextchar[{\tcb@new@@tcbox{#1}[#2]}{\tcb@new@tcbox{#1}[#2]}} +\long\def\tcb@newtcolorbox@@#1[#2][#3]#4{\newenvironment{#1}[#2][#3]{\tcolorbox[#4,options@for=#1]}{\endtcolorbox}} + +\long\def\tcb@new@tcolorbox@#1[#2]{% + \@ifnextchar[{\tcb@newtcolorbox@@{#1}[#2]}{\tcb@newtcolorbox@{#1}[#2]}} + +\long\def\tcb@new@tcolorbox#1{% + \preto\tcb@new@colopt{savedelimiter=#1}% + \cslet{tcb@opt@#1}{\tcb@new@colopt}% + \@ifnextchar[{\tcb@new@tcolorbox@{#1}}{\tcb@newtcolorbox{#1}}} + +\long\def\tcb@new@tcolorbox@opt[#1]#2{% + \tcb@proc@options@init{#1}{#2}% + \tcb@new@tcolorbox{#2}% +} + +\long\def\newtcolorbox{% + \def\tcb@new@colopt{}% + \@ifnextchar[{\tcb@new@tcolorbox@opt}{\tcb@new@tcolorbox}} + +% auxiliary code to remove a leading backspace +\newcommand{\tcb@remove@bs}[1]{% + \ifcat\relax\noexpand#1% + \expandafter\tcb@remove@bs@aux@i% + \fi + #1} +\newcommand*{\tcb@remove@bs@aux@i}{% + \romannumeral% + \if\string\ \tcb@remove@bs@aux@ii\fi% + \expandafter\tcb@remove@bs@aux@iii\string} +\newcommand{\tcb@remove@bs@aux@ii}{} +\long\def\tcb@remove@bs@aux@ii#1\tcb@remove@bs@aux@iii{% + -\number\fi\expandafter\z@} +\newcommand{\tcb@remove@bs@aux@iii}[1]{\z@} + + +\long\def\tcb@newtcbox#1#2{\expandafter\newcommand\csname#1\endcsname{\tcbox[#2,options@for=#1]}} + +\long\def\tcb@newtcbox@#1[#2]#3{\expandafter\newcommand\csname#1\endcsname[#2]{\tcbox[#3,options@for=#1]}} + +\long\def\tcb@newtcbox@@#1[#2][#3]#4{\expandafter\newcommand\csname#1\endcsname[#2][#3]{\tcbox[#4,options@for=#1]}} + +\long\def\tcb@new@tcbox@#1[#2]{% + \@ifnextchar[{\tcb@newtcbox@@{#1}[#2]}{\tcb@newtcbox@{#1}[#2]}} + +\long\def\tcb@new@tcbox#1{% + \preto\tcb@new@colopt{savedelimiter=#1}% + \cslet{tcb@opt@#1}{\tcb@new@colopt}% + \@ifnextchar[{\tcb@new@tcbox@{#1}}{\tcb@newtcbox{#1}}} + +\long\def\tcb@new@tcbox@opt[#1]#2{% + \tcb@proc@options@init{#1}{#2}% + \tcb@new@tcbox{#2}% +} + +\long\def\tcb@new@tcbox@bs#1{% + \edef\temp{\tcb@remove@bs{#1}}% + \tcb@new@tcbox{\temp}% +} + +\long\def\tcb@new@tcbox@opt@bs[#1]#2{% + \edef\temp{\tcb@remove@bs{#2}}% + \tcb@new@tcbox@opt[#1]{\temp}% +} + +\long\def\newtcbox{% + \def\tcb@new@colopt{}% + \@ifnextchar[{\tcb@new@tcbox@opt@bs}{\tcb@new@tcbox@bs}} + + +\def\tcb@addcontentsline#1#2{% + \ifx\kvtcb@listentry\@empty% + \ifx\kvtcb@title\@empty% + \addcontentsline{#1}{#2}{\numberline{\thetcbcounter}\kvtcb@savedelimiter}% + \else% + \addcontentsline{#1}{#2}{\numberline{\thetcbcounter}\kvtcb@title}% + \fi% + \else% + \addcontentsline{#1}{#2}{\kvtcb@listentry}% + \fi% +} + +\newcommand*\l@tcolorbox{\@dottedtocline{1}{1.5em}{2.3em}} + +\newcommand{\tcblistof}[3][\section]{% + #1{#3}% + \@starttoc{#2}% +} -\long\def\newtcbox#1{% - \@ifnextchar[{\new@tcbox{#1}}{\tcb@newtcbox{#1}}} % verbatim output as in 'verbatim' @@ -860,6 +1059,7 @@ \def\tcb@endlowerverbatimanddraw{% \tcb@endlowerverbatim% \tcb@draw@color@box% + \tcb@finalize@environment% } \def\tcb@lowerverbatim{% @@ -881,28 +1081,9 @@ \def\tcbusetemp{\input{\kvtcb@tempfile}} -% expandonce from etoolbox -\newcommand{\tcb@expandonce}[1]{\unexpanded\expandafter{#1}} - -% slim version of etoolbox'es more general macro -\newcommand{\tcb@appto}[2]{% - \ifx#1\relax% - \edef#1{\unexpanded{#2}}% - \else% - \edef#1{\tcb@expandonce#1\unexpanded{#2}}% - \fi} - -% slim version of etoolbox'es more general macro -\newcommand{\tcb@preto}[2]{% - \ifx#1\relax% - \edef#1{\unexpanded{#2}}% - \else% - \edef#1{\unexpanded{#2}\tcb@expandonce#1}% - \fi} - \def\tcb@reset{}% \tcbset{% - initialize@reset/.code={\tcbset{#1}\tcb@appto\tcb@reset{\tcbset{#1}}},% + initialize@reset/.code={\tcbset{#1}\appto\tcb@reset{\tcbset{#1}}},% reset/.code={\tcb@reset},% reset@core/.style={notitle,width=\linewidth, natural height,space to lower,valign=top,valign lower=top, @@ -918,7 +1099,7 @@ before title=,after title=,before upper=,after upper=,before lower=,after lower=, sidebyside=false,sidebyside align=center,sidebyside gap=10mm, lefthand ratio=0.5,check odd page=false,nophantom, - shield externalize=false, + shield externalize=false,list entry=, }, initialize@reset=reset@core, } @@ -957,11 +1138,11 @@ \def\tcb@add@library#1#2{% \tcbset{library/#1/.code={\tcb@load@library{#1}{#2}}}% - \DeclareOption{#1}{\tcb@appto\tcb@optionlist{,#1}}% + \DeclareOption{#1}{\appto\tcb@optionlist{,#1}}% } \def\tcb@add@library@style#1#2{% \tcbset{library/#1/.style={#2}}% - \DeclareOption{#1}{\tcb@appto\tcb@optionlist{,#1}}% + \DeclareOption{#1}{\appto\tcb@optionlist{,#1}}% } \tcb@add@library{listings}{tcblistings.code.tex} -- cgit v1.2.3