summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-03-01 23:43:55 +0000
committerKarl Berry <karl@freefriends.org>2012-03-01 23:43:55 +0000
commit065ab9074d32d9f3697ae1f24827b48d00b180b9 (patch)
treece5aba05243b02d884d6f8ceb178b56523190c42 /Master/texmf-dist
parentb4b997286ed025b673f3ba4698d0075952cc7896 (diff)
tcolorbox 1.10 (1mar12)
git-svn-id: svn://tug.org/texlive/trunk@25548 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/tcolorbox/CHANGES10
-rw-r--r--Master/texmf-dist/doc/latex/tcolorbox/README17
-rw-r--r--Master/texmf-dist/doc/latex/tcolorbox/README.TEXLIVE1
-rw-r--r--Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdfbin105716 -> 105717 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.tex5
-rw-r--r--Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdfbin0 -> 863324 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex1672
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex219
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex2
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty10
11 files changed, 1921 insertions, 19 deletions
diff --git a/Master/texmf-dist/doc/latex/tcolorbox/CHANGES b/Master/texmf-dist/doc/latex/tcolorbox/CHANGES
index 6ad97cdec71..7234ad1cd4f 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 1.02 (2012/02/15)
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
%%
%% -------------------------------------------------------------------------------------------
%% Copyright (c) 2006-2012 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
@@ -28,3 +28,11 @@ version 1.01 (2012/01/26):
version 1.02 (2012/02/15)
- documentation language changed from German to English
- small correction of the theorem title line appearance
+
+version 1.10 (2012/03/01)
+- tcblatex style for listings changed (nolol added)
+- improved hyperref support
+- new keys parskip and noparskip
+- source code of the documentation added
+- new library 'documentation' to support LaTeX documentations
+ with several library commands, environments and keys (see documentation)
diff --git a/Master/texmf-dist/doc/latex/tcolorbox/README b/Master/texmf-dist/doc/latex/tcolorbox/README
index b7ab210224c..6a1e6fbd554 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 1.02 (2012/02/15)
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
%%
%% -------------------------------------------------------------------------------------------
%% Copyright (c) 2006-2012 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
@@ -30,8 +30,10 @@ Contents of the package
'CHANGES' log of changes (history)
'tcolorbox.sty' LaTeX package file (style file)
'tcblistings.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbtheormes.code.tex' LaTeX package file (library of tcolorbox)
- 'tcolorbox.pdf' Current documentation for tcolorbox
+ 'tcbtheorems.code.tex' LaTeX package file (library of tcolorbox)
+ 'tcbdocumenation.code.tex' LaTeX package file (library of tcolorbox)
+ 'tcolorbox.pdf' Documentation for tcolorbox
+ 'tcolorbox.tex' Source code of the documentation
'tcolorbox-example.tex' Example file for package usage
'tcolorbox-example.pdf' Compiled example
'tcolorbox-german.pdf' Outdated documentation in German
@@ -41,7 +43,8 @@ Installation
Copy the contents of the 'tcolorbox.tds.zip' from CTAN to your local TeX file tree.
Alternatively, put the files to their respective locations within the TeX installation:
- 'tcolorbox.sty' -> /tex/latex/tcolorbox
- 'tcblistings.code.tex' -> /tex/latex/tcolorbox
- 'tcbtheormes.code.tex' -> /tex/latex/tcolorbox
- all other files -> /doc/latex/tcolorbox
+ 'tcolorbox.sty' -> /tex/latex/tcolorbox
+ 'tcblistings.code.tex' -> /tex/latex/tcolorbox
+ 'tcbtheorems.code.tex' -> /tex/latex/tcolorbox
+ 'tcbdocumenation.code.tex' -> /tex/latex/tcolorbox
+ all other files -> /doc/latex/tcolorbox
diff --git a/Master/texmf-dist/doc/latex/tcolorbox/README.TEXLIVE b/Master/texmf-dist/doc/latex/tcolorbox/README.TEXLIVE
index 7a8aa232472..eb8fb652cb7 100644
--- a/Master/texmf-dist/doc/latex/tcolorbox/README.TEXLIVE
+++ b/Master/texmf-dist/doc/latex/tcolorbox/README.TEXLIVE
@@ -5,4 +5,3 @@ missing source code. You can find these files on CTAN at
If questions or concerns, email tex-live@tug.org.
tcolorbox-german.pdf
- tcolorbox.pdf
diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf
index 8a13eca4674..6edcd6357b0 100644
--- a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf
+++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox-example.tex
index a267b636fb4..5775b6c380a 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 1.02 (2012/02/15)
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
%% tcolorbox-example.tex: an example for tcolorbox
%%
%% -------------------------------------------------------------------------------------------
@@ -20,8 +20,7 @@
\documentclass{article}
\usepackage[listings,theorems]{tcolorbox}
-\tcbset{before={\par\medskip\pagebreak[0]\noindent},after={\par\medskip}}%
-
+\tcbset{noparskip}
\begin{document}
diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf
new file mode 100644
index 00000000000..134ac11c8ee
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex
new file mode 100644
index 00000000000..b7d5422cb86
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tcolorbox/tcolorbox.tex
@@ -0,0 +1,1672 @@
+% \LaTeX-Main\
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
+%% tcolorbox.tex: Manual
+%%
+%% -------------------------------------------------------------------------------------------
+%% Copyright (c) 2006-2012 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% -------------------------------------------------------------------------------------------
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `author-maintained'.
+%%
+%% This work consists of all files listed in README
+%%
+\documentclass[a4paper,11pt]{ltxdoc}
+
+\usepackage[T1]{fontenc}
+\usepackage[latin1]{inputenc}
+\usepackage[english]{babel}
+\usepackage{lmodern,parskip,array,ifthen,calc,makeidx}
+\usepackage{amsmath,amssymb}
+\usepackage[svgnames,table,hyperref]{xcolor}
+\usepackage{tikz}
+\usepackage[pdftex,bookmarks,raiselinks,pageanchor,hyperindex,colorlinks]{hyperref}
+\urlstyle{sf}
+
+\usepackage[a4paper,left=2.5cm,right=2.5cm,top=1.5cm,bottom=1.5cm,
+ marginparsep=5mm,marginparwidth=10mm,
+ headheight=0mm,headsep=0cm,
+ footskip=1.5cm,includeheadfoot]{geometry}
+\usepackage{fancyhdr}
+\fancyhf{}
+\fancyfoot[C]{\thepage}%
+\renewcommand{\headrulewidth}{0pt}
+\renewcommand{\footrulewidth}{0pt}
+\pagestyle{fancy}
+\tolerance=2000%
+\setlength{\emergencystretch}{20pt}%
+
+\RequirePackage{csquotes}
+\RequirePackage[style=numeric-comp,sorting=nyt,
+ maxnames=8,minnames=8,abbreviate=false,backend=biber]{biblatex}
+\DeclareFieldFormat{url}{\newline\url{#1}}%
+\DeclareListFormat{language}{}%
+\setlength{\bibitemsep}{\smallskipamount}
+\addbibresource{\jobname.bib}
+
+\usepackage[listings,theorems,documentation]{tcolorbox}
+
+\tcbmakedocSubKey{docTcbKey}{tcb}
+\tcbmakedocSubKey{langTcbKey}{tcb/doclang}
+
+\hypersetup{
+ pdftitle={Manual for the tcolorbox package},
+ pdfauthor={Thomas F. Sturm},
+ pdfsubject={colored boxes},
+ pdfkeywords={colored boxes, LaTeX examples, theorems}
+}
+
+\def\version{1.10}%
+\def\datum{2012/03/01}%
+\makeindex
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{document}
+\begin{center}
+\vspace*{5mm}\par
+{\bfseries\LARGE The \texttt{tcolorbox} package\par}
+{\large Manual for version \version\ (\datum)\par}\bigskip
+{\large Thomas F.~Sturm%
+ \footnote{Prof.~Dr.~Dr.~Thomas F.~Sturm, Institut f\"{u}r Mathematik und Informatik,
+ Universit\"{a}t der Bundeswehr M\"{u}nchen, D-85577 Neubiberg, Germany;
+ email: \href{mailto:thomas.sturm@unibw.de}{thomas.sturm@unibw.de}} }
+\end{center}
+\bigskip
+\begin{absquote}
+ \begin{center}\bfseries Abstract\end{center}
+ |tcolorbox| provides an environment for colored and framed text boxes with a
+ heading line. Optionally, such a box can be split in an upper and a lower
+ part. The package |tcolorbox| can be used for the setting of \LaTeX\ examples where
+ one part of the box displays the source code and the other part shows the
+ output. Another common use case is the setting of theorems. The package supports
+ saving and reuse of source code and text parts.
+\end{absquote}
+
+
+\tableofcontents
+
+
+\clearpage
+\section{Introduction}
+The package originates from the first edition of my book
+\flqq{\citetitle{sturm:2011b}\frqq~\cite{sturm:2011b}
+in about 2006.
+For the \LaTeX\ examples and tutorials given there, I wanted to have
+accentuated and colored boxes to display source code and
+compiled text in combination.
+Since, in my opinion, this type of boxes is also quite useful to highlight definitions
+and theorems, I applied them for my lecture notes in
+mathematics \cite{sturm:2007b,sturm:2008b,sturm:2010a}
+as well.
+With this package, you are invited to apply these boxes for similar projects.
+
+
+\subsection{Loading the Package}
+The base package |tcolorbox| loads the packages
+|pgf| \cite{tantau:2010c}, |calc| \cite{thorub:2007a}, and |verbatim| \cite{schoepf:2001a}.
+|tcolorbox| itself is loaded in the usual manner in the preamble:
+\begin{dispListing}
+\usepackage{tcolorbox}
+\end{dispListing}
+The package takes option keys in the key-value syntax.
+Alternatively, you may use these keys later in the preamble with
+\refCom{tcbuselibrary} (see there).
+For example, the key to typeset listings is:
+\begin{dispListing}
+\usepackage[listings]{tcolorbox}
+\end{dispListing}
+
+
+\subsection{Libraries}\label{sec:bibliothek}
+The base package |tcolorbox| is extendable by program libraries.
+This is done by usage of option keys while loading the package or inside
+the preamble by applying the following macro with the same set of keys.
+
+\begin{docCommand}{tcbuselibrary}{\marg{key list}}
+ Loads the libraries given by the \meta{key list}.
+\begin{dispListing}
+\tcbuselibrary{listings,theorems}
+\end{dispListing}
+\end{docCommand}
+
+The following keys are used inside |\tcbuselibrary| respectively
+|\usepackage| without the key tree path |/tcb/library/|.
+
+\begin{docTcbKey}[library]{listings}{}{no value}
+ Loads the package |listings| \cite{heinz:2007a} and provides additional
+ macros for typesetting listings which are described in section \ref{sec:listings}
+ from page \pageref{sec:listings}.
+\end{docTcbKey}
+
+\begin{docTcbKey}[library]{theorems}{}{no value}
+ Provides additional
+ macros for typesetting theorems which are described in section \ref{sec:theorems}
+ from page \pageref{sec:theorems}.
+\end{docTcbKey}
+
+\begin{docTcbKey}[library]{documentation}{}{no value}
+ Provides additional
+ macros for typesetting \LaTeX\ documentations
+ which are described in section \ref{sec:documentation}
+ from page \pageref{sec:documentation}.
+\end{docTcbKey}
+
+
+\clearpage
+\section{Macros for Box Creation}
+
+\subsection{The tcolorbox Environment}
+\begin{docEnvironment}{tcolorbox}{\oarg{options}}
+ This is the main environment to create an accentuated colored text box with
+ rounded corners and, optionally, two parts. The appearance of this box
+ is controlled by numerous options.
+ In the most simple case the source code
+
+\begin{dispListing}
+\begin{tcolorbox}
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispListing}
+
+creates the following compiled text box:
+\begin{tcolorbox}
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+
+The text content of the box can be divided
+in an upper and a lower part
+by the command \refCom{tcblower}. Visually, both parts are separated by a line.
+For example:
+
+\begin{dispListing}
+\begin{tcolorbox}
+This is another \textbf{tcolorbox}.
+\tcblower
+Here, you see the lower part of the box.
+\end{tcolorbox}
+\end{dispListing}
+
+This code gives the following box:
+\begin{tcolorbox}
+This is another \textbf{tcolorbox}.
+\tcblower
+Here, you see the lower part of the box.
+\end{tcolorbox}
+
+The \meta{options} control the appearance and several functions of the boxes,
+see section \ref{sec:optkeys} for the complete list.
+A quick example is given here:
+
+\begin{dispExample}
+\begin{tcolorbox}[colback=red!5,colframe=red!75!black,title=My nice heading]
+This is another \textbf{tcolorbox}.
+\tcblower
+Here, you see the lower part of the box.
+\end{tcolorbox}
+\end{dispExample}
+\end{docEnvironment}
+
+
+\begin{docCommand}{tcblower}{}
+ Used inside \refEnv{tcolorbox} to separate the upper box part from
+ the optional lower box part.
+\end{docCommand}
+
+\enlargethispage*{1cm}
+
+\begin{docCommand}{tcbset}{\marg{options}}
+ Sets options for every following \refEnv{tcolorbox} inside the current \TeX\ group.
+ For example, the colors of the boxes may be defined for the whole document by this:
+\begin{dispListing}
+\tcbset{colback=red!5,colframe=red!75!black}
+\end{dispListing}
+\end{docCommand}
+
+
+\clearpage
+\subsection{Option Keys}\label{sec:optkeys}
+For the \meta{options} in \refEnv{tcolorbox} respectively \refCom{tcbset}
+the following |pgf| keys can be applied. The key tree path |/tcb/| is not to
+be used inside these macros. It is easy to add your own style keys using
+the syntax for |pgf| keys, see \cite{tantau:2010c,sturm:2011b} or the examples
+starting from page \pageref{sec:latextutorial}.
+
+\begin{docTcbKey}{title}{=\meta{text}}{no default, initially empty}
+ Creates a heading line with \meta{text} as content.
+\begin{dispExample}
+\begin{tcolorbox}[title=My heading line]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{notitle}{}{no value, initially set}
+ Removes the title line if set before.
+\end{docTcbKey}
+
+\begin{docTcbKey}{width}{=\meta{length}}{no default, initially \cs{linewidth}}
+ Sets the total width of the colored box to \meta{length}.
+\begin{dispExample}
+\begin{tcolorbox}[width=\linewidth/2]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{boxrule}{=\meta{length}}{no default, initially \texttt{0.5mm}}
+ Sets the frame width to \meta{length}.
+\begin{dispExample}
+\begin{tcolorbox}[boxrule=2mm]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{arc}{=\meta{length}}{no default, initially \texttt{1mm}}
+ Sets the radius of the four frame arcs to \meta{length}.
+\begin{dispExample}
+\begin{tcolorbox}[arc=0mm]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\begin{tcolorbox}[arc=4mm]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{boxsep}{=\meta{length}}{no default, initially \texttt{1mm}}
+ Sets a common padding of \meta{length} between the text content and the
+ frame of the box. This value is added to the key values of
+ |left|, |right|, |top|, |bottom|, and |middle| at the appropriate places.
+\begin{dispExample}
+\begin{tcolorbox}[boxsep=5mm]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{left}{=\meta{length}}{no default, initially \texttt{4mm}}
+ Sets the left space between text and frame (additional to |boxsep|).
+\begin{dispExample}
+\begin{tcolorbox}[left=0mm]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{right}{=\meta{length}}{no default, initially \texttt{4mm}}
+ Sets the right space between text and frame (additional to |boxsep|).
+\begin{dispExample}
+\begin{tcolorbox}[right=11.7cm]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+\begin{docTcbKey}{top}{=\meta{length}}{no default, initially \texttt{2mm}}
+ Sets the top space between text and frame (additional to |boxsep|).
+\begin{dispExample}
+\begin{tcolorbox}[top=0mm]
+This is a \textbf{tcolorbox}.
+\tcblower
+This is the lower part.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{bottom}{=\meta{length}}{no default, initially \texttt{2mm}}
+ Sets the bottom space between text and frame (additional to |boxsep|).
+\begin{dispExample}
+\begin{tcolorbox}[bottom=0mm]
+This is a \textbf{tcolorbox}.
+\tcblower
+This is the lower part.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{middle}{=\meta{length}}{no default, initially \texttt{2mm}}
+ Sets the space between upper and lower text to the separation line
+ (additional to |boxsep|).
+\begin{dispExample}
+\begin{tcolorbox}[middle=0mm,boxsep=0mm]
+This is a \textbf{tcolorbox}.
+\tcblower
+This is the lower part.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{colback}{=\meta{color}}{no default, initially \texttt{black!5}}
+ Sets the background \meta{color} of the box.
+\begin{dispExample}
+\begin{tcolorbox}[colback=white]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+\begin{docTcbKey}{colframe}{=\meta{color}}{no default, initially \texttt{black!75}}
+ Sets the frame \meta{color} of the box.
+\begin{dispExample}
+\begin{tcolorbox}[colframe=red!50!yellow]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{coltext}{=\meta{color}}{no default, initially \texttt{black}}
+ Sets the text \meta{color} of the box.
+\begin{dispExample}
+\begin{tcolorbox}[coltext=yellow,colback=blue!50,colframe=blue]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{coltitle}{=\meta{color}}{no default, initially \texttt{white}}
+ Sets the title text \meta{color} of the box.
+\begin{dispExample}
+\begin{tcolorbox}[coltitle=blue!50!black,colframe=blue!25,title=Test]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{fontupper}{=\meta{text}}{no default, initially empty}
+ Sets \meta{text} before the content of the upper part (e.\,g.\ font settings).
+\begin{dispExample}
+\begin{tcolorbox}[fontupper=Hello!~\sffamily]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+\begin{docTcbKey}{fontlower}{=\meta{text}}{no default, initially empty}
+ Sets \meta{text} before the content of the lower part (e.\,g.\ font settings).
+\begin{dispExample}
+\begin{tcolorbox}[fontlower=\sffamily\bfseries]
+This is a \textbf{tcolorbox}.
+\tcblower
+This is the lower part.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{fonttitle}{=\meta{text}}{no default, initially empty}
+ Sets \meta{text} before the content of the title text (e.\,g.\ font settings).
+\begin{dispExample}
+\begin{tcolorbox}[fonttitle=\sffamily\bfseries\large,title=Hello]
+This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{lowerbox}{=\meta{mode}}{no default, initially \texttt{visible}}
+ Controls the treatment of the lower part of the box.
+ Feasible values for \meta{mode} are:
+ \begin{itemize}
+ \item |visible|: usual type setting of the lower part,
+ \item |invisible|: empty space instead of the lower part contents,
+ \item |ignored|: the lower part is not used (here).
+ \end{itemize}
+ The last two values are usually applied in connection with |savelowerto|.
+\begin{dispExample}
+\begin{tcolorbox}[lowerbox=invisible]
+This is a \textbf{tcolorbox}.
+\tcblower
+This is the lower part (but invisible).
+\end{tcolorbox}
+
+\begin{tcolorbox}[lowerbox=ignored]
+This is a \textbf{tcolorbox}.
+\tcblower
+This is the lower part (but ignored).
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+\begin{docTcbKey}{savelowerto}{=\meta{file name}}{no default, initially empty}
+ Saves the content of the lower box in a file for an optional later usage.
+\begin{dispExample}
+\begin{tcolorbox}[lowerbox=invisible,savelowerto=\jobname_bspsave.tex]
+This is a \textbf{tcolorbox}.
+\tcblower
+This is the lower part which may be quite complex:
+$\displaystyle f(x)=\frac{1+x^2}{1-x^2}$.
+\end{tcolorbox}
+
+Now, we load the saved text:\\
+\input{\jobname_bspsave.tex}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{savedelimiter}{=\meta{name}}{no default, initially \texttt{tcolorbox}}
+ Used in connection with new environment definitions which extend
+ |tcolorbox| and use or allow the option |savelowerto|.
+ To catch the end of the new box environment \meta{name} has to be the name of
+ this environment. Additionally, the environment definition has to use
+ |\tcolorbox| instead of
+ |\begin{tcolorbox}| and |\endtcolorbox| instead of |\end{tcolorbox}|.
+\begin{dispExample}
+\newenvironment{mybox}[1]{%
+ \tcolorbox[savedelimiter=mybox,
+ savelowerto=\jobname_bspsave2.tex,
+ lowerbox=ignored,
+ colback=red!5,colframe=red!75!black,fonttitle=\bfseries,title=#1]}%
+ {\endtcolorbox}
+
+\begin{mybox}{My Example}
+Upper part.
+\tcblower
+Saved lower part!
+\end{mybox}
+
+Now, the saved part is used:
+\begin{tcolorbox}[colback=green!5]
+\input{\jobname_bspsave2.tex}
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+\begin{docTcbKey}{floatplacement}{=\meta{values}}{no default, initially \texttt{htb}}
+ Sets \meta{values} as default values for the usage of |float|.
+ Feasible are the usual parameters for floating objects.
+\begin{dispListing}
+\begin{tcolorbox}[floatplacement=t,float,
+ title=Floating box from |floatplacement|]
+ This floating box is placed at the top of a page.
+\end{tcolorbox}
+\end{dispListing}
+\tcbusetemp
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{float}{\colOpt{=\meta{values}}}{default from \texttt{floatplacement}}
+ Turns the box to a floating object where \meta{values} are the
+ usual parameters for such floating objects.
+ If they are not used, the placement uses the default values given by
+ |floatplacement|.
+\begin{dispListing}
+\begin{tcolorbox}[float, title=Floating box from |float|]
+ This box floats to a feasible place automatically. You do not have to
+ use a numbering for this floating object.
+\end{tcolorbox}
+\end{dispListing}
+\tcbusetemp
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{before}{=\meta{macros}}{no default, initially \cs{par}\cs{pagebreak[0]}\cs{noindent}}
+ Sets the \meta{macros} which are executed before the colored box.
+ They are not used for floating boxes.
+\end{docTcbKey}
+
+\begin{docTcbKey}{after}{=\meta{macros}}{no default, initially \cs{par}}
+ Sets the \meta{macros} which are executed after the colored box.
+ They are not used for floating boxes.
+\end{docTcbKey}
+
+\begin{docTcbKey}{parskip}{}{style, no value}
+ Sets the keys |before| and |after| to their default values.
+ This is recommended, if the package |parskip| is used and there is no better
+ idea for |before| and |after|.
+\end{docTcbKey}
+
+\begin{docTcbKey}{noparskip}{}{style, no value}
+ Sets the keys |before| and |after| to values which are
+ recommended, if the package |parskip| is \emph{not} used and there is no better
+ idea for |before| and |after|.
+\begin{dispListing}
+\tcbset{noparskip/.style={before={\par\smallskip\pagebreak[0]\noindent},
+ after={\par\smallskip}}}
+\end{dispListing}
+\end{docTcbKey}
+
+\begin{docTcbKey}{tempfile}{=\meta{file name}}{no default, initially \cs{jobname.tcbtemp}}
+ Sets \meta{file name} as name for the temporary file which is used inside
+ \refEnv{tcbwritetemp} and \refCom{tcbusetemp} implicitely.
+\end{docTcbKey}
+
+
+
+\clearpage
+\section{Saving and Loading of Verbatim Texts}
+The following macros are slightly modified versions of the original macros
+from the known packages |moreverb| and |verbatim|.
+They are used implicitly inside of a |tcolorbox| environment,
+but they can be used outside also.
+\enlargethispage*{1.5cm}
+
+\begin{docEnvironment}{tcbverbatimwrite}{\marg{file name}}
+ Saves the \meta{environment content} to a file named by \meta{file name}.
+ \TeX\ macros inside the environment are not expanded.
+\begin{dispExample}
+\begin{tcbverbatimwrite}{\jobname_verbexp.tex}
+ This text is saved \textit{as is}.
+\end{tcbverbatimwrite}
+
+Now, we are using the file:\par
+\input{\jobname_verbexp.tex}
+\end{dispExample}
+
+This environment may be used inside an own environment. Note, that inside
+the environment definition |\tcbverbatimwrite| has to be used instead of
+|\begin{tcbverbatimwrite}| and |\endtcbverbatimwrite| instead of |\end{tcbverbatimwrite}|.
+\begin{dispExample}
+\newenvironment{myverbatim}{%
+ \begingroup\tcbverbatimwrite{\jobname_myverb.tex}}%
+ {\endtcbverbatimwrite\endgroup}
+
+\begin{myverbatim}
+ This is the text which is saved by my own environment.
+\end{myverbatim}
+
+Now, we are using the file:\par
+\input{\jobname_myverb.tex}
+\end{dispExample}
+\end{docEnvironment}
+
+\begin{docEnvironment}{tcbwritetemp}{}
+ Has the same function as \refEnv{tcbverbatimwrite}, but uses the key value
+ of |tempfile| for the file name.
+\begin{dispExample}
+\begin{tcbwritetemp}
+ This text is saved \textit{as is}.
+\end{tcbwritetemp}
+
+Now, we are using the file:\par
+\tcbusetemp
+\end{dispExample}
+\end{docEnvironment}
+
+
+\begin{docCommand}{tcbusetemp}{}
+ Loads the current temporary file which was saved by \refEnv{tcbwritetemp}.
+\end{docCommand}
+
+
+
+\clearpage
+\section{Library 'listings'}\label{sec:listings}
+The library is loaded by a package option or inside the preamble by:
+\begin{dispListing}
+\tcbuselibrary{listings}
+\end{dispListing}
+This also loads the package |listings| \cite{heinz:2007a}.
+
+\subsection{Macros of the Library}
+
+\begin{docEnvironment}{tcblisting}{\marg{options}}
+ Creates a colored box based on a \refEnv{tcolorbox}.
+ Controlled by the given \meta{options}, the
+ environment content is typesetted normally and/or as a listing.
+ Furthermore, the \meta{options} control appearance and functions of
+ the |tcolorbox|.
+ By default, the listing is interpreted as a \LaTeX\ listing.
+\begin{dispExample}
+\begin{tcblisting}{colback=red!5,colframe=red!75!black}
+This is a \LaTeX\ example which displays the text as source code
+and in compiled form.
+\end{tcblisting}
+\end{dispExample}
+\begin{dispExample}
+\begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
+ title=This is source code in another language (XML), fonttitle=\bfseries,
+ listing options={language=XML,columns=fullflexible,keywordstyle=\color{red}}}
+<?xml version="1.0"?>
+<project name="Package tcolorbox" default="documentation" basedir=".">
+ <description>
+ Apache Ant build file (http://ant.apache.org/)
+ </description>
+</project>
+\end{tcblisting}
+\end{dispExample}
+\end{docEnvironment}
+
+
+\clearpage
+\begin{docEnvironment}{tcboutputlisting}{}
+ Saves the environment content to a file which is named by the key value of
+ |listing file|. Later, this file can be loaded by
+ |\tcbinputlisting| or |\tcbuselistingtext| or |\tcbuselistinglisting|.
+\begin{dispExample}
+\begin{tcboutputlisting}
+This \textbf{text} is written to a standardized file for later usage.
+\end{tcboutputlisting}
+\end{dispExample}
+\end{docEnvironment}
+
+
+\begin{docCommand}{tcbinputlisting}{\marg{options}}
+ Creates a colored boxed based on a |tcolorbox|. The text content is read
+ from a file named by the key value of |listing file|. Apart from that,
+ the function is equal to that of \refEnv{tcblisting}.
+\begin{dispExample}
+\tcbinputlisting{colback=red!5,colframe=red!75!black,text only}
+\tcbinputlisting{colback=green!5,colframe=green!75!black,listing only}
+\end{dispExample}
+\end{docCommand}
+
+
+\begin{docCommand}{tcbuselistingtext}{}
+ Loads text from a file named by the key value of |listing file|.
+\begin{dispExample}
+\tcbuselistingtext
+\end{dispExample}
+\end{docCommand}
+
+
+\begin{docCommand}{tcbuselistinglisting}{}
+ Typesets text as listing from a file named by the key value of |listing file|.
+\begin{dispExample}
+\tcbuselistinglisting
+\end{dispExample}
+\end{docCommand}
+
+
+\begin{docCommand}{tcbusetemplisting}{}
+ Typesets text as listing from a temporary file which was written by
+ \refEnv{tcbwritetemp}.
+\end{docCommand}
+
+
+\clearpage
+\subsection{Option Keys of the Library}
+For the \meta{options} in \refEnv{tcblisting} respectively \refCom{tcbinputlisting}
+the following |pgf| keys can be applied. The key tree path |/tcb/| is not to
+be used inside these macros.
+
+\begin{docTcbKey}{listing file}{=\meta{file name}}{no default, initially \cs{jobname.listing}}
+ Sets the \meta{file name} of the file which is used to save listings.
+\end{docTcbKey}
+
+\begin{docTcbKey}{listing options}{=\meta{key list}}{no default, initially |style=tcblatex|}
+ Sets the options from the package |listings| \cite{heinz:2007a}
+ which are used during typesetting of the listing.
+ For \LaTeX\ listings, there is a predefined |listings| style named |tcblatex|
+ which can be used.
+\begin{dispExample}
+\begin{tcblisting}{colback=red!5,colframe=red!25,left=6mm,
+listing options={style=tcblatex,numbers=left,numberstyle=\tiny\color{red!75!black}}}
+This is a \LaTeX\ example which displays the text as source code
+and in compiled form. Additionally, we use line numbers here.
+\end{tcblisting}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{listing style}{=\meta{style}}{no default, initially |tcblatex|}
+ Abbreviation for |listing options={style=...}|. This key sets a \meta{style}
+ for the |listings| package, see \cite{heinz:2007a}.
+ For \LaTeX, there is a predefined style named |tcblatex|.
+\begin{dispExample}
+\begin{tcblisting}{colback=red!5,colframe=red!75!black,
+listing style=tcblatex}
+Here, we use the predefined style.
+\end{tcblisting}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{listing and text}{}{no value, initially set}
+ Typesets the environment content as listing in the upper part and
+ as compiled text in the lower part.
+\begin{dispExample}
+\begin{tcblisting}{colback=red!5,colframe=red!75!black,listing and text}
+This is a \LaTeX\ example.
+\end{tcblisting}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{text and listing}{}{no value}
+ Typesets the environment content as compiled text in the upper part and
+ as listing in the lower part.
+\begin{dispExample}
+\begin{tcblisting}{colback=red!5,colframe=red!75!black,text and listing}
+This is a \LaTeX\ example.
+\end{tcblisting}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{listing only}{}{no value}
+ Typesets the environment content as listing.
+\begin{dispExample}
+\begin{tcblisting}{colback=red!5,colframe=red!75!black,listing only}
+This is a \LaTeX\ example.
+\end{tcblisting}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{text only}{}{no value}
+ Typesets the environment content as compiled text.
+\begin{dispExample}
+\begin{tcblisting}{colback=red!5,colframe=red!75!black,text only}
+This is a \LaTeX\ example.
+\end{tcblisting}
+\end{dispExample}
+\end{docTcbKey}
+
+
+
+\clearpage
+\subsection{Creation of \LaTeX\ Tutorials}\label{sec:latextutorial}
+The following source code gives a guideline for the creation of \LaTeX\ tutorials.
+In the next section, a framework for \LaTeX\ exercises is described.
+All examples shall be numbered optionally.
+
+Firstly, some additional |tcb| keys are defined for the appearance and automatic
+numbering.
+
+\begin{dispListing}
+\newcounter{texexp}
+
+\tcbset{
+ texexp/.style={colframe=red!50!yellow!50!black, colback=red!50!yellow!5!white,
+ coltitle=red!50!yellow!3!white,
+ fonttitle=\small\sffamily\bfseries, fontupper=\small, fontlower=\small},
+ example/.code 2 args={\refstepcounter{texexp}\label{#2}%
+ \pgfkeysalso{texexp,title={Example \thetexexp: #1}}},
+}
+\end{dispListing}
+\tcbusetemp
+
+
+\begin{dispExample}
+\begin{tcblisting}{texexp}
+This is a \LaTeX\ example which displays the text as source code
+and in compiled form.
+\end{tcblisting}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{tcblisting}{example={Direct application of \texttt{example}}{firstExample}}
+Here, we use Example \ref{firstExample} with a title line.
+\end{tcblisting}
+\end{dispExample}
+
+For the next examples, two environments
+|texexp| and |texexptitled|
+are defined for abbreviation.
+
+\begin{dispListing}
+\newenvironment{texexp}[1]{\tcblisting{texexp,#1}}{\endtcblisting}
+
+\newenvironment{texexptitled}[3][]{\tcblisting{example={#2}{#3},#1}}{\endtcblisting}
+\end{dispListing}
+\tcbusetemp
+
+For special cases, |tcolorbox| with the key
+|texexp| can be used instead of these two environments.
+
+Now, we have a flexible box for \LaTeX\ examples which is demonstrated in
+the following.
+
+\begin{dispExample}
+\begin{texexp}{}
+This is a \LaTeX\ example which displays the text as source code
+and in compiled form.
+\end{texexp}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{texexp}{text and listing}
+This is a \LaTeX\ example which displays the text as source code
+and in compiled form.
+\end{texexp}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{texexp}{listing only}
+This is a \LaTeX\ example which displays the text as source code only.
+\end{texexp}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{texexp}{text only}
+This is a \LaTeX\ example which displays the text in compiled form only.
+\end{texexp}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{texexptitled}{An Example with a Heading}{heading1}
+This is a \LaTeX\ example with a numbered heading line
+which can be referred to.
+\end{texexptitled}
+Here, we see Example \ref{heading1}.
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{texexptitled}[listing only]{Another Example with a Heading}{heading2}
+The keys can be used in combination. Here, an example with a heading line
+and source code only is given.
+\end{texexptitled}
+Here, we see Example \ref{heading2}.
+\end{dispExample}
+
+
+\begin{dispListing}
+\begin{texexptitled}[float]{A floating Example with a Heading}{heading3}
+This is another \LaTeX\ example with numbered heading line.
+But now, the box is a floating object.
+\end{texexptitled}
+\end{dispListing}
+\tcbusetemp
+
+\begin{dispExample}
+The floating box of the last example is seen as Example \ref{heading3}
+on page \pageref{heading3}.
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{tcolorbox}[example={Direct application of the style |texexp|}{texexpbox1}]
+\begin{lstlisting}[style=tcblatex]
+Some \LaTeX\ source code.
+\end{lstlisting}
+\tcblower
+For special cases, the environment |tcolorbox| with style
+|example| can be used directly. As one can see, the upper and the lower
+part of the box can be used uncoupled also.
+\end{tcolorbox}
+\end{dispExample}
+
+
+\subsection{Creation of \LaTeX\ Exercises}
+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
+processing. The solution contents themselves are saved to a subdirectory named
+|solutions|.
+
+\begin{dispListing}
+\newcounter{texercise}
+
+\newwrite\solout
+\def\openoutsol{\immediate\openout\solout\jobname.sol}
+\def\solfile#1{solutions/texercise#1.tex}
+\def\writesol#1{\immediate\write\solout{\noexpand\processsol{\thetexercise}{#1}}}%
+\def\closeoutsol{\immediate\closeout\solout}
+\def\inputsol{\IfFileExists{\jobname.sol}{\input{\jobname.sol}}{}}
+\end{dispListing}
+\tcbusetemp
+
+\begin{itemize}
+\item Before the first exercise is given,
+ |\openoutsol| has to be called to start logging.
+\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|.
+\end{itemize}
+
+Inside the excercise text, there may be text parts which are needed as
+\LaTeX\ source code and as compiled text as well. These parts can be
+saved by \refEnv{tcbwritetemp} and used in compiled form by \refCom{tcbusetemp}
+or as source code by \refCom{tcbusetemplisting}.
+
+At first, we generate some new keys. Since exercises und solutions should
+be numbered, we force to use a label \meta{marker} while using the style |texercise|.
+Automatically, the label |exe:|\meta{marker} is used to mark the exercise
+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},
+texercise/.code={\refstepcounter{texercise}\label{exe:#1}\writesol{#1}%
+ \pgfkeysalso{texercisestyle,
+ listing file={\solfile\thetexercise},
+ title={Exercise \arabic{texercise}\hfill\mdseries Solution on page \pageref{sol:#1}}
+ }}
+}
+\end{dispListing}
+\tcbusetemp
+
+With these preparations, the kernel environment |texercise| for our
+exercises is created quickly:
+
+\begin{dispListing}
+\newenvironment{texercise}[2][]{%
+ \tcolorbox[texercise=#2,savedelimiter=texercise,#1]}%
+ {\endtcolorbox}
+\end{dispListing}
+\tcbusetemp
+
+The following examples demonstrate the application.
+\openoutsol
+
+
+\begin{dispExample}
+\begin{texercise}{tabular_example}
+\textit{Create the following table:}\par\smallskip%
+\begin{tcboutputlisting}
+\begin{tabular}{|p{3cm}|p{3cm}|p{3cm}|p{3cm}|}\hline
+\multicolumn{4}{|c|}{\bfseries\itshape Das alte Italien}\\\hline
+\multicolumn{2}{|c|}{\bfseries Antike} &
+\multicolumn{2}{c|}{\bfseries Mittelalter}\\\hline
+\multicolumn{1}{|c|}{\itshape Republik}&
+\multicolumn{1}{c|}{\itshape Kaiserreich}&
+\multicolumn{1}{c|}{\itshape Franken}&
+\multicolumn{1}{c|}{\itshape Teilstaaten}\\\hline
+In den Zeiten der r\"{o}mischen Republik standen dem Staat jeweils zwei
+Konsuln vor, deren Machtbefugnisse identisch waren. &
+Das r\"{o}mische Kaiserreich wurde von einem Alleinherrscher, dem Kaiser,
+regiert.
+& In der V\"{o}lkerwanderungszeit \"{u}bernahmen die Goten und sp\"{a}ter die
+Franken die Vorherrschaft.
+& Im sp\"{a}teren Mittelalter regierten F\"{u}rsten einen Fleckenteppich
+von Einzelstaaten.\\\hline
+\end{tabular}
+\end{tcboutputlisting}
+\tcbuselistingtext%
+\end{texercise}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{texercise}{macro_oneparam}
+\begin{tcboutputlisting}
+\newcommand{\headingline}[1]{%
+ \begin{center}\Large\bfseries #1\end{center}}
+\end{tcboutputlisting}
+\tcbuselistingtext%
+
+Create a new macro \verb+\headingline+ which produces the
+following output:\par\smallskip
+\begin{tcbwritetemp}
+\headingline{Very important heading}
+\end{tcbwritetemp}
+\tcbusetemplisting\tcbusetemp%
+\end{texercise}
+\end{dispExample}
+
+
+
+\begin{dispExample}
+\begin{texercise}{macro_twoparam}
+\begin{tcboutputlisting}
+\newcommand{\minitable}[2]{%
+ \begin{center}\begin{tabular}{p{10cm}}\hline%
+ \multicolumn{1}{c}{\bfseries#1}\\\hline%
+ #2\\\hline%
+ \end{tabular}\end{center}}
+\end{tcboutputlisting}
+\tcbuselistingtext%
+Create a new macro \verb+\minitable+ which produces the
+following output:\par\smallskip
+\begin{tcbwritetemp}
+\minitable{My heading}{In this tiny tabular, there is only a heading
+ and some text below which has a width of ten centimeters.}
+\end{tcbwritetemp}
+\tcbusetemplisting\par\smallskip\tcbusetemp%
+\end{texercise}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{texercise}{macro_threeparam}
+\begin{tcboutputlisting}
+\newcommand{\synop}[3]{%
+ \begin{tabular}{@{}p{(\linewidth-\tabcolsep*2-\arrayrulewidth)/2}|%
+ p{(\linewidth-\tabcolsep*2-\arrayrulewidth)/2}@{}}\hline
+ \multicolumn{2}{c}{\bfseries #1}\\\hline
+ \multicolumn{1}{c|}{\itshape English}&
+ \multicolumn{1}{c}{\itshape German}\\\hline
+ #2 & #3
+ \end{tabular}}
+\end{tcboutputlisting}
+\tcbuselistingtext%
+Create a new macro \verb+\synop+ which typesets a synoptic text according
+to the following example. Base your macro on a tabular which takes the
+total line width.\par\smallskip
+\begin{tcbwritetemp}
+\synop{Neil Armstrong}%
+{That's one small step for a man, one giant leap for mankind.}%
+{Das ist ein kleiner Schritt f\"{u}r einen Mann,
+ ein riesiger Sprung f\"{u}r die Menschheit.}
+\end{tcbwritetemp}
+\tcbusetemplisting\par\smallskip\tcbusetemp%
+\end{texercise}
+\end{dispExample}
+
+
+
+\closeoutsol
+\subsection{Solutions for the given \LaTeX\ Exercises}
+
+For all solutions, a macro |\processsol| was written to the file |\jobname.sol|.
+Now, we need a definition for this macro to use the solutions.
+
+\begin{dispListing}
+\newcommand{\processsol}[2]{%
+ \tcbinputlisting{texercisestyle,listing only,
+ title={Solution for Exercise \ref{exe:#2} on page \pageref{exe:#2}\label{sol:#2}},
+ listing file={\solfile#1}%
+ }}
+\end{dispListing}
+\tcbusetemp
+
+The loading of all solutions is done by:
+
+\begin{dispListing}
+\inputsol
+\end{dispListing}
+
+With this, we get:
+
+\tcbusetemp
+
+
+\clearpage
+\section{Library 'theorems'}\label{sec:theorems}
+The library is loaded by a package option or inside the preamble by:
+\begin{dispListing}
+\tcbuselibrary{theorems}
+\end{dispListing}
+
+\subsection{Macros of the Library}
+
+\begin{docCommand}{tcbmaketheorem}{\marg{name}\marg{display name}\marg{options}\marg{counter}\marg{prefix}}
+ Creates a new environment \meta{name} based on |tcolorbox| to frame a
+ (mathematical) theorem. The \meta{display name} is used in the title line
+ with a number, e.\,g. \mbox{\flqq Theorem 5.1\frqq}.
+ The \meta{options} are given to the underlying |tcolorbox| to control
+ the appearance.
+ The \meta{counter} is used for automatic numbering.
+ The new environment \meta{name} takes one optional and two mandatory
+ parameters. The optional parameter supplements the options and should be
+ used only in rare cases.
+ The first mandatory parameter is the title text for the theorem and
+ the second mandatory parameter is a \meta{marker}. The theorem is
+ automatically labeled with \meta{prefix}|:|\meta{marker}.
+\begin{dispExample}
+\tcbmaketheorem{theo}{My Theorem}{colback=green!5,colframe=green!35!black,
+ fonttitle=\bfseries}{texercise}{th}
+
+\begin{theo}{This is my title}{theoexample}
+ This is the text of the theorem. As can be seen, the counter \texttt{texercise}
+ is reused. The theorem is numbered with \ref{th:theoexample} and is
+ given on page \pageref{th:theoexample}.
+\end{theo}
+\end{dispExample}
+\end{docCommand}
+
+%
+
+\subsection{Option Keys of the Library}
+\enlargethispage*{1cm}
+
+\begin{docTcbKey}{theorem}{=\marg{display name}\marg{counter}\marg{title}\marg{marker}}{no default}
+ This key is internally used by \refCom{tcbmaketheorem}, but can be used
+ directly in a |tcolorbox| for a more flexible approach.
+ The \meta{display name} is used together with the increased \meta{counter} value
+ and the \meta{title} for the title line of the box. Additionally, a
+ |\label| with the given \meta{marker} is created.
+\begin{dispExample}
+\begin{tcolorbox}[colback=green!10,colframe=green!50!black,arc=4mm,
+ theorem={Test}{texercise}{Direct usage}{myMarker}]
+Here, we see the test \ref{myMarker}.
+\end{tcolorbox}
+\end{dispExample}
+For a common appearance inside the document, the key |theorem| should not be
+used directly as in the example above, but as part of a new environment
+created by hand or using \refCom{tcbmaketheorem}.
+\end{docTcbKey}
+
+%
+
+\subsection{Examples for Definitions and Theorems}
+In the following, the application of \refCom{tcbmaketheorem}
+to highlight mathematical definitions, theorems, or the like is demonstrated.
+
+At first, additional |tcb| keys are created for the appearance of
+the colored boxes. It is assumed that theorems and corollaries should be
+identically colored.
+All following environments are numbered with a common counter, but this
+can be changed easily. Here, the counter output is supplemented by
+the section number.
+
+\begin{dispListing}
+\newcounter{mytheorem}[section]
+\def\themytheorem{\thesection.\arabic{mytheorem}}
+
+\tcbset{
+ defstyle/.style={fonttitle=\bfseries\upshape, fontupper=\slshape,
+ arc=0mm, colback=blue!5,colframe=blue!75!black},
+ theostyle/.style={fonttitle=\bfseries\upshape, fontupper=\slshape,
+ colback=red!10,colframe=red!75!black},
+}
+\end{dispListing}
+\tcbusetemp
+
+By \refCom{tcbmaketheorem}, commonly numbered theorem environments are
+created now. |defstyle| and |theostyle| are used for the appearance.
+
+\begin{dispListing}
+\tcbmaketheorem{Definition}{Definition}{defstyle}{mytheorem}{def}
+\tcbmaketheorem{Theorem}{Theorem}{theostyle}{mytheorem}{theo}
+\tcbmaketheorem{Corollary}{Corollary}{theostyle}{mytheorem}{cor}
+\end{dispListing}
+\tcbusetemp
+
+Now, everything is prepared for the following examples.
+
+\begin{dispExample}
+The following theorem is numbered as Theorem \ref{theo:diffbarstetig} and
+referenced with the marker \texttt{theo:diffbarstetig}.\bigskip
+
+\begin{Theorem}{Differenzierbarkeit bedingt Stetigkeit, wobei diese Benennung
+ zu Testzwecken ungew\"{o}hnlich lang ist}{diffbarstetig}%
+ Eine Funktion $f:I\to\mathbb{R}$ ist in $x_0\in I$ stetig, wenn $f$ in
+ $x_0$ differenzierbar ist.
+\end{Theorem}
+\end{dispExample}
+
+
+\begin{dispExample}
+The following definition is numbered as Definition \ref{def:diffbarkeit} and
+referenced with the marker \texttt{def:diffbarkeit}.\bigskip
+
+\begin{Definition}{Differenzierbarkeit}{diffbarkeit}
+ Eine Funktion $f:~I\to\mathbb{R}$ auf einem Intervall $I$ hei\ss{}t in
+ $x_0\in I$ differenzierbar oder linear approximierbar,
+ wenn der Grenzwert
+ \begin{equation*}
+ \lim\limits_{x\to x_0}\frac{f(x)-f(x_0)}{x-x_0}=
+ \lim\limits_{h\to 0}\frac{f(x_0+h)-f(x_0)}{h}
+ \end{equation*}
+ existiert. Bei Existenz hei\ss{}t dieser Grenzwert Ableitung
+ oder Differentialquotient von $f$ in $x_0$ und man
+ schreibt f\"{u}r ihn
+ \begin{equation*}
+ f'(x_0)\quad\text{oder}\quad\frac{df}{dx}(x_0).
+ \end{equation*}
+\end{Definition}
+\end{dispExample}
+
+
+\begin{dispExample}
+The following corollary is numbered as Corollary \ref{cor:nullstellen} and
+referenced with the marker \texttt{cor:nullstellen}.\bigskip
+
+\begin{Corollary}{Nullstellenexistenz}{nullstellen}
+ Ist $f:[a,b]\to\mathbb{R}$ stetig und haben $f(a)$ und $f(b)$ entgegengesetzte
+ Vorzeichen, also $f(a)f(b)<0$, so besitzt $f$ eine Nullstelle $x_0\in]a,b[$,
+ also $f(x_0)=0$.
+\end{Corollary}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{Theorem}[boxrule=2mm]{Hinreichende Bedingung
+ f\"{u}r Wendepunkte}{wendehinreichend}%
+ $f$ sei eine auf einem Intervall $]a,b[$ dreimal stetig differenzierbare Funktion.
+ Ist $f''(x_0)=0$ in $x_0\in]a,b[$ und $f'''(x_0)\ne 0$, so ist
+ $(x_0,f(x_0))$ ein Wendepunkt von $f$.
+\end{Theorem}
+\end{dispExample}
+
+
+
+\clearpage
+\section{Library 'documentation'}\label{sec:documentation}
+This library has the single purpose to support \LaTeX\ package documentations
+like this one. Actually, the visual nature follows the approach from
+Till Tantau's |pgf| \cite{tantau:2010c} documentation.
+Typically, this library is assumed to be used in conjunction with the
+class |ltxdoc| or alike.
+
+The library is loaded by a package option or inside the preamble by:
+\begin{dispListing}
+ \tcbuselibrary{documentation}
+\end{dispListing}
+This also loads the library 'listings', see section \ref{sec:listings},
+and a bunch of packages, namely
+|doc|, |pifont|, |marvosym|, |hyperref|, and |makeidx|.
+
+
+\subsection{Macros of the Library}
+
+\begin{docEnvironment}{docCommand}{\marg{name}\marg{parameters}}
+ Documents a \LaTeX\ macro with given \meta{name} where \meta{name} is
+ written without backslash. This macro takes mandatory or optional \meta{parameters}.
+ It is automatically indexed and can be referenced with
+ \refCom{refCom}\marg{name}.
+\begin{dispExample}
+\begin{docCommand}{foomakedocSubKey}{\marg{name}\marg{key path}}
+ Creates a new environment \meta{name} based on \refEnv{docKey} for the
+ documentation of keys with the given \meta{key path}.
+\end{docCommand}
+\end{dispExample}
+\end{docEnvironment}
+
+
+{\let\xdocEnvironment\docEnvironment
+\let\endxdocEnvironment\enddocEnvironment
+\begin{xdocEnvironment}{docEnvironment}{\marg{name}\marg{parameters}}
+ Documents a \LaTeX\ environment with given \meta{name}.
+ This environment takes mandatory or optional \meta{parameters}.
+ It is automatically indexed and can be referenced with
+ \refCom{refEnv}\marg{name}.
+\begin{dispExample}
+\begin{docEnvironment}{foocolorbox}{\oarg{options}}
+ This is the main environment to create an accentuated colored text box with
+ rounded corners and, optionally, two parts.
+\end{docEnvironment}
+\end{dispExample}
+\end{xdocEnvironment}}
+
+\clearpage
+\begin{docEnvironment}{docKey}{\oarg{key path}\marg{name}\marg{parameters}\marg{description}}
+ Documents a key with given \meta{name} and an optional \meta{key path}.
+ This key takes mandatory or optional \meta{parameters} as value
+ with a short \meta{description}.
+ It is automatically indexed and can be referenced with
+ \refCom{refKey}\marg{name}.
+\begin{dispExample}
+\begin{docKey}[foo]{footitle}{=\meta{text}}{no default, initially empty}
+ Creates a heading line with \meta{text} as content.
+\end{docKey}
+\end{dispExample}
+\end{docEnvironment}
+
+
+\begin{docCommand}{docColor}{\marg{name}}
+ Documents a color with given \meta{name}. The color is automatically indexed.
+\begin{dispExample}
+The color \docColor{foocolor} is available.
+\end{dispExample}
+\end{docCommand}
+
+
+\begin{docCommand}{cs}{\marg{name}}
+ Macro from |ltxdoc| \cite{carlisle:2007a} to typeset a command word \meta{name}
+ where the backslash is prefixed. The library overwrites the original macro.
+\begin{dispExample}
+This is a \cs{foocommand}.
+\end{dispExample}
+\end{docCommand}
+
+\begin{docCommand}{meta}{\marg{text}}
+ Macro from |doc| \cite{mittelbach:2011a} to typeset a meta \meta{text}.
+\begin{dispExample}
+This is a \meta{text}.
+\end{dispExample}
+\end{docCommand}
+
+\begin{docCommand}{marg}{\marg{text}}
+ Macro from |ltxdoc| \cite{carlisle:2007a} to typeset a \meta{text} with
+ curly brackets as a mandatory argument. The library overwrites the original macro.
+\begin{dispExample}
+This is a mandatory \marg{argument}.
+\end{dispExample}
+\end{docCommand}
+
+\begin{docCommand}{oarg}{\marg{text}}
+ Macro from |ltxdoc| \cite{carlisle:2007a} to typeset a \meta{text} with
+ square brackets as an optional argument. The library overwrites the original macro.
+\begin{dispExample}
+This is an optional \oarg{argument}.
+\end{dispExample}
+\end{docCommand}
+
+
+\clearpage
+{\let\xdispExample\dispExample
+ \let\endxdispExample\enddispExample
+\begin{docEnvironment}{dispExample}{}
+ Creates a colored box based on a \refEnv{tcolorbox}.
+ It displays the environment content as source code in the upper part
+ and as compiled text in the lower part of the box.
+ The appearance is controlled by \refKey{/tcb/documentation listing style}
+ and the style \refKey{/tcb/docexample}. It may be
+ changed by redefining this style.
+\begin{xdispExample}
+\begin{dispExample}
+This is a \LaTeX\ example.
+\end{dispExample}
+\end{xdispExample}
+\end{docEnvironment}}
+
+
+\begin{docEnvironment}{dispListing}{}
+ Creates a colored box based on a \refEnv{tcolorbox}.
+ It displays the environment content as source code.
+ The appearance is controlled by \refKey{/tcb/documentation listing style}
+ and the style \refKey{/tcb/docexample}. It may be
+ changed by redefining this style.
+\begin{dispExample}
+\begin{dispListing}
+This is a \LaTeX\ example.
+\end{dispListing}
+\end{dispExample}
+\end{docEnvironment}
+
+\begin{docEnvironment}{absquote}{}
+ Used to typeset an abstract as quoted and small text.
+\begin{dispExample}
+\begin{absquote}
+|tcolorbox| provides an environment for colored and framed text boxes with a
+heading line. Optionally, such a box can be split in an upper and a lower part.
+\end{absquote}
+\end{dispExample}
+\end{docEnvironment}
+
+\clearpage
+\begin{docCommand}{tcbmakedocSubKey}{\marg{name}\marg{key path}}
+ Creates a new environment \meta{name} based on \refEnv{docKey} for the
+ documentation of keys with the given \meta{key path} as default.
+ The new environment \meta{name} takes the same para\-meters as \refEnv{docKey} itself.
+\begin{dispExample}
+\tcbmakedocSubKey{docFooKey}{foo}
+
+\begin{docFooKey}{foodummy}{=\meta{nothing}}{no default, initially empty}
+Some key.
+\end{docFooKey}
+\end{dispExample}
+\end{docCommand}
+
+
+\begin{docCommand}{refCom}{\marg{name}}
+ References a documented \LaTeX\ macro with given \meta{name} where \meta{name} is
+ written without backslash.
+\begin{dispExample}
+We have created \refCom{foomakedocSubKey} as an example.
+\end{dispExample}
+\end{docCommand}
+
+\begin{docCommand}{refEnv}{\marg{name}}
+ References a documented \LaTeX\ environment with given \meta{name}.
+\begin{dispExample}
+We have created \refEnv{foocolorbox} as an example.
+\end{dispExample}
+\end{docCommand}
+
+\begin{docCommand}{refKey}{\marg{name}}
+ References a documented key with given \meta{name} where \meta{name}
+ is the full path name of the key.
+\begin{dispExample}
+We have created \refKey{/foo/footitle} as an example.
+\end{dispExample}
+\end{docCommand}
+
+
+\begin{docCommand}{colDef}{\marg{text}}
+Sets \meta{text} with the definition color, see \refKey{/tcb/color definition}.
+\begin{dispExample}
+This is my \colDef{text}.
+\end{dispExample}
+\end{docCommand}
+
+\begin{docCommand}{colOpt}{\marg{text}}
+ Sets \meta{text} with the option color, see \refKey{/tcb/color option}.
+\begin{dispExample}
+This is my \colOpt{text}.
+\end{dispExample}
+\end{docCommand}
+
+
+
+\subsection{Option Keys of the Library}
+
+\begin{docTcbKey}{docexample}{}{style, no value}
+ Sets the style for \refEnv{dispExample} and \refEnv{dispListing}
+ with the colors |ExampleBack| and |ExampleFrame|.
+ To change the appearance of the examples, this style could be
+ redefined.
+\end{docTcbKey}
+
+\begin{docTcbKey}{documentation listing style}{=\meta{listing style}}{no default, initially |tcbdocumentation|}
+ Sets a \meta{listing style} for the |listings| package \cite{heinz:2007a}.
+ It is used inside \refEnv{dispExample} and \refEnv{dispListing} to typeset
+ the listings. Note that this is not identical to the key
+ \refKey{/tcb/listing style} which is used for 'normal' listings.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{color definition}{=\meta{color}}{no default, initially |Definition|}
+ Sets the highlight color used by macro and key definitions.
+\end{docTcbKey}
+
+\begin{docTcbKey}{color option}{=\meta{color}}{no default, initially |Option|}
+ Sets the color used for optional arguments.
+\end{docTcbKey}
+
+\begin{docTcbKey}{color hyperlink}{=\meta{color}}{no default, initially |Hyperlink|}
+ Sets the color for all hyper-links, i.\,e. all internal and external links.
+\end{docTcbKey}
+
+\begin{docTcbKey}{before example}{=\meta{macros}}{no default, initially \cs{par}\cs{smallskip}}
+ Sets the \meta{macros} which are executed before \refEnv{dispExample} and \refEnv{dispListing}
+ additional to \refKey{/tcb/before}.
+\end{docTcbKey}
+
+\begin{docTcbKey}{after example}{=\meta{macros}}{no default, initially empty}
+ Sets the \meta{macros} which are executed after \refEnv{dispExample} and \refEnv{dispListing}
+ additional to \refKey{/tcb/after}.
+\end{docTcbKey}
+
+\begin{docTcbKey}{index actual}{=\meta{character}}{no default, initially |@|}
+ Sets the character for 'actual' in automatic indexing.
+\end{docTcbKey}
+
+\begin{docTcbKey}{index quote}{=\meta{character}}{no default, initially |"|}
+ Sets the character for 'quote' in automatic indexing.
+\end{docTcbKey}
+
+\begin{docTcbKey}{index level}{=\meta{character}}{no default, initially |!|}
+ Sets the character for 'level' in automatic indexing.
+\end{docTcbKey}
+
+\begin{docTcbKey}{index default settings}{}{style, no value}
+ Sets the |makeindex| default values for
+ \refKey{/tcb/index actual},
+ \refKey{/tcb/index quote}, and
+ \refKey{/tcb/index level}.
+\end{docTcbKey}
+
+\begin{docTcbKey}{index german settings}{}{style, no value}
+ Sets the |makeindex| values recommended for German language texts.
+ This is identical to setting the following:
+\begin{dispListing}
+\tcbset{index actual={=},index quote={!},index level={>}}
+\end{dispListing}
+\end{docTcbKey}
+
+\clearpage
+The following keys are provided for language specific settings.
+The English language is predefined.
+
+\begin{docTcbKey}{english language}{}{style, no value}
+ Sets all language specific settings to English.
+\end{docTcbKey}
+
+\begin{langTcbKey}{color}{=\meta{text}}{no default, initially |color|}
+ Text used in the index for colors.
+\end{langTcbKey}
+
+\begin{langTcbKey}{colors}{=\meta{text}}{no default, initially |Colors|}
+ Heading text in the index for colors.
+\end{langTcbKey}
+
+\begin{langTcbKey}{environment content}{=\meta{text}}{no default, initially |environment content|}
+ Text used in \refEnv{docEnvironment}.
+\end{langTcbKey}
+
+\begin{langTcbKey}{environment}{=\meta{text}}{no default, initially |environment|}
+ Text used in the index for environments.
+\end{langTcbKey}
+
+\begin{langTcbKey}{environments}{=\meta{text}}{no default, initially |Environments|}
+ Heading text in the index for environments.
+\end{langTcbKey}
+
+\begin{langTcbKey}{key}{=\meta{text}}{no default, initially |key|}
+ Text used in the index for keys.
+\end{langTcbKey}
+
+\begin{langTcbKey}{index}{=\meta{text}}{no default, initially |Index|}
+ Heading text for the index.
+\end{langTcbKey}
+
+\begin{langTcbKey}{pageshort}{=\meta{text}}{no default, initially |P.|}
+ Short text for page references.
+\end{langTcbKey}
+
+
+\subsection{Predefined Colors of the Library}
+The following colors are predefined. They are used as default colors
+in some library commands.
+
+\def\dispColor#1{\docColor{#1}~\tikz[baseline=1mm]\path[fill=#1,draw] (0,0) rectangle (0.4,0.4);~}
+
+\dispColor{Option},
+\dispColor{Definition},
+\dispColor{ExampleFrame},
+\dispColor{ExampleBack},
+\dispColor{Hyperlink}.
+
+
+% Actually, it is not a good idea to include the references like this!
+% Do not follow this bad example ...
+\begin{tcbverbatimwrite}{\jobname.bib}
+@manual{heinz:2007a,
+ author = {Carsten Heinz and Brooks Moses},
+ title = {The Listings Package},
+ url = {http://mirror.ctan.org/macros/latex/contrib/listings/listings.pdf},
+ note = {Version 1.4},
+ month = feb,
+ year = 2007,
+ language = {english}
+}
+
+@manual{schoepf:2001a,
+ author = {Rainer Sch{\"o}pf and Bernd Raichle and Chris Rowley},
+ title = {A New Implementation of {\LaTeX}'s verbatim and verbatim* Environments},
+ url = {http://mirror.ctan.org/macros/latex/required/tools/verbatim.pdf},
+ date = {2001-03-12},
+}
+
+@techreport{sturm:2007b,
+ author = {Thomas F. Sturm},
+ title = {Mathematik 1 (B.Eng.)},
+ type = {Vorlesungs-Skriptum},
+ institution = {Universit{\"a}t der Bundeswehr M{\"u}nchen},
+ address = {Neubiberg},
+ url = {http://www.unibw.de/bw/Fakultat/we2/Sturm},
+ year = 2007,
+ language = {german}
+}
+
+@techreport{sturm:2008b,
+ author = {Thomas F. Sturm},
+ title = {Mathematik 2 (B.Eng.)},
+ type = {Vorlesungs-Skriptum},
+ institution = {Universit{\"a}t der Bundeswehr M{\"u}nchen},
+ address = {Neubiberg},
+ url = {http://www.unibw.de/bw/Fakultat/we2/Sturm},
+ year = 2008,
+ language = {german}
+}
+
+@techreport{sturm:2010a,
+ author = {Thomas F. Sturm},
+ title = {H{\"o}here Mathematik: Fortgeschrittene mathematische Methoden (M.Eng.)},
+ type = {Vorlesungs-Skriptum},
+ institution = {Universit{\"a}t der Bundeswehr M{\"u}nchen},
+ address = {Neubiberg},
+ url = {http://www.unibw.de/bw/Fakultat/we2/Sturm},
+ year = 2010,
+ language = {german}
+}
+
+@book{sturm:2011b,
+ author = {Thomas F. Sturm},
+ title = {\LaTeX\ -- Einf{\"u}hrung in das Textsatzsystem},
+ publisher = {Regionales Rechenzentrum f{\"u}r Niedersachsen (RRZN)},
+ address = {Hannover},
+ edition = 8,
+ series = {RRZN-Handb{\"u}cher},
+ url = {http://www.rrzn.uni-hannover.de/buecher.html},
+ month = sep,
+ year = 2011,
+ language = {german}
+}
+
+@manual{tantau:2010c,
+ author = {Till Tantau},
+ title = {The TikZ and PGF Packages},
+ subtitle = {Manual for version 2.10},
+ url = {http://mirror.ctan.org/graphics/pgf/base/doc/generic/pgf/pgfmanual.pdf},
+ date = {2010-10-25},
+}
+
+@manual{thorub:2007a,
+ author = {Kresten Krab Thorub and Frank Jensen and Chris Rowley},
+ title = {The calc package -- Infix notation arithmetic in \LaTeX},
+ url = {http://mirror.ctan.org/macros/latex/required/tools/},
+ day = 22,
+ month = aug,
+ year = 2007,
+ language = {english}
+}
+
+@manual{carlisle:2007a,
+ author = {David Carlisle},
+ title = {The file ltxdoc.dtx for use with \LaTeXe},
+ url = {http://mirror.ctan.org/macros/latex/base/ltxdoc.dtx},
+ date = {2007-11-11}
+}
+
+@manual{mittelbach:2011a,
+ author = {Frank Mittelbach},
+ title = {The doc and shortvrb Packages},
+ url = {http://mirror.ctan.org/macros/latex/base/doc.dtx},
+ date = {2011-06-30}
+}
+
+\end{tcbverbatimwrite}
+
+\clearpage
+\printbibliography[heading=bibintoc]
+
+\printindex
+
+\end{document}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
new file mode 100644
index 00000000000..e66e5143807
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
@@ -0,0 +1,219 @@
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
+%% tcbdocumentation.code.tex: Code for LaTeX documentations
+%%
+%% -------------------------------------------------------------------------------------------
+%% Copyright (c) 2012 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% -------------------------------------------------------------------------------------------
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `author-maintained'.
+%%
+%% This work consists of all files listed in README
+%%
+\makeatletter
+\def\tcblibrary@documentation@loaded{}
+
+\tcbuselibrary{listings}
+
+\RequirePackage{doc}[2010/02/04]
+\RequirePackage{pifont}[2005/04/12]
+\RequirePackage{marvosym}[2011/07/20]
+\RequirePackage{hyperref}[2012/02/06]
+\RequirePackage{makeidx}[2000/03/29]
+
+\definecolor{Option}{rgb}{0.118,0.546,0.222}
+\definecolor{Definition}{rgb}{0.784,0.06,0.176}
+\definecolor{ExampleFrame}{rgb}{0.628,0.705,0.942}
+\definecolor{ExampleBack}{rgb}{0.963,0.971,0.994}
+\definecolor{Hyperlink}{rgb}{0.281,0.275,0.485}
+
+\def\colDef#1{\textcolor{\kvtcb@coldef}{#1}}
+\def\colOpt#1{\textcolor{\kvtcb@colopt}{#1}}
+
+\lstdefinestyle{tcbdocumentation}{language={[LaTeX]TeX},
+ aboveskip={0\p@ \@plus 6\p@},
+ belowskip={0\p@ \@plus 6\p@},
+ columns=fullflexible,
+ keepspaces=true,
+ breaklines=true,
+ prebreak={\Righttorque},
+ postbreak={\space\Lefttorque},
+ breakatwhitespace=true,
+ basicstyle=\ttfamily\footnotesize,
+ extendedchars=true,
+ moredelim={[is][\itshape\rmfamily]{§}{§}},
+ nolol}
+
+% The following macros are taken from ltxdoc
+\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
+\def\marg#1{%
+ {\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}}
+\def\oarg#1{%
+ \colOpt{{\ttfamily[}\meta{#1}{\ttfamily]}}}
+
+% language specific texts
+\tcbset{
+ doclang/.cd,
+ color/.store in=\kvtcb@text@color,
+ colors/.store in=\kvtcb@text@colors,
+ environment content/.store in=\kvtcb@text@envcontent,
+ environment/.store in=\kvtcb@text@env,
+ environments/.store in=\kvtcb@text@envs,
+ key/.store in=\kvtcb@text@key,
+ index/.store in=\kvtcb@text@index,
+ pageshort/.store in=\kvtcb@text@pageshort,
+}
+
+% documentation options
+\tcbset{
+ documentation listing style/.store in=\kvtcb@doclstsytle,
+ color option/.store in=\kvtcb@colopt,
+ color definition/.store in=\kvtcb@coldef,
+ color hyperlink/.store in=\kvtcb@colhyper,
+ color frame/.store in=\kvtcb@colhyper,
+ color hyperlink/.store in=\kvtcb@colhyper,
+ before example/.store in=\kvtcb@beforeexample,
+ after example/.store in=\kvtcb@afterexample,
+ index actual/.store in=\idx@actual,
+ index quote/.store in=\idx@quote,
+ index level/.store in=\idx@level,
+}
+
+% styles
+\tcbset{
+ docexample/.style={colframe=ExampleFrame,colback=ExampleBack,fontlower=\footnotesize},
+ index default settings/.style={index actual={@},index quote={"},index level={!}},
+ index german settings/.style={index actual={=},index quote={!},index level={>}},
+ english language/.code={\tcbset{doclang/.cd,
+ color=color,
+ colors=Colors,
+ environment content=environment content,
+ environment=environment,
+ environments=Environments,
+ key=key,
+ index=Index,
+ pageshort={P.}}},
+}
+
+% presets
+\tcbset{
+ english language,
+ documentation listing style=tcbdocumentation,
+ index default settings,
+ color option=Option,
+ color definition=Definition,
+ color hyperlink=Hyperlink,
+ before example=\par\smallskip,
+ after example=,
+}
+
+\AtBeginDocument{\hypersetup{
+ citecolor=\kvtcb@colhyper,
+ linkcolor=\kvtcb@colhyper,
+ urlcolor=\kvtcb@colhyper,
+ filecolor=\kvtcb@colhyper,
+ menucolor=\kvtcb@colhyper
+}}
+
+% tcolorbox specific macros
+\def\tcb@doc@usetemplisting{\lstinputlisting[style=\kvtcb@doclstsytle]{\kvtcb@tempfile}}
+
+\let\dispExample\tcbwritetemp
+
+\def\enddispExample{%
+ \endtcbwritetemp%
+ \kvtcb@beforeexample\begin{tcolorbox}[docexample]%
+ \tcb@doc@usetemplisting%
+ \tcblower%
+ \tcbusetemp%
+ \end{tcolorbox}\kvtcb@afterexample%
+}
+
+\let\dispListing\tcbwritetemp
+
+\def\enddispListing{%
+ \endtcbwritetemp%
+ \kvtcb@beforeexample\begin{tcolorbox}[docexample]%
+ \tcb@doc@usetemplisting%
+ \end{tcolorbox}\kvtcb@afterexample%
+}
+
+% index auxiliary macros
+\def\index@Col#1{\index{#1\idx@actual\texttt{#1} \kvtcb@text@color}\index{\kvtcb@text@colors\idx@level#1\idx@actual\texttt{#1}}}
+\def\index@Com#1{\index{#1\idx@actual\cs{#1}}}
+\def\index@Env#1{\index{#1\idx@actual\texttt{#1} \kvtcb@text@env}\index{\kvtcb@text@envs\idx@level#1\idx@actual\texttt{#1}}}
+\def\index@Key#1{\index{#1\idx@actual\texttt{#1} \kvtcb@text@key}}%
+\def\index@KeyPath#1#2{\index@Key{#2}\index{#1\idx@actual\texttt{/#1/}\idx@level#2\idx@actual\texttt{#2}}}%
+
+\def\disp@com#1{\colDef{\ttfamily\bfseries#1}}
+
+\def\brackets#1{{\ttfamily\char`\{}#1{\ttfamily\char`\}}}
+
+\newenvironment{manual@entry}{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}}{\endlist}
+
+\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}#2}}}%
+ {\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}#2}}%
+ \manual@top{~~\meta{\kvtcb@text@envcontent}}%
+ \manual@top{\cs{end}\brackets{\disp@com{#1}}}}%
+ {\end{manual@entry}}
+
+\newenvironment{docKey}[4][\@empty]{\begin{manual@entry}%
+ \ifx#1\@empty%
+ \hypertarget{key:#2}{\manual@top{\disp@com{#2}\index@Key{#2}\protected@edef\@currentlabel{#2}\label{key:#2}#3\hfill(#4)}}
+ \else\hypertarget{key:/#1/#2}{\manual@top{\disp@com{/#1/#2}\index@KeyPath{#1}{#2}\protected@edef\@currentlabel{/#1/#2}\label{key:/#1/#2}#3\hfill(#4)}}\fi}%
+ {\end{manual@entry}}
+
+\def\tcbmakedocSubKey#1#2{%
+ \newenvironment{#1}[4][\@empty]{%
+ \ifx##1\@empty\def\tcb@key@path{#2}\else\def\tcb@key@path{#2/##1}\fi%
+ \begin{docKey}[\tcb@key@path]{##2}{##3}{##4}}%
+ {\end{docKey}}%
+}
+
+\def\docColor#1{\disp@com{#1}\index@Col{#1}}%
+
+\def\ref@doc#1{\hyperlink{#1}{\texttt{\ref*{#1}}\textsuperscript{\ding{213}\,\kvtcb@text@pageshort\,\pageref*{#1}}}}
+
+\def\refCom#1{\ref@doc{com:#1}}
+\def\refEnv#1{\ref@doc{env:#1}}
+\def\refKey#1{\ref@doc{key:#1}}
+
+\newenvironment{absquote}
+ {\list{}{\leftmargin2cm\rightmargin\leftmargin}%
+ \item\relax\footnotesize}
+ {\endlist}
+
+%--- index macros taken from pgfmanual-en-macros
+\def\index@prologue{\section*{\kvtcb@text@index}\addcontentsline{toc}{section}{\kvtcb@text@index}%
+ \par\noindent%
+}
+\c@IndexColumns=2
+ \def\theindex{\@restonecoltrue
+ \columnseprule \z@ \columnsep 29\p@
+ \twocolumn[\index@prologue]%
+ \parindent -30pt%
+ \columnsep 15pt%
+ \parskip 0pt plus 1pt%
+ \leftskip 30pt%
+ \rightskip 0pt plus 2cm%
+ \small%
+ \def\@idxitem{\par}%
+ \let\item\@idxitem\ignorespaces}
+ \def\endtheindex{\onecolumn}
+\def\noindexing{\let\index=\@gobble}
+
+
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex
index aad137eda3d..6f0653f9c82 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 1.02 (2012/02/15)
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
%% tcblistings.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -26,7 +26,7 @@
aboveskip={0\p@ \@plus 6\p@}, belowskip={0\p@ \@plus 6\p@},
columns=fullflexible, keepspaces=true,
breaklines=true, breakatwhitespace=true,
- basicstyle=\ttfamily\small, extendedchars=true
+ basicstyle=\ttfamily\small, extendedchars=true, nolol
}
\def\tcbuselistingtext{\input{\kvtcb@listingfile}}%
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex
index 7ab67ecfc2a..864e30f103d 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 1.02 (2012/02/15)
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
%% tcbtheorems.code.tex: Code for theorems in colorboxes
%%
%% -------------------------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
index 155e5a22a78..2929cf75e57 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 1.02 (2012/02/15)
+%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
%% tcolorbox.sty: Text color boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tcolorbox}[2012/02/15 version 1.02 text color boxes]
+\ProvidesPackage{tcolorbox}[2012/03/01 version 1.10 text color boxes]
\RequirePackage{pgf}[2008/01/15]
\RequirePackage{calc}[2007/08/22]
@@ -74,14 +74,15 @@
lowerbox/visible/.code={\tcb@lowerignoredfalse\tcb@lowervisibletrue},
lowerbox/invisible/.code={\tcb@lowerignoredfalse\tcb@lowervisiblefalse},
lowerbox/ignored/.code={\tcb@lowerignoredtrue\tcb@lowervisiblefalse},
+ parskip/.style={before={\par\pagebreak[0]\noindent},after={\par}},
+ noparskip/.style={before={\par\smallskip\pagebreak[0]\noindent},after={\par\smallskip}},
}
\tcbset{notitle,width=\linewidth,boxsep=1mm,boxrule=0.5mm,
left=4mm,right=4mm,top=2mm,bottom=2mm,middle=2mm,arc=1mm,lowerbox=visible,
colback=black!5,colframe=black!75,coltext=black,coltitle=white,
fonttitle=,fontupper=,fontlower=,floatplacement=htb,nofloat,savelowerto=,
- before={\par\pagebreak[0]\noindent},after={\par},
- savedelimiter={tcolorbox},tempfile={\jobname.tcbtemp}}%
+ parskip,savedelimiter={tcolorbox},tempfile={\jobname.tcbtemp}}%
% lrbox with integrated minipage
@@ -291,6 +292,7 @@
\tcb@add@library{listings}{tcblistings.code.tex}
\tcb@add@library{theorems}{tcbtheorems.code.tex}
+\tcb@add@library{documentation}{tcbdocumentation.code.tex}
\ProcessOptions*
\edef\tcb@temp{\noexpand\tcbuselibrary{\tcb@optionlist}}