From a3a666a6e9bb5f4d23b7dca4ad03fd9aa8ca4ee0 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 9 Apr 2008 18:24:10 +0000 Subject: minipage-marginpar update (7apr08) git-svn-id: svn://tug.org/texlive/trunk@7362 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/doc/latex/minipage-marginpar/README | 72 ++-- .../minipage-marginpar/minipage-marginpar.pdf | Bin 0 -> 197917 bytes .../doc/latex/minipage-marginpar/mpgmpar.pdf | Bin 177899 -> 0 bytes .../minipage-marginpar/minipage-marginpar.dtx | 379 +++++++++++++++++++++ .../minipage-marginpar/minipage-marginpar.ins | 68 ++++ .../source/latex/minipage-marginpar/mpgmpar.dtx | 343 ------------------- .../source/latex/minipage-marginpar/mpgmpar.ins | 60 ---- .../minipage-marginpar/minipage-marginpar.sty | 73 ++++ .../tex/latex/minipage-marginpar/mpgmpar.sty | 50 +-- 9 files changed, 565 insertions(+), 480 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/minipage-marginpar/minipage-marginpar.pdf delete mode 100644 Master/texmf-dist/doc/latex/minipage-marginpar/mpgmpar.pdf create mode 100644 Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.dtx create mode 100644 Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.ins delete mode 100644 Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.dtx delete mode 100644 Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.ins create mode 100644 Master/texmf-dist/tex/latex/minipage-marginpar/minipage-marginpar.sty diff --git a/Master/texmf-dist/doc/latex/minipage-marginpar/README b/Master/texmf-dist/doc/latex/minipage-marginpar/README index e5c455113b3..d946954f27b 100644 --- a/Master/texmf-dist/doc/latex/minipage-marginpar/README +++ b/Master/texmf-dist/doc/latex/minipage-marginpar/README @@ -1,5 +1,6 @@ [en] -LaTeX-package 'mpgmpar' - allows \marginpars in minipages and other boxes +LaTeX-package 'minipage-marginpar' - allows \marginpars in minipages +and other boxes Author: Paul Ebermann License: LPPL 1.3b or later, maintained @@ -7,21 +8,19 @@ License: LPPL 1.3b or later, maintained All Documentation (other than this file) is in german. -The package needs the package ifthen (which is a required -component of LaTeX anyway). The typesetting of the documentation needs 'pauldoc' (from the same author). The package comes as .dtx + .ins. -Run "latex mpgmpar.ins" to create the style file (and maybe put +Run "latex minipage-marginpar.ins" to create the style file (and maybe put it to texmf/tex/latex/paul/, if your docstrip is configured accordingly), run (after that and maybe updating your TeX hash) -"latex mpgmpar.dtx" to create the documentation. +"latex minipage-marginpar.dtx" to create the documentation. Usage ------- -Put \usepackage{mpgmpar} in your document preamble. +Put \usepackage{minipage-marginpar} in your document preamble. Then you can use the environment 'minipagewithmarginpars', which works like minipage (but default align ist 't'), @@ -56,7 +55,8 @@ Try this: \makeatother - This ist a \begin{boxedpage}{4cm} boxed page with \marginpar{margin paragraphs} + This ist a \begin{boxedpage}{4cm} boxed page with + \marginpar{margin paragraphs} \end{boxedpage}. Environments created this way may be nested, the marginpars @@ -64,53 +64,49 @@ then appear around the outest one. ---------------- [de] -LaTeX-Paket 'mpgmpar' - Randnotizen auch in Minipages +LaTeX-Paket 'minipage-marginpar' - Randnotizen auch in Minipages Autor: Paul Ebermann (Paul-Ebermann@gmx.de). -Lizenz: LPPL 1.3b oder später, mit Maintenance-Status +Lizenz: LPPL 1.3b oder später, mit Maintenance-Status "maintained". Siehe http://www.latex-project.org/lppl/. -Geschrieben für den eigenen Gebrauch +Geschrieben für den eigenen Gebrauch (-> http://www.math.hu-berlin.de/~ebermann/alg-script/), -aber vielleicht ist es auch für andere von Nutzen. +aber vielleicht ist es auch für andere von Nutzen. -Das Paket greift auf das Paket ifthen (Bestandteil jeder -LaTeX-Distribution) zurück. Zum Setzen der Dokumentation wird das Paket 'pauldoc' -(vom selben Autor) benötigt. +(vom selben Autor) benötigt. Das Paket kommt als .dtx + .ins. -Mit "latex mpgmpar.ins" wird die .sty-Datei erstellt (und +Mit "latex minipage-marginpar.ins" wird die .sty-Datei erstellt (und eventuell gleich nach texmf/tex/latex/paul/ installiert, wenn docstrip entsprechend eingerichtet ist), mit -latex mpgmpar.dtx kann (danach und eventuell nach einer +latex minipage-marginpar.dtx kann (danach und eventuell nach einer Aktualisierung der TeX-Dateidatenbank) die Dokumentation neu erstellt werden. -Zur Verwendung siehe mpgmpar.pdf. +Zur Verwendung siehe minipage-marginpar.pdf. ---------------- -[eo-h] -LaTeX-pakajho 'mpgmpar' - marhenaj notoj ankau en minipage-oj - kaj aliaj boksoj. +[eo] +LaTeX-pakaĵo 'minipage-marginpar' - marÄenaj notoj ankau en + minipage-oj kaj aliaj boksoj. -Autoro: Paulo Ebermann (Paul-Ebermann@gmx.de). +AÅ­toro: PaÅ­lo Ebermann (Paul-Ebermann@gmx.de). Licenzo: LPPL 1.3, 'maintained' (-> http://www.latex-project.org/lppl/). -Kreitaj por propra uzo, sed eble iom de ghi ankau +Kreitaj por propra uzo, sed eble iom de Äi ankaÅ­ uzeblas por aliaj. -La dokumentaro (escepte tiu chi dosiero) estas nur en la germana +La dokumentaro (escepte tiu ĉi dosiero) estas nur en la germana lingvo. -La pakajho bezonas la pakajhon ifthen, kiu estas necesa komponento -de LaTeX. -Por krei la dokumentadon vi krome bezonas 'pauldoc' (de la sama autoro). +Por krei la dokumentadon vi krome bezonas 'pauldoc' (de la sama aÅ­toro). -La pakajho venas en .dtx + .ins. -Voku "latex mpgmpar.ins" por krei la .sty-dosieron (kaj -eble meti ghin al texmf/tex/latex/paul/, se via docstrip estis -konfigurita laue), voku "latex mpgmpar.dtx" por rekrei +La pakaĵo venas en .dtx + .ins. +Voku "latex minipage-marginpar.ins" por krei la .sty-dosieron (kaj +eble meti Äin al texmf/tex/latex/paul/, se via docstrip estis +konfigurita laÅ­e), voku "latex minipage-marginpar.dtx" por rekrei la dokumentaron. Uzado @@ -118,9 +114,9 @@ la dokumentaron. Metu - \usepackage{mpgmpar} + \usepackage{minipage-marginpar} -en la komencon de la dokumento (antau \begin{document}). +en la komencon de la dokumento (antaÅ­ \begin{document}). Poste vi povas uzi @@ -128,12 +124,12 @@ Poste vi povas uzi ... \end{minipagewithmarginnotes} -kaj en tiu chirkauo la ordono \marginpar{} estas uzebla, se la -tuta ajho ne estas ene de alia bokso. +kaj en tiu ĉirkaÅ­o la ordono \marginpar{} estas uzebla, se la +tuta aĵo ne estas ene de alia bokso. -Por uzi \marginpar{} ankau ene de aliaj boksoj, vi povos -krei novajn versiojn de la boks-kreaj komandoj (au chirkauoj), +Por uzi \marginpar{} ankaÅ­ ene de aliaj boksoj, vi povos +krei novajn versiojn de la boks-kreaj komandoj (aÅ­ ĉirkaÅ­oj), uzante la du ordonojn \mpgmpar@savemarginpars (ene de grupo) kaj \mpgmpar@restoremarginpars (post la fino de tiu grupo, kiam denove \marginpar{} estas uzebla). @@ -155,10 +151,10 @@ Jen ekzemplo (minipage kun kadro:) \makeatother - Tio estas \begin{boxedpage}{4cm} kadrita pagho kun \marginpar{marghena noto}. + Tio estas \begin{boxedpage}{4cm} kadrita paÄo kun \marginpar{marÄena noto}. \end{boxedpage} --- -Tiaj chirkauojn eblas meti unu ene de alia, la marghenaj notoj aperos +Tiaj ĉirkaÅ­ojn eblas meti unu ene de alia, la marÄenaj notoj aperos apud la plej ekstera. diff --git a/Master/texmf-dist/doc/latex/minipage-marginpar/minipage-marginpar.pdf b/Master/texmf-dist/doc/latex/minipage-marginpar/minipage-marginpar.pdf new file mode 100644 index 00000000000..641bbc151b6 Binary files /dev/null and b/Master/texmf-dist/doc/latex/minipage-marginpar/minipage-marginpar.pdf differ diff --git a/Master/texmf-dist/doc/latex/minipage-marginpar/mpgmpar.pdf b/Master/texmf-dist/doc/latex/minipage-marginpar/mpgmpar.pdf deleted file mode 100644 index da1d25cfb43..00000000000 Binary files a/Master/texmf-dist/doc/latex/minipage-marginpar/mpgmpar.pdf and /dev/null differ diff --git a/Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.dtx b/Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.dtx new file mode 100644 index 00000000000..1b49744c846 --- /dev/null +++ b/Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.dtx @@ -0,0 +1,379 @@ +% \iffalse meta-comment +% +%% (C) 2006 Paul Ebermann +%% +%% Package minipage-marginpar - Randnotizen auch in Minipages +%% +%% Die Datei minipage-marginpar.dtx sowie die dazugehörige +%% minipage-marginpar.ins sowie die damit generierte +%% minipage-marginpar.sty stehen unter der +%% "LaTeX Project Public License" (LPPL, zu finden +%% unter http://www.latex-project.org/lppl/, sowie +%% auch in den meisten TeX-Distributionen in +%% texmf/docs/latex/base/lppl*.txt), Version 1.3b oder +%% später (nach Wahl des Verwenders). +%% +%% Der 'maintenance-status' ist (zur Zeit) 'maintained'. +%% +%% Das heißt in etwa, die Dateien dürfen frei vertrieben +%% werden, bei Änderungen (durch andere Personen als Paul Ebermann) +%% ist aber der Name der Datei zu ändern. +%% +% +% \fi +% +% \iffalse +% +\NeedsTeXFormat{LaTeX2e}[2003/12/01] +%\ProvidesPackage{minipage-marginpar} +%\ProvidesPackage{mpgmpar} +%<*driver> +\ProvidesFile{minipage-marginpar.dtx} +% + [2008/04/07 v0.3 +% Randnotizen auch in Minipages (PE)] +% Kompatibilitaets-Datei fuer alte Dokumente (PE)] +%<*driver> + Dokumentation fuer minipage-marginpar.] +\documentclass[draft,ngerman]{ltxdoc} +\usepackage{minipage-marginpar} +\usepackage[final, pdfpagemode=None, pdfstartview=FitH, pdfpagelayout=OneColumn]{hyperref} +\usepackage{pauldoc} +\begin{document} + \DocInput{minipage-marginpar.dtx} +\end{document} +% +% \fi +% +% \CheckSum{51} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \DoNotIndex{\relax,\end,\begin,\endinput,\global,\let,\newcommand} +% \DoNotIndex{\newenvironment,\renewcommand,\RequirePackage,\undefined} +% \DoNotIndex{\@tempa} +% +% \changes{v0.0}{2006/05/20}{Erste Fassung} +% \changes{v0.1}{2006/05/23}{Erste veröffentlichte Fassung} +% \changes{v0.3}{2008/04/07}{Neuer Name des Packages: \pack{minipage-marginpar} +% statt \pack{minipage-marginpar}.} +% +% \GetFileInfo{minipage-marginpar.sty} +% +% +% \title{Das \pack{minipage-marginpar}-Package -- Randnotizen auch in Minipages\thanks{% +% Dieses Dokument gehört zu \pack{minipage-marginpar}~\fileversion, +% vom~\filedate.}} +% \author{Paul Ebermann\thanks{\texttt{Paul-Ebermann@gmx.de}}} +% +% \maketitle +% +% \begin{abstract} +% Innerhalb von Boxen wie etwa einer 'minipage'-Umgebung sind bekanntlich +% '\marginpar'-Befehle nicht erlaubt -- dieses Package hat eine +% (Teil"=)Lösung. +% \end{abstract} +% +% \tableofcontents +% +% \section{Einleitung} +% +% Innerhalb von Boxen wie etwa einer 'minipage'-Umgebung sind +% '\marginpar'-Befehle nicht erlaubt, das heißt, sie bewirken +% nichts außer einer Fehlermeldung ("`Float(s) lost"'). +% +% Das Paket \pack{marginnote}\footnote{auf CTAN unter +% \texttt{macros/latex/contrib/marginnote/}} von Markus Kohm umgeht das, +% indem nicht-gleitende Marginalien bereitgestellt werden. +% +% Dieses Paket verfolgt einen anderen Ansatz: +% Es wird ein Mechanismus bereitgestellt, mit dem die '\marginpar'-Befehle +% abgefangen und dann außerhalb dieser Box ausgeführt werden können. +% +% \section{Benutzerdoku} +% +% \indent\DescribeEnv{minipagewithmarginpars} +% Diese Umgebung funktioniert wie die 'minipage'-Umgebung aus dem \LaTeX-Kernel, +% mit dem Unterschied, dass in ihr vorkommende '\marginpar'-Befehle erst am +% Ende der Umgebung, nach der Minipage selbst, ausgeführt werden. +% +% +% Hier ein Beispiel: +% +% \begin{minipagewithmarginpars}{4cm} +% Text am Anfang\marginpar{Bla}. +% +% \vspace{1.5cm} +% Text am Ende\marginpar[links]{rechts}. +% \end{minipagewithmarginpars} +% \begin{minipage}[t]{7cm}\vspace{-1ex} +%\begin{verbatim} +%\begin{minipagewithmarginpars}{4cm} +% Text am Anfang\marginpar{Bla}. +% +% \vspace{1.5cm} +% Text am Ende\marginpar[links]{rechts}. +%\end{minipagewithmarginpars} +% \end{verbatim} +% \end{minipage} +% +% Die Randnotizen werden in der durch die (hier zwei, der Code ist auch eine) Minipages +% gebildeten Zeile abgesetzt -- dabei ist die Default-Ausrichtung hier '[t]' anstatt +% '[c]'. +% +% \subsection{Probleme/Nachteile} +% \begin{itemize} +% \item Die Marginalien werden alle ab der selben Zeile (jeweils etwas +% nach unten verschoben) gesetzt, nicht entsprechend der Zeile (in +% der Minipage), in der der '\marginpar'-Befehl vorkam. +% +% Dies ist prinzipbedingt, ich habe keine Idee, was man dagegen +% tun könnte. (Je nach Problem gibt \pack{marginnote} wohl bessere +% Ergebnisse.) +% +% \item Wird die 'minipagewithmarginpars' innerhalb einer weiteren Box +% verwendet (z.B. um noch einen Rahmen zu setzen), funktioniert es +% weiterhin nicht, da ja dort ebenfalls keine '\marginpar's erlaubt sind. +% +% Hierfür gibt es eine Lösung -- die gesicherten '\marginpar's müssen +% einfach erst nach der äußersten Box (die hoffentlich in einer +% horizontalen Liste ist) ausgeführt werden. Dazu kann man sich analog +% zu 'minipagewithmarginpars' eine entsprechende Umgebung definieren, +% Details sind \ifReferenceExists{sec:minipagewithmarginpars}{in Abschnitt +% \ref{sec:minipagewithmarginpars} im Implementations-Teil}{in der +% Implementations"=Beschreibung des Paketes} nachzulesen. +% +% \item Befinden sich die '\marginpar'-Befehle innerhalb einer der +% AMS-Mathe-Umgebungen (wie etwa 'align', 'gather' und ihre +% '*'-Varianten), so kann es vorkommen, dass die Marginalien doppelt +% auftauchen. +% Dies liegt daran, dass diese Umgebungen ihren Inhalt mehrfach +% auswerten -- und jedesmal wird dann der Inhalt gespeichert. +% Dieses Problem betrifft auch andere Makros, die ähnlich vorgehen. +% +% Ich halte dies für einen Bug (in \pack{minipage-marginpar}), habe +% aber noch keine Idee, was ich dagegen tun könnte. Wer eine Idee hat, +% immer her damit. +% +% \end{itemize} +% +% \StopEventually{\PrintChanges\PrintIndex} +% +% \section{Implementation} +% +% \subsection{Rückwärtskompatibilitäts-Datei} +% CTAN hat ja inzwischen seine 8-Buchstaben-pro-Dateiname-Regel aufgehoben. +% Genauer, sie wurde zwischen meinem ersten Versuch, ein (anderes) Paket +% mit zu langem Dateinamen hochzuladen, und dem ersten Hochladen dieses +% Paketes geändert, so dass ich dieses Package noch \pack{mpgmpar} genannt +% habe, es bei CTAN dann aber in einem Verzeichnis 'minipage-marginpar' +% gelandet ist, und auch unter diesem Namen im \href{http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=minipage-marginpar}{CTAN-Katalog} zu finden +% ist. Für Version 0.3 habe ich mich daher entschieden, auch meine +% Package-Dateien entsprechend zu benennen. Hier aber noch für die +% Rückwärtskompatibilität eine passende 'mpgmpar.sty': +% \begin{macrocode} +%<*mpgmpar> +\RequirePackage{minipage-marginpar} +% +% \end{macrocode} +% +% Und jetzt geht das eigentliche Package los. +% +% \begin{macrocode} +%<*package> +% \end{macrocode} +% +% \subsection{Vorbereitungen} +% \changes{v0.2}{2006/07/27}{\pack{ifthen} wird nicht mehr benötigt.} +% +% \begin{macro}{\mpgmpar@savedmargins} +% Dieses Makro ist einfach nur ein "`Behälter"' für die aufgesparten +% '\marginpar'-Befehle. Wir definieren es hier (leer) mittels '\newcommand', +% um bei Konflikten eine Fehlermeldung zu erhalten. +% \begin{macrocode} +\newcommand*{\mpgmpar@savedmargins}{}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mpgmpar@dummy} +% Diese Kontrollsequenz wird nur verwendet, um einen nicht vorhandenen +% Parameter erkennen zu können. (Wir definieren es zunächst als Makro, +% um Konflikte zu erkennen, lassen es nachher aber gleich '\relax' sein.) +% \begin{macrocode} +\newcommand*{\mpgmpar@dummy}{}% +\let \mpgmpar@dummy = \relax +% \end{macrocode} +% \end{macro} +% +% +% \subsection{Interne Kommandos} +% +% Unsere beiden Makros '\mpgmpar@savemarginpars' (am Anfang eines Bereiches) und +% '\mpgmpar@restoremarginpars' (am Ende) +% machen die eigentliche Arbeit und können auch für die Definition eigener +% \emph{Box-Making}-Umgebungen verwendet werden, für eine Anleitung dafür +% siehe Abschnitt \ref{sec:minipagewithmarginpars}. +% +% \begin{macro}{\mpgmpar@savemarginpars} +% Dieses Makro leitet einen Bereich ein, in dem '\marginpar's aufgespart werden +% (er geht bis zum Ende der aktuellen Gruppe). +% \begin{macrocode} +\newcommand*{\mpgmpar@savemarginpars}{% +% \end{macrocode} +% Wir definieren '\marginpar' neu. +% \begin{macro}{\marginpar} +% Es hat wie das Original-'\marginpar' einen +% optionalen und einen verpflichtenden Parameter. (Um den Fall, dass der optionale +% Parameter angegeben wurde, von dem Fall der Nichtangabe zu unterscheiden, +% nehmen wir als Default '\mpgmpar@dummy' und vergleichen nachher damit.) +% \begin{macrocode} + \renewcommand*{\marginpar}[2][\mpgmpar@dummy]% + {% +% \end{macrocode} +% Das '\@bsphack' und das dazugehörige '\@esphack' am Ende +% sind Kernel"=Kommandos, welche (zusammen) dafür sorgen, dass +% an der Stelle der Verwendung keine Spur des +% '\marginpar'-Aufrufs bleibt. +% \begin{macrocode} + \@bsphack +% \end{macrocode} +% \changes{v0.2}{2006/07/26}{Vergleich jetzt mit \cs{ifx} statt \cs{ifthenelse}.} +% Jetzt der Vergleich \ldots{} bis zu Version 0.1 hatte ich +% den mit +%\begin{verbatim} +% \ifthenelse{\equal{\mpgmpar@dummy}{##1}}{... +%\end{verbatim} +% aus \pack{ifthen} gemacht, aber das hatte Nebenwirkungen (da für +% den Vergleich '##1' expandiert wurde). Daher direkt mit '\ifx'. In +% Version 0.2 war dieser '\ifx'-Vergleich kaputt (ergab immer false), +% wodurch '\marginpar{bla}' nur auf rechten Seiten gedruckt wurde. +% Jetzt (0.3) sollte es gehen. +% \changes{v0.3}{2008/04/07}{Fehler im Vergleich gefunden, jetzt korrigiert durch weitere Indirektion beim Vergleich.} +% \begin{macrocode} + \def\temp@a{##1}% + \def\temp@b{\mpgmpar@dummy}% + \ifx\temp@b\temp@a% +% \end{macrocode} +% Dann kopieren wir (global) einfach den '\marginpar'-Aufruf an das Ende unseres +% "`Speicher-Makros"' '\mpgmpar@savedmargins'. +% \begin{macrocode} + \g@addto@macro{\mpgmpar@savedmargins}{% + \marginpar{##2}}% + \else% + \g@addto@macro{\mpgmpar@savedmargins}{% + \marginpar[{##1}]{##2}}% + \fi% + \@ignorefalse + \@esphack + }% +}% +% \end{macrocode} +% Das '\@bsphack'-'\@esphack'-Paar ist hier vorhanden, damit sich unser +% modifiziertes '\marginpar' bezüglich umrundender Leerzeichen o.ä. +% genauso verhält wie das Original-'\marginpar'. +% \end{macro} +% \end{macro} +% +% \begin{macro}{\mpgmpar@restoremarginpars} +% Dieses Makro führt die gespeicherten '\marginpar'-Befehle +% aus und leert dann die Liste. +% \begin{macrocode} +\newcommand*{\mpgmpar@restoremarginpars}{% +% \end{macrocode} +% Zuerst merken wir uns die Liste im Makro '\@tempa' (das ist +% für derartige Sachen gedacht), dann löschen wir (global) +% '\mpgmpar@savedmargins'. +% \begin{macrocode} + \let \@tempa = \mpgmpar@savedmargins + \global\let \mpgmpar@savedmargins = \@empty +% \end{macrocode} +% Die eben kopierte Liste führen wir nun aus (falls wir +% jetzt noch in einer äußeren Umgebung mit unserem +% Spezial-'\marginpar' sind, wird die Liste dadurch neu angelegt, +% andernfalls werden die Randnotizen ausgegeben), und +% löschen dann die Kopie. +% \begin{macrocode} + \@tempa + \let \@tempa = \undefined +}% +% \end{macrocode} +% \end{macro} +% +% \subsection{Neue \texttt{minipage}-Umgebung}\label{sec:minipagewithmarginpars} +% +% Diese Umgebung dient als Beispiel für die Erstellung derartiger +% Umgebungen mit Hilfe von '\mpgmpar@savemarginpars' und '\mpgmpar@restoremarginpars'. +% Das Wesentliche dabei ist: '\mpgmpar@savemarginpars' sollte innerhalb einer +% Gruppe aufgerufen werden (meist nahe am Anfang), '\mpgmpar@restoremarginpars' +% nach dem Ende dieser Gruppe (an der Stelle, wo die Randnotizen erscheinen sollen). +% +% \begin{quotation}\small +% Mit etwas Eigenarbeit dürfte es auch ohne eine (weitere) Gruppe klappen. Dafür +% muss man am Anfang '\marginpar' mit '\let' sichern und am Ende wiederherstellen: +%\begin{verbatim} +% \let \savedmarginpar = \marginpar +% \mpgmpar@savemarginpars +% ... +% \let \marginpar = \savedmarginpar +% \mpgmpar@restoremarginpars +%\end{verbatim} +% Das ist aber nicht von mir getestet, also ohne Garantie. Und es ist eher nicht +% robust gegenüber Verschachtelungen derartiger Konstrukte. +% \end{quotation} +% +% \begin{environment}{minipagewithmarginpars} +% Hier nun unserer neue Minipage-Umgebung. Sie hat einen optionalen +% (vertikale Ausrichtung~-- Default ist 't') und einen verpflichtenden (Breite) Parameter. +% \begin{macrocode} +\newenvironment*{minipagewithmarginpars}[2][t]{% +% \end{macrocode} +% Die Implementation ist einfach: Wir beginnen zunächst +% die Original-'minipage'-Umgebung (mit den selben Parametern) +% und innerhalb davon rufen wir unser Makro '\mpgmpar@savemarginpars' auf. +% \begin{macrocode} + \begin{minipage}[#1]{#2}% + \mpgmpar@savemarginpars +} {% +% \end{macrocode} +% Am Ende beenden wir zunächst die Minipage (wodurch '\marginpar' seine +% Original-Bedeutung wiedererlangt), und rufen dann +% '\mpgmpar@restoremarginpars' auf. +% \begin{macrocode} + \end{minipage}% + \mpgmpar@restoremarginpars +}% +% \end{macrocode} +% \end{environment} +% +% \subsection{Ende} +% ... +% Das war es. +% \begin{macrocode} +\endinput +% +% \end{macrocode} +% +% \Finale +%\endinput + + +%%% Folgendes ist nur für meinen Editor. +%%% +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.ins b/Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.ins new file mode 100644 index 00000000000..8692b37856f --- /dev/null +++ b/Master/texmf-dist/source/latex/minipage-marginpar/minipage-marginpar.ins @@ -0,0 +1,68 @@ +%% +%% (C) 2002-2006, 2008 Paul Ebermann - +%% Installationsdatei zu minipage-marginpar.dtx +%% +%% Der vollständige Urheberrechtshinweis befindet sich +%% am Begin von mpgmpar.dtx. +%% +%% Ich gebe keine Garantie irgendeiner Art. +%% + +\input docstrip.tex +\usedir{tex/latex/paul} + +\Msg{**********************************************************} +\Msg{* Ich werde Dateien in \showdirectory{tex/latex/paul} } +\Msg{* installieren. Bitte stellen Sie sicher, } +\Msg{* dass dieses Verzeichnis vorhanden ist. } +\Msg{* } + +%% der folgende Text wird in jeder generierten +%% Datei am Anfang eingefügt. +\preamble + + ,--------------------------------------------------. + | Das ist eine generierte Datei. | + | | + | (c) 2002- 2008 Paul Ebermann. | + '--------------------------------------------------' + +\endpreamble + + +\generate{% + \file{minipage-marginpar.sty}{\from{minipage-marginpar.dtx}{package}}% + \file{mpgmpar.sty}{\from{minipage-marginpar.dtx}{mpgmpar}} +} + +\Msg{#######################} +\Msg{# } +\Msg{# Um die Installation zu beenden, } +\Msg{# müssen Sie die folgenden Dateien } +\Msg{# in Ihrem TeX-Suchbaum unterbringen: } +\Msg{# } +\Msg{# minipage-marginpar.sty } +\Msg{# } +\Msg{# (Für Rückwärtskompatibilität mit } +\Msg{# Versionen vor 0.3 zusätzlich: } +\Msg{# mpgmpar.sty) } +\Msg{# } +\Msg{# Um eine Dokumentation zu erzeugen, } +\Msg{# benutzen Sie } +\Msg{# } +\Msg{# latex minipage-marginpar.dtx } +\Msg{# } +\Msg{# Viel Spaß } +\Msg{# Paul Ebermann } +\Msg{# } +\Msg{#######################} + +\endbatchfile + + +%%% Folgendes ist nur für meinen Editor. +%%% +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.dtx b/Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.dtx deleted file mode 100644 index 3f07658db36..00000000000 --- a/Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.dtx +++ /dev/null @@ -1,343 +0,0 @@ -% \iffalse meta-comment -% -%% (C) 2006 Paul Ebermann -%% -%% Package mpgmpar - Randnotizen auch in Minipages -%% -%% Die Datei mpgmpar.dtx sowie die dazugehörige -%% mpgmpar.ins sowie die damit generierte -%% mpgmpar.sty stehen unter der -%% "LaTeX Project Public License" (LPPL, zu finden -%% unter http://www.latex-project.org/lppl/, sowie -%% auch in den meisten TeX-Distributionen in -%% texmf/docs/latex/base/lppl*.txt), Version 1.3b oder -%% später (nach Wahl des Verwenders). -%% -%% Der 'maintenance-status' ist (zur Zeit) 'maintained'. -%% -%% Das heißt in etwa, die Dateien dürfen frei vertrieben -%% werden, bei Änderungen (durch andere Personen als Paul Ebermann) -%% ist aber der Name der Datei zu ändern. -% -% \fi -% -% \iffalse -%\NeedsTeXFormat{LaTeX2e}[2003/12/01] -%\ProvidesPackage{mpgmpar} -% [2006/05/23 v0.2 Randnotizen auch in Minipages (PE)] -% -%<*driver> -\documentclass[draft,ngerman]{ltxdoc} -\usepackage{mpgmpar} -\usepackage{pauldoc} -\begin{document} - \DocInput{mpgmpar.dtx} -\end{document} -% -% \fi -% -% \CheckSum{47} -% -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% -% \DoNotIndex{\relax,\end,\begin,\endinput,\global,\let,\newcommand} -% \DoNotIndex{\newenvironment,\renewcommand,\RequirePackage,\undefined} -% \DoNotIndex{\@tempa} -% -% \changes{v0.0}{2006/05/20}{Erste Fassung} -% \changes{v0.1}{2006/05/23}{Erste veröffentlichte Fassung} -% -% \GetFileInfo{mpgmpar.sty} -% -% -% \title{Das \pack{mpgmpar}-Package -- Randnotizen auch in Minipages\thanks{% -% Dieses Dokument gehört zu \pack{mpgmpar}~\fileversion, -% vom~\filedate.}} -% \author{Paul Ebermann\thanks{\texttt{Paul-Ebermann@gmx.de}}} -% -% \maketitle -% -% \begin{abstract} -% Innerhalb von Boxen wie etwa einer 'minipage'-Umgebung sind bekanntlich -% '\marginpar'-Befehle nicht erlaubt -- dieses Package hat eine -% (Teil"=)Lösung. -% \end{abstract} -% -% \tableofcontents -% -% \section{Einleitung} -% -% Innerhalb von Boxen wie etwa einer 'minipage'-Umgebung sind -% '\marginpar'-Befehle nicht erlaubt, das heißt, sie bewirken -% nichts außer einer Fehlermeldung ("`Float(s) lost"'). -% -% Das Paket \pack{marginnote}\footnote{auf CTAN unter -% \texttt{macros/latex/contrib/marginnote/}} von Markus Kohm umgeht das, -% indem nicht-gleitende Marginalien bereitgestellt werden. -% -% Dieses Paket verfolgt einen anderen Ansatz: -% Es wird ein Mechanismus bereitgestellt, mit dem die '\marginpar'-Befehle -% abgefangen und dann außerhalb dieser Box ausgeführt werden können. -% -% \section{Benutzerdoku} -% -% \indent\DescribeEnv{minipagewithmarginpars} -% Diese Umgebung funktioniert wie die 'minipage'-Umgebung aus dem \LaTeX-Kernel, -% mit dem Unterschied, dass in ihr vorkommende '\marginpar'-Befehle erst am -% Ende der Umgebung, nach der Minipage selbst, ausgeführt werden. -% -% -% Hier ein Beispiel: -% -% \begin{minipagewithmarginpars}{4cm} -% Text am Anfang\marginpar{Bla}. -% -% \vspace{1.5cm} -% Text am Ende\marginpar[links]{rechts}. -% \end{minipagewithmarginpars} -% \begin{minipage}[t]{7cm}\vspace{-1ex} -%\begin{verbatim} -%\begin{minipagewithmarginpars}{4cm} -% Text am Anfang\marginpar{Bla}. -% -% \vspace{1.5cm} -% Text am Ende\marginpar[links]{rechts}. -%\end{minipagewithmarginpars} -% \end{verbatim} -% \end{minipage} -% -% Die Randnotizen werden in der durch die (hier zwei, der Code ist auch eine) Minipages -% gebildeten Zeile abgesetzt -- dabei ist die Default-Ausrichtung hier '[t]' anstatt -% '[c]'. -% -% \subsection{Probleme/Nachteile} -% \begin{itemize} -% \item Die Marginalien werden alle ab der selben Zeile (jeweils etwas -% nach unten verschoben) gesetzt, nicht entsprechend der Zeile (in -% der Minipage), in der der '\marginpar'-Befehl vorkam. -% -% Dies ist prinzipbedingt, ich habe keine Idee, was man dagegen -% tun könnte. (Je nach Problem gibt \pack{marginnote} wohl bessere -% Ergebnisse.) -% -% \item Wird die 'minipagewithmarginpars' innerhalb einer weiteren Box -% verwendet (z.B. um noch einen Rahmen zu setzen), funktioniert es -% weiterhin nicht, da ja dort ebenfalls keine '\marginpar's erlaubt sind. -% -% Hierfür gibt es eine Lösung -- die gesicherten '\marginpar's müssen -% einfach erst nach der äußersten Box (die hoffentlich in einer -% horizontalen Liste ist) ausgeführt werden. Dazu kann man sich analog -% zu 'minipagewithmarginpars' eine entsprechende Umgebung definieren, -% Details sind \ifReferenceExists{sec:minipagewithmarginpars}{in Abschnitt -% \ref{sec:minipagewithmarginpars} im Implementations-Teil}{in der -% Implementations"=Beschreibung des Paketes} nachzulesen. -% -% \item Befinden sich die '\marginpar'-Befehle innerhalb einer der -% AMS-Mathe-Umgebungen (wie etwa 'align', 'gather' und ihre '*'-Varianten), -% so kann es vorkommen, dass die Marginalien doppelt auftauchen. -% Dies liegt daran, dass diese Umgebungen ihren Inhalt mehrfach auswerten -- -% und jedesmal wird dann der Inhalt gespeichert. -% Dieses Problem betrifft auch andere Makros, die ähnlich vorgehen. -% -% Ich halte dies für einen Bug (in \pack{mpgmpar}), habe aber noch keine Idee, -% was ich dagegen tun könnte. -% -% \end{itemize} -% -% \StopEventually{\PrintChanges\PrintIndex} -% -% \section{Implementation} -% -% \begin{macrocode} -%<*package> -% \end{macrocode} -% -% \subsection{Vorbereitungen} -% \changes{v0.2}{2006/07/27}{\pack{ifthen} wird nicht mehr benötigt.} -% -% \begin{macro}{\mpgmpar@savedmargins} -% Dieses Makro ist einfach nur ein "`Behälter"' für die aufgesparten -% '\marginpar'-Befehle. Wir definieren es hier (leer) mittels '\newcommand', -% um bei Konflikten eine Fehlermeldung zu erhalten. -% \begin{macrocode} -\newcommand*{\mpgmpar@savedmargins}{}% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\mpgmpar@dummy} -% Diese Kontrollsequenz wird nur verwendet, um einen nicht vorhandenen -% Parameter erkennen zu können. (Wir definieren es zunächst als Makro, -% um Konflikte zu erkennen, lassen es nachher aber gleich '\relax' sein.) -% \begin{macrocode} -\newcommand*{\mpgmpar@dummy}{}% -\let \mpgmpar@dummy = \relax -% \end{macrocode} -% \end{macro} -% -% -% \subsection{Interne Kommandos} -% -% Unsere beiden Makros '\mpgmpar@savemarginpars' (am Anfang eines Bereiches) und -% '\mpgmpar@restoremarginpars' (am Ende) -% machen die eigentliche Arbeit und können auch für die Definition eigener -% \emph{Box-Making}-Umgebungen verwendet werden, für eine Anleitung dafür -% siehe Abschnitt \ref{sec:minipagewithmarginpars}. -% -% \begin{macro}{\mpgmpar@savemarginpars} -% Dieses Makro leitet einen Bereich ein, in dem '\marginpar's aufgespart werden -% (er geht bis zum Ende der aktuellen Gruppe). -% \begin{macrocode} -\newcommand*{\mpgmpar@savemarginpars}{% -% \end{macrocode} -% Wir definieren '\marginpar' neu. -% \begin{macro}{\marginpar} -% Es hat wie das Original-'\marginpar' einen -% optionalen und einen verpflichtenden Parameter. (Um den Fall, dass der optionale -% Parameter angegeben wurde, von dem Fall der Nichtangabe zu unterscheiden, -% nehmen wir als Default '\mpgmpar@dummy' und vergleichen nachher damit.) -% \begin{macrocode} - \renewcommand*{\marginpar}[2][\mpgmpar@dummy]% - {% -% \end{macrocode} -% Das '\@bsphack' und das dazugehörige '\@esphack' am Ende -% sind Kernel"=Kommandos, welche (zusammen) dafür sorgen, dass -% an der Stelle der Verwendung keine Spur des -% '\marginpar'-Aufrufs bleibt. -% \begin{macrocode} - \@bsphack -% \end{macrocode} -% \changes{v0.2}{2006/07/26}{Vergleich jetzt mit \cs{ifx} statt \cs{ifthenelse}.} -% Jetzt der Vergleich \ldots{} bis zu Version 0.1 hatte ich -% den mit -%\begin{verbatim} -% \ifthenelse{\equal{\mpgmpar@dummy}{##1}}{... -%\end{verbatim} -% aus \pack{ifthen} gemacht, aber das hatte Nebenwirkungen (da für -% den Vergleich '##1' expandiert wurde). Daher direkt mit '\ifx'. -% \begin{macrocode} - \def\temp@a{##1}% - \ifx\mpgmpar@dummy\temp@a% -% \end{macrocode} -% Dann kopieren wir (global) einfach den '\marginpar'-Aufruf an das Ende unseres -% "`Speicher-Makros"' '\mpgmpar@savedmargins'. -% \begin{macrocode} - \g@addto@macro{\mpgmpar@savedmargins}{% - \marginpar{##2}}% - \else% - \g@addto@macro{\mpgmpar@savedmargins}{% - \marginpar[{##1}]{##2}}% - \fi% - \@ignorefalse - \@esphack - }% -}% -% \end{macrocode} -% Das '\@bsphack'-'\@esphack'-Paar ist hier vorhanden, damit sich unser -% modifiziertes '\marginpar' bezüglich umrundender Leerzeichen o.ä. -% genauso verhält wie das Original-'\marginpar'. -% \end{macro} -% \end{macro} -% -% \begin{macro}{\mpgmpar@restoremarginpars} -% Dieses Makro führt die gespeicherten '\marginpar'-Befehle -% aus und leert dann die Liste. -% \begin{macrocode} -\newcommand*{\mpgmpar@restoremarginpars}{% -% \end{macrocode} -% Zuerst merken wir uns die Liste im Makro '\@tempa' (das ist -% für derartige Sachen gedacht), dann löschen wir (global) -% '\mpgmpar@savedmargins'. -% \begin{macrocode} - \let \@tempa = \mpgmpar@savedmargins - \global\let \mpgmpar@savedmargins = \@empty -% \end{macrocode} -% Die eben kopierte Liste führen wir nun aus (falls wir -% jetzt noch in einer äußeren Umgebung mit unserem -% Spezial-'\marginpar' sind, wird die Liste dadurch neu angelegt, -% andernfalls werden die Randnotizen ausgegeben), und -% löschen dann die Kopie. -% \begin{macrocode} - \@tempa - \let \@tempa = \undefined -}% -% \end{macrocode} -% \end{macro} -% -% \subsection{Neue \texttt{minipage}-Umgebung}\label{sec:minipagewithmarginpars} -% -% Diese Umgebung dient als Beispiel für die Erstellung derartiger -% Umgebungen mit Hilfe von '\mpgmpar@savemarginpars' und '\mpgmpar@restoremarginpars'. -% Das Wesentliche dabei ist: '\mpgmpar@savemarginpars' sollte innerhalb einer -% Gruppe aufgerufen werden (meist nahe am Anfang), '\mpgmpar@restoremarginpars' -% nach dem Ende dieser Gruppe (an der Stelle, wo die Randnotizen erscheinen sollen). -% -% \begin{quotation}\small -% Mit etwas Eigenarbeit dürfte es auch ohne eine (weitere) Gruppe klappen. Dafür -% muss man am Anfang '\marginpar' mit '\let' sichern und am Ende wiederherstellen: -%\begin{verbatim} -% \let \savedmarginpar = \marginpar -% \mpgmpar@savemarginpars -% ... -% \let \marginpar = \savedmarginpar -% \mpgmpar@restoremarginpars -%\end{verbatim} -% Das ist aber nicht von mir getestet, also ohne Garantie. Und es ist eher nicht -% robust gegenüber Verschachtelungen derartiger Konstrukte. -% \end{quotation} -% -% \begin{environment}{minipagewithmarginpars} -% Hier nun unserer neue Minipage-Umgebung. Sie hat einen optionalen -% (vertikale Ausrichtung~-- Default ist 't') und einen verpflichtenden (Breite) Parameter. -% \begin{macrocode} -\newenvironment*{minipagewithmarginpars}[2][t]{% -% \end{macrocode} -% Die Implementation ist einfach: Wir beginnen zunächst -% die Original-'minipage'-Umgebung (mit den selben Parametern) -% und innerhalb davon rufen wir unser Makro '\mpgmpar@savemarginpars' auf. -% \begin{macrocode} - \begin{minipage}[#1]{#2}% - \mpgmpar@savemarginpars -} {% -% \end{macrocode} -% Am Ende beenden wir zunächst die Minipage (wodurch '\marginpar' seine -% Original-Bedeutung wiedererlangt), und rufen dann -% '\mpgmpar@restoremarginpars' auf. -% \begin{macrocode} - \end{minipage}% - \mpgmpar@restoremarginpars -}% -% \end{macrocode} -% \end{environment} -% -% \subsection{Ende} -% ... -% Das war es. -% \begin{macrocode} -\endinput -% -% \end{macrocode} -% -% \Finale -%\endinput - - -%%% Folgendes ist nur für meinen Editor. -%%% -%%% Local Variables: -%%% mode: latex -%%% TeX-master: t -%%% End: diff --git a/Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.ins b/Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.ins deleted file mode 100644 index 2b369e64f24..00000000000 --- a/Master/texmf-dist/source/latex/minipage-marginpar/mpgmpar.ins +++ /dev/null @@ -1,60 +0,0 @@ -%% -%% (C) 2002-2006 Paul Ebermann - Installationsdatei zu mpgmpar.dtx -%% -%% Der vollständige Urheberrechtshinweis befindet sich -%% am Begin von mpgmpar.dtx. -%% -%% Ich gebe keine Garantie irgendeiner Art. -%% - -\input docstrip.tex -\usedir{tex/latex/paul} - -\Msg{**********************************************************} -\Msg{* Ich werde Dateien in \showdirectory{tex/latex/paul} } -\Msg{* installieren. Bitte stellen Sie sicher, } -\Msg{* dass dieses Verzeichnis vorhanden ist. } -\Msg{* } - -%% der folgende Text wird in jeder generierten -%% Datei am Anfang eingefügt. -\preamble - - ,--------------------------------------------------. - | Das ist eine generierte Datei. | - | | - | (c) 2006 Paul Ebermann. | - '--------------------------------------------------' -\endpreamble - - -\generate{\file{mpgmpar.sty}{\from{mpgmpar.dtx}{package}}} -%\generate{\file{mpgmpar.cls}{\from{mpgmpar.dtx}{class}}} - -\Msg{#######################} -\Msg{# } -\Msg{# Um die Installation zu beenden, } -\Msg{# müssen Sie die folgenden Dateien } -\Msg{# in Ihrem TeX-Suchbaum unterbringen: } -\Msg{# } -\Msg{# mpgmpar.sty } -\Msg{# } -\Msg{# Um eine Dokumentation zu erzeugen, } -\Msg{# benutzen Sie } -\Msg{# } -\Msg{# latex mpgmpar.dtx } -\Msg{# } -\Msg{# Viel Spaß } -\Msg{# Paul Ebermann } -\Msg{# } -\Msg{#######################} - -\endbatchfile - - -%%% Folgendes ist nur für meinen Editor. -%%% -%%% Local Variables: -%%% mode: latex -%%% TeX-master: t -%%% End: diff --git a/Master/texmf-dist/tex/latex/minipage-marginpar/minipage-marginpar.sty b/Master/texmf-dist/tex/latex/minipage-marginpar/minipage-marginpar.sty new file mode 100644 index 00000000000..38c702fadb2 --- /dev/null +++ b/Master/texmf-dist/tex/latex/minipage-marginpar/minipage-marginpar.sty @@ -0,0 +1,73 @@ +%% +%% This is file `minipage-marginpar.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% minipage-marginpar.dtx (with options: `package') +%% +%% ,--------------------------------------------------. +%% | Das ist eine generierte Datei. | +%% | | +%% | (c) 2002- 2008 Paul Ebermann. | +%% '--------------------------------------------------' +%% +%% (C) 2006 Paul Ebermann +%% +%% Package minipage-marginpar - Randnotizen auch in Minipages +%% +%% Die Datei minipage-marginpar.dtx sowie die dazugehörige +%% minipage-marginpar.ins sowie die damit generierte +%% minipage-marginpar.sty stehen unter der +%% "LaTeX Project Public License" (LPPL, zu finden +%% unter http://www.latex-project.org/lppl/, sowie +%% auch in den meisten TeX-Distributionen in +%% texmf/docs/latex/base/lppl*.txt), Version 1.3b oder +%% später (nach Wahl des Verwenders). +%% +%% Der 'maintenance-status' ist (zur Zeit) 'maintained'. +%% +%% Das heißt in etwa, die Dateien dürfen frei vertrieben +%% werden, bei Änderungen (durch andere Personen als Paul Ebermann) +%% ist aber der Name der Datei zu ändern. +%% +\NeedsTeXFormat{LaTeX2e}[2003/12/01] +\ProvidesPackage{minipage-marginpar} + [2008/04/07 v0.3 + Randnotizen auch in Minipages (PE)] +\newcommand*{\mpgmpar@savedmargins}{}% +\newcommand*{\mpgmpar@dummy}{}% +\let \mpgmpar@dummy = \relax +\newcommand*{\mpgmpar@savemarginpars}{% + \renewcommand*{\marginpar}[2][\mpgmpar@dummy]% + {% + \@bsphack + \def\temp@a{##1}% + \def\temp@b{\mpgmpar@dummy}% + \ifx\temp@b\temp@a% + \g@addto@macro{\mpgmpar@savedmargins}{% + \marginpar{##2}}% + \else% + \g@addto@macro{\mpgmpar@savedmargins}{% + \marginpar[{##1}]{##2}}% + \fi% + \@ignorefalse + \@esphack + }% +}% +\newcommand*{\mpgmpar@restoremarginpars}{% + \let \@tempa = \mpgmpar@savedmargins + \global\let \mpgmpar@savedmargins = \@empty + \@tempa + \let \@tempa = \undefined +}% +\newenvironment*{minipagewithmarginpars}[2][t]{% + \begin{minipage}[#1]{#2}% + \mpgmpar@savemarginpars +} {% + \end{minipage}% + \mpgmpar@restoremarginpars +}% +\endinput +%% +%% End of file `minipage-marginpar.sty'. diff --git a/Master/texmf-dist/tex/latex/minipage-marginpar/mpgmpar.sty b/Master/texmf-dist/tex/latex/minipage-marginpar/mpgmpar.sty index 1b6ebf5e741..ecea5eb448e 100644 --- a/Master/texmf-dist/tex/latex/minipage-marginpar/mpgmpar.sty +++ b/Master/texmf-dist/tex/latex/minipage-marginpar/mpgmpar.sty @@ -4,20 +4,21 @@ %% %% The original source files were: %% -%% mpgmpar.dtx (with options: `package') +%% minipage-marginpar.dtx (with options: `mpgmpar') %% %% ,--------------------------------------------------. %% | Das ist eine generierte Datei. | %% | | -%% | (c) 2006 Paul Ebermann. | +%% | (c) 2002- 2008 Paul Ebermann. | %% '--------------------------------------------------' +%% %% (C) 2006 Paul Ebermann %% -%% Package mpgmpar - Randnotizen auch in Minipages +%% Package minipage-marginpar - Randnotizen auch in Minipages %% -%% Die Datei mpgmpar.dtx sowie die dazugehörige -%% mpgmpar.ins sowie die damit generierte -%% mpgmpar.sty stehen unter der +%% Die Datei minipage-marginpar.dtx sowie die dazugehörige +%% minipage-marginpar.ins sowie die damit generierte +%% minipage-marginpar.sty stehen unter der %% "LaTeX Project Public License" (LPPL, zu finden %% unter http://www.latex-project.org/lppl/, sowie %% auch in den meisten TeX-Distributionen in @@ -29,41 +30,12 @@ %% Das heißt in etwa, die Dateien dürfen frei vertrieben %% werden, bei Änderungen (durch andere Personen als Paul Ebermann) %% ist aber der Name der Datei zu ändern. +%% \NeedsTeXFormat{LaTeX2e}[2003/12/01] \ProvidesPackage{mpgmpar} - [2006/05/23 v0.2 Randnotizen auch in Minipages (PE)] -\newcommand*{\mpgmpar@savedmargins}{}% -\newcommand*{\mpgmpar@dummy}{}% -\let \mpgmpar@dummy = \relax -\newcommand*{\mpgmpar@savemarginpars}{% - \renewcommand*{\marginpar}[2][\mpgmpar@dummy]% - {% - \@bsphack - \def\temp@a{##1}% - \ifx\mpgmpar@dummy\temp@a% - \g@addto@macro{\mpgmpar@savedmargins}{% - \marginpar{##2}}% - \else% - \g@addto@macro{\mpgmpar@savedmargins}{% - \marginpar[{##1}]{##2}}% - \fi% - \@ignorefalse - \@esphack - }% -}% -\newcommand*{\mpgmpar@restoremarginpars}{% - \let \@tempa = \mpgmpar@savedmargins - \global\let \mpgmpar@savedmargins = \@empty - \@tempa - \let \@tempa = \undefined -}% -\newenvironment*{minipagewithmarginpars}[2][t]{% - \begin{minipage}[#1]{#2}% - \mpgmpar@savemarginpars -} {% - \end{minipage}% - \mpgmpar@restoremarginpars -}% + [2008/04/07 v0.3 + Kompatibilitaets-Datei fuer alte Dokumente (PE)] +\RequirePackage{minipage-marginpar} \endinput %% %% End of file `mpgmpar.sty'. -- cgit v1.2.3