summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-09-05 00:16:23 +0000
committerKarl Berry <karl@freefriends.org>2011-09-05 00:16:23 +0000
commit45c6401dd15f7ce517e6798f2948e94148dcd8c3 (patch)
treedbca8c25cb7c90bea755773d5211f7d89ba32478 /Master
parentf5b4e2827c52206834b8c921b5a037c615b24f3a (diff)
mdframed (4sep11)
git-svn-id: svn://tug.org/texlive/trunk@23815 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/mdframed/README12
-rw-r--r--Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.pdfbin119439 -> 130982 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.tex202
-rw-r--r--Master/texmf-dist/tex/latex/mdframed/md-frame-0.mdf9
-rw-r--r--Master/texmf-dist/tex/latex/mdframed/md-frame-1.mdf11
-rw-r--r--Master/texmf-dist/tex/latex/mdframed/md-frame-3.mdf9
-rw-r--r--Master/texmf-dist/tex/latex/mdframed/mdframed.sty176
7 files changed, 323 insertions, 96 deletions
diff --git a/Master/texmf-dist/doc/latex/mdframed/README b/Master/texmf-dist/doc/latex/mdframed/README
index 6aa1764b150..e477349dbbc 100644
--- a/Master/texmf-dist/doc/latex/mdframed/README
+++ b/Master/texmf-dist/doc/latex/mdframed/README
@@ -1,7 +1,7 @@
-%%$Id: README 165 2011-08-30 09:55:55Z marco $
-%%$Rev: 165 $
+%%$Id: README 173 2011-09-04 16:28:21Z marco $
+%%$Rev: 173 $
%%$Author: marco $
-%%$Date: 2011-08-30 11:55:55 +0200 (Di, 30. Aug 2011) $
+%%$Date: 2011-09-04 18:28:21 +0200 (So, 04. Sep 2011) $
Working with the command \fbox or \fcolorbox, one has to
handle page breaks by hand. The present package defines the
@@ -11,6 +11,12 @@ Author's name: Marco Daniel and Elke Schubert (!new)
License type: lppl
------------------------------------------------
+changes in version 0.9:
+- added option nobreak
+- detecting float environments to prevent split calculation
+- expand documentation (Thanks to Alan Munn)
+
+------------------------------------------------
changes in version 0.8a:
- fixes bugs
- fixes documentation
diff --git a/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.pdf b/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.pdf
index 9b78f016c34..f064ed64171 100644
--- a/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.pdf
+++ b/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.tex b/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.tex
index 6b8e6474740..71ae1a3b89f 100644
--- a/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.tex
+++ b/Master/texmf-dist/doc/latex/mdframed/mdframed-doc-en.tex
@@ -1,13 +1,13 @@
%Documenation of the package mdframed
-%%$Id: mdframed-doc-en.tex 165 2011-08-30 09:55:55Z marco $
-%%$Rev: 165 $
+%%$Id: mdframed-doc-en.tex 174 2011-09-04 17:25:41Z marco $
+%%$Rev: 174 $
%%$Author: marco $
%%$Dater:$
\setcounter{errorcontextlines}{999}
\documentclass[english,11pt,]{scrartcl}
%\usepackage{showframe}
\usepackage[nofancy,draft,notoday]{svninfo}
-\svnInfo $Id: mdframed-doc-en.tex 165 2011-08-30 09:55:55Z marco $
+\svnInfo $Id: mdframed-doc-en.tex 174 2011-09-04 17:25:41Z marco $
\usepackage{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
@@ -43,7 +43,7 @@
\usepackage[]{graphicx}
-\usepackage[style=1]{mdframed}
+\usepackage[style=1,]{mdframed}
\usepackage{xspace}
@@ -115,6 +115,9 @@ urlcolor=cyan,
bookmarksdepth=4,
}
%\usepackage{showframe}
+
+\newmdtheoremenv[linecolor=red]{lemma}{Lemma}[section]
+
\begin{document}
\thispagestyle{empty}
\begin{center}
@@ -127,21 +130,19 @@ bookmarksdepth=4,
\vspace*{.5\baselineskip}
\href{mailto:marco.daniel@mada-nada.de}{Marco Daniel}%
\footnote{With thanks to Heiko Oberdiek, Rolf Niepraschk,
- Martin Scharrer and Herbert Voss.},
+ Martin Scharrer and Herbert Voss.\newline Sorry for bad English.},
\href{mailto:marco.daniel@mada-nada.de}{Elke Schubert}%
\qquad \mdversion\ \qquad \today
\end{center}
\begin{abstract}
-Working with the command \mdcommand{fbox} or \mdcommand{fcolorbox}, one has to handle page breaks by hand, meaning that you have to split up the \mdcommand{fbox} into two. The present package defines the environment \mdname which automatically deals with page breaks, whence the name \glqq breakable\grqq.
-
+The standard methods for framing text (\mdcommand{fbox} or \mdcommand{fcolorbox}) require you to handle page breaks by hand, meaning that you have to split the \mdcommand{fbox} into two. The present package defines the environment \mdname which automatically deals with pagebreaks in framed text.\par
By using \mdcommand{newenvironment} the user may choose between several individual designs.
\end{abstract}
\pdfbookmark[1]{\contentsname}{tocbook}
\tableofcontents
\section{Motivation}
-Many users wish to (further) emphasize lemmata, definitions, proofs etc. The package \mdname allows to
-create environments with breakable frames. I think an example is the best way to demonstrate the properties.
+Many users wish to (further) emphasize lemmata, definitions, proofs, etc. The package \mdname allows you to create environments with breakable frames. I think an example is the best way to demonstrate its properties.
\begin{mdexample}
\newtheorem{mdtheorem}{Theorem}[section]
\newenvironment{theorem}{\begin{mdframed}%
@@ -188,11 +189,16 @@ The package defines only one environment with the following syntax:
\end{mdexample}
With version 0.8 you have two commands to create environments with \mdpack{mdframed}.
+
+\par\kern\baselineskip%
+\noindent\llap{\textsf{\bfseries\color{titleblue}autodetecting floats}\quad}\ignorespaces
+With version 0.9 I added a detection of \mdpack{float} or \mdpack{minipage} environments. If you use \mdname in such an environment \mdname will use the option \mdoption{nobreak} automaticlly.
+
\mdDescribeCmd[]{newmdenv} The command has the following syntax:
\begin{mdexample}
\newmdenv[<MDFRAMED OPTIONS>]{Name of the environment}
\end{mdexample}
-In this way you can simple use:
+In this way you can simply use:
\begin{mdexample}
\newmdenv[linecolor=red,frametitle=Infobox]{infobox}
...
@@ -202,7 +208,9 @@ In this way you can simple use:
\end{mdexample}
\mdDescribeCmd[]{renewmdenv} By using this command you can redifine environments which are created by \mdcommand{newmdenv}.
-\mdDescribeCmd[]{newmdtheoremenv} Very often the package is used to highlight theorem environments. So I create a command\footnote{Thanks to Martin Scharrer:\newline \url{http://tex.stackexchange.com/questions/26298/own-command-to-create-new-environment}} to simplify this process. The command hast the following syntax:
+\mdDescribeCmd[]{newmdtheoremenv}
+Since the package is often used to highlight theorem environments, I have created a command\footnote{Thanks to Martin Scharrer:\newline \href{http://tex.stackexchange.com/questions/26298/own-command-to-create-new-environment}{Own command to create new environment}} to simplify this process. The command has the following syntax:
+
\begin{mdexample}
\newmdtheoremenv[<mdframed-options>]{<envname>}%
[<numberedlike>]{<caption>}[<within>]
@@ -217,11 +225,11 @@ The last four arguments are equivalent to the command \mdcommand{newtheorem}. On
foo foo foo foo foo foo
\end{lemma}
\end{mdexample}
-So far there are no \mdcommand{renewmdtheoremenv}!
+So far there is no \mdcommand{renewmdtheoremenv}!
\section{Options}
-The package allows to set global and local options which are explained below.
+The package allows the following global and local options:
\subsection{Global Options}
The following options are only global options.
@@ -244,7 +252,7 @@ depends on the \mdoption{style}. For further information see below.
The options listed below can be set globally or locally.
\mdDescribeMacro{\textbackslash mdfsetup}To set the options globally
you can use the optional argument of \mdcommand{usepackage} or
-you can use the command \mdcommand{mdfsetup} which is not limited to the header.
+you can use the command \mdcommand{mdfsetup} which is not limited to the preamble.
\subsubsection{Options with lengths}
@@ -310,8 +318,8 @@ the second one is a number (e.g. 2) which will be multiplied by \mdoption{1 defa
\paragraph*{The following lengths are not shown in figure \eqref{fig:laengen}.}
\mbox{}
-\mdDescribeMacro[0pt]{splittopskip} Sets the length of the skip above the splitted part of the environment.
-\mdDescribeMacro[0pt]{splitbottomskip} Sets the length of the skip below the splitted part of the environment.
+\mdDescribeMacro[0pt]{splittopskip} Sets the length of the skip above the split part of the environment.
+\mdDescribeMacro[0pt]{splitbottomskip} Sets the length of the skip below the splitt part of the environment.
\mdDescribeMacro[0.4pt]{linewidth} Sets the width of the line around the environment.
\mdDescribeMacro[0pt]{roundcorner} Sets the size of the radius of the corners of the frames.
\textbf{This works only with \mdoption{style=1} and \mdoption{style=3}.}
@@ -349,15 +357,23 @@ the second one is a number (e.g. 2) which will be multiplied by \mdoption{1 defa
\mdDescribeMacro[\mbox{} \mdcommand{bfseries}\mdcommand{large}]{frametitleformat} Sets the format of the frame title.
-\subsubsection{Useful options}
+\subsubsection{General options}
-\mdDescribeMacro[false]{ntheorem} Before setting this boolkey, you have to load the package \mdpack{ntheorem}.
+\mdDescribeMacro[false]{ntheorem} Before setting this boolean key, you have to load the package \mdpack{ntheorem}.
With this option you set the values \mdcommand{theorempreskipamount}
and\newline \mdcommand{theorempostskipamount} to 0pt.
+
+\mdDescribeMacro[false]{nobreak} Sometimes it is useful to prevent a frame from splitting. The \mdoption{nobreak} option is used for this purpose.
+
+%%\mdDescribeMacro[none]{settings} With version 0.9 of the package \mdname this option was added. This option allows the user to commit some macros. An example is shown in the appendix.
+
+%\mdDescribeMacro[none]{printheight} This key allows the entries \texttt{none}, \texttt{info} or \texttt{warning}. In relation to the key the vertical space at the beginning of the environment \mdname on the current page will be printed in the \texttt{log} file.
+
+
\mdDescribeMacro[none]{pstrickssetting} With this key you can pass several options to \mdcommand{psset}. For example
if you want all lines dashed you will have to set
\mdoption{pstrickssetting=\{linestyle=dashed\}}. It is very important
@@ -367,7 +383,7 @@ the second one is a number (e.g. 2) which will be multiplied by \mdoption{1 defa
to put the options of \mdoption{tikzsetting} in brackets.
\textbf{This works only with \mdoption{style=1}.}
\section{Examples}
-Now I present some examples. Of course I know that some of them are only gimmick. To create the following examples I am using \mdoption{style=1}.
+Now I present some examples. Of course I know that some of them are only gimmicks. To create the following examples I am using \mdoption{style=1}.
\mdfsetup{skipabove=\baselineskip,skipbelow=\baselineskip}
\begin{mdexample}
\mdfsetup{outerlinewidth=5pt,innerlinewidth=0pt,
@@ -421,10 +437,10 @@ Some Text Some Text Some Text Some Text Some Text Some Text
Some Text Some Text Some Text Some Text Some Text Some Text
\end{mdframed}
\clearpage
-\twocolumn[\subsection{Working with twocolumn}]
-\lipsum[1]\lipsum[2]
+\twocolumn[\subsection{Working in twocolumn mode}]
+\lipsum[1]
\begin{mdframed}[leftmargin=10pt,rightmargin=10pt,outerlinecolor=blue,outerlinewidth=5pt,backgroundcolor=yellow]
-\lipsum[1]\lipsum[2]
+\lipsum[1]
\end{mdframed}
Some Text Some Text Some Text Some Text Some Text Some Text
%Some Text Some Text Some Text Some Text Some Text Some Text
@@ -436,16 +452,16 @@ Some Text Some Text Some Text Some Text Some Text Some Text
The package \mdpack{mdframed} provides different errors, warnings and
messages in the \texttt{log}-file. Some \LaTeX-editors like
\TeX Maker(X) have a special tab for errors and warnings
-but not for messages. So you should look in the \texttt{log-File}.
+but not for messages. So you should look in the \texttt{log-File} itself.
The followings errors and warnings are generated by \mdpack{mdframed}.
\begin{mdexample}
The package ... does not exist but
- it is required by mdframed
+ is required by mdframed
\end{mdexample}
To avoid this problem you should install the required
-package which are named in section \nameref{sec:syntax}.
+packages which are listed in section \ref{sec:syntax}.
\begin{mdexample}
The style number ... does not exist
@@ -465,8 +481,8 @@ load the package \mdpack{ntheorem}.
\begin{mdexample}
You have only a width of 3cm
\end{mdexample}
-The package \mdpack{mdframed} calculate the width of the contents
-by given options. If the width of the contents smaller then
+The package \mdpack{mdframed} calculates the width of the contents
+based on the given options. If the width of the contents smaller than
3\,cm you will get this warnings. You should change the
settings to get a greater width.
@@ -482,11 +498,11 @@ In this situation you will get this warning because the contents
of this box is empty. You have the possibility to change the
settings or include a \mdcommand{clearpage} in front of
the environment \mdpack{mdframed}.
-So far I have no idea to avoid such things.
+So far I have no idea how to avoid such things.
\begin{mdexample}
You got a bad break
- because the splittet box is empty
+ because the split box is empty
You have to change the page settings
like enlargethispage or something else
You got a bad break
@@ -495,7 +511,7 @@ See the explanation above.
\begin{mdexample}
You got a bad break
- because the last splittet box is empty
+ because the last split box is empty
You have to change the settings
\end{mdexample}
The same reason as above but only in the last box.
@@ -510,14 +526,14 @@ body you will get this warning.
\section{Known Problems}
In this section I will collect known problems. In case you encounter any further problems, please
- drop me an email, \href{mailto:marco.daniel@mada-nada.de}{marco.daniel'at'mada-nada.de}.
+ drop me an email, \href{mailto:marco.daniel@mada-nada.de}{marco.daniel at mada-nada.de}.
Do you have any ideas / wishes on further extensions to this package? Please let me know!
\begin{enumerate}
\item So far the environment isn't compatible with the package \mdpack{gmverb}.
\item So far it isn't possible to combine the environment \mdcommand{begin\{multicols\}} of the package \mdpack{multicol} with \mdpack{mdframed}.
- \item So far it isn't possible to use footnotes.
+ \item So far it isn't possible to use footnotes within a frame.
\end{enumerate}
@@ -527,21 +543,22 @@ body you will get this warning.
\item Work with \mdoption{twoside}-mode by setting \mdoption{inner} and \mdoption{outer}.
\item Create new styles.
\item Improve page breaks.
+ \item Section with version history.
\end{enumerate}
\section{Previous versions}
-With the new version 0.7a I changed the internal commands (I use \mdpack{etoolbox}) and the algorithm of the splitting. So I don't know whether I will get new bugs or not. For the last case and the previous version (v0.6) works well you can load \mdpack{mdframedpre} instead of \mdpack{mdframed}.
+If you have trouble with the new version of \mdname you can load \texttt{mdframedpre} instead. In this way you load the version v0.6.
+%With the new version 0.7a I changed the internal commands (I use \mdpack{etoolbox}) and the algorithm of the splitting. So I don't know whether I will get new bugs or not. For the last case and the previous version (v0.6) works well you can load \mdpack{mdframedpre} instead of \mdpack{mdframed}.
-\section{Acknowledgement}
+\section{Acknowledgements}
Thanks for the bug reports and suggestions
-\textsf{Dick Nickalls;\quad Dr. Dietrich Grau;\quad Piazza Luca}.
+\textsf{Dick Nickalls;\quad Dr. Dietrich Grau;\quad Piazza Luca\quad Jobst Hoffmann}.
\medskip
\noindent Thanks for proofreading
-\textsf{Nahid Shajari}.
-
+\textsf{Alan Munn} and \textsf{Nahid Shajari}
\clearpage
\appendix
\section{More information}
@@ -583,16 +600,19 @@ will be set sequently (done by \mdpack{md-frame-X.mdf}). The following figure de
\end{center}
The width of the contents is the result of the settings of \mdoption{leftmargin}, \mdoption{rightmargin}, \mdoption{linewidth}, \mdoption{innerleftmargin} and \mdoption{innerrightmargin} (see figure \eqref{fig:laengen}).
+
+
+
\subsection{The Framecommands}
The package \mdpack{mdframed} knows four kinds of \glqq Framecommand\grqq. These commands tell \LaTeX\ how to set the contents of \mdpack{mdframed}.
\begin{description}
- \item[\mdcommand{md@putbox@single}] This command sets the contents of a single non-splitted frame.
- \item[\mdcommand{md@putbox@first}] This command sets the contents of the first frame of a splitted frame.
- \item[\mdcommand{md@putbox@middle}] This command sets the contents of the middle frame of a splitted frame.
- \item[\mdcommand{md@putbox@second}] This command sets the contents of the last frame of a splitted frame.
+ \item[\mdcommand{md@putbox@single}] This command sets the contents of a single unspliot frame.
+ \item[\mdcommand{md@putbox@first}] This command sets the contents of the first frame of a split frame.
+ \item[\mdcommand{md@putbox@middle}] This command sets the contents of the middle frame of a split frame.
+ \item[\mdcommand{md@putbox@second}] This command sets the contents of the last frame of a split frame.
\end{description}
-Uses the explained commands we give an example. The command \mdcommand{box} use the contents of the savebox and types them out.
+Using the explained commands we give an example. The command \mdcommand{box} uses the contents of the savebox and types them out.
First we want to type out the single box without any settings (but with the calculated width).
\begin{mdexample}
@@ -607,12 +627,11 @@ I am using the command \mdcommand{leftline} to start the \glqq Framecommands\grq
\makeatother
\end{mdexample}
-Now you have to know how the lengths are named. Every length which can be modified by the options has the following syntax
+Now you have to know how the lengths are named. Every length which can be modified by the options has the following syntax:
\begin{mdexample}
-\mdf@'Name of the Length'@length
+\mdf@<Name of the Length>@length
\end{mdexample}
-For example the leftmargin is
-
+For example the leftmargin is:
\begin{mdexample}
\mdf@leftmargin@length
\end{mdexample}
@@ -638,6 +657,95 @@ can save the file as \mdpack{md-frame-X.mdf}.
In this way you can use the option \mdoption{style} to
load the file by setting \mdoption{style=X}.
+\subsection{Modify the frame}
-\end{document}
+The example below is inspired by the following post on StackExchange \href{http://tex.stackexchange.com/questions/24101/theorem-decorations-that-stay-with-theorem-environment}{Theorem decorations that stay with theorem environment}
+First I will show the the result.
+\makeatletter
+\newlength{\interruptlength}
+\setlength{\interruptlength}{2.5ex}
+\newrobustcmd\overlaplines{%
+ \input{md-frame-0.mdf}%
+ \appto\md@frame@leftline@single{%
+ \llap{\color{white}%
+ \rule[-\dp\@tempboxa-\mdf@innerbottommargin@length%
+ -\mdf@middlelinewidth@length+\interruptlength]%
+ {\mdf@middlelinewidth@length}%
+ {\mdfboundingboxheight%
+ +2\mdf@middlelinewidth@length
+ -2\interruptlength}%
+ }%
+ }%
+ \appto\md@frame@rightline@single{%
+ \rlap{\color{white}%
+ \hspace*{\mdfboundingboxwidth}%
+ \hspace*{\mdf@innerrightmargin@length}%
+ \rule[-\dp\@tempboxa-\mdf@innerbottommargin@length%
+ -\mdf@middlelinewidth@length+\interruptlength]%
+ {\mdf@middlelinewidth@length}
+ {\mdfboundingboxheight%
+ +2\mdf@middlelinewidth@length%
+ -2\interruptlength}%
+ }%
+ }%
+}
+\overlaplines
+\newmdtheoremenv[style=0,ntheorem,linecolor=blue,linewidth=3pt]{lem}{Lemma}[section]
+\makeatother
+
+
+
+\begin{lem}
+\lipsum[1]
+\end{lem}
+
+You can see how the lines on the left and the right are interrupted. Now I will show the code.
+
+I define a command which draws white lines on the left and the right side in the same way as in the style file. For this example I must include the file \texttt{md-frame-1.mdf} because this document used the global style 1.
+
+With the new length \mdcommand{interruptlength} you can manipulate the amount of overlap.
+
+\begin{mdexample}
+\newlength{\interruptlength}
+\setlength{\interruptlength}{1.5ex}
+\makeatletter
+\makeatletter
+\newlength{\interruptlength}
+\setlength{\interruptlength}{2.5ex}
+\newrobustcmd\overlaplines{%
+ \input{md-frame-0.mdf}%
+ \appto\md@frame@leftline@single{%
+ \llap{\color{white}%
+ \rule[-\dp\@tempboxa
+ -\mdf@innerbottommargin@length%
+ -\mdf@middlelinewidth@length
+ +\interruptlength]%
+ {\mdf@middlelinewidth@length}%
+ {\mdfboundingboxheight%
+ +2\mdf@middlelinewidth@length
+ -2\interruptlength}%
+ }%
+ }%
+ \appto\md@frame@rightline@single{%
+ \rlap{\color{white}%
+ \hspace*{\mdfboundingboxwidth}%
+ \hspace*{\mdf@innerrightmargin@length}%
+ \rule[-\dp\@tempboxa
+ -\mdf@innerbottommargin@length%
+ -\mdf@middlelinewidth@length
+ +\interruptlength]%
+ {\mdf@middlelinewidth@length}
+ {\mdfboundingboxheight%
+ +2\mdf@middlelinewidth@length%
+ -2\interruptlength}%
+ }%
+ }%
+}
+\overlaplines
+\newmdtheoremenv[style=0,ntheorem,linecolor=blue,%
+ linewidth=3pt]{lem}{Lemma}[section]
+\makeatother
+\end{mdexample}
+
+\end{document}
diff --git a/Master/texmf-dist/tex/latex/mdframed/md-frame-0.mdf b/Master/texmf-dist/tex/latex/mdframed/md-frame-0.mdf
index 607021633fc..b01992e0138 100644
--- a/Master/texmf-dist/tex/latex/mdframed/md-frame-0.mdf
+++ b/Master/texmf-dist/tex/latex/mdframed/md-frame-0.mdf
@@ -8,13 +8,14 @@
%% Public License, as described in lppl.txt in the base LaTeX distribution.
%% Either version 1.0 or, at your option, any later version.
-%%$Id: md-frame-0.mdf 165 2011-08-30 09:55:55Z marco $
-%%$Rev: 165 $
+%%$Id: md-frame-0.mdf 172 2011-09-04 16:13:47Z marco $
+%%$Rev: 172 $
%%$Author: marco $
-%%$Date: 2011-08-30 11:55:55 +0200 (Di, 30. Aug 2011) $
+%%$Date: 2011-09-04 18:13:47 +0200 (So, 04. Sep 2011) $
+
\def\mdframedOpackagename{md-frame-0}
\def\md@frameOdate@svn$#1: #2 #3 #4-#5-#6 #7 #8${#4/#5/#6\space }
-\ProvidesFile{md-frame-0.mdf}[\md@frameOdate@svn$Id: md-frame-0.mdf 165 2011-08-30 09:55:55Z marco $ \mdversion: \mdframedOpackagename]
+\ProvidesFile{md-frame-0.mdf}[\md@frameOdate@svn$Id: md-frame-0.mdf 172 2011-09-04 16:13:47Z marco $ \mdversion: \mdframedOpackagename]
%%==================================================%%
%%================single-box========================%%
%%==================================================%%
diff --git a/Master/texmf-dist/tex/latex/mdframed/md-frame-1.mdf b/Master/texmf-dist/tex/latex/mdframed/md-frame-1.mdf
index 979bb52d6e9..572f50c8582 100644
--- a/Master/texmf-dist/tex/latex/mdframed/md-frame-1.mdf
+++ b/Master/texmf-dist/tex/latex/mdframed/md-frame-1.mdf
@@ -8,13 +8,14 @@
%% Public License, as described in lppl.txt in the base LaTeX distribution.
%% Either version 1.0 or, at your option, any later version.
-%%$Id: md-frame-1.mdf 165 2011-08-30 09:55:55Z marco $
-%%$Rev: 165 $
+%%$Id: md-frame-1.mdf 172 2011-09-04 16:13:47Z marco $
+%%$Rev: 172 $
%%$Author: marco $
-%%$Date: 2011-08-30 11:55:55 +0200 (Di, 30. Aug 2011) $
+%%$Date: 2011-09-04 18:13:47 +0200 (So, 04. Sep 2011) $
+
\def\mdframedIpackagename{md-frame-1}
\def\md@frameIdate@svn$#1: #2 #3 #4-#5-#6 #7 #8${#4/#5/#6\space }
-\ProvidesFile{md-frame-1.mdf}[\md@frameIdate@svn$Id: md-frame-1.mdf 165 2011-08-30 09:55:55Z marco $ \mdversion: \mdframedIpackagename]
+\ProvidesFile{md-frame-1.mdf}[\md@frameIdate@svn$Id: md-frame-1.mdf 172 2011-09-04 16:13:47Z marco $ \mdversion: \mdframedIpackagename]
%%%% _____t_____
%%%% | |
%%%% | |
@@ -110,7 +111,7 @@
% Info zu den verwendeten Punkten:
% O ist die untere linke Ecke der Mitte der middleline
% P ist die obere rechte Ecke der Mitte der middleline
-% A ist der Punkt für den anchor (d.h. die untere linke Ecke) der Ausgabebox
+% A ist der Punkt fuer den anchor (d.h. die untere linke Ecke) der Ausgabebox
%
\def\md@putbox@single{%
\leftline{\null\hspace*{\mdf@leftmargin@length}%%
diff --git a/Master/texmf-dist/tex/latex/mdframed/md-frame-3.mdf b/Master/texmf-dist/tex/latex/mdframed/md-frame-3.mdf
index eebeecd4cd2..494dcee2c6a 100644
--- a/Master/texmf-dist/tex/latex/mdframed/md-frame-3.mdf
+++ b/Master/texmf-dist/tex/latex/mdframed/md-frame-3.mdf
@@ -8,17 +8,16 @@
%% Public License, as described in lppl.txt in the base LaTeX distribution.
%% Either version 1.0 or, at your option, any later version.
-%%$Id: md-frame-3.mdf 165 2011-08-30 09:55:55Z marco $
-%%$Rev: 165 $
+%%$Id: md-frame-3.mdf 172 2011-09-04 16:13:47Z marco $
+%%$Rev: 172 $
%%$Author: marco $
-%%$Date: 2011-08-30 11:55:55 +0200 (Di, 30. Aug 2011) $
-
+%%$Date: 2011-09-04 18:13:47 +0200 (So, 04. Sep 2011) $
%%Allgemeine Einstellungen fuer pstricks
%%Hier nur einfacher Rahmen mit Einstellungen
\def\mdframedIIIpackagename{md-frame-3}
\def\md@frameIIIdate@svn$#1: #2 #3 #4-#5-#6 #7 #8${#4/#5/#6\space }
-\ProvidesFile{md-frame-3.mdf}[\md@frameIIIdate@svn$Id: md-frame-3.mdf 165 2011-08-30 09:55:55Z marco $ \mdversion: \mdframedIIIpackagename]
+\ProvidesFile{md-frame-3.mdf}[\md@frameIIIdate@svn$Id: md-frame-3.mdf 172 2011-09-04 16:13:47Z marco $ \mdversion: \mdframedIIIpackagename]
%
\def\md@ptlength@to@pscode#1{\pst@number{#1} \pst@number\psxunit div}
\let\ptTps\md@ptlength@to@pscode\relax
diff --git a/Master/texmf-dist/tex/latex/mdframed/mdframed.sty b/Master/texmf-dist/tex/latex/mdframed/mdframed.sty
index e8cf127a43c..e42bebf4277 100644
--- a/Master/texmf-dist/tex/latex/mdframed/mdframed.sty
+++ b/Master/texmf-dist/tex/latex/mdframed/mdframed.sty
@@ -32,18 +32,17 @@
%% %%
%%>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>%%
-%%$Id: mdframed.sty 165 2011-08-30 09:55:55Z marco $
-%%$Rev: 165 $
+%%$Id: mdframed.sty 172 2011-09-04 16:13:47Z marco $
+%%$Rev: 172 $
%%$Author: marco $
-%%$Date: 2011-08-30 11:55:55 +0200 (Di, 30. Aug 2011) $
+%%$Date: 2011-09-04 18:13:47 +0200 (So, 04. Sep 2011) $
%% Allgemeine Angaben
-\def\mdversion{v0.8a}
+\def\mdversion{v0.9}
\def\mdframedpackagename{mdframed}
\def\md@maindate@svn$#1: #2 #3 #4-#5-#6 #7 #8${#4/#5/#6\space }
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{mdframed}[\md@maindate@svn$Id: mdframed.sty 165 2011-08-30 09:55:55Z marco $ \mdversion: \mdframedpackagename]
-
+\ProvidesPackage{mdframed}[\md@maindate@svn$Id: mdframed.sty 172 2011-09-04 16:13:47Z marco $ \mdversion: \mdframedpackagename]
%%==================================================%%
%%=============== Benoetigte Pakete ================%%
%%==================================================%%
@@ -53,8 +52,8 @@
\IfFileExists{#1.sty}{%
\RequirePackage{#1}%
}{%
- \md@PackageWarning{The package #1 does not exist\MessageBreak
- but it is required by \mdframedpackagename\MessageBreak
+ \md@PackageWarning{The package #1 does not exist^^J
+ but it is required by \mdframedpackagename^^J
see documentation fo further information
}%
}
@@ -172,6 +171,13 @@
\def\mdf@psset@local{#1}
}
+%Unterstuetzung von eigenen Definitionen
+\def\mdf@settings{}
+\define@key{mdf}{settings}{%
+ \def\mdf@settings{#1}
+}
+
+
\DeclareStringOption[pt]{defaultunit}
%%mdframed umfasst ntheorem-Umgebung ja/nein
@@ -198,6 +204,14 @@
\DeclareStringOption{frametitle}
\DeclareStringOption[\bfseries\large]{frametitlefont}
+%mdframed soll nicht splitte
+\DeclareBoolOption[false]{nobreak}
+
+%Ausgabe des Platzes auf Seite -- nicht float
+%Werte none,info,warning
+\DeclareStringOption[none]{printheight}
+
+
\ProcessKeyvalOptions*
\newcommand*{\mdfsetup}{\setkeys{mdf}}
\mdfsetup{globalstyle=0}
@@ -218,6 +232,32 @@
}
}
+
+
+
+%%==================================================%%
+%%==========Ausgabe des Platzes auf Seite===========%%
+%%==================================================%%
+\let\md@PackageNoInfo\@gobble
+\newrobustcmd*\md@ifstrequal@expand{%
+\expandafter\ifstrequal\expandafter{\mdf@printheight}%
+}
+\newrobustcmd*\md@print@space{%
+ %case "none"
+ \md@ifstrequal@expand{none}{\def\md@tempa{NoInfo}}{%
+ %case "info"
+ \md@ifstrequal@expand{info}{\def\md@tempa{Info}}{%
+ %case "warning"
+ \md@ifstrequal@expand{warning}{\def\md@tempa{Warning}}{%
+ %case "unknown"
+ \md@PackageWarning{Unknown key for printheight=\mdf@printheight %^^J
+ use none, info or warning}%
+ \def\md@tempa{none}%
+ }%
+ }%
+ }%
+\def\md@PackageInfoSpace{\csname md@Package\md@tempa\endcsname}
+}
%%==================================================%%
%%========Angepasste lrbox sowie trivlist===========%%
%%==================================================%%
@@ -300,20 +340,20 @@
\mdframedpackagename will use <numeredlike>\MessageBreak}%
\newtheorem{\csname md\md@tempb \endcsname}[\md@tempc]{\md@tempd}%
}%
- {\ifdefempty{\md@tempc}{}{\newtheorem{md\md@tempb}[\md@tempc]{\md@tempd}}%
- \ifdefempty{\md@tempe}{}{\newtheorem{md\md@tempb}{\md@tempd}[\md@tempe]}%
+ {\ifdefempty{\md@tempc}{}{\newtheorem{md@@\md@tempb}[\md@tempc]{\md@tempd}}%
+ \ifdefempty{\md@tempe}{}{\newtheorem{md@@\md@tempb}{\md@tempd}[\md@tempe]}%
}%
\ifboolexpr{test {\ifdefempty{\md@tempc}}
and
test {\ifdefempty{\md@tempe}}
}{%
- \newtheorem{md\md@tempb}{\md@tempd}%
+ \newtheorem{md@@\md@tempb}{\md@tempd}%
}{}%
- \expandafter\protected@xdef\csname\md@tempb\endcsname{\noexpand\mdfsetup{\md@tempa}%
- \noexpand\begin{mdframed}[]\noexpand\begin{md\md@tempb}%
+ \protected@csxdef{\md@tempb}{\noexpand\mdfsetup{\md@tempa}%
+ \noexpand\begin{mdframed}\noexpand\begin{md@@\md@tempb} %
}%
- \expandafter\protected@xdef\csname end\md@tempb\endcsname{%
- \noexpand\end{md\md@tempb}\noexpand\end{mdframed}%
+ \protected@csxdef{end\md@tempb}{%
+ \noexpand\end{md@@\md@tempb}\noexpand\end{mdframed}%
}%
}
@@ -350,6 +390,7 @@
%%==================================================%%
%%======= Laden der gewuenschten Style-Datei =======%%
%%==================================================%%
+\newrobustcmd*\mdf@load@style{%
\ifcase\mdf@style\relax%
\input{md-frame-0.mdf}%
\or\input{md-frame-1.mdf}%
@@ -364,6 +405,8 @@
mdframed ues instead style=0 \mdframedpackagename}%
}%
\fi%
+}%
+\mdf@load@style
%%==================================================%%
%%========= style-abhaengige Modifikation ==========%%
%%==================================================%%
@@ -391,6 +434,45 @@
}
%%==================================================%%
+%%Modifikation zur Nutzung innerhalb float/minipage=%%
+%%==================================================%%
+%option nobreak
+\let\md@reserved@a\@empty
+\newrobustcmd*\detected@md@put@frame{%
+ \ifmdf@nobreak%Option nobreak=true?
+ \def\md@reserved@a{\md@put@frame@standalone}%
+ \else
+ \def\md@reserved@a{\md@put@frame}%
+ \ifnum\@floatpenalty<0\relax%Detecting float
+ \if@twocolumn%
+ \ifx\@captype\@undefined
+ \def\md@reserved@a{\md@put@frame}%
+ \else
+ \md@PackageInfo{mdframed inside float ^^J
+ mdframed uses option nobreak \mdframedpackagename}%
+ \def\md@reserved@a{\md@put@frame@standalone}%
+ \fi
+ \else
+ \md@PackageInfo{mdframed inside float ^^J
+ mdframed uses option nobreak \mdframedpackagename}%
+ \def\md@reserved@a{\md@put@frame@standalone}%
+ \fi%
+ \fi%
+ \if@minipage%
+ \md@PackageInfo{mdframed inside minipage ^^J
+ mdframed uses option nobreak \mdframedpackagename}%
+ \def\md@reserved@a{\md@put@frame@standalone}%
+ \fi%
+ \ifinner%
+ \md@PackageInfo{mdframed inside a box ^^J
+ mdframed uses option nobreak \mdframedpackagename}%
+ \def\md@reserved@a{\md@put@frame@standalone}%
+ \fi%
+ \fi%
+\md@reserved@a%
+}
+
+%%==================================================%%
%%==Deklaration diverser Eingabe und Hilfsparameter=%%
%%==================================================%%
\newlength\mdfboundingboxheight
@@ -411,6 +493,7 @@
\begingroup
%check is needed?
\mdfsetup{#1}%%
+ \mdf@settings%
\let\width\z@%
\let\height\z@%
\let\partopsep\z@
@@ -424,7 +507,8 @@
\def\endmdframed{%
\end{md@lrbox}%
- \md@put@frame%
+% \md@put@frame%
+ \detected@md@put@frame
\end{md@trivlist}%
\hrule \@height\z@ \@width\hsize
\endgroup%
@@ -511,15 +595,37 @@
%%==================================================%%
%%===========Ausgaberoutine -> Berechnung===========%%
%%==================================================%%
+
+\newrobustcmd*\md@put@frame@standalone{\relax%
+ \ifvoid\@tempboxa\relax
+ \md@PackageWarning{The environment is empty\MessageBreak}%
+ \let\md@reserved@a\relax%
+ \else
+ %Hier berechnung Box-Inhalt+Rahmen oben und unten
+ \setlength{\md@verticalmarginwhole@length}{\ht\@tempboxa+\dp\@tempboxa}%
+ \mdf@dolist{\md@advancelength@verticalmarginwhole}{%
+ outerlinewidth,middlelinewidth,innerlinewidth,innertopmargin,
+ innerbottommargin,innerlinewidth,middlelinewidth,outerlinewidth}%
+ \md@keeplines@single%
+ \def\md@reserved@a{\md@putbox@single}%
+ \fi
+ \md@reserved@a%
+}
+
+
\def\md@put@frame{\relax%
\ifvoid\@tempboxa\relax
\md@PackageWarning{The environment is empty\MessageBreak}%
+\let\md@reserved@a\relax%
\else
+ \md@print@space%
\md@freepagevspace%
+ \md@PackageInfoSpace{\the\md@freevspace@length before the beginning of the environment^^J
+ ending on input line \MessageBreak}%
\ifdimless{\md@freevspace@length}{2\baselineskip}
{\md@PackageInfo{Not enough space on this page}%die Seite hat nur noch minimal Platz
\vfill\eject%
- \md@put@frame
+ \def\md@reserved@a{\md@put@frame}%
}{%
%Hier berechnung Box-Inhalt+Rahmen oben und unten
\setlength{\md@verticalmarginwhole@length}{\ht\@tempboxa+\dp\@tempboxa}%
@@ -528,10 +634,12 @@
innerbottommargin,innerlinewidth,middlelinewidth,outerlinewidth}%
\md@keeplines@single%
\ifdimless{\md@verticalmarginwhole@length}{\md@freevspace@length}%
- {\md@putbox@single}%passt auf Seite
- {\md@put@frame@i}%passt nicht auf Seite
+ {\md@putbox@single%%passt auf Seite
+ \let\md@reserved@a\relax}%
+ {\def\md@reserved@a{\md@put@frame@i}}%passt nicht auf Seite
}%
\fi
+\md@reserved@a%
}
\def\md@put@frame@i{%Box muss gesplittet werden -- Ausgabe der ersten Teilbox
@@ -544,7 +652,7 @@
\ifdim\dimen@<\dimen@i\relax
\hrule \@height\z@ \@width\hsize%
\vfill\eject%
- \md@put@frame
+ \def\md@reserved@a{\md@put@frame}%
\else%
\mdf@dolist{\md@advancelength@freevspace@sub}{%
outerlinewidth,middlelinewidth,innerlinewidth,%
@@ -582,26 +690,28 @@
You have to change the page settings\MessageBreak
like enlargethispage or something else}%
\setbox\@tempboxa\vbox{\box\tw@\box\@tempboxa}%
- \md@put@frame
+ \def\md@reserved@a{\md@put@frame}%
\fi
\ifvoid\tw@%%pruefe, ob erste Box leer ist
\hrule \@height\z@ \@width\hsize
\vfill\eject%
- \md@put@frame%
+ \def\md@reserved@a{\md@put@frame}%
\else
- \ifdimequal{\ht\tw@}{0pt}
+ \ifdimequal{\ht\tw@}{0pt}%
{\hrule \@height\z@ \@width\hsize%
\vfill\eject%
\setbox\@tempboxa\vbox{\unvbox\tw@\unvbox\@tempboxa}
- \md@put@frame}%
- {%
- \md@putbox@first%%Groesse des Splittens passt
- \hrule \@height\z@ \@width\hsize
- \vfill\eject%
- \md@put@frame@ii%
- }
+ \def\md@reserved@a{\md@put@frame}%
+ }%
+ {%
+ \md@putbox@first%%%Groesse des Splittens passt
+ \hrule \@height\z@ \@width\hsize
+ \vfill\eject%
+ \def\md@reserved@a{\md@put@frame@ii}%
+ }%
\fi%
- \fi
+ \fi%
+\md@reserved@a%
}
\def\md@put@frame@ii{%Ausgabe der mittleren Box(en) wenn vorhanden
@@ -626,7 +736,7 @@
\md@putbox@middle%
\hrule \@height\z@ \@width\hsize
\vfill\eject
- \md@put@frame@ii%
+ \def\md@reserved@a{\md@put@frame@ii}%
}%Hier die Ausgabe der mittleren Box
{\ifvoid\@tempboxa
\md@PackageWarning{You got a bad break\MessageBreak
@@ -634,7 +744,9 @@
You have to change the settings}%
\fi%
\md@putbox@second%
+ \let\md@reserved@a\relax%
}%Hier kommt die Ausgabe der letzten Box
+ \md@reserved@a%
}
%%==================================================%%