diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-11 23:56:27 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-11 23:56:27 +0000 |
commit | d513b55dfc880b18997d7402690aa6db0918b021 (patch) | |
tree | 5518007a54b4712921e1b0bf17d00d425894ba96 /Master/texmf-dist | |
parent | f7970fb63a5bed2d7b0756d1ab933446990b56bb (diff) |
trunk/Master/texmf-dist/source/latex/protocol
git-svn-id: svn://tug.org/texlive/trunk@466 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r-- | Master/texmf-dist/source/latex/protocol/protocol.dtx | 370 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/protocol/protocol.ins | 60 |
2 files changed, 430 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/protocol/protocol.dtx b/Master/texmf-dist/source/latex/protocol/protocol.dtx new file mode 100644 index 00000000000..6dbea8a8c3a --- /dev/null +++ b/Master/texmf-dist/source/latex/protocol/protocol.dtx @@ -0,0 +1,370 @@ +% \iffalse Meta-Kommentar +% +% Copyright (C) 1997 Projektgruppe ACIT, Lehrstuhl VII, +% Fachbereich Informatik, Universit"at Dortmund +% 1997-1999 Thomas Leineweber (leineweb@ls6.cs.uni-dortmund.de) +% +% +% Dies ist der dokumentierte Makrokode zur Erzeugung und Dokumentation +% der LaTeX-Klasse `protocol'. +% \fi +% +% \CheckSum{278} +%% \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 \~} +% +% \title{\LaTeX-Dokumentklasse zur Erstellung von Sitzungs-Protokollen} +% \author{Thomas Leineweber} +% \maketitle +% \tableofcontents +% +% \section{Identifizierung und Dokumentation} +% +% Diese Dokumentklasse kann nur mit \LaTeXe\ benutzt werden. Deshalb +% wird sichergestellt, da\ss eine entsprechende Fehlermeldung ausgegeben +% wird, falls ein anderes \TeX-Format benutzt wird. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +% \end{macrocode} +% +% Nenne den Klassennamen und die Version. +% \begin{macrocode} +%<+protocol>\ProvidesClass{protocol} +%<+protocol> [1998/07/30 v1.7a +%<+protocol> LaTeX-Class fuer Sitzungs-Protokolle TL] +% \end{macrocode} +% +% +% Es gibt eine eigene Klasse um \LaTeXe-Klassen zu dokumentieren. +% \begin{macrocode} +%<*driver> +\documentclass[a4paper]{ltxdoc} +% \end{macrocode} +% Setze entsprechende Optionen. Die Zeilen sollen numeriert werden +% und der Index soll in die Zeilen verweisen. Au"serdem wird auf +% Deutsch dokumentiert. +% \begin{macrocode} +\CodelineNumbered +\CodelineIndex +\EnableCrossrefs +\RecordChanges +\setcounter{StandardModuleDepth}{1} +\usepackage{german} +\usepackage[T1]{fontenc} +% \end{macrocode} +% Alle Details sollen ausgegeben werden. +% \begin{macrocode} +\begin{document} +\DocInput{protocol.dtx} +\PrintIndex +\PrintChanges +\end{document} +%</driver> +% \end{macrocode} +% +% \changes{v1.0}{1997/06/08}{Erste Version.} +% \changes{v1.2}{1997/06/09}{Dokumentation berichtigt} +% \changes{v1.4}{1999/01/07}{Ab sofort kann auch der Name der +% Gruppe ge"andert werden} +% \changes{v1.5}{1999/01/22}{Die Klasse hei"st ab sofort protocol und +% ist fuer generische Protokolle gedacht.} +% \changes{v1.6}{1999/02/05}{"Anderungen von Norbert G"overt eingebaut.} +% \changes{v1.6a}{1999/02/19}{Versuch, die Befehlsnamen anzugleichen} +% \changes{v1.7}{1999/07/30}{Endg"ultige Befehlsnamen festgelegt} +% \iffalse +% Copyright (C) 1997 Projektgruppe ACIT, Universit"at Dortmund +% 1997-1999 Thomas Leineweber +% all rights reserved. +% \fi +% +% \StopEventually +% +% +% \section{Grundeinstellungen} +% +% Hier werden die einzelnen Optionen deklariert und an die Klasse article, +% auf der alles basiert weitergegeben. Ein paar Optionen werden einfach +% ausgeschaltet. +% \changes{v1.3}{1997/06/10}{Verschiedene Optionen d"urfen in dieser Klasse +% nicht benutzt werden.} +% Die Optionen a5paper, b5paper, twocolumn und titlepage sind f"ur +% diese Klasse nicht vorgesehen und werden deshalb abgefangen. +% \begin{macrocode} +\DeclareOption{a5paper} + {\ClassError{protocol}{Option `a5paper' not supported}{}} +\DeclareOption{b5paper} + {\ClassError{protocol}{Option `b5paper' not supported}{}} +\DeclareOption{twocolumn} + {\ClassError{protocol}{Option `twocolumn' not supported}{}} +\DeclareOption{titlepage} + {\ClassError{protocol}{Option `titlepage' not supported}{}} +% \end{macrocode} +% Alle anderen Optionen werden an die Klasse article weitergegeben. +% +% \begin{macrocode} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} +\ProcessOptions\relax +% \end{macrocode} +% +% Nun kann die Klasse article geladen werden. +% \changes{v1.1}{1997/06/09}{\cs{LoadClassWithOptions} durch \cs{LoadClass} +% ersetzt. Leider ist im PG-Pool noch eine verdammt alte \LaTeXe-Version. +% Die Optionen m"ussen noch angepa"st werden.} +% \changes{v1.3}{1997/06/10}{Der Befehl \cs{LoadClass} kann bleiben.} +% \begin{macrocode} +\LoadClass{article} +% \end{macrocode} +% +% \section{Layout} +% +% Zuerst werden ein paar zus"atzliche Befehle definiert, die einige +% Eigenschaften des Protokolls definieren. +% +% \subsection{Definitionen f"ur den Benutzer} +% +% \begin{macro}{\groupname} +% \changes{v1.4}{1998/01/07}{Neues Makro \cs{pgname}} +% \changes{v1.5}{1998/01/22}{\cs{pgname} in \cs{groupname} geaendert} +% \begin{macro}{\chair} +% \changes{v1.6a}{1999/02/19}{\cs{vorsitz} in \cs{chair} umbenannt} +% \begin{macro}{\writer} +% \changes{v1.6a}{1999/02/19}{\cs{protokoll} in \cs{writer} umbenannt} +% \begin{macro}{\date} +% \begin{macro}{\begintime} +% \changes{v1.6a}{1999/02/19}{\cs{beginn} in \cs{begintime} umbenannt} +% \begin{macro}{\endtime} +% \changes{v1.6}{1999/02/05}{Neues Makro \cs{ende}} +% \changes{v1.6a}{1999/02/19}{\cs{ende} in \cs{endtime} umbenannt} +% \begin{macro}{\nextdate} +% \begin{macro}{\nextplace} +% \changes{v1.6}{1999/02/05}{Neues Makro \cs{nextplace}} +% \begin{macro}{\nexttime} +% Die folgenden Deklarationen, die hier mit Beispielen angegeben werden, +% stellen Informationen "uber die Sitzung zur Verf"ugung. +% \begin{itemize} +% \item |\groupname{PG 296 -- ACIT}| : Nummer und/oder Name der +% Gruppe, deren Sitzung protokolliert wird. Ist auf jeden Fall zu setzen. +% \begin{macrocode} +\def\groupname#1{\gdef\@groupname{#1}} +% \end{macrocode} +% \item |\chair{Lothar Laber}| : gibt an, wer den Vorsitz in der +% Sitzung hatte. Mu"s definiert werden. +% \begin{macrocode} +\def\chair#1{\gdef\@chair{#1}} +% \end{macrocode} +% \item |\writer{Siggi Schreiber}| : Wer Protokoll gef"uhrt +% hat. Mu"s definiert werden. +% \begin{macrocode} +\def\writer#1{\gdef\@writer{#1}} +% \end{macrocode} +% \item |\date{10. Juni 1997}| : Das Datum der Sitzung. Hierf"ur wird die +% Standarddeklaration aus der Klasse article genommen. Wenn |\date| +% nicht deklariert wird, wird das aktuelle Datum genommen. +% \item |\begintime{08:30}| : Beginn der Sitzung. Mu"s ebenfalls +% gesetzt werden. +% \begin{macrocode} +\def\begintime#1{\gdef\@begintime{#1}} +% \end{macrocode} +% \item |\endtime{14:47}| : Ende der Sitzung. Mu"s auch +% gesetzt werden. +% \begin{macrocode} +\def\endtime#1{\gdef\@endtime{#1}} +% \end{macrocode} +% \item |\nextdate{17. Juni 1997}| : Datum der folgenden Sitzung. +% \begin{macrocode} +\def\nextdate#1{\gdef\@nextdate{#1}} +% \end{macrocode} +% \item |\nextplace{Raum 08/15 im Geb"aude 4711}| : Ort der folgenden +% Sitzung. +% \begin{macrocode} +\def\nextplace#1{\gdef\@nextplace{#1}} +% \end{macrocode} +% \item |\nexttime{08:30}| : Uhrzeit der n"achsten Sitzung. Dito. +% \begin{macrocode} +\def\nexttime#1{\gdef\@nexttime{#1}} +% \end{macrocode} +% \end{itemize} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \subsection{Interne Befehle zur Umsetzung} +% \begin{macro}{\@groupname} +% \changes{v1.4}{1998/01/07}{Neues Makro \cs{@pgname}} +% \changes{v1.5}{1998/01/22}{\cs{@pgname} in \cs{@groupname} geaendert} +% \begin{macro}{\@chairman} +% \begin{macro}{\@writer} +% \begin{macro}{\@nextdate} +% \begin{macro}{\@nextplace} +% \changes{v1.6}{1999/02/05}{Neues Makro \cs{@nextplace}} +% \begin{macro}{\@nexttime} +% \begin{macro}{\@begintime} +% \begin{macro}{\@endtime} +% \changes{v1.6}{1999/02/05}{Neues Makro \cs{@ende}} +% Dies sind die internen Makros, in denen die entsprechenden Werte +% gespeichert werden. Es wird sichergestellt, da"s eine Warnung ausgegeben +% wird, falls kein Wert eingegeben wird. Bei Standardwerten werden +% sie hier gesetzt. +% \begin{macrocode} +\def\@groupname{\ClassWarning{protocol}{No \noexpand\groupname given}} +\def\@chair{\ClassWarning{protocol}{No \noexpand\chair given}} +\def\@writer{\ClassWarning{protocol}{No \noexpand\writer given}} +\gdef\@nextdate{\ClassWarning{protocol}{No \noexpand\nextdate given}} +\gdef\@nextplace{\ClassWarning{protocol}{No \noexpand\nextplace given}} +\gdef\@nexttime{\ClassWarning{protocol}{No \noexpand\nexttime given}} +\gdef\@begintime{\ClassWarning{protocol}{No \noexpand\beginn given}} +\gdef\@endtime{\ClassWarning{protocol}{No \noexpand\endtime given}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% +% \subsection{Deklarationen zur Ausgabe der Daten} +% \begin{macro}{\makehead} +% \begin{macro}{\@makehead} +% Das Kommande |\makehead| sorgt daf"ur, da"s alle wichtigen +% Informationen zum Anfang des Dokumentes ausgegeben werden. Es wird mit +% |\AtBeginDocument| aufgerufen. Hier habe ich schamlos die Definition von +% |\maketitle| aus den Standard-Klassen kopiert und f"ur meine Zwecke +% mi"sbraucht. Dabei wird dann auch das Makro |\@makehead| +% aufgerufen. Am Ende werden die gebrauchten Makros wieder zur"uckgesetzt. +% \begin{macrocode} +\newcommand\makehead{\par + \begingroup + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% + \long\def\@makefntext##1{\parindent 1em\noindent + \hb@xt@1.8em{% + \hss\@textsuperscript{\normalfont\@thefnmark}}##1}% + \newpage + \global\@topnum\z@ % Prevents figures from going at top of page. + \@makehead + \thispagestyle{plain}\@thanks + \endgroup + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax + \global\let\makehead\relax + \global\let\@makehead\relax + \global\let\chairman\relax + \global\let\@chair\@empty + \global\let\writer\relax + \global\let\@writer\@empty + \global\let\begintime\relax + \global\let\@begintime\@empty + \global\let\endtime\relax + \global\let\@endtime\@empty + \global\let\groupname\relax + \global\let\@groupname\@empty +} +% \end{macrocode} +% Das Kommando |\@makehead| erzeugt nun den Titel selber. +% \begin{macrocode} +\def\@makehead{% + \newpage + \null + \vskip 2em% + \begin{center}% + \let \footnote \thanks + {\LARGE \@groupname \par}% + \vskip 1.5em% + {\large Protokoll der Sitzung vom \@date}% + \vskip 1em% + {\large + \lineskip .5em% + Sitzungsleitung: \@chair\\ + Protokollf\"uhrer: \@writer \par}% + \end{center}% + \par + \vskip 1.5em + \vskip 0.5cm{\noindent + \begin{tabular}{ll} + Beginn: & \@begintime\ Uhr \\ + Ende: & \@endtime\ Uhr \\ + \end{tabular}\par}\vskip 0.5cm} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@makefoot} +% Das Kommande |\@makefoot| stellt den Abschlu"s f"ur das Protokoll dar. Es +% formatiert eine \"Uberschrift und gibt die Daten f"ur die n"achste Sitzung +% an. Es wird implizit mit +% |\AtEndOfDocument| aufgerufen. +% \changes{v1.7a}{2002/04/23}{Wenn keine n\"achste Sitzung vereinbart wurde, schreibe dieses auch (Idee und Implementierung: Boris Majowski)} +% \begin{macrocode} +\newcommand{\@makefoot}{\ifx\nextdate\empty + \section*{N\"achste Sitzung} Die n\"achste Sitzung + findet am \@nextdate\ um \@nexttime\ Uhr statt. Ort:~\@nextplace. + \else + \section*{N\"achste Sitzung} + Es wurde keine n\"achste Sitzung vereinbart + \fi} +% \end{macrocode} +% \end{macro} +% +% \subsection{Die Umgebung Anwesende} +% +% \begin{environment}{Persons} +% Die Umgebung Anwesende stellt eine "Uberschrift f"ur die Anwesenheitsliste +% zur Verf"ugung. Daf"ur kann ein beliebiger Text in die Umgebung +% geschrieben werden. +% \begin{macrocode} +\newenvironment{Persons}{\section*{Anwesenheit:}}{} +% \end{macrocode} +% \end{environment} +% +% \section{Abschlu"sdeklarationen} +% +% Zum Beginn soll |\makehead|, zum Ende |\makefoot| aufgerufen werden. +% \begin{macrocode} +\AtBeginDocument{\makehead} +\AtEndDocument{\@makefoot} +% \end{macrocode} +% +% F"ur eine bessere Lesbarkeit werden die Abs"atze ohne Einzug, aber +% mit einem etwas gr"o"seren Abstand formatiert. +% \begin{macrocode} +\parindent 0ex +\parskip 1.5ex +% \end{macrocode} +% +% +% +% \Finale +% +\endinput diff --git a/Master/texmf-dist/source/latex/protocol/protocol.ins b/Master/texmf-dist/source/latex/protocol/protocol.ins new file mode 100644 index 00000000000..c5c93716bd2 --- /dev/null +++ b/Master/texmf-dist/source/latex/protocol/protocol.ins @@ -0,0 +1,60 @@ +%% +%% This file will generate fast loadable files and documentation +%% driver files from the doc files in this package when run through +%% LaTeX or TeX. +%% +%% Copyright (C) 1997-1999 Thomas Leineweber +%% Lehrstuhl VI +%% Fachbereich Informatik +%% Universitaet Dortmund +%% +%% +%% This file is based upon the standard .ins-Files shipped with the +%% LaTeX-Distribution +%% +%% It may be distributed under the terms of the LaTeX Project Public +%% License, as described in lppl.txt in the base LaTeX distribution. +%% Either version 1.0 or, at your option, any later version. +%% +%% --------------- start of docstrip commands ------------------ +%% +\def\batchfile{protocol.ins} +\input docstrip.tex +\preamble + +This is a generated file. +Copyright (C) 1997-1999 Thomas Leineweber, University of Dortmund. + +This file may be distributed under the terms of the LaTeX Project Public +License, as described in lppl.txt in the base LaTeX distribution. +Either version 1.0 or, at your option, any later version. + +For error reports in case of UNCHANGED versions see the readme file. + +Please do not request updates from me directly. Distribution is +done through the Comprehensive TeX Archive Network (CTAN). + +\endpreamble +\keepsilent + +\Msg{*** Generating method style file ***} + +\generateFile{protocol.cls}{t}{ + \from{protocol.dtx}{protocol}} + +\ifToplevel{ +\Msg{***********************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* files into a directory searched by TeX:} +\Msg{*} +\Msg{* \space\space protocol.cls} +\Msg{*} +\Msg{* To produce the documentation run the file `protocol.dtx'} +\Msg{* through LaTeX.} +\Msg{*} +\Msg{* Happy TeXing} +\Msg{***********************************************************} +} + +\endinput |