diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/pauldoc |
Initial commit
Diffstat (limited to 'macros/latex/contrib/pauldoc')
-rw-r--r-- | macros/latex/contrib/pauldoc/README | 173 | ||||
-rw-r--r-- | macros/latex/contrib/pauldoc/pauldoc.dtx | 570 | ||||
-rw-r--r-- | macros/latex/contrib/pauldoc/pauldoc.ins | 60 | ||||
-rw-r--r-- | macros/latex/contrib/pauldoc/pauldoc.pdf | bin | 0 -> 159963 bytes | |||
-rw-r--r-- | macros/latex/contrib/pauldoc/pauldoc.sty | 126 |
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 Binary files differnew file mode 100644 index 0000000000..d139312e4e --- /dev/null +++ b/macros/latex/contrib/pauldoc/pauldoc.pdf 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'. |