summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/pauldoc
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/pauldoc
Initial commit
Diffstat (limited to 'macros/latex/contrib/pauldoc')
-rw-r--r--macros/latex/contrib/pauldoc/README173
-rw-r--r--macros/latex/contrib/pauldoc/pauldoc.dtx570
-rw-r--r--macros/latex/contrib/pauldoc/pauldoc.ins60
-rw-r--r--macros/latex/contrib/pauldoc/pauldoc.pdfbin0 -> 159963 bytes
-rw-r--r--macros/latex/contrib/pauldoc/pauldoc.sty126
5 files changed, 929 insertions, 0 deletions
diff --git a/macros/latex/contrib/pauldoc/README b/macros/latex/contrib/pauldoc/README
new file mode 100644
index 0000000000..8f9ad94cf7
--- /dev/null
+++ b/macros/latex/contrib/pauldoc/README
@@ -0,0 +1,173 @@
+[en]
+LaTeX-package 'pauldoc' - some macros to facilate the creation of
+LaTeX package documentation in german language.
+
+Author: Paul Ebermann <Paul-Ebermann@gmx.de>
+License: LPPL 1.3b or later, author-maintained
+ (see http://www.latex-project.org/lppl/).
+Version: v0.5
+
+All Documentation (other than this file) is in german.
+
+The package comes as .dtx + .ins.
+Run "latex pauldoc.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 pauldoc.dtx" to create the documentation.
+
+
+ Usage
+-------
+This package is used to create the documentation of the
+other packages from Paul Ebermann - so most times you
+won't need to use it directly.
+(And it is only of use for creating german language
+ package documentation, so preferably read the german
+ language documentation in pauldoc.pdf.)
+
+Use the package in your own .dtx-file in
+a the doc-driver-section:
+
+%<*driver>
+\nonstopmode
+\documentclass[draft,ngerman]{ltxdoc}
+\usepackage{pauldoc}
+\usepackage{myPackage}
+\begin{document}
+ \DocInput{myPackage.dtx}
+\end{document}
+%</driver>
+
+In the documentation you then can use some
+additional commands:
+
+ \pack{} - typesets package names.
+ \includeLicense - includes \lpplfilename (by
+ default 'lppl.tex') in the documentation,
+ if the file exists.
+ The catcodes are changed before and after
+ so there should be no problems.
+
+ \IfReferenceExists{refName}{yes}{no} - execute
+ some LaTeX code conditionally, dependent
+ of whether some label was defined (in
+ the previous LaTeX run), so a \ref or
+ \pageref would succeed.
+ Useful for references to the implementation
+ section or the licence, which may or may not
+ be included.
+
+ \cmd, \cs, \marg, \oarg, \parg - copied from ltxdoc,
+ so they can also be used if doc (and pauldoc)
+ are used with another document class.
+
+Additionally, 'pauldoc' loads babel with [ngerman],
+fontenc with [T1], inputenc with [latin1] (or [utf8],
+if you gave this as package parameter to pauldoc),
+defines "'" as verbatim character, enables indexing by
+codelines, recording of changes, and cross referencing.
+The change list title and the index prologue are
+translated to german, the index is typeset in two
+columns (instead of three).
+
+----------------
+[de]
+LaTeX-Paket 'pauldoc' - Einige Makros, um LaTeX-Pakete
+besser (auf deutsch) dokumentieren zu können.
+
+Autor: Paul Ebermann (Paul-Ebermann@gmx.de).
+Lizenz: LPPL 1.3b oder später, mit Maintenance-Status
+ "author-maintained". Siehe http://www.latex-project.org/lppl/.
+
+Geschrieben für den eigenen Gebrauch
+(d.h. die Dokumentation der LaTeX-Pakete von
+ Paul Ebermann), aber vielleicht ist es auch
+für andere von Nutzen.
+
+Das Paket kommt als .dtx + .ins.
+Mit "latex pauldoc.ins" wird die .sty-Datei erstellt (und
+eventuell gleich nach texmf/tex/latex/paul/ installiert,
+wenn docstrip entsprechend eingerichtet ist), mit
+"latex pauldoc.dtx" kann (danach und eventuell nach einer
+Aktualisierung der TeX-Dateidatenbank) die Dokumentation neu
+erstellt werden.
+
+Zur Verwendung siehe pauldoc.pdf.
+
+----------------
+[eo-h]
+LaTeX-pakaĵo 'pauldoc' - Kelkaj iloj por helpi la
+dokumentadon de LaTeX-pakaĵoj en la germana lingvo.
+
+Aŭtoro: Paŭlo Ebermann (Paul-Ebermann@gmx.de).
+Licenzo: LPPL 1.3, 'author-maintained'
+ (-> http://www.latex-project.org/lppl/).
+
+Kreitaj por propra uzo, sed eble iom de ĝi ankaŭ
+uzeblas por aliaj.
+
+La dokumentaro (escepte tiu ĉi dosiero) estas nur en la germana
+lingvo.
+
+La pakaĵo venas en .dtx + .ins.
+Voku "latex pauldoc.ins" por krei la .sty-dosieron (kaj
+eble meti ĝin al texmf/tex/latex/paul/, se via docstrip estis
+konfigurita laŭe), voku "latex pauldoc.dtx" por rekrei
+la dokumentaron.
+
+ Uzado
+-------
+La pakaĵo estas uzata por krei la dokumentaĵon por
+la aliaj pakaĵoj de Paŭlo Ebermann, do kutime vi ne
+devos uzi ĝin rekte.
+(Kaj ĝi nur taŭgas por dokumenti germanlingve
+ LaTeX-pakaĵojn, do prefere vi legu la germanlingvan
+ dokumentaĵon en pauldoc.pdf.)
+
+
+Uzu la pakaĵon en via propra .dtx-dosiero en
+la sekcio, kiu enhavas la dokumentaĵ-kreilon:
+
+%<*driver>
+\nonstopmode
+\documentclass[draft,ngerman]{ltxdoc}
+\usepackage{pauldoc}
+\usepackage{miaPakajho}
+\begin{document}
+ \DocInput{miaPakajho.dtx}
+\end{document}
+%</driver>
+
+En la dokumentaĵo vi nun povas uzu kelkajn
+aldonajn komandojn:
+
+ \pack{} - belprintas pakaĵnomojn.
+ \includeLicense - enmetas la dosieron \lpplfilename
+ (kutime 'lppl.tex') en la dokumentajon,
+ se la dosiero ekzistas.
+ La kategoriaj kodoj estas ŝanĝitaj antaŭe
+ kaj poste, por eviti problemojn.
+
+ \IfReferenceExists{refNomo}{jes}{ne} - kondiĉa uzo
+ de iu teksto, depende ĉu iu 'label' estis
+ difinita (en la antaŭa voko de LaTeX), do
+ ĉu nun uzo de \ref{refNomo} kaj \pageref{refNomo}
+ estus sukcesaj.
+ Tio estas taŭga por referencoj al la implementa
+ parto aŭ al la licenco, kiuj povus aŭ ne povus
+ enesti la dokumenton.
+
+ \cmd, \cs, \marg, \oarg, \parg - tiuj komandoj estas
+ simple kopiitaj el ltxdoc, por ke oni povu
+ uzi ilin ankaŭ kun alia dokumentklaso kaj
+ 'doc' (kaj pauldoc').
+
+Aldone, pauldoc vokas 'babel' kun opcio [ngerman],
+'fontenc' kun [T1], 'inputenc' kun [latin1] (aŭ
+[utf8], se vi donis [utf8] al pauldoc).
+Ĝi difinas "'" kiel "verbatim"-ŝaltilo, enŝaltas
+linnumerojn, indeksadon laŭ tiuj, kolektadon de
+ŝanĝlisto kaj krucreferencadon.
+Ĝi tradukas la titolon de la ŝanĝlisto kaj la
+prologon de la indekso al la germana. Krome la
+indekso uzas nur du kolumnojn (anstataŭ tri).
diff --git a/macros/latex/contrib/pauldoc/pauldoc.dtx b/macros/latex/contrib/pauldoc/pauldoc.dtx
new file mode 100644
index 0000000000..a0b3bb6f6c
--- /dev/null
+++ b/macros/latex/contrib/pauldoc/pauldoc.dtx
@@ -0,0 +1,570 @@
+% \iffalse meta-comment
+%
+%% (C) 2006-2009 Paul Ebermann
+%%
+%% Package pauldoc - Anpassungen fr doc fr Pauls Package-Dokus.
+%% Die Datei pauldoc.dtx sowie die dazugehrige
+%% pauldoc.ins sowie die damit generierte
+%% pauldoc.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
+%% spter (nach Wahl des Verwenders).
+%%
+%% Der 'maintenance-status' ist (zur Zeit) 'author-maintained'.
+%%
+%% Das heit u.a., die Dateien drfen frei vertrieben werden,
+%% bei nderungen (durch andere Personen als Paul Ebermann)
+%% ist aber der Name der Datei zu ndern.
+%%
+% \fi
+%
+% \iffalse
+%<package>\NeedsTeXFormat{LaTeX2e}[2003/12/01]
+%<package>\ProvidesPackage{pauldoc}
+%<package> [2009/11/06 v0.5 Pauls Anpassungen fuer doc (PE)]
+%
+% \changes{v0.2a}{2006/02/23}{'ue' statt '' im Identifikations-String - gibt schnere
+% Ausgabe bei \cs{listfiles}.}
+%
+%<*driver>
+\nonstopmode
+\documentclass[draft,ngerman]{ltxdoc}
+\usepackage{pauldoc}
+\usepackage{dox}
+\doxitem{Option}{option}{Optionen}
+
+\setlength{\IndexMin}{2\IndexMin}
+\begin{document}
+ \DocInput{pauldoc.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{139}
+%
+%
+% \changes{v0.0}{2006/01/31}{Erste Fassung}
+% \changes{v0.1}{2006/02/12}{Erste verffentlichte Fassung}
+% \changes{v0.5}{2009/11/06}{README jetzt in UTF-8}
+%
+% \GetFileInfo{pauldoc.sty}
+%
+%
+% \title{Das \pack{pauldoc}-Package -- Anpassungen fr \pack{doc} fr Pauls Package-Dokus\thanks{%
+% Dieses Dokument gehrt zu \pack{pauldoc}~\fileversion,
+% vom~\filedate.}}
+% \author{Paul Ebermann\footnote{\texttt{Paul-Ebermann@gmx.de}}}
+%
+% \maketitle
+% \begin{abstract}
+% Dieses Package enthlt einige Befehle, welche
+% die Funktion von \pack{doc} an meine Wnsche
+% anpassen.
+%
+% Auerdem werden noch einige gewnschte Pakete
+% geladen sowie einige neue Befehle definiert.
+% \end{abstract}
+% \tableofcontents
+%
+% \changes{v0.4a}{2006/04/05}{Kleinere nderungen an der Dokumentation.}
+%
+% \section{Benutzerdoku}
+%
+%
+% \subsection{Package-Optionen}
+%
+% \DescribeOption{chapter}
+% Die Option 'chapter' legt fest, dass Index und Liste der nderungen
+% in einem eigenen Kapitel (anstatt in einem Abschnitt) beginnen.
+% Dies ist nur in einer Dokumentenklasse sinnvoll, welche
+% berhaupt '\chapter' definiert, etwa den 'book'-artigen Klassen.
+%
+% \DescribeOption{section}
+% Die Option 'section' legt fest, dass Index und nderungsliste in
+% einem Abschnitt beginnen. Dies ist der Vorgabewert.
+%
+% \DescribeOption{latin1}
+% Die Option 'latin1' legt fest, dass das Dokument im ISO-8859-1-Format
+% kodiert ist. Dies ist der Vorgabewert.
+% (Die Option wird an das \pack{inputenc}-Paket weitergegeben.)
+%
+% \DescribeOption{utf8}
+% Die Option 'utf8' legt fest, dass das Dokument als UTF-8
+% kodiert ist. (Die Option wird an das \pack{inputenc}-Paket weitergegeben.)
+%
+% \subsection{Neue Makros}
+%
+% \DescribeMacro{\ifReferenceExists}\marg{refName}\marg{then}\marg{else}
+%
+% Mit diesem Makro kann man, abhngig davon, ob eine bestimmte Referenz
+% mit '\label{}' gesetzt wurde, bestimmten Text ausgeben.
+%
+% Falls ein '\ref'\marg{refName} Erfolg htte, wird \meta{then}
+% ausgewertet, ansonsten \meta{else}.
+% Dies ist ntzlich, wenn man im Beschreibungsteil verschiedenen Text
+% aufnehmen will, abhngig davon, ob auch der Implementationsteil
+% mitgesetzt wird -- man kann dann etwa auf einen bestimmten Abschnitt
+% darin verweisen, und andernfalls den Text im Konjunktiv formulieren
+% ("`Wenn der Implementationsteil mit enthalten
+% wre, knnte man dort jetzt \dots finden."').
+%
+% Gegebenenfalls wird erst beim zweiten \LaTeX-Durchlauf der richtige
+% Zweig ausgewertet.
+%
+% \noindent\DescribeMacro{\pack}\marg{name}
+%
+% In Paketbeschreibungen werden hufiger Paketnamen (der des eigenen
+% Paketes, gelegentlich auch andere Pakete) verwendet. Wie in
+% "`How to Package Your \LaTeX{} Package"' (Scott Pakin, dtxtut.pdf),
+% Abschnitt 3.2, erlutert, setzt man Package-Namen (sofern es dafr
+% nicht ein eigenes Logo gibt) blicherweise in '\textsf{}' (die
+% serifenlose Schrift der Klasse). Ich bevorzuge einen sprechenderen
+% Namen, daher gibt es jetzt '\pack{pauldoc}' fr \pack{pauldoc}.
+%
+% \DescribeMacro{\includeLicense}
+% '\includeLicense' bindet die eventuell im \TeX-Suchpfad zu findende
+% Lizenz (LPPL) ein. Dies ergibt -- je nach dem, ob 'section' oder
+% 'chapter' als Option gegeben wurde -- ein neues Kapitel oder einen
+% neuen Abschnitt. Durch Neudefinition von\DescribeMacro{\lpplfilename}
+% '\lpplfilename' kann festgelegt werden, welche Datei zu verwenden
+% ist -- als Vorbgabewert ist die bei \LaTeX{} mitgelieferte Datei
+% \texttt{\lpplfilename} im Package festgelegt.
+%
+%
+% \DescribeMacro{\cmd}\DescribeMacro{\cs}
+% \DescribeMacro{\marg}\DescribeMacro{\oarg}\DescribeMacro{\parg}
+% Diese fnf Makros habe ich aus \pack{ltxdoc} kopiert, damit man sie
+% auch verwenden kann, wenn eine Doku mit einer anderen Klasse formatiert
+% wird (wie bei meiner \pack{alg-script}-Klasse). (Sie sind so formatiert,
+% dass eine andere Definition immer vorgeht.)
+%
+% '\cmd'\marg{makro} formatiert einen Makronamen. '\cmd{\bla}' ergibt
+% \cmd{\bla}. (Sollte der erste Buchstabe kein '\' sein, wird er
+% damit ersetzt: '\cmd{abc}' ergibt \cmd{abc}.)
+% '\cs'\marg{makro} tut das gleiche -- hier wird allerdings der '\' noch
+% angefgt. Falls '\cmd' mal nicht geht, geht gelegentlich noch '\cs'.
+% '\cs{bla}' ergibt \cs{bla}.
+%
+% '\marg{text}' gibt \marg{text} aus. Die Abkrzung steht fr
+% "`mandatory argument"'.
+% '\oarg{text}' ergibt \oarg{text} ("`optional argument"').
+% '\parg{text}' ergibt \parg{text} ("`picture mode argument"').
+%
+%
+% \StopEventually{\appendix\PrintChanges\PrintIndex}
+%
+% \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 \~}
+%
+% \section{Implementation}
+%
+% \begin{macrocode}
+%<*package>
+% \end{macrocode}
+%
+% \subsection{Package-Optionen}
+%
+% \begin{option}{utf8}
+% \changes{v0.5}{2009/11/03}{Parameter fr die Kodierung, wird an
+% \pack{inputenc} weitergegeben.}
+% \begin{option}{latin1}
+% \changes{v0.5}{2009/11/03}{Parameter fr die Kodierung, wird an
+% \pack{inputenc} weitergegeben.}
+% \begin{macro}{\pauldoc@ienc}
+% Mi der Option 'utf8' bzw. 'latin1' whle ich die Kodierung der
+% Dokumentation aus. 'latin1' ist der Default.
+% Die Optionen selbst merken sich ihren Wert einfach in der Variable
+% '\pauldoc@ienc'.
+% \begin{macrocode}
+\newcommand*\pauldoc@ienc{}
+\DeclareOption{utf8}{
+ \def\pauldoc@ienc{utf8}
+}
+\DeclareOption{latin1}{
+ \def\pauldoc@ienc{latin1}
+}
+\ExecuteOptions{latin1}
+% \end{macrocode}
+% \end{macro}
+% \end{option}
+% \end{option}
+%
+% \begin{option}{chapter}
+% '\chapter' fr die Index-berschrift.
+% \begin{macrocode}
+\DeclareOption{chapter}{
+ \let\pauldoc@indexsec=\chapter
+}
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{section}
+% '\section' fr die Index-berschrift.
+% \begin{macrocode}
+\DeclareOption{section}{
+ \let\pauldoc@indexsec=\section
+}
+% \end{macrocode}
+% \end{option}
+%
+% \begin{macro}{\pauldoc@indexsec}
+% Wir definieren noch '\pauldoc@indexsec', rufen dann
+% die Vorgabeoption 'section' auf (welche das gleich neu definiert)
+% und verarbeiten die gegebenen Optionen.
+% \begin{macrocode}
+\newcommand*{\pauldoc@indexsec}{}
+\ExecuteOptions{section}
+\ProcessOptions\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{geladene Pakete}
+%
+% Wir laden das Paket \pack{inputenc} mit Option 'latin1' oder 'utf8' (je
+% nach Paketoption), um Sonderzeichen auch direkt eingeben zu knnen.
+%
+% \pack{babel} sorgt fr vernnftige deutsche Bezeichnungen.
+% \begin{macrocode}
+\RequirePackage[\pauldoc@ienc]{inputenc}
+\RequirePackage[ngerman]{babel}
+% \end{macrocode}
+%
+% \changes{v0.3}{2006/03/23}{Jetzt mit \cs{usepackage}\protect\linebreak[0]'[T1]{fontenc}'}
+% \pack{fontenc} mit Option 'T1' ldt das T1-Fontencoding, in dem
+% etwa Umlaute direkt aus der Schriftart genommen werden knnen,
+% anstatt sie mit \"{ } und den Vokalen a, o und u zusammenzusetzen.
+% Dies fhrt auch zu einer verbesserten Silbentrennung.
+% \begin{macrocode}
+\RequirePackage[T1]{fontenc}
+% \end{macrocode}
+%
+% \subsection{Diverse Einstellungen}
+%
+% Wir wollen natrlich in der Doku Querverweise haben,
+% die nderungen registrieren (fr eine entsprechende Liste)
+% und im Index mit Zeilennummern arbeiten. Quelltext in der Doku
+% wollen wir mit \verb|'| markieren.
+% \begin{macrocode}
+\EnableCrossrefs
+\RecordChanges
+\CodelineIndex
+\AtBeginDocument{\MakeShortVerb{\'}\selectlanguage{ngerman}}
+% \end{macrocode}
+% Auerdem sollten Index und nderungsliste auf deutsch beschriftet
+% werden. Wie benutzen hier fr die berschrift '\@pauldoc@indexsec', was
+% entweder '\section' oder '\chapter' ist.
+% \changes{v0.5}{2009/11/01}{ $\Rightarrow$ '\"A' in
+% "`Liste der nderungen"', und entsprechend fr "`Schrggedruckte"'}
+% \begin{macrocode}
+\renewcommand{\generalname}{Allgemein}
+
+\GlossaryPrologue{\pauldoc@indexsec{Liste der \"Anderungen}}
+
+\IndexPrologue{
+
+ \pauldoc@indexsec{Index}
+
+ Schr\"aggedruckte Nummern verweisen auf die Seite, auf der der
+ Eintrag beschrieben ist, unterstrichene Nummern zeigen auf die
+ Zeilennummer der Definition, sonstige Zahlen auf die Zeilennummer
+ einer Verwendung.
+
+ }
+% \end{macrocode}
+% Der Index bekommt nur zwei statt sonst drei Spalten (wir haben einige
+% ziemlich lange Makronamen).
+% \begin{macrocode}
+ \setcounter{IndexColumns}{2}
+% \end{macrocode}
+%
+% \subsection{Neue oder genderte Makros}
+%
+% \subsubsection{Bedingte Anweisungen}
+% \begin{macro}{\ifReferenceExists}\marg{label}\marg{then}\marg{else}
+%
+% '\ifReferenceExists' prft einfach, ob das Makro '\r@'\meta{label}
+% (dort wird die Referenz auf das Label gespeichert), existiert, und
+% wertet entsprechend \meta{then} oder \meta{else} aus.
+% \begin{macrocode}
+\newcommand*{\ifReferenceExists}[3]
+{%
+ \@ifundefined{r@#1}{#3}{#2}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Packagenamen}
+% \begin{macro}{\pack}
+% Um Packagenamen wie \pack{pauldoc} vernnftig
+% auszeichnen zu knnen, dieser Befehl.
+% \begin{macrocode}
+ \newcommand*{\pack}{\textsf}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Logos}
+%
+% \begin{macro}{\eTeX}
+% \changes{v0.4}{2006/04/02}{Neu.}
+% Aus 'etex.sty' geklaut -- das \eTeX-Logo.
+% \begin{macrocode}
+\newcommand*\eTeX{$\m@th\varepsilon$-\TeX}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Lizenz}
+%
+% \begin{macro}{\includeLicense}
+% Die Lizenz wird nur eingelesen, wenn sie auch
+% gefunden wird. Dafr wird der Dateiname,
+% welcher in '\lpplfilename' steht, eingebunden.
+% \begin{macrocode}
+ \newcommand*{\includeLicense} {
+ \IfFileExists{\lpplfilename}{%
+% \end{macrocode}
+% Zunchst stellen wir die Sprache um (aber nur Silbentrennung etc.,
+% keine Namen), mit dem passenden \pack{babel}-Befehl.
+% \begin{macrocode}
+ \begin{otherlanguage*}{english}
+% \end{macrocode}
+% \changes{v0.2}{2006/02/14}{Verwendung einer neuen Version der
+% LPPL macht Workarounds unntig.}
+% Um die Lizenz als '\chapter' einzubinden und dann Referenzen
+% darauf im Text verwenden zu knnen, waren mit der \LaTeX-Version
+% vom 13. Januar 2006 einige Verrenkungen notwendig -- siehe unten.
+%
+% Am 10. Februar habe ich einen Vorschlag zur Verbesserung
+% an die LaTeX-Bug-Liste geschickt, das wurde positiv aufgenommen.%
+% \footnote{Siehe \texttt{http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=latex/3839}.}
+% Ich habe dann von eine verbesserte Version von Frank Mittelbach bekommen,
+% die inzwischen auch verffentlicht wurde.
+%
+% Wir wollen die Abschnitte der Lizenz auch nummeriert
+% (und im Inhaltsverzeichnis) haben, deswegen die Versionen
+% ohne '*'. Falls 'chapter'
+% als Package-Option angegeben wurde, schieben wir auerdem
+% alles eine Ebene hher.
+% \begin{macrocode}
+\ifx\pauldoc@indexsec\chapter
+ \providecommand*{\LPPLsection}{\chapter}
+ \providecommand*{\LPPLsubsection}{\section}
+ \providecommand*{\LPPLsubsubsection}{\subsection}
+ \providecommand*{\LPPLparagraph}{\subsubsection}
+\else
+ \providecommand*{\LPPLsection}{\section}
+ \providecommand*{\LPPLsubsection}{\subsection}
+ \providecommand*{\LPPLsubsubsection}{\subsubsection}
+ \providecommand*{\LPPLparagraph}{\paragraph}
+\fi
+% \end{macrocode}
+%
+% Der folgende (auskommentierte) Code sowie die eingerckte
+% Dokumentation dazu ist mit der neuen
+% Version der Lizenz-Datei nicht mehr notwendig -- ich lasse
+% ihn mal trotzdem hier drin, zu Dokumentationszwecken.
+% \begin{quotation}\slshape
+% Die Lizenz-Datei (zumindest die mir vorliegende
+% Version) verwendet Unterteilungen ab '\section' --
+% falls in unserer Dokumentation '\chapter' verwendet
+% werden soll (d.h. die entsprechende Option gegeben
+% wurde), stellen wir einen Kapitelbeginn davor.
+%\begin{verbatim}
+% \ifx\pauldoc@indexsec\chapter
+% \chapter{Lizenz}%
+% \fi
+%\end{verbatim}
+% \begin{macro}{\section*}
+% \begin{macro}{\lizenz@oldsection@}
+% Damit wir aus dem Dokument auf die Lizenz referieren
+% knnen, definieren wir den Befehl '\section', welcher
+% zu Beginn der Lizenz verwendet wird, so um, dass er
+% ein Label setzt. (Weil wir uns in einer Gruppe
+% befinden (durch die 'otherlanguage'-Umgebung), bleibt
+% die nderung lokal.)
+%\begin{verbatim}
+% \newcommand{\lizenz@oldsection@}{}%
+% \let\lizenz@oldsection@\section\relax%
+% \def\section*{%
+% \label{lppl-chapter}%
+% \lizenz@oldsection@*%{##1}%
+% }%
+%\end{verbatim}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\emph}
+% Leider habe ich es nicht wirklich geschafft, den Befehl
+% so umzudefinieren, dass nach dem '\section*{}'-Befehl noch
+% ein Label kommt -- deswegen definiere ich stattdessen den
+% '\emph{}'-Befehl um, der zumindest in meiner Ausgabe der
+% LPPL direkt nach dem '\section*' kommt. Ein bser Hack,
+% ich wei \dots
+%\begin{verbatim}
+% \newcommand{\lizenz@oldemph}{}%
+% \let\lizenz@oldemph\emph%
+% \def\emph{%
+% \label{lppl-section}%
+% \let\emph\lizenz@oldemph%
+% \emph%
+% }%
+%\end{verbatim}
+% \end{macro}
+% \end{quotation}
+% Einige nderungen sind notwendig, um
+% die Lizenz einzulesen: '%' soll wieder
+% ein Kommentarzeichen sein, \verb|'| darf kein
+% Verbatim-Zeichen mehr sein, weil diese Zeichen
+% in der Lizenz-Datei natrlich nicht den
+% Doc-Konventionen entsprechend verwendet werden.
+% Dann lesen wir die Datei ein, und machen danach die nderungen
+% wieder rckgngig.
+% \begin{macrocode}
+ \DeleteShortVerb{\'}%
+ \MakePercentComment\input{\lpplfilename}\MakePercentIgnore%
+ \MakeShortVerb{\'}%
+% \end{macrocode}
+% ... und jetzt setzen wir die Sprache wieder zurck.
+% \begin{macrocode}
+ \end{otherlanguage*}
+% \end{macrocode}
+% Falls die Lizenz-Datei nicht gefunden wurde, geben wir nur eine passende Meldung aus.
+% \begin{macrocode}
+ }{%
+ \typeout{^^J%
+ ^^J%
+ Die Datei \lpplfilename{} wurde nicht gefunden.^^J%
+ Schade, da wird die Lizenz eben nicht eingebunden.^^J%
+ ^^J%
+ }%
+ }%
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\lpplfilename}
+% \changes{v0.2}{2006/02/14}{Dateiname von
+% 'lppl-1-3b.tex' nach 'lppl.tex' gendert.}
+% Ich definiere noch den Dateinamen der Lizenz, unter
+% der die meisten meiner Pakete stehen, zur Zeit ist
+% das die unter dem Namen \texttt{\lpplfilename}
+% verbreitete LPPL.
+% \begin{macrocode}
+\AtBeginDocument{%
+ \providecommand{\lpplfilename}{lppl.tex}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \subsubsection{Kopiert aus \pack{ltxdoc}}
+%
+% \changes{v0.1}{2006/02/04}{\cs{cs}, \cs{cmd}, \cs{marg}, \cs{oarg}, \cs{parg}
+% hinzugefgt aus
+% \pack{latxdoc}.}
+% Die folgenden vier Kommandos kopierte ich aus \pack{ltxdoc},
+% um sie auch verwenden zu knnen, wenn ich nicht diese Klasse
+% verwende. Durch die Verwendung von '\providecommand' gibt es
+% keine Konflikte, falls sie doch schon definiert sind.
+%
+% \begin{macro}{\cmd}
+% Formatiert einen Makronamen, '\cmd{\bla}' ergibt \cmd{\bla}.
+% (Sollte der erste Buchstabe kein '\' sein, wird er damit ersetzt.)
+% \begin{macrocode}
+\@ifundefined{cs}
+{%
+ \providecommand*{\cmd}[1]{\cs{\expandafter\cmd@to@cs\string#1}}
+ \def\cmd@to@cs#1#2{\char\number`#2\relax}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\cs}
+% Implementiert wurde '\cmd' mit '\cs' -- '\cs{bla}' ergibt \cs{bla}.
+% Dies funktioniert auch an einigen Stellen, wo '\cmd{\bla}' nicht
+% funktioniert.\footnote{Das steht jedenfalls in der \pack{ltxdoc}-Doku,
+% auch wenn ich das nicht ganz verstanden habe.}
+% \begin{macrocode}
+ \DeclareRobustCommand*\cs[1]{\texttt{\char`\\#1}}%
+}
+{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\marg}
+% |\marg{text}| gibt \marg{text} aus. Die Abkrzung steht fr
+% "`mandatory argument"'.
+% \begin{macrocode}
+\providecommand\marg[1]{%
+ {\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\oarg}
+% |\oarg{text}| ergibt \oarg{text} ("`optional argument"').
+% \begin{macrocode}
+\providecommand\oarg[1]{%
+ {\ttfamily[}\meta{#1}{\ttfamily]}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\parg}
+% |\parg{text}| ergibt \parg{text} ("`picture mode argument"').
+% \begin{macrocode}
+\providecommand\parg[1]{%
+ {\ttfamily(}\meta{#1}{\ttfamily)}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Bugfixes}
+% Inzwischen\footnote{mit dem \LaTeX-Beta-Release vom 3.Februar 2006 -- \pack{doc} hat das Datum 2006/02/02} ist der folgende Bug korrigiert, daher hier auskommentiert.
+% \begin{quote}
+% \begin{macro}{\SpecialEnvIndex}\slshape
+% \changes{v0.1}{2006/02/04}{Bugfix ist berflssig}
+% Aufgrund eines Bugs in \pack{doc}\footnote{Siehe
+% \texttt{http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=tools/3834} --
+% das ist (laut einer E-Mail, die ich als Antwort auf meinen Bug-Report
+% (am 2006/01/30) bekam) schon bekannt und im Code korrigiert, ein
+% Release steht bevor.} definiere ich hier
+% '\SpecialEnvIndex' neu, damit die environment-Verwendungen
+% genauso wie die environment-Definitionen einsortiert werden,
+% nicht als eigener Eintrag namens "`environments:\meta{name}"'.
+%\begin{verbatim}
+%\renewcommand*{\SpecialEnvIndex}[1]{\@bsphack
+% \index{#1\actualchar{\protect\ttfamily#1}
+% (environment)\encapchar usage}%
+% \index{environments:\levelchar#1\actualchar{%
+% \protect\ttfamily#1}\encapchar
+% usage}\@esphack}
+%\end{verbatim}
+% \end{macro}
+% \end{quote}
+%
+% \subsection{Ende}
+% \ldots und Schluss.
+% \begin{macrocode}
+\endinput
+%</package>
+% \end{macrocode}
+%
+% \Finale
+%\endinput
+
+
+%%% Folgendes ist nur fr meinen Editor.
+%%%
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: t
+%%% End:
diff --git a/macros/latex/contrib/pauldoc/pauldoc.ins b/macros/latex/contrib/pauldoc/pauldoc.ins
new file mode 100644
index 0000000000..acc03d261b
--- /dev/null
+++ b/macros/latex/contrib/pauldoc/pauldoc.ins
@@ -0,0 +1,60 @@
+%%
+%% (C) 2002-2006 Paul Ebermann - Installationsdatei zu pauldoc.dtx
+%%
+%% Der vollstndige Urheberrechtshinweis befindet sich
+%% am Begin von pauldoc.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 eingefgt.
+\preamble
+
+ ,--------------------------------------------------.
+ | Das ist eine generierte Datei. |
+ | |
+ | (c) 2005-2006 Paul Ebermann. |
+ '--------------------------------------------------'
+
+\endpreamble
+
+
+\generate{\file{pauldoc.sty}{\from{pauldoc.dtx}{package}}}
+
+\Msg{#######################}
+\Msg{# }
+\Msg{# Um die Installation zu beenden, }
+\Msg{# mssen Sie die folgenden Dateien }
+\Msg{# in Ihrem TeX-Suchbaum unterbringen: }
+\Msg{# }
+\Msg{# pauldoc.sty }
+\Msg{# }
+\Msg{# Um eine Dokumentation zu erzeugen, }
+\Msg{# benutzen Sie }
+\Msg{# }
+\Msg{# latex pauldoc.sty }
+\Msg{# }
+\Msg{# Viel Spa }
+\Msg{# Paul Ebermann }
+\Msg{# }
+\Msg{#######################}
+
+\endbatchfile
+
+
+%%% Folgendes ist nur fr meinen Editor.
+%%%
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: t
+%%% End:
diff --git a/macros/latex/contrib/pauldoc/pauldoc.pdf b/macros/latex/contrib/pauldoc/pauldoc.pdf
new file mode 100644
index 0000000000..d139312e4e
--- /dev/null
+++ b/macros/latex/contrib/pauldoc/pauldoc.pdf
Binary files differ
diff --git a/macros/latex/contrib/pauldoc/pauldoc.sty b/macros/latex/contrib/pauldoc/pauldoc.sty
new file mode 100644
index 0000000000..b92b8956a7
--- /dev/null
+++ b/macros/latex/contrib/pauldoc/pauldoc.sty
@@ -0,0 +1,126 @@
+%%
+%% This is file `pauldoc.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% pauldoc.dtx (with options: `package')
+%%
+%% ,--------------------------------------------------.
+%% | Das ist eine generierte Datei. |
+%% | |
+%% | (c) 2005-2006 Paul Ebermann. |
+%% '--------------------------------------------------'
+%%
+%% (C) 2006-2009 Paul Ebermann
+%%
+%% Package pauldoc - Anpassungen fr doc fr Pauls Package-Dokus.
+%% Die Datei pauldoc.dtx sowie die dazugehrige
+%% pauldoc.ins sowie die damit generierte
+%% pauldoc.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
+%% spter (nach Wahl des Verwenders).
+%%
+%% Der 'maintenance-status' ist (zur Zeit) 'author-maintained'.
+%%
+%% Das heit u.a., die Dateien drfen 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{pauldoc}
+ [2009/11/06 v0.5 Pauls Anpassungen fuer doc (PE)]
+\newcommand*\pauldoc@ienc{}
+\DeclareOption{utf8}{
+ \def\pauldoc@ienc{utf8}
+}
+\DeclareOption{latin1}{
+ \def\pauldoc@ienc{latin1}
+}
+\ExecuteOptions{latin1}
+\DeclareOption{chapter}{
+ \let\pauldoc@indexsec=\chapter
+}
+\DeclareOption{section}{
+ \let\pauldoc@indexsec=\section
+}
+\newcommand*{\pauldoc@indexsec}{}
+\ExecuteOptions{section}
+\ProcessOptions\relax
+\RequirePackage[\pauldoc@ienc]{inputenc}
+\RequirePackage[ngerman]{babel}
+\RequirePackage[T1]{fontenc}
+\EnableCrossrefs
+\RecordChanges
+\CodelineIndex
+\AtBeginDocument{\MakeShortVerb{\'}\selectlanguage{ngerman}}
+\renewcommand{\generalname}{Allgemein}
+
+\GlossaryPrologue{\pauldoc@indexsec{Liste der \"Anderungen}}
+
+\IndexPrologue{
+
+ \pauldoc@indexsec{Index}
+
+ Schr\"aggedruckte Nummern verweisen auf die Seite, auf der der
+ Eintrag beschrieben ist, unterstrichene Nummern zeigen auf die
+ Zeilennummer der Definition, sonstige Zahlen auf die Zeilennummer
+ einer Verwendung.
+
+ }
+ \setcounter{IndexColumns}{2}
+\newcommand*{\ifReferenceExists}[3]
+{%
+ \@ifundefined{r@#1}{#3}{#2}%
+}
+ \newcommand*{\pack}{\textsf}
+\newcommand*\eTeX{$\m@th\varepsilon$-\TeX}
+ \newcommand*{\includeLicense} {
+ \IfFileExists{\lpplfilename}{%
+ \begin{otherlanguage*}{english}
+\ifx\pauldoc@indexsec\chapter
+ \providecommand*{\LPPLsection}{\chapter}
+ \providecommand*{\LPPLsubsection}{\section}
+ \providecommand*{\LPPLsubsubsection}{\subsection}
+ \providecommand*{\LPPLparagraph}{\subsubsection}
+\else
+ \providecommand*{\LPPLsection}{\section}
+ \providecommand*{\LPPLsubsection}{\subsection}
+ \providecommand*{\LPPLsubsubsection}{\subsubsection}
+ \providecommand*{\LPPLparagraph}{\paragraph}
+\fi
+ \DeleteShortVerb{\'}%
+ \MakePercentComment\input{\lpplfilename}\MakePercentIgnore%
+ \MakeShortVerb{\'}%
+ \end{otherlanguage*}
+ }{%
+ \typeout{^^J%
+ ^^J%
+ Die Datei \lpplfilename{} wurde nicht gefunden.^^J%
+ Schade, da wird die Lizenz eben nicht eingebunden.^^J%
+ ^^J%
+ }%
+ }%
+ }
+\AtBeginDocument{%
+ \providecommand{\lpplfilename}{lppl.tex}%
+}
+\@ifundefined{cs}
+{%
+ \providecommand*{\cmd}[1]{\cs{\expandafter\cmd@to@cs\string#1}}
+ \def\cmd@to@cs#1#2{\char\number`#2\relax}
+ \DeclareRobustCommand*\cs[1]{\texttt{\char`\\#1}}%
+}
+{}
+\providecommand\marg[1]{%
+ {\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}}
+\providecommand\oarg[1]{%
+ {\ttfamily[}\meta{#1}{\ttfamily]}}
+\providecommand\parg[1]{%
+ {\ttfamily(}\meta{#1}{\ttfamily)}}
+\endinput
+%%
+%% End of file `pauldoc.sty'.