From 33526e1dcce800a5967a3113e832201f73b1124c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 28 Nov 2014 23:30:05 +0000 Subject: tcolorbox (28nov14) git-svn-id: svn://tug.org/texlive/trunk@35686 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/tcolorbox/CHANGES | 14 +- Master/texmf-dist/doc/latex/tcolorbox/README | 2 +- .../doc/latex/tcolorbox/tcolorbox-example.pdf | Bin 361375 -> 361359 bytes .../doc/latex/tcolorbox/tcolorbox-example.tex | 2 +- .../doc/latex/tcolorbox/tcolorbox.doc.abstract.tex | 72 +++++--- .../latex/tcolorbox/tcolorbox.doc.coreoptions.tex | 48 +++++- .../doc/latex/tcolorbox/tcolorbox.doc.graphics.tex | 12 +- .../doc/latex/tcolorbox/tcolorbox.doc.listings.tex | 65 ++++--- .../doc/latex/tcolorbox/tcolorbox.doc.raster.tex | 24 +-- .../latex/tcolorbox/tcolorbox.doc.recording.tex | 186 +++++++++++++++++++++ .../doc/latex/tcolorbox/tcolorbox.doc.verbatim.tex | 1 - .../texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf | Bin 5098840 -> 5189526 bytes .../texmf-dist/doc/latex/tcolorbox/tcolorbox.tex | 63 ++++++- .../tex/latex/tcolorbox/tcbbreakable.code.tex | 4 +- .../tex/latex/tcolorbox/tcbdocumentation.code.tex | 4 +- .../tex/latex/tcolorbox/tcbfitting.code.tex | 4 +- .../tex/latex/tcolorbox/tcbhooks.code.tex | 4 +- .../tex/latex/tcolorbox/tcblistings.code.tex | 4 +- .../tex/latex/tcolorbox/tcblistingscore.code.tex | 4 +- .../tex/latex/tcolorbox/tcblistingsutf8.code.tex | 4 +- .../tex/latex/tcolorbox/tcbminted.code.tex | 4 +- .../tex/latex/tcolorbox/tcbraster.code.tex | 12 +- .../tex/latex/tcolorbox/tcbskins.code.tex | 39 ++++- .../tex/latex/tcolorbox/tcbskinsjigsaw.code.tex | 4 +- .../tex/latex/tcolorbox/tcbtheorems.code.tex | 4 +- .../tex/latex/tcolorbox/tcbxparse.code.tex | 4 +- .../texmf-dist/tex/latex/tcolorbox/tcolorbox.sty | 48 +++++- 27 files changed, 512 insertions(+), 120 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.recording.tex (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/tcolorbox/CHANGES b/Master/texmf-dist/doc/latex/tcolorbox/CHANGES index b9b918d9601..f1e300a7db2 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/CHANGES +++ b/Master/texmf-dist/doc/latex/tcolorbox/CHANGES @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% %% ------------------------------------------------------------------------------------------- %% Copyright (c) 2006-2014 by Prof. Dr. Dr. Thomas F. Sturm @@ -670,3 +670,15 @@ version 3.30 (2014/11/17) 'raster odd column', 'raster even column', 'raster column n', 'raster odd row', 'raster even row', 'raster row m','raster odd number', 'raster even number', 'raster row m column n', 'raster number n' + +version 3.31 (2014/11/28) +- new macros: '\tcbstartrecording', '\tcbrecord', '\tcbstoprecording', '\tcbinputrecords' +- new option: 'squeezed title', 'squeezed title*', 'phantomlabel', + 'record', 'no recording' +- 'savelowerto' changed to need only one run instead of two +- library 'skins': + * '\imagename' macro can be used in more situations + * '\tcbincludegraphics' made aware of 'grffile' package +- new library 'raster': + * tcbraster safeguarded against restricted horizontal mode + * new option: 'raster every box' diff --git a/Master/texmf-dist/doc/latex/tcolorbox/README b/Master/texmf-dist/doc/latex/tcolorbox/README index e13acdde5b8..8518a74fcab 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/README +++ b/Master/texmf-dist/doc/latex/tcolorbox/README @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% %% ------------------------------------------------------------------------------------------- %% Copyright (c) 2006-2014 by Prof. Dr. Dr. Thomas F. Sturm diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf index c39dcb96838..4fc0a744cb3 100644 Binary files a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf and b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf differ diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.tex index f6d9ac5733f..23909f20912 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcolorbox-example.tex: an example for tcolorbox %% %% ------------------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.abstract.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.abstract.tex index 89327dcde48..b63a1ca9ba1 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.abstract.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.abstract.tex @@ -4,23 +4,52 @@ % \usepackage{incgraph} \begin{inctext} \begin{tikzpicture} -\definecolorseries{boxcol}{rgb}{last}{red}{blue} -\resetcolorseries[24]{boxcol} +\definecolorseries{boxcol}{rgb}{last}{blue}{red} +\resetcolorseries[28]{boxcol} \coordinate (A) at (0,0); \coordinate (B) at (21,29.7); -\path[use as bounding box,top color=Goldenrod!25!white,bottom color=Navy!25!white] - (A) rectangle coordinate (C) (B); -\foreach \w in {-15,-30,...,-360} -{\node[below right,rotate around={\w:(C)}] at ([xshift=1cm]C) {% - \begin{tcolorbox}[width=8cm,title=tcolorbox \version, - fontupper=\scriptsize,fonttitle=\small\bfseries, - colframe=boxcol,colback=boxcol!25!white,colbacktitle=boxcol!!+!50!black, - enhanced jigsaw,opacityback=0.5,opacitybacktitle=0.75] - \lipsum[2] - \end{tcolorbox}}; -} -\node[font=\Huge\bfseries] at ([yshift=12cm]C) {|tcolorbox|}; -\node[font=\large\bfseries] at ([yshift=-12cm]C) - {Manual for version \version\ (\datum)}; +\path[use as bounding box] (A) rectangle coordinate (C) (B); +\node[transform shape,xslant=0.7,rotate=-10,xshift=0cm] at (C) {% + \begin{tcbraster}[raster columns=4,title=tcolorbox \version, + fonttitle=\small\bfseries,raster width=50cm] + \foreach \b in {1,...,28} {\begin{tcolorbox}[enhanced, + watermark text=\thetcbrasternum, + colframe=boxcol!30!white, + colback=boxcol!25!white!30!white, + colbacktitle=boxcol!!+!50!black!30!white, + colupper=black!30!white]\lipsum[2]\end{tcolorbox}} + \end{tcbraster}% +}; +\node at (C) {% + \begin{tcbitemize}[title=tcolorbox \version,fonttitle=\small\bfseries, + enhanced jigsaw,opacityback=0.5,opacitybacktitle=0.75, + center upper,valign=center,arc=5mm, + raster width=16cm,raster column skip=8mm,raster halign=center, + raster force size=false, + raster row 1/.style={height=6cm}, + raster row 2/.style={width=6cm,height=4cm}, + raster column 1/.style={flushright title, + frame style={left color=yellow!50!black,right color=green!50!black}, + title style={left color=yellow!50!blue,right color=blue!50!green!50!black}, + interior style={left color=yellow!70,right color=green!70}, + underlay={\draw[line width=6mm,line cap=round,black!60] + ([shift={(0.4,-0.15)}]frame.north east) + --([shift={(0.4,0.15)}]frame.south east); }}, + raster column 2/.style={ + frame style={left color=green!50!black,right color=yellow!50!black}, + title style={left color=blue!50!green!50!black,right color=yellow!50!blue}, + interior style={left color=green!70,right color=yellow!70}}] + \tcbitem[fontupper=\Huge\bfseries,sharp corners=east, + underlay={\draw[line width=6mm,line cap=round,black!60] + ([shift={(0.4,0.30)}]frame.north east)-- coordinate(A) +(0,0.2); + \draw[line width=1mm,line cap=round,black!60](A) -- +(30:1.5cm); + \draw[line width=1mm,line cap=round,black!60](A) -- +(150:1.5cm);}] + tcolorbox + \tcbitem[fontupper=\large\bfseries,sharp corners=west] + Manual for\\ version\\ \version\\(\datum) + \tcbitem[sharp corners=northeast] + \tcbitem[sharp corners=northwest] Thomas F.~Sturm + \end{tcbitemize}% +}; \end{tikzpicture} \end{inctext} \end{tcboutputlisting} @@ -30,12 +59,11 @@ colbacktitle=Navy!15!ExampleBack,top=0mm,before=\par\smallskip,% listing style=mydocumentation,listing only} -\bigskip - -\begin{marker} -If you have trouble printing this document, the reason is quite likely the -cover page. Printing the pages starting with page 2 or page 3 should work. -\end{marker} +%\bigskip +%\begin{marker} +%If you have trouble printing this document, the reason is quite likely the +%cover page. Printing the pages starting with page 2 or page 3 should work. +%\end{marker} \clearpage \begin{center} diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.coreoptions.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.coreoptions.tex index b1782eb8d16..9af1eaa1d8f 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.coreoptions.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.coreoptions.tex @@ -53,6 +53,41 @@ Now, we try again with adjusted titles:\\ \clearpage +\begin{docTcbKey}[][doc new=2014-11-24]{squeezed title}{=\meta{text}}{style, no default, initially unset} + Creates a single heading line with \meta{text} as content. + If the \meta{text} is longer than the available space, the text is + squeezed to fit into the available space. +\begin{dispExample} +% \tcbuselibrary{raster} +\begin{tcbitemize}[raster columns=3,raster equal height, + colframe=red!75!black,colback=red!5!white,fonttitle=\bfseries] +\tcbitem[squeezed title={Short title}] + First box +\tcbitem[squeezed title={This is a very very long title}] + Second box +\tcbitem[squeezed title={This title is clearly to long for this application}] + Third box +\end{tcbitemize} +\end{dispExample} +\end{docTcbKey} + +\begin{docTcbKey}[][doc new=2014-11-24]{squeezed title*}{=\meta{text}}{style, no default, initially unset} + This is a combination of \refKey{/tcb/adjusted title} and \refKey{/tcb/squeezed title}. +\begin{dispExample} +% \tcbuselibrary{raster} +\begin{tcbitemize}[raster columns=3,raster equal height, + colframe=red!75!black,colback=red!5!white,fonttitle=\bfseries] +\tcbitem[squeezed title*={Short title}] + First box +\tcbitem[squeezed title*={This is a very very long title}] + Second box +\tcbitem[squeezed title*={This title is clearly to long for this application}] + Third box +\end{tcbitemize} +\end{dispExample} +\end{docTcbKey} + +\clearpage \begin{docTcbKey}{detach title}{}{no value} Detaches the title from its normal position. The text of the title is stored into \docAuxCommand{tcbtitletext} and the formatted title is @@ -191,7 +226,7 @@ This is the lower part (but ignored). \end{docTcbKey} -\begin{docTcbKey}{savelowerto}{=\meta{file name}}{no default, initially empty} +\begin{docTcbKey}[][doc updated=2014-11-28]{savelowerto}{=\meta{file name}}{no default, initially empty} Saves the content of the lower part in a file for an optional later usage. \begin{dispExample} \begin{tcolorbox}[lowerbox=invisible,savelowerto=\jobname_bspsave.tex,colback=white] @@ -1409,6 +1444,11 @@ colframe=red!75!black,colback=white} \end{dispExample} \end{docTcbKey} +\medskip +\begin{marker} +See \Vref{sec:raster} for more equal height options. +\end{marker} + \clearpage \begin{docTcbKey}{minimum for equal height group}{=\meta{id}:\meta{length}}{no default, initially unset} Plants a \meta{length} into the equal height group with @@ -3103,6 +3143,12 @@ Typically, this option is used for numbered boxes, see Subsection \ref{sec:numbe from page \pageref{sec:numberedboxes}, e.\,g.\ \refKey{/tcb/new/auto counter}. \end{docTcbKey} +\begin{docTcbKey}[][doc new=2014-11-28]{phantomlabel}{=\meta{marker}}{no default, initially unset} +Equivalent to \refKey{/tcb/label} for an \emph{unnumbered} box. +A |\phantomsection| from the package |hyperref| is used to set a correct +hyperlink target. This is not needed for a numbered box. +\end{docTcbKey} + \begin{docTcbKey}{label type}{=\meta{type}}{no default, initially unset} This option key can be used only in conjunction with the |cleveref| package \cite{cubitt:2013a} which has to be loaded separately. diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.graphics.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.graphics.tex index 5e3e6e672cb..f6302028a86 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.graphics.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.graphics.tex @@ -14,7 +14,7 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk \subsection{Macros} -\begin{docCommand}[doc new=2014-11-14]{tcbincludegraphics}{\oarg{options}\marg{file name}} +\begin{docCommand}[doc new and updated={2014-11-14}{2014-11-24}]{tcbincludegraphics}{\oarg{options}\marg{file name}} In principle, this macro includes an image file denoted by \meta{file name} using the standard |\includegraphics| and puts it into a \refEnv{tcolorbox}. The \meta{options} are |tcolorbox| keys to set up the colored box. @@ -50,8 +50,8 @@ See \Vref{sec:skins} for the documentation of all other options of the \mylib{sk \clearpage The auxiliary macro \docAuxCommand{imagename} may be used inside \refCom{tcbincludegraphics} to display the name of the file. -\docAuxCommand{imagename} is already detokenized and is allowed to -included special characters like the underscore. Note that an appropriate +\docAuxCommand{imagename} is already partially detokenized and is allowed to +contain special characters like the underscore. Note that an appropriate font is required to display such characters. %\docAuxCommand{imagepath}% @@ -127,6 +127,12 @@ specify a file system \meta{directory} where the image files are located. graphics directory={../../pictures}, } \end{dispListing} +\smallskip +\begin{marker} +The |\graphicspath| macro from the |graphics| package is superior to this option. +\refKey{/tcb/graphics directory} may be used especially for +\refCom{tcbincludepdf}. +\end{marker} \end{docTcbKey} \begin{docTcbKey}[][doc new=2014-11-14]{graphics pages}{=\meta{selection}}{no default, initially |1,...,|\cs{pdfpages}} diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.listings.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.listings.tex index 65a406d2712..86b63b18dbf 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.listings.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.listings.tex @@ -1293,31 +1293,19 @@ The following series of examples demonstrate the application of In the following, a guideline is given for the creation of \LaTeX\ exercises with solutions. These solutions are saved to disk for application at a place of choice. -Therefore, all used exercises are logged to a file |\jobname.sol| for automatic +Therefore, all used exercises are logged to a file |\jobname.records| for automatic processing. The solution contents themselves are saved to a subdirectory named -|solutions|. - -\begin{dispListing} -%\newcounter{texercise} % preamble - -\newwrite\solout -\def\openoutsol{\immediate\openout\solout\jobname.sol} -\def\solfile#1{solutions/texercise#1.tex} -\def\writesol#1{\immediate\write\solout{\noexpand\processsol{\thetcbcounter}{#1}}}% -\def\closeoutsol{\immediate\closeout\solout} -\def\inputsol{\IfFileExists{\jobname.sol}{\input{\jobname.sol}}{}} -\end{dispListing} -\tcbusetemp +|solutions|. Also see \Vref{sec:recording}. \begin{itemize} \item Before the first exercise is given, - |\openoutsol| has to be called to start logging. + \refCom{tcbstartrecording} has to be called to start recording. \item The solution is given as content of a \refEnv{tcboutputlisting} environment. Note, that you can use this content also inside the exercise with \refCom{tcbuselistingtext} in compiled form. \item After the last exercise is given (and before using the solutions), - |\closeoutsol| has to be called to stop logging. -\item The solutions are loaded by |\inputsol|. + \refCom{tcbstoprecording} has to be called to stop recording. +\item The solutions are loaded by \refCom{tcbinputrecords}. \end{itemize} Inside the exercise text, there may be text parts which are needed as @@ -1334,7 +1322,9 @@ and the label |sol:|\meta{marker} is used to mark the solution. \begin{dispListing} \tcbset{texercisestyle/.style={arc=0.5mm, colframe=blue!25!yellow!90!white, colback=blue!25!yellow!5!white, coltitle=blue!25!yellow!40!black, - fonttitle=\small\sffamily\bfseries, fontupper=\small, fontlower=\small}} + fonttitle=\small\sffamily\bfseries, fontupper=\small, fontlower=\small, + listing options={style=tcblatex,texcsstyle=*\color{red!40!black}}, +}} \end{dispListing} \tcbusetemp @@ -1343,17 +1333,13 @@ exercises is created quickly: \inputpreamblelisting{E} +\clearpage +The following examples demonstrate the application. + \begin{dispListing} -\newtcolorbox{texercise}[2][]{texercisestyle, - listing file={\solfile\thetexercise}, - phantom={\refstepcounter{texercise}\label{exe:#2}\writesol{#2}}, - title={Exercise \arabic{texercise}% - \hfill\mdseries Solution on page \pageref{sol:#2}},#1} +\tcbstartrecording \end{dispListing} -%\tcbusetemp - -The following examples demonstrate the application. -\openoutsol +\tcbusetemp \begin{dispExample} @@ -1448,7 +1434,12 @@ total line width.\par\smallskip \tcbusetemplisting\par\smallskip\tcbusetemp% \end{texercise} \end{dispExample} -\closeoutsol +%\closeoutsol + +\begin{dispListing} +\tcbstoprecording +\end{dispListing} +\tcbusetemp \bigskip @@ -1463,23 +1454,25 @@ Now, we give a list of all exercises with: \clearpage \subsection{Solutions for the given \LaTeX\ Exercises} -For all solutions, a macro |\processsol| was written to the file |\jobname.sol|. +For all solutions, a macro |\processsol| was written to the file |\jobname.records|. Now, we need a definition for this macro to use the solutions. \begin{dispListing} -% \usepackage{hyperref} % for \phantomsection -\newcommand{\processsol}[2]{% - \tcbinputlisting{texercisestyle,listing only, - phantom={\phantomsection\label{sol:#2}},% - title={Solution for Exercise \ref{exe:#2} on page \pageref{exe:#2}}, - listing file={\solfile{#1}}}} +% \usepackage{hyperref} % for phantomlabel +\newtcbinputlisting{\processsol}[2]{% + texercisestyle, + listing only, + listing file={#1}, + phantomlabel={sol:#2},% + title={Solution for Exercise \ref{exe:#2} on page \pageref{exe:#2}}, +} \end{dispListing} \tcbusetemp The loading of all solutions is done by: \begin{dispListing} -\inputsol +\tcbinputrecords \end{dispListing} With this, we get: diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.raster.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.raster.tex index a28f326e658..49a2911da29 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.raster.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.raster.tex @@ -462,7 +462,11 @@ a \emph{raster}. Note that such style definitions are not removed by \refKey{/tcb/reset} or \refKey{/tcb/raster reset}. The style definitions are used in the order given below. -\begin{docTcbKey}{raster odd column}{}{style} +\begin{docTcbKey}[][doc new=2014-11-24]{raster every box}{}{style} +This style is used for every box. +\end{docTcbKey} + +\begin{docTcbKey}[][doc new=2014-11-10]{raster odd column}{}{style} This style is used for every box in an odd column. \begin{dispExample} \begin{tcbitemize}[size=small,colframe=red!50!black,colback=red!10!white, @@ -475,27 +479,27 @@ This style is used for every box in an odd column. \end{dispExample} \end{docTcbKey} -\begin{docTcbKey}{raster even column}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster even column}{}{style} This style is used for every box in an even column. \end{docTcbKey} -\begin{docTcbKey}{raster column n}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster column n}{}{style} This style is used for every box in the |n|-th column. |n| has to be replaced by a number. \end{docTcbKey} -\begin{docTcbKey}{raster odd row}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster odd row}{}{style} This style is used for every box in an odd row. \end{docTcbKey} -\begin{docTcbKey}{raster even row}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster even row}{}{style} This style is used for every box in an even row. \end{docTcbKey} -\begin{docTcbKey}{raster row m}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster row m}{}{style} This style is used for every box in the |m|-th row. |m| has to be replaced by a number. \begin{dispExample} @@ -509,11 +513,11 @@ This style is used for every box in the |m|-th row. \end{dispExample} \end{docTcbKey} -\begin{docTcbKey}{raster odd number}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster odd number}{}{style} This style is used for every box with an odd number. \end{docTcbKey} -\begin{docTcbKey}{raster even number}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster even number}{}{style} This style is used for every box with an even number. \begin{dispExample} \begin{tcbitemize}[size=small,colframe=red!50!black,colback=red!10!white, @@ -530,14 +534,14 @@ This style is used for every box with an even number. \end{docTcbKey} -\begin{docTcbKey}{raster row m column n}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster row m column n}{}{style} This style is used for the box in the |m|-th row and |n|-th column. |m| and |n| have to be replaced by numbers. \end{docTcbKey} -\begin{docTcbKey}{raster number n}{}{style} +\begin{docTcbKey}[][doc new=2014-11-10]{raster number n}{}{style} This style is used for the box with number |n|. |n| has to be replaced by a number. \begin{dispExample} diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.recording.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.recording.tex new file mode 100644 index 00000000000..38d5859f0fb --- /dev/null +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.recording.tex @@ -0,0 +1,186 @@ +% !TeX root = tcolorbox.tex +% include file of tcolorbox.tex (manual of the LaTeX package tcolorbox) +\clearpage +\section{Recording}\label{sec:recording} +The package provides some macros and options to take \emph{records} during +compilation. This is done by \LaTeX\ file operations to save some data +to a file for later usage. The main application scenario is depicted in +\Vref{sec:recording-exercises} where +informations about example solutions are recorded and read again +in \Vref{sec:recording-solutions}. + +\subsection{Makros}\label{sec:recording-makros} +\begin{docCommand}[doc new=2014-11-28]{tcbstartrecording}{\oarg{file name}} + Opens a file denoted by \meta{file name} for writing the records. + The default file name is |\jobname.records|. + See \Vref{sec:recording-exercises} for an example application. +\end{docCommand} + +\begin{docCommand}[doc new=2014-11-28]{tcbrecord}{\marg{content}} + Records any \meta{content} to the record file. + \refCom{tcbrecord} is implemented as |\immediate\write|. + \refCom{tcbstartrecording} has to be called before; otherwise, \refCom{tcbrecord} + is silently ignored. +\begin{dispListing} +\tcbrecord{\string\solution{\thetcbcounter}{solutions/exercise-\thetcbcounter.tex}} +\end{dispListing} +\end{docCommand} + +\begin{docCommand}[doc new=2014-11-28]{tcbstoprecording}{} + Closes the current record file which was opened by \refCom{tcbstartrecording} + before. +\end{docCommand} + +\begin{docCommand}[doc new=2014-11-28]{tcbinputrecords}{\oarg{file name}} + Opens a file denoted by \meta{file name} for reading the records via |\input|. + The default file name is the name of the last used record file for saving. + \refCom{tcbstoprecording} has to be called before. +\end{docCommand} + + +\subsection{Options}\label{sec:recording-options} +\begin{docTcbKey}[][doc new=2014-11-28]{record}{=\meta{content}}{style, no default} + Records any \meta{content} to the record file, see \refCom{tcbrecord}. + This key can be used several times to write several lines. + \begin{dispListing} + record={\string\solution{\thetcbcounter}{solutions/exercise-\thetcbcounter.tex}} + \end{dispListing} +\end{docTcbKey} + +\begin{docTcbKey}[][doc new=2014-11-28]{no recording}{}{} + Disables \refCom{tcbrecord} and \refKey{/tcb/record} inside the current + group. +\end{docTcbKey} + + +\clearpage +\subsection{Example: Exercises}\label{sec:recording-exercises} +The following application example creates exercises and their corresponding +solutions. Each pair is generated inside a single |tcolorbox| where the +solution is given below \refCom{tcblower}. For every example, the solution part +is saved by \refKey{/tcb/savelowerto} to a file. The saving is recorded using +\refKey{/tcb/record}. To enlighten the possibilities, the second exercise +has no solution. Finally, the solutions are input in \Vref{sec:recording-solutions}. + +\inputpreamblelisting{L} + +\begin{dispListing*}{breakable,before upper=} +\tcbstartrecording + +\begin{exercise} + Compute the derivative of the following function: + \begin{equation*} + f(x)=\sin((\sin x)^2) + \end{equation*} +\tcblower + The derivative is: + \begin{align*} + f'(x) &= \left( \sin((\sin x)^2) \right)' + =\cos((\sin x)^2) 2\sin x \cos x. + \end{align*} +\end{exercise} + +\begin{exercise}[no solution] + It holds: + \begin{equation*} + \frac{d}{dx}\left(\ln|x|\right) = \frac{1}{x}. + \end{equation*} +\end{exercise} + +\begin{exercise} + Compute the derivative of the following function: + \begin{equation*} + f(x)=(\sin(\sin x))^2 + \end{equation*} +\tcblower + The derivative is: + \begin{align*} + f'(x) &= \left( (\sin(\sin x))^2 \right)' + =2\sin(\sin x)\cos(\sin x)\cos x. + \end{align*} +\end{exercise} + +\begin{exercise} + Compute the derivative of the following function: + \begin{equation*} + f(x)=\sqrt{x^3-6x^2+2x} + \end{equation*} +\tcblower + The derivative is: + \begin{align*} + f'(x) &= \left( \sqrt{x^3-6x^2+2x} \right)' + = \frac{3x^2-12x+2}{2\sqrt{x^3-6x^2+2x}}. + \end{align*} +\end{exercise} + +\begin{exercise} + Compute the derivative of the following function: + \begin{equation*} + f(x)=\left(\frac{2+3x}{1-2x}\right)^3 + \end{equation*} +\tcblower + The derivative is: + \begin{align*} + f'(x) &= \left( \left(\frac{2+3x}{1-2x}\right)^3 \right)' + = 3 \left(\frac{2+3x}{1-2x}\right)^2 \frac{(1-2x)3-(2+3x)(-2)}{(1-2x)^2} + = \frac{21(2+3x)^2}{(1-2x)^4}. + \end{align*} +\end{exercise} + +\begin{exercise} + Compute the derivative of the following function: + \begin{equation*} + f(x)=\frac{\cos x}{(\tan 2x)^2} + \end{equation*} +\tcblower + The derivative is: + \begin{align*} + f'(x) &= \left( \frac{\cos x}{(\tan 2x)^2} \right)' + = \left( \frac{\cos x (\cos 2x)^2}{(\sin 2x)^2} \right)'\\ + &= \frac{(\sin 2x)^2 [(-\sin x)(\cos 2x)^2+(\cos x)4\cos 2x (-\sin 2x)] + - \cos x (\cos 2x)^2 4\sin 2x \cos 2x}{(\sin 2x)^4}\\ + &= -\frac{\cos(2x) [\sin x \sin 2x \cos 2x+ 4\cos x(\sin 2x)^2 + + 4 \cos x (\cos 2x)^2]}{(\sin 2x)^3}\\ + &= -\frac{\cos(2x) [\sin x \sin 2x \cos 2x+ 4\cos x]}{(\sin 2x)^3}. + \end{align*} +\end{exercise} + +\begin{exercise} + Compute the derivative of the following function: + \begin{equation*} + f(x)=\cos((2x^2+3)^3) + \end{equation*} +\tcblower + The derivative is: + \begin{align*} + f'(x) &= \left( \cos((2x^2+3)^3) \right)' + =-\sin((2x^2+3)^3) 3(2x^2+3)^2 2\cdot 2x\\ + &=-12x(2x^2+3)^2\sin((2x^2+3)^3). + \end{align*} +\end{exercise} + +\begin{exercise} + Compute the derivative of the following function: + \begin{equation*} + f(x)=(x^2+1)\sqrt{x^4+1} + \end{equation*} +\tcblower + The derivative is: + \begin{align*} + f'(x) &= \left( (x^2+1)\sqrt{x^4+1} \right)' + = 2x\sqrt{x^4+1} + \frac{2x^3(x^2+1)}{\sqrt{x^4+1}}. + \end{align*} +\end{exercise} + +\tcbstoprecording +\end{dispListing*} +\tcbusetemp + +\subsection{Example: Solutions}\label{sec:recording-solutions} +This concludes the example given in \Vref{sec:recording-exercises}. +Now, the saved and recorded solutions are included. + +\begin{dispListing*}{breakable,before upper=} +\tcbinputrecords +\end{dispListing*} +\tcbusetemp diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.verbatim.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.verbatim.tex index 03494e42e1e..7d654d2cebf 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.verbatim.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.doc.verbatim.tex @@ -54,4 +54,3 @@ Now, we are using the file:\par \begin{docCommand}{tcbusetemp}{} Loads the current temporary file which was saved by \refEnv{tcbwritetemp}. \end{docCommand} - diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf index 91fc5275574..d7f8629d926 100644 Binary files a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf and b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf differ diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex index 28008bbb92e..402233df465 100644 --- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex +++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex @@ -1,5 +1,5 @@ % \LaTeX-Main\ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcolorbox.tex: Manual %% %% ------------------------------------------------------------------------------------------- @@ -69,6 +69,7 @@ \providecommand{\tcbpkgprefix}{} \usepackage[all]{\tcbpkgprefix tcolorbox} +\usepackage[extendedchars,encoding,filenameencoding=utf-8]{grffile} \tcbset{skin=enhanced, doc head={colback=yellow!10!white,interior style=fill}, @@ -105,8 +106,8 @@ \renewcommand*{\tcbdocnew}[1]{\textcolor{green!50!black}{\sffamily\bfseries N} #1} \renewcommand*{\tcbdocupdated}[1]{\textcolor{blue!75!black}{\sffamily\bfseries U} #1} -\def\version{3.30}% -\def\datum{2014/11/17}% +\def\version{3.31}% +\def\datum{2014/11/28}% \makeindex \hypersetup{ @@ -136,7 +137,7 @@ moretexcs={% core endtcolorbox,endtcbverbatimwrite,newtcolorbox,newtcbox,newtcboxfit,tcbusetemp,tcbtitle,tcbtitletext, tcblower,tcbox,tcboxfit,tcbset,tcbuselibrary,tcolorbox,tcbverbatimwrite,tcbsetforeverylayer,tcbsubtitle, - tcolorboxenvironment, + tcolorboxenvironment,tcblistof,tcbstartrecording,tcbrecord,tcbstoprecording,tcbinputrecords, % listings endtcblisting,newtcblisting,newtcbinputlisting, tcblisting,tcbinputlisting,tcbuselistingtext,tcbuselistinglisting,tcbusetemplisting, @@ -252,10 +253,11 @@ \input{\jobname_preamble_D.tex} \begin{tcbverbatimwrite}{\jobname_preamble_E.tex} -\newtcolorbox[auto counter,number within=section,list inside=exam]% - {texercise}[2][]{texercisestyle, - listing file={\solfile\thetcbcounter},label={exe:#2}, - phantom={\writesol{#2}}, +\newtcolorbox[auto counter,number within=section,list inside=exam]{texercise}[2][]{% + texercisestyle, + listing file={solutions/texercise\thetcbcounter.tex}, + label={exe:#2}, + record={\string\processsol{solutions/texercise\thetcbcounter.tex}{#2}}, title={Exercise \thetcbcounter\hfill\mdseries Solution on page \pageref{sol:#2}}, list text={Exercise with solution on page \pageref{sol:#2}},#1} \end{tcbverbatimwrite} @@ -327,8 +329,50 @@ \input{\jobname_preamble_K.tex} +\begin{tcbverbatimwrite}{\jobname_preamble_L.tex} +% \tcbuselibrary{skins,xparse} + +\NewTColorBox[auto counter,number within=section]{exercise}{+O{}}{% + enhanced,colframe=green!20!black,colback=yellow!10!white,coltitle=green!40!black, + fonttitle=\bfseries, + underlay={\begin{tcbclipinterior} + \shade[inner color=green!80!yellow,outer color=yellow!10!white] + (interior.north west) circle (2cm); + \draw[help lines,step=5mm,yellow!80!black,shift={(interior.north west)}] + (interior.south west) grid (interior.north east); + \end{tcbclipinterior}}, + title={Exercise~\thetcbcounter:}, + label={exercise@\thetcbcounter}, + attach title to upper=\quad, + after upper={\par\hfill\textcolor{green!40!black}% + {\itshape Solution on page~\pageref{solution@\thetcbcounter}}}, + lowerbox=ignored, + savelowerto=solutions/exercise-\thetcbcounter.tex, + record={\string\solution{\thetcbcounter}{solutions/exercise-\thetcbcounter.tex}}, + #1 +} + +\NewTotalTColorBox{\solution}{mm}{% + enhanced,colframe=red!20!black,colback=yellow!10!white,coltitle=red!40!black, + fonttitle=\bfseries, + underlay={\begin{tcbclipinterior} + \shade[inner color=red!50!yellow,outer color=yellow!10!white] + (interior.north west) circle (2cm); + \draw[help lines,step=5mm,yellow!80!black,shift={(interior.north west)}] + (interior.south west) grid (interior.north east); + \end{tcbclipinterior}}, + title={Solution of Exercise~\ref{exercise@#1} on page~\pageref{exercise@#1}:}, + phantomlabel={solution@#1}, + attach title to upper=\par, +}{\input{#2}} + +\tcbset{no solution/.style={no recording,after upper=}} +\end{tcbverbatimwrite} +\input{\jobname_preamble_L.tex} + + %\tcbset{draftmode} -%\includeonly{tcolorbox.doc.quickref} +%\includeonly{tcolorbox.doc.listings} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} @@ -339,6 +383,7 @@ \include{tcolorbox.doc.coreoptions} \include{tcolorbox.doc.initoptions} \include{tcolorbox.doc.verbatim} +\include{tcolorbox.doc.recording} \include{tcolorbox.doc.technical} \include{tcolorbox.doc.skins} \include{tcolorbox.doc.graphics} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex index c68230e2954..c8669f2dea9 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbbreakable.code.tex: Code for breakable colorboxes %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \let\tcb@parboxrestore@true=\tcb@parboxrestore \def\tcb@parboxrestore@false{\vskip-\parskip\linewidth\hsize\noindent} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex index a527cff86cf..d650b5e9561 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbdocumentation.code.tex: Code for LaTeX documentations %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \tcbuselibrary{listings,skins,xparse} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex index fb8177184b0..2d0832d3979 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% 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{3.30} +\tcb@set@library@version{3.31} \newdimen\tcbfitdim \newdimen\tcb@lowerfitdim diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex index 881969b1c3e..8c7bc5ab4b6 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbhooks.code.tex: Code for adding hooks %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \tcbset{% before upper app/.code={\appto\kvtcb@before@upper{#1}},% diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex index 87c3bf72de3..3dde90ea421 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% 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{3.30} +\tcb@set@library@version{3.31} \RequirePackage{listings}[2007/02/22] diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex index e812ba74f20..d693e1e4280 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcblistingscode.code.tex: Auxiliary code for colorboxes with listings %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \RequirePackage{pdftexcmds} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex index 53ef49b102b..a201563c981 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% 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{3.30} +\tcb@set@library@version{3.31} \RequirePackage{listingsutf8}[2011/11/10] \tcbuselibrary{listings} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex index 0775f4ce12d..677cb554e4e 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbminted.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{3.30} +\tcb@set@library@version{3.31} \RequirePackage{minted}[2011/09/17] diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex index c38fe7eb326..a2855744436 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \newcounter{tcbrastercolumn} \newcounter{tcbrasterrow} @@ -102,6 +102,7 @@ \setcounter{tcbrastercolumn}{1}% \setcounter{tcbrasterrow}{1}% \tcbset{every box on layer \the\numexpr\number\c@tcblayer+1\relax/.code={% + \tcbset{raster every box/.try}% \ifodd\c@tcbrastercolumn\relax% \tcbset{raster odd column/.try}% \else% @@ -148,6 +149,12 @@ \tcb@raster@set@size{height=\tcb@raster@box@height}% \fi% \tcb@raster@ehg@start% + \let\tcb@end@raster\@empty% + \ifinner\ifhmode% + \color@vbox% + \hsize=\kvtcb@raster@width% + \let\tcb@end@raster\color@endbox% + \fi\fi%& {\par\nointerlineskip% \addvspace{\the\dimexpr\kvtcb@raster@skip@before-\parskip\relax}}% \kvtcb@raster@halign\noindent% @@ -164,6 +171,7 @@ \addvspace{\the\dimexpr\kvtcb@raster@skip@after-\parskip\relax}% \fi% \endgroup% + \tcb@end@raster% \setcounter{tcbrastercolumn}{\tcb@raster@save@column}% \setcounter{tcbrasterrow}{\tcb@raster@save@row}% } diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex index 1c895583237..91fc0316a47 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% 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{3.30} +\tcb@set@library@version{3.31} \RequirePackage{tikz}[2010/10/13] @@ -1636,12 +1636,39 @@ }% } +\def\tcb@scanfilename#1#2{% + \begingroup% + \everyeof{\noexpand}% + \endlinechar -1% + \catcode`\_=11% + \catcode`\~=11% + \edef\x{\scantokens\expandafter{#2}}% + \expandafter\endgroup% + \expandafter\def\expandafter #1\expandafter{\x}% +}% + + \def\tcb@include@graphics@preparefile#1{% - \def\imagename{\detokenize{#1}}% - \ifx\kvtcb@graphics@directory\@empty% - \edef\imagepath{#1}% + \tcb@scanfilename\tcb@temp{#1}% + \filename@parse{\tcb@temp}% + \ifx\filename@ext\relax% + \let\imagename\filename@base% + \else% + \def\imagename{\filename@base\Gin@sepdefault\filename@ext}% + \fi% + \ifdefined\grffile@Ginclude@graphics% + % grffile package loaded + \ifx\kvtcb@graphics@directory\@empty% + \def\imagepath{#1}% + \else% + \def\imagepath{\kvtcb@graphics@directory/#1}% + \fi% \else% - \edef\imagepath{\expandonce\kvtcb@graphics@directory/\noexpand#1}% + \ifx\kvtcb@graphics@directory\@empty% + \edef\imagepath{#1}% + \else% + \edef\imagepath{\kvtcb@graphics@directory/#1}% + \fi% \fi% } diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex index fda058f95e9..0478a70be6e 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins %% %% ------------------------------------------------------------------------------------------- @@ -17,7 +17,7 @@ %% %% This work consists of all files listed in README %% -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \tcbuselibrary{skins} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex index d8f14fa29c8..f30a8570389 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbtheorems.code.tex: Code for theorems in colorboxes %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \RequirePackage{amsmath} diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex index 520dc58bd58..2b6ccd375f4 100644 --- a/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex +++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex @@ -1,4 +1,4 @@ -%% The LaTeX package tcolorbox - version 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcbhooks.code.tex: Code for adding hooks %% %% ------------------------------------------------------------------------------------------- @@ -18,7 +18,7 @@ %% This work consists of all files listed in README %% %\makeatletter -\tcb@set@library@version{3.30} +\tcb@set@library@version{3.31} \RequirePackage{xparse}[2013/12/31] diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty index f6cbdad0d8d..8f18cd54613 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 3.30 (2014/11/17) +%% The LaTeX package tcolorbox - version 3.31 (2014/11/28) %% tcolorbox.sty: Text color boxes %% %% ------------------------------------------------------------------------------------------- @@ -18,8 +18,8 @@ %% This work consists of all files listed in README %% \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tcolorbox}[2014/11/17 version 3.30 text color boxes] -\def\tcb@version{3.30} +\ProvidesPackage{tcolorbox}[2014/11/28 version 3.31 text color boxes] +\def\tcb@version{3.31} \RequirePackage{pgf}[2008/01/15] \RequirePackage{verbatim}[2003/08/22] @@ -144,6 +144,15 @@ notitle/.style={title=}, adjust text/.store in=\kvtcb@adjusttext, adjusted title/.style={title={#1\vphantom{\kvtcb@adjusttext}}}, + squeezed title/.style={title={% + \setbox\z@=\color@hbox#1\color@endbox% + \ifdim\wd\z@>\linewidth\relax% + \resizebox{\linewidth}{\height}{\unhbox\z@}% + \else% + \unhbox\z@% + \fi% + }}, + squeezed title*/.style={squeezed title={#1\vphantom{\kvtcb@adjusttext}}},% detach title/.code=\tcb@detach@title@code,% attach title/.code=\tcb@attach@title@code,% attach title to upper/.style={detach title,before upper={\tcbtitle#1}}, @@ -433,6 +442,7 @@ step and label/.style 2 args={phantom={\refstepcounter{#1}\tcb@set@label{#2}}},% step/.style={phantom={\refstepcounter{#1}}},% label/.style={phantom={\tcb@set@label{#1}}},% + phantomlabel/.style={phantom={\ifdefined\phantomsection\phantomsection\fi\tcb@set@label{#1}}},% label type/.store in=\kvtcvb@label@type,% no label type/.style={label type=},% add to list/.style 2 args={phantom={\tcb@addcontentsline{#1}{#2}}}, @@ -593,8 +603,6 @@ \let\tcb@startbox\tcb@savelowerbox% \let\endtcolorbox\tcb@endboxanddraw% \else% - \IfFileExists{\kvtcb@savelowerto}{% - \tcb@savelowerbox\input{\kvtcb@savelowerto}\end{tcb@savebox}}{}% \let\tcb@startbox\tcb@lowerverbatim% \expandafter\let\csname end\kvtcb@savedelimiter\expandafter\endcsname\csname tcb@endlowerverbatimanddraw\endcsname% \fi% @@ -1473,6 +1481,8 @@ \def\tcb@endlowerverbatimanddraw{% \tcb@endlowerverbatim% + \IfFileExists{\kvtcb@savelowerto}{% + \tcb@savelowerbox\input{\kvtcb@savelowerto}\end{tcb@savebox}}{}% \tcb@draw@color@box% \tcb@finalize@environment% } @@ -1499,6 +1509,34 @@ \def\tcbusetemp{\input{\kvtcb@tempfile}} +% recording + +\newwrite\tcb@record@out + +\def\tcb@null#1{} +\newcommand{\tcb@record}[1]{\immediate\write\tcb@record@out{#1}} + +\newcommand{\tcbstartrecording}[1][\jobname.records]{% + \let\tcbrecord\tcb@record% + \edef\tcb@record@file{#1}% + \immediate\openout\tcb@record@out\tcb@record@file% +} + +\newcommand{\tcbstoprecording}{% + \immediate\closeout\tcb@record@out% + \let\tcbrecord\tcb@null% +} + +\tcbset{% + record/.style={phantom={\tcbrecord{#1}}}, + no recording/.code={\let\tcbrecord\tcb@null}, + no recording +} + +\newcommand{\tcbinputrecords}[1][\tcb@record@file]{% + \IfFileExists{#1}{\input{#1}}{\tcb@error{record file `#1' not found}{The record file `#1' was not found}}% +} + \tcb@new@skin{standard}{frame engine=standard,interior titled engine=standard, interior engine=standard,segmentation engine=standard,title engine=standard, graphical environment=pgfpicture,geometry nodes=false, -- cgit v1.2.3