diff options
author | Karl Berry <karl@freefriends.org> | 2010-05-15 00:31:03 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-05-15 00:31:03 +0000 |
commit | ba6f6aafcb4858fa31ba8d9b61295f3be050d2bb (patch) | |
tree | 7f6bc84f64246ebf6e4fed34eb4967509563d8c9 /Master/texmf-dist/tex/latex/mdframed | |
parent | df96c8184d3c5802e048d2d8538717a98230c929 (diff) |
mdframed 0.4 (14may10)
git-svn-id: svn://tug.org/texlive/trunk@18268 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/mdframed')
-rw-r--r-- | Master/texmf-dist/tex/latex/mdframed/mdframed.sty | 437 |
1 files changed, 217 insertions, 220 deletions
diff --git a/Master/texmf-dist/tex/latex/mdframed/mdframed.sty b/Master/texmf-dist/tex/latex/mdframed/mdframed.sty index d9d0bae8f0d..9a6ac151080 100644 --- a/Master/texmf-dist/tex/latex/mdframed/mdframed.sty +++ b/Master/texmf-dist/tex/latex/mdframed/mdframed.sty @@ -1,7 +1,7 @@ %%==================================================%% -%%========It based on the idea of framed.sty========%% +%%========Is based on the idea of framed.sty========%% %%==================================================%% -%%===== Currently the packge has a beta-Status =====%% +%%===== Currently the package has a beta-Status ====%% %%==================================================%% %% WITH THANKS TO (alphabetically): %% ROLF NIEPRASCHK @@ -33,46 +33,40 @@ %%>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>%% %% Allgemeine Angaben -\def\mdframedpackagename{mdframed} -\def\md@PackageWarning#1{\PackageWarning{\mdframedpackagename}{#1}} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{mdframed}[2010/04/30 v0.3b: mdframed] +\ProvidesPackage{mdframed}[2010/05/02 v4: mdframed] %%==================================================%% %%=============== Benoetigte Pakete ================%% %%==================================================%% -\IfFileExists{kvoptions.sty}{% - \RequirePackage{kvoptions} - \SetupKeyvalOptions{family=mdf,prefix=mdf@} +\newcommand*\mdframedpackagename{mdframed} +\newcommand*\md@PackageWarning[1]{\PackageWarning{\mdframedpackagename}{#1}} +\newcommand*\md@LoadFile@IfExist[1]{% + \IfFileExists{#1.sty}{% + \RequirePackage{#1}% }{% - \md@PackageWarning{The package kvoptions.sty does not exist\MessageBreak - but it is requiered by \mdframedpackagename}% - } -\IfFileExists{etex.sty}{% - \RequirePackage{etex} - }{% - \md@PackageWarning{The package etex does not exist\MessageBreak - but it is requiered by \mdframedpackagename}% - } + \md@PackageWarning{The package #1 does not exist\MessageBreak + but it is required by \mdframedpackagename}% + } +} +\md@LoadFile@IfExist{kvoptions} -\IfFileExists{calc.sty}{% - \RequirePackage{calc} - }{% - \md@PackageWarning{The package calc does not exist\MessageBreak - but it is requiered by \mdframedpackagename}% - } +\md@LoadFile@IfExist{etex} -\IfFileExists{color.sty}{% - \RequirePackage{color} - }{% - \md@PackageWarning{The package color does not exist\MessageBreak - but it is requiered by \mdframedpackagename}% - } +\md@LoadFile@IfExist{calc} + +\md@LoadFile@IfExist{color} + +\md@LoadFile@IfExist{tikz} + +\md@LoadFile@IfExist{etoolbox} + +\SetupKeyvalOptions{family=mdf,prefix=mdf@} %%==================================================%% %%=============== Globale Optionen ================%% %%==================================================%% -\DeclareStringOption[2pt]{linewidth} +\DeclareStringOption[0.4pt]{linewidth} \DeclareStringOption[black]{linecolor} \DeclareStringOption[white]{backgroundcolor} \DeclareStringOption[black]{fontcolor} @@ -83,18 +77,28 @@ \DeclareStringOption[pt]{defaultunit} -\DeclareStringOption[0pt]{leftmargin} -\DeclareStringOption[0pt]{rightmargin} +\DeclareStringOption[\z@]{leftmargin} +\DeclareStringOption[\z@]{rightmargin} \DeclareBoolOption{ntheorem} +%%Optionen fuer tikz +\DeclareStringOption[0]{style} +\DeclareStringOption[\z@]{roundcorner} +\DeclareStringOption[\z@]{innerlinewidth} +\DeclareStringOption[\z@]{outerlinewidth} +\DeclareStringOption[\mdf@linewidth]{middlelinewidth} + +\DeclareStringOption[\mdf@linecolor]{innerlinecolor} +\DeclareStringOption[\mdf@linecolor]{outerlinecolor} +\DeclareStringOption[\mdf@backgroundcolor]{middlelinecolor} + \ProcessKeyvalOptions* %%==================================================%% %%========Hilfsmakro zur Bestimmung ob Laenge=======%% %%============= IDEE: Martin Scharrer ==============%% %%==================================================%% - %%%\md@iflength{<EINGABE>}{<IST LAENGE>}{<IST KEINE LAENGE>} \newlength{\md@templength} \def\md@iflength#1{% @@ -170,6 +174,29 @@ \md@iflength{\@tempa}{}{\global\edef\mdf@rightmargin{\the\md@templength}} \endgroup +%%\mdf@roundcorner +\begingroup +\let\@tempa\mdf@roundcorner +\md@iflength{\@tempa}{}{\global\edef\mdf@roundcorner{\the\md@templength}} +\endgroup + +%%\mdf@innerlinewidth +\begingroup +\let\@tempa\mdf@innerlinewidth +\md@iflength{\@tempa}{}{\global\edef\mdf@innerlinewidth{\the\md@templength}} +\endgroup + +%%\mdf@outerlinewidth +\begingroup +\let\@tempa\mdf@outerlinewidth +\md@iflength{\@tempa}{}{\global\edef\mdf@outerlinewidth{\the\md@templength}} +\endgroup + +%%\mdf@middlelinewidth +\begingroup +\let\@tempa\mdf@middlelinewidth +\md@iflength{\@tempa}{}{\global\edef\mdf@middlelinewidth{\the\md@templength}} +\endgroup %%==================================================%% %%========Sicherstellen der key-value-Syntax========%% @@ -236,24 +263,110 @@ } +\define@key{mdfl}{roundcorner}[\mdf@roundcorner]{% +\def\@tempa{#1} +\md@iflength{\@tempa}% + {\global\edef\mdfl@roundcorner{\the\md@templength}}% + {\global\edef\mdfl@roundcorner{\the\md@templength}} +\let\mdf@roundcorner\mdfl@roundcorner +} + +\define@key{mdfl}{style}[\mdf@style]{% + \def\@tempa{#1} + \let\mdf@style\@tempa\relax +} + +\define@key{mdfl}{innerlinewidth}[\mdf@innerlinewidth]{% +\def\@tempa{#1} +\md@iflength{\@tempa}% + {\global\edef\mdfl@innerlinewidth{\the\md@templength}}% + {\global\edef\mdfl@innerlinewidth{\the\md@templength}} +\let\mdf@innerlinewidth\mdfl@innerlinewidth +} + +\define@key{mdfl}{outerlinewidth}[\mdf@outerlinewidth]{% +\def\@tempa{#1} +\md@iflength{\@tempa}% + {\global\edef\mdfl@outerlinewidth{\the\md@templength}}% + {\global\edef\mdfl@outerlinewidth{\the\md@templength}} +\let\mdf@outerlinewidth\mdfl@outerlinewidth +} + +\define@key{mdfl}{middlelinewidth}[\mdf@middlelinewidth]{% +\def\@tempa{#1} +\md@iflength{\@tempa}% + {\global\edef\mdfl@middlelinewidth{\the\md@templength}}% + {\global\edef\mdfl@middlelinewidth{\the\md@templength}} +\let\mdf@middlelinewidth\mdfl@middlelinewidth +} + +\define@key{mdfl}{middlelinecolor}[\mdf@middlelinecolor]{% +\def\@tempa{#1} +\let\mdf@middlelinecolor\@tempa\relax +} + +\define@key{mdfl}{outerlinecolor}[\mdf@outerlinecolor]{% +\def\@tempa{#1} +\let\mdf@outerlinecolor\@tempa\relax +} + +\define@key{mdfl}{innerlinecolor}[\mdf@innerlinecolor]{% +\def\@tempa{#1} +\let\mdf@innerlinecolor\@tempa\relax +} +%%==================================================%% +%%======= Laden der gewuenschten Style-Datei =======%% +%%==================================================%% +\ifcase\mdf@style\relax + \input{md-tikz-0.mdf}% + \or + \input{md-tikz-1.mdf}% + \else + \IfFileExists{md-tikz-\mdf@style.mdf}{% + \input{md-tikz-\mdf@style.mdf}% + }{% + \input{md-tikz-1.mdf}% + \md@PackageWarning{The style number \mdf@style does not exist\MessageBreak + mdframed ues instead style=1 \mdframedpackagename}% + }% +\fi% + + %%==================================================%% %%==Deklaration diverser Eingabe und Hilfsparameter=%% %%==================================================%% \newcommand\mdframedabovespace[1]{\def\md@space@above@frame{#1}} -\mdframedabovespace{\baselineskip} %% Abstand vor der Frame-Umgebung +\mdframedabovespace{0pt} %% Abstand vor der Frame-Umgebung \newskip\md@temp@skip@a \md@temp@skip@a\z@ %% Hilfslaenge \newlength{\fp@putboxa@length@md} \setlength{\fp@putboxa@length@md}{\z@} %% Hilfslaenge -\newif\ifmd@content@split \md@content@splitfalse %% Ifabfrage, die prueft, ob der Inhalt von mdframed geteilt wird +\newif\ifmd@content@split \md@content@splitfalse %% If-Abfrage, die prueft, ob der Inhalt von mdframed geteilt wird %% default - wird nicht geteilt -\newif\ifmd@box@empty \md@box@emptyfalse %% Ifabfrage, die prueft, ob der Inhalt einer Box leer ist +\newif\ifmd@box@empty \md@box@emptyfalse %% If-Abfrage, die prueft, ob der Inhalt einer Box leer ist %% default - ist nicht leer +\newif\ifmd@more@two \md@more@twofalse %% If-Abfrage ob ueber mehr als zwei Seiten gespittet wird + + +\newlength{\mdf@tikz@linewidth} %% Liniendicke fuer tikz + +\newlength\mdf@xmargin@tikz %% Berechnungsvariable tikz +\newlength\mdf@ymargin@tikz %% Berechnungsvariable tikz + +\newlength\mdfboxheight %% Berechnungsvariable tikz +\newlength\mdfboxwidth %% Berechnungsvariable tikz + +\newlength{\mdf@rounded@tikz} %% Rundungsparameter tikz + + +\newlength\mdf@outerlinewidth@tikz %% Laengenparameter tikz +\newlength\mdf@innerlinewidth@tikz %% Laengenparameter tikz +\newlength\mdf@middlelinewidth@tikz %% Laengenparameter tikz %%==================================================%% %%===Globale Umgebung -- noch keine Modifikation ===%% @@ -265,6 +378,7 @@ \vskip -2\parskip% \vskip -2\partopsep% \vskip -2\lineskip% + \vskip -0.6\baselineskip% \vspace*{\mdf@skipabove}% \setkeys{mdfl}{#1}% \ifmdf@ntheorem% @@ -272,9 +386,15 @@ \theorempreskipamount0pt% \theorempostskipamount0pt% \else% - {\md@PackageWarning{You haven not loaded ntheorem yet}}% + {\md@PackageWarning{You have not loaded ntheorem yet}}% \fi% \fi% + \ifnumless{\mdf@style}{1}% + {\renewcommand{\mdf@innerlinewidth}{\z@}% + \renewcommand{\mdf@middlelinewidth}{\mdf@linewidth}% + \renewcommand{\mdf@outerlinewidth}{\z@}% + \let\mdf@innerlinecolor\mdf@linecolor% + }{}% \mdframed@global@env% }% {\endmdframed@global@env\addvspace{\mdf@skipbelow}} @@ -295,11 +415,19 @@ %%================= Breite der BOX =================%% %%==================================================%% \def\md@margin@equation{% %% Berechnung der moeglichen Breite fuer den Rahmeninhalt - \advance\hsize by - \mdf@margin% %% hsize minus Randvorgabe - \advance\hsize by - \mdf@linewidth% %% hsize minus Linienbreite + \advance\hsize by - \mdf@margin% %% hsize minus Randvorgabe + \advance\hsize by - \mdf@margin% %% hsize minus Randvorgabe + \advance\hsize by - \mdf@middlelinewidth% %% hsize minus Linienbreite (mitte) + \advance\hsize by - \mdf@middlelinewidth% %% hsize minus Linienbreite (mitte) + \ifnumequal{1}{\mdf@style}{% + \advance\hsize by - \mdf@innerlinewidth% %% hsize minus Linienbreite (innen) + \advance\hsize by - \mdf@innerlinewidth% %% hsize minus Linienbreite (innen) + \advance\hsize by - \mdf@outerlinewidth% %% hsize minus Linienbreite (aussen) + \advance\hsize by - \mdf@outerlinewidth% %% hsize minus Linienbreite (aussen) + }{}% \advance\hsize by - \mdf@leftmargin% %% hsize minus gewuenschten linken Abstand - \advance\hsize by - \mdf@rightmargin% %% hsize minus gewuenschten linken Abstand - \advance\hsize by - \width\md@arrayparboxrestore}%% Beruecksichtigung das Auszaehlung bzw. list-Umgebung enthalten + \advance\hsize by - \mdf@rightmargin% %% hsize minus gewuenschten rechten Abstand + \advance\hsize by - \width\md@arrayparboxrestore}%% Beruecksichtigung, dass Auszaehlung bzw. list-Umgebung enthalten %%==================================================%% %%===Bestimmung des Platzbedarfes fuer den Rahmen===%% @@ -373,17 +501,10 @@ {{\setbox\z@\lastbox}\everypar{}\@endpefalse}} %%%%%%%%%%%%%%%%%%%%%%%%%%% \md@adjheight% - \advance\hsize by - \mdf@margin% %% hsize minus Randvorgabe links - \advance\hsize by - \mdf@margin% %% hsize minus Randvorgabe rechts - \advance\hsize by - \mdf@linewidth% %% hsize minus Linienbreite links - \advance\hsize by - \mdf@linewidth% %% hsize minus Linienbreite rechts - \advance\hsize by - \mdf@leftmargin% %% hsize minus gewuenschten linken Abstand - \advance\hsize by - \mdf@rightmargin% %% hsize minus gewuenschten linken Abstand - \advance\hsize by - \width\md@arrayparboxrestore%% Beruecksichtigung das Auszaehlung bzw. list-Umgebung enthalten - \setbox\@tempboxa\vbox\bgroup\@doendpe% + \md@margin@equation% + \setbox\@tempboxa\vbox\bgroup\@doendpe% \begingroup% %%% zweites begingroup noetig, dass fontcolor gesetzt werden kann \color{\mdf@fontcolor}% %%% Setzen der Schriftfarbe -% \md@margin@equation% \textwidth\hsize \columnwidth\hsize% } @@ -408,24 +529,43 @@ %% auf die Seite mit dem Rahmen. %% Es ist rekursiv, solange alles von der \@tempboxa aufgebraucht ist (\@tempboxa muss die Tiefe 0 haben.) %% Erste Iteration: Versuche alles in einen Rahmen zu bekommen. Falls es nicht passt, -%% splitte es für die erste Rahmenumgebung +%% splitte es fuer die erste Rahmenumgebung %% Spaetere Iteration: Versuche alles in den letzten Rahmen zu bekommen. Falls es nicht passt, %% splitte es erneut. (Versuchsstadium -- Da bisher nur Anfang und Ende enthalten) \def\md@put@frame{\relax - \ifdim\pagegoal=\maxdimen \pagegoal\vsize \fi %%%% \pagegoal aktuelle Seitenhöhe für den Seitenumbruch + \ifdim\pagegoal=\maxdimen \pagegoal\vsize \fi %%%% \pagegoal aktuelle Seitenhoehe für den Seitenumbruch %%%% Der Wert wird mit \vsize initialisiert %%%% \pagegoal - \pagetotal ist dann der noch freie Raum auf einer Seite %%%% \ifinner %Rekursion-sind in der Box %%%% testet auf internal mode: Dieser ist im internal vertical mode, %%%% also im Innern einer \vbox, oder im restricted horizontal mode, %%%% also im Innern einer \hbox, gesetzt. -%% \md@putbox@second %%%% Rahmen um den zweiten Teil der Box "noch zu bearbeiten" -%% \md@afterframe %%%% siehe Anweisung + \md@putbox@second %%%% Rahmen um den zweiten Teil der Box "noch zu bearbeiten" +% \md@afterframe %%%% siehe Anweisung \else %Noch keinen Teil der Box gesetzt. \dimen@\pagegoal - \advance\dimen@-\pagetotal %%% \dimen@ hat jetzt den noch freien Platz auf der Seite gespeichert - \advance\dimen@-\topskip + \advance\dimen@-\pagetotal %%% \dimen@ hat jetzt den noch freien Platz auf der Seite gespeichert + \advance\dimen@-\topskip %%% \dime@ Minus \topskip +%%%Beginn der Beruecksichtigung fuer den Platz der Linienbreite: +\ifmd@more@two% Abfrage ob eine mittlere Seite vorliegt +\else %keine Mittlere Seite + \@tempskipa=\mdf@roundcorner + \divide\@tempskipa by 3 + \ifdimless{0.4\baselineskip}{\@tempskipa}{% + \advance\dimen@ -0.5\@tempskipa}% + {\advance\dimen@ 0.4\baselineskip} + \advance\dimen@ -\mdf@innerlinewidth %%% Berucksichtigen, dass oben und untern keine Linie -- somit mehr Platz + \advance\dimen@ -\mdf@outerlinewidth %%% Berucksichtigen, dass oben und untern keine Linie -- somit mehr Platz + \advance\dimen@ -\mdf@middlelinewidth %%% Berucksichtigen, dass oben und untern keine Linie -- somit mehr Platz + \advance\dimen@ -0.4\baselineskip% +\fi +\ifnum\mdf@style=0\relax + \ifmd@more@two + \else + \advance\dimen@ \mdf@linewidth + \fi +\fi \ifdim\dimen@<2\baselineskip %%% Ist freier Platz < 2 Zeilenabstaenden, zu wenig Platz \clearpage %%% Beginne neue Seite \md@put@frame % %%% Rufe \md@put@frame erneut auf @@ -481,7 +621,7 @@ \expandafter\endgroup %%% ???? \ifdim\dimen@>\pagegoal %%% Ist \dimen@ groesser der Seitenhoehe \dimen@ii\pagegoal %%% \dimen@ii wird zur Seitenhoehe - \advance\dimen@ii -\topskip %%% \dimen@ii wird zur Seitenhoehe Minus + \advance\dimen@ii -\topskip %%% \dimen@ii minus \topskip \advance\dimen@ii \md@space@above@frame %%% \dimen@ii bekommt zusaetzlich den gewuenschten Oberen Abstand \else %%% \dimen@ ist kleiner als die aktuelle Seitenhoehe %%% Es ist ausreichend Platz auf der Seite @@ -496,7 +636,7 @@ %% \advance\dimen@ii -\md@frh \setbox\tw@\vbox to\dimen@ii % %%% Setze die abgesplittete Box auf \dimen@ii \bgroup - \vskip -\z@ \@plus-\pagestretch \@minus-.8\pageshrink %%% Entferne den simulierte Rahmen und Seitenflexibilitaet + \vskip -\z@ \@plus-\pagestretch \@minus-.8\pageshrink %%% Entferne den simulierten Rahmen und Seitenflexibilitaet \unvbox\tw@ \unpenalty\unpenalty %%% \unpenalty entfernt einen vorangehenden \penalty %%% in der Arbeitsliste, falls ein solcher vorhanden ist \ifdim\lastkern=-137sp %%% \lastkern liefert, falls das letzte Element eine \kern-Operation @@ -519,17 +659,23 @@ \md@putbox@second% \fi \md@afterframe - \else % Es ist wirklich gesplittet mit oberen Teil in \tw@ und unteren Teil in \tempboxa@ + \else % Es ist wirklich gesplittet mit oberem Teil in \tw@ und unterem Teil in \tempboxa@ \ifdim\wd\tw@>\z@ %%%Ist der Obere Teil breiter als 0pt - \wd\tw@\wd\@tempboxa %%%setze die Beite des oberen Teils auf die Breite des unteren Teils + \wd\tw@\wd\@tempboxa %%%Setze die Breite des oberen Teils auf die Breite des unteren Teils \global\md@content@splittrue %%%% Merke, dass Box gesplittet wird %%%% gebe den oberen Teil der Box aus - \md@putbox@first %%% Ausgabe der ersten Teilbox + \ifmd@more@two% + \md@putbox@middle% %%% Ausgabe der ersten Teilbox + \else% + \md@putbox@first% %%% Ausgabe der ersten Teilbox + \md@more@twotrue% + \fi% \else %%Oberer Teil ist Leer \box\tw@ %%% Ausgabe und Leerung \fi \hrule \@height\z@ \@width\hsize - \clearpage + \vfill\eject + %\clearpage \md@adjheight \md@put@frame \fi @@ -540,156 +686,6 @@ } -%%==================================================%% -%%=Ausgabe der Box nach Vorgabe der Ausagaberoutine=%% -%%==================================================%% - -\let\md@textwidth\textwidth - - -%%=single=%% -\def\md@frame@background@single{% - \rlap{\color{\mdf@backgroundcolor}% - \setlength{\fp@putboxa@length@md}{\ht\@tempboxa}% - \addtolength{\fp@putboxa@length@md}{\baselineskip}% - \addtolength{\fp@putboxa@length@md}{\mdf@linewidth}% - \rule[-0.5\baselineskip]% - {\md@textwidth-\mdf@leftmargin-\mdf@rightmargin-\mdf@linewidth-\mdf@linewidth}% - {\fp@putboxa@length@md}% - }% -}% - -\def\md@frame@leftandbottomline@single{% - \setlength{\fp@putboxa@length@md}{\ht\@tempboxa}% - \addtolength{\fp@putboxa@length@md}{0.5\baselineskip}% - \rlap{\color{\mdf@linecolor}\vrule width \mdf@linewidth% - height \fp@putboxa@length@md% - depth 0.5\baselineskip}% - \rlap{\color{\mdf@linecolor}\rule[-0.5\baselineskip-\mdf@linewidth]% - {\md@textwidth-\mdf@leftmargin-\mdf@rightmargin}{\mdf@linewidth}% - }% -}% - -\def\md@frame@topandrightline@single{% - \llap{\color{\mdf@linecolor}\vrule width \mdf@linewidth% - height \fp@putboxa@length@md% - depth 0.5\baselineskip}% - \llap{\color{\mdf@linecolor}\rule[\fp@putboxa@length@md]% - {\md@textwidth-\mdf@leftmargin-\mdf@rightmargin}{\mdf@linewidth}}% -}% - - -\def\md@putbox@single{%%%%% Ausgabe der ungesplitteten Gesamtbox - \ifvoid\@tempboxa - \else - \leftline{% - \null\hspace*{\mdf@leftmargin}% - \md@frame@leftandbottomline@single% - \hspace*{\mdf@linewidth}% - \md@frame@background@single% - \hspace*{\mdf@margin}% - {\box\@tempboxa}% - \hspace*{\mdf@margin}% - \hspace*{\mdf@linewidth}% - \md@frame@topandrightline@single% - }% - \fi -} - - -%%=first=%% - -\def\md@frame@background@first{% - \rlap{\color{\mdf@backgroundcolor}% - \setlength{\fp@putboxa@length@md}{\ht\tw@}% - \addtolength{\fp@putboxa@length@md}{1.4\baselineskip}% - \addtolength{\fp@putboxa@length@md}{-\mdf@linewidth}% - \rule[-0.4\baselineskip]{\md@textwidth-\mdf@leftmargin-\mdf@rightmargin-\mdf@linewidth-\mdf@linewidth}% - {\fp@putboxa@length@md}% - }% -}% - -\def\md@frame@topandleftline@first{% - \setlength{\fp@putboxa@length@md}{\ht\tw@}% - \addtolength{\fp@putboxa@length@md}{\baselineskip}% - \rlap{\color{\mdf@linecolor} \vrule width \mdf@linewidth% - height \fp@putboxa@length@md% - depth 0.4\baselineskip% - }% - \rlap{\color{\mdf@linecolor}\rule[\fp@putboxa@length@md-\mdf@linewidth]{\md@textwidth-\mdf@leftmargin-\mdf@rightmargin}% - {\mdf@linewidth}% - }% -}% - -\def\md@frame@rightline@first{% - \llap{\color{\mdf@linecolor}\vrule width \mdf@linewidth% - height \fp@putboxa@length@md% - depth 0.4\baselineskip% - }% -}% - - - -\def\md@putbox@first{%%%% Ausgabe der Teilbox 1 - \leftline{% - \null\hspace*{\mdf@leftmargin}% - \md@frame@topandleftline@first% - \hspace*{\mdf@linewidth}% - \md@frame@background@first% - \hspace*{\mdf@margin}% - {\box\tw@}% - \hspace*{\mdf@margin}% - \hspace*{\mdf@linewidth}% - \md@frame@rightline@first% - }% -} - -%%=second=%% - -\def\md@frame@background@second{% - \rlap{\color{\mdf@backgroundcolor}% - \setlength{\fp@putboxa@length@md}{\ht\@tempboxa}% - \addtolength{\fp@putboxa@length@md}{0.7\baselineskip}% - \rule[-0.5\baselineskip]{\md@textwidth-\mdf@leftmargin-\mdf@rightmargin-\mdf@linewidth-\mdf@linewidth}% - {\fp@putboxa@length@md}% - }% -}% - -\def\md@frame@leftandbottomline@second{% - \setlength{\fp@putboxa@length@md}{\ht\@tempboxa}% - \addtolength{\fp@putboxa@length@md}{0.2\baselineskip}% %Linienueberschuss auf zweiter Seite -- derzeit 0pt - \rlap{\color{\mdf@linecolor}\vrule width \mdf@linewidth% - height \fp@putboxa@length@md% - depth 0.5\baselineskip% - }% - \rlap{\color{\mdf@linecolor}\rule[-0.5\baselineskip-\mdf@linewidth]% - {\md@textwidth-\mdf@leftmargin-\mdf@rightmargin}% - {\mdf@linewidth}}% -}% - -\def\md@frame@rightline@second{% - \llap{\color{\mdf@linecolor}\vrule width \mdf@linewidth% - height \fp@putboxa@length@md% - depth 0.5\baselineskip}% -}% - -\def\md@putbox@second{%%%%% Ausgabe der Teilbox 2 - \ifvoid\@tempboxa% - \else - \leftline{% - \null\hspace*{\mdf@leftmargin}% - \md@frame@leftandbottomline@second% - \hspace*{\mdf@linewidth}% - \md@frame@background@second% - \hspace*{\mdf@margin}% - {\box\@tempboxa}% - \hspace*{\mdf@margin}% - \hspace*{\mdf@linewidth}% - \md@frame@rightline@second% - }% - \fi% -}% - %%==================================================%% @@ -698,6 +694,7 @@ \def\md@afterframe{% \global\md@content@splitfalse \global\md@box@emptyfalse + \global\md@more@twofalse \nointerlineskip \null %{\showoutput \showlists} \penalty-30 \vskip\topsep \relax } @@ -707,14 +704,14 @@ %%==================================================%% \def\md@adjheight{% \ifdim\md@space@above@frame>\z@ - \vbox to 1.2\md@space@above@frame{}% get proper baseline skip from above. + \vbox to 1\md@space@above@frame{}% get proper baseline skip from above. \nobreak \nointerlineskip - \vskip-1.2\md@space@above@frame + \vskip-1\md@space@above@frame \penalty\@M% \else \vbox to \md@space@above@frame{}% get proper baseline skip from above. \penalty\@M \nointerlineskip - \vskip-0.6\md@space@above@frame + \vskip-1\md@space@above@frame \penalty\@M% \fi } % useful for tops of pages @@ -743,12 +740,12 @@ % Test ob Listenumgebung enthalten ist \ifnum \ifdim\@totalleftmargin>\z@ 1\fi %%%In latex.ltx->totalleftmargin=\z@, ausser in list-Umgebung: %%%\advance\@totalleftmargin \leftmargin - \ifdim\rightmargin >\z@ 1\fi %%%Default \rightmargin=\z@, ausnahme: quote usw. - \ifnum\@listdepth >0 1\fi %%%Zaehler fuer Listentiefe -> Keine Liste \@listdepth=0 sonst, je ebene +1 + \ifdim\rightmargin >\z@ 1\fi %%%Default \rightmargin=\z@, Ausnahme: quote usw. + \ifnum\@listdepth >0 1\fi %%%Zaehler fuer Listentiefe -> Keine Liste \@listdepth=0 sonst, je Ebene +1 0>\z@ %%%Ist ein Parameter erfuellt, dann ist es eine Listenumgebung \@setminipage %%%Passform rund um das Element - % Nun wird versucht, Aenderungen der Breite von \hsize antsprechend der Listenparameter zu uebergeben. - % Dies ist defizitaer, denn eine erweiterte Möglichkeit, Aenderungen der Textdimension anzugegeben + % Nun wird versucht, Aenderungen der Breite von \hsize entsprechend der Listenparameter zu uebergeben. + % Dies ist defizitaer, denn eine erweiterte Moeglichkeit, Aenderungen der Textdimension anzugegeben % ist (noch) nicht vorgesehen, insbesondere keine getrennte linke / rechte Einstellung. \advance\linewidth-\columnwidth \advance\linewidth\hsize \parshape\@ne \@totalleftmargin \linewidth %%% parshape definiert das Aussehen eines Absatzes Zeile fuer Zeile. @@ -765,7 +762,7 @@ } %%==================================================%% -%%== Sicherstellen das Optionen nur global setzbar==%% +%%= Sicherstellen, dass Optionen nur global setzbar=%% %%==================================================%% \DisableKeyvalOption[% |