From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/minutes/Overview.tex | 149 ++ macros/latex/contrib/minutes/Protokol.tex | 1001 ++++++++++ macros/latex/contrib/minutes/README.md | 64 + macros/latex/contrib/minutes/minutes.dtx | 2853 +++++++++++++++++++++++++++++ macros/latex/contrib/minutes/minutes.ins | 96 + macros/latex/contrib/minutes/minutes.pdf | Bin 0 -> 378874 bytes 6 files changed, 4163 insertions(+) create mode 100644 macros/latex/contrib/minutes/Overview.tex create mode 100644 macros/latex/contrib/minutes/Protokol.tex create mode 100644 macros/latex/contrib/minutes/README.md create mode 100644 macros/latex/contrib/minutes/minutes.dtx create mode 100644 macros/latex/contrib/minutes/minutes.ins create mode 100644 macros/latex/contrib/minutes/minutes.pdf (limited to 'macros/latex/contrib/minutes') diff --git a/macros/latex/contrib/minutes/Overview.tex b/macros/latex/contrib/minutes/Overview.tex new file mode 100644 index 0000000000..492130ac8d --- /dev/null +++ b/macros/latex/contrib/minutes/Overview.tex @@ -0,0 +1,149 @@ +% +% This file contains overview tables for minutes.sty +% This file is loaded by: +% - minutes.dtx +% - protokol.tex +% It can be translated on it's own (little help for writing minutes) +\newif\iflocal +\makeatletter +\@ifundefined{section}{\localtrue}{\localfalse} +\makeatother +\iflocal + \documentclass[a4paper,DIV11]{scrartcl} +\fi +% +\usepackage{url} +\usepackage{supertabular} +\IfFileExists{booktabs.sty}{\usepackage{booktabs}}{ +% \hrule gibt Fehler, wenn booktabs.sty nicht vorhanden + \let\toprule\hrule + \let\midrule\hrule + \let\bottomrule\hrule + \let\addlinespace\relax} +\newcommand*{\Lprog}[1]{\textsf {#1}} %typeset a program +\newcommand*{\Lpack}[2][\relax]{\textsf {#2\ifx\relax#1\else(#1)\fi}} % typeset a package +\newcommand*{\Lopt}[1]{\textsf {#1}} %typeset an option +\newcommand*{\Lenv}[1]{\texttt {#1}} %typeset an environment +\newcommand*{\file}[1]{\texttt {#1}} %typeset a file +\providecommand*{\cmd}[1]{\texttt {$\backslash$#1}} %typeset a command +% +\newcommand{\minOptions}{ +\label{tab:options} +\tablehead{\toprule +\textbf{Option} & \textbf{description} & \textbf{Beschreibung}\\\midrule +} +\tabletail{\bottomrule} +\begin{supertabular}{lll} +ListTitle & List-like header & Listartiger Titel\\ +TableTitle & Table-like header & Tabellenartiger Titel\\ +OneColumn & One column output & Einspaltige Ausgabe\\ +TwoColumn & Two column output & Zweispaltige Ausgabe\\ +CreateCld & create cld-File & Erzeugung einer cld-Datei\\ +8+3 & filenames 8+3 & 8+3 Dateinamen\\ +Fileinfo & information in lists & Ausgabe von Dateiinformationen\\ +Secret & Print secret parts & Ausgabe geheimer Teile\\ +ASCII & Prepared for ASCII & Ausgabe f\"ur reines ASCII\\ +\em{Other}& Option from \file{minutes.cfg} & Option aus \file{minutes.cfg}\\ +\end{supertabular} +} + +\newcommand{\minStyles}{ +\label{sec:minStyles} +Options for \cmd{minutesstyle}: +\begin{description} + \item[columns] 1,2,3\ldots + \item[header] list, table + \item[contents] true, false: Print list of topics + \item[vote] list, table +\end{description} +} + +\newcommand{\minCommands}{ +\label{tab:commands} +%\begin{center} +\def\Overview##1##2{\midrule\textbf{##1}&\textbf{##2}&\\} +\def\overview|##1|##2|##3|{\path|##1|&\path|##2|& \path|##3|\\} +\tablehead{\toprule +\textbf{english command} & \textbf{deutsches Kommando} & \textbf{Parameter}\\ +} +\tabletail{\bottomrule\multicolumn{3}{c}{ +[]=optional\hfill +\{\}=must be filled/Mussfeld\hfill +\{*\}= \{\} or */\{\} oder * +}\\} +\begin{supertabular}{lll} +\Overview{Minutes }{Protokoll} +\overview|\begin{Minutes} |\begin{Protokoll} | {Title/Titel}| +\overview|\maketitle |\protokollKopf | | +\overview|\foreignMinutes |\fremdProtokoll | | +\overview|\end{Minutes} |\end{Protokoll} | | +\Overview{Header data }{Kopfdaten} +\overview|\subtitle |\untertitel | {text}| +\overview|\moderation |\moderation | {Name}| %%= +\overview|\minutetaker |\protokollant | {Name}| +\overview|\participant |\teilnehmer | {Name,Name}| +\overview|\guest |\gaeste | {Name,Name}| +\overview|\minutesdate |\sitzungsdatum | {Date/Datum}| +\overview|\starttime |\sitzungsbeginn | {time/Zeit}| +\overview|\endtime |\sitzungsende | {time/Zeit}| +\overview|\location |\sitzungsort | {location/Ort}| +\overview|\cc |\verteiler | {Name, Name}| +\overview|\missing |\fehlend | [Name]{Name, Name}| +\overview|\missingExcused |\fehlendEntschuldigt | {Name, Name}| +\overview|\missingNoExcuse |\fehlendUnentschuldigt | {Name, Name}| +\Overview{sectioning }{Gliederung} +\overview|\topic |\topic | [short]{Title}| +\overview|\addtopic |\zusatztopic | [short]{Title}| +\overview|\subtopic |\subtopic | [short]{Title}| +\overview|\subsubtopic |\subsubtopic | [short]{Title}| +\overview|\minitopic |\minitopic | {Title}| +\overview|\newcols |\neueSpalte | [Title][1]| +\Overview{Tasks }{Aufgaben} +\overview|\task |\aufgabe | [done]{*who}[when]{what}| +\overview|\listoftasks |\aufgabenliste | [file]| +\Overview{Dates }{Termine} +\overview|\schedule |\termin | [cal]{when}[time]{what}[long]| +\Overview{Voting }{Abstimmungen} +\overview|\begin{Vote} |\begin{Abstimmung} | | +\overview|\vote |\abstimmung | {text}{yes}{no}{-}[text]| +\overview|\end{Vote} |\end{Abstimmung} | | +%\overview|\Onevote |\Einzelabstimmung | {text}{yes}{no}{-}[text]| +\Overview{Decisions }{Entscheidungen} +\overview|\decisionTheme |\beschlussThema | {ref}{Title}| +\overview|\decision |\beschluss | {*ref}{Text}[long Text]| +\overview|\listofdecisions |\beschlussliste | | +\Overview{Argumentations }{Argumentationen} +\overview|\begin{Argumentation}|\begin{Argumentation} | | +\overview|\pro |\pro | | +\overview|\Pro |\Pro | | +\overview|\contra |\contra | | +\overview|\Contra |\Contra | | +\overview|\result |\ergebnis | | +\overview|\end{Argumentation} |\end{Argumentation} | | +\overview|\begin{Opinions} |\begin{Meinungen} | | +\overview|\end{Opinions} |\end{Meinungen} | | +\overview|\opinion |\meinung | {who}{what}| +\Overview{Versions }{Versionen} +\overview|\begin{Secret} |\begin{Geheim} | | +\overview|\end{Secret} |\end{Geheim} | | +\overview|\secret |\geheim | {text}| +\Overview{Attachments }{Anh\"ange} +\overview|\attachment |\anhang | [ref]{Title}{pages}| +\overview|\listofattachments|\anhangsliste | | +\overview|\postscript |\nachtrag | {text}| +\Overview{Other commands }{Sonstige Kommandos} +\overview|\inputminutes | | {file}| +\end{supertabular} +%\end{center} +} + +\iflocal +\else +\expandafter\endinput +\fi +\begin{document} +\section*{Options} +\minOptions +\section*{Commands} +\minCommands +\end{document} diff --git a/macros/latex/contrib/minutes/Protokol.tex b/macros/latex/contrib/minutes/Protokol.tex new file mode 100644 index 0000000000..9209079a3b --- /dev/null +++ b/macros/latex/contrib/minutes/Protokol.tex @@ -0,0 +1,1001 @@ +\documentclass[draft]{scrreprt} +\usepackage[ansinew]{inputenc} +\usepackage[german]{babel} +\IfFileExists{hyperref.sty}{\usepackage{hyperref}}{} +\IfFileExists{evntlist.sty}{\usepackage{evntlist}}{} +\usepackage{makeidx} +\usepackage{parskip} +\usepackage{xspace} +\usepackage[ListTitle,Secret]{minutes} +\IfFileExists{fixme.sty}{\usepackage{fixme}}{ + \providecommand{\fixme}[1]{\marginpar{Fixme: ##1}} + } + +\input{Overview}%Tabellen für minutes.dtx und protokol.tex + +\makeindex +\newcommand{\minmacro}[2]{%typeset english/german command + \def\xI{#1}\def\xII{#2}% + \texttt{\(\backslash\)#1% + \index{#1@\protect\(\protect\backslash\protect\)#1}% + \ifx\xI\xII\else\footnote{\texttt{\(\backslash\)#2}}% + \index{#2@\protect\(\protect\backslash\protect\)#2}% + \fi}\xspace +} +\newcommand{\minenv}[2]{%typeset english/german environment + \def\xI{#1}\def\xII{#2}% + \texttt{#1\ifx\xI\xII\else\footnote{#2}\index{#2}\fi}% + \index{#1}\xspace% +} + +\title{ + \LaTeXe\ für Vereinsmeier\\[1em] + \Lpack{Minutes.sty}\thanks{ + Download possible from CTAN + ftp.dante.de/macros/latex/contrib/supported/minutes/ + }} +\author{\\ + Version \minfileversion\ from \minfiledate\\~\\ + Knut Lickert\\ +% vorstand@koki-es.de\\ +% lickert@gemeinschaftsauto.de\\ + knut@lickert.net} + + +\begin{document} + +\maketitle + +\begin{abstract} + Mit \Lpack{minutes.sty} kann man Protokolle für Vereine o.ä. + setzen. Die Anleitung ist als Protokoll geschrieben und kann als + Beispiel dienen, wie ein Protokoll aussehen kann.\par + Einige Feature: + \begin{itemize} + \item Protokollkopf per Optionen wählbar + \item Unterstützung von Aufgaben (wer wann was machen muss, und + wann es erledigt wurde, generierte Liste der offenen Aufgaben. + \item Anhänge + \item Terminverwaltung mit Unterstützung von \Lpack{calendar.sty} + \item Unterschiedliche Dokumentversionen (`intern') + \item Makros für Abstimmungen und Entscheidungen + \end{itemize} + +\vfill\vfill +\hfill +\parbox{0.66\linewidth}{ +% Extract from a dictionary/Auszug aus dem Wörterbuch\par +\scriptsize +\textbf{Protokoll, n -s/-e} +\begin{enumerate} + \item \emph{Adm: etc:} written record; minutes (of a meeting etc.); + \textbf{(das) P. führen,} to take the minutes; + \textbf{polizeiliches P.,} police report; + \textbf{etwas zu P. geben/nehmen,} to make/take down a statement. + \item \emph{(Zeremoniell)} (diplomatic) protocol. + \textbf{Protokoll abfassen,} to draft the minutes. + \textbf{im Protokoll vermerkt sein,} to stand on record. +\end{enumerate} +}\vfill +\end{abstract} + +\tableofcontents +\begin{Minutes}{Übersichtstabellen} +\maketitle +%%------------------------------------------- +\topic{Deutsch versus Englisch}\label{sec:DtVsEn} +Nicht jeder kann englisch. Mit diesem Paket kann man Protokolle +auch mit deutschen Kommandos schreiben. Die Verwendung der +deutschen Makros hat keinen Einfluss auf Aussehen oder Parameter. + +Im Text sind die englischen Kommandos aufgeführt, als Fußnoten +sind jeweils die deutschen Aliase vermerkt. Zur Übersicht siehe +dazu Tabelle~\ref{tab:commands}. + +\topic{Optionen von \Lpack{Minutes.sty}} +\minOptions +\topic{Stilparameter von \Lpack{Minutes.sty}} +\minStyles +\topic{Kommandos von \Lpack{Minutes.sty}} +\minCommands +\end{Minutes} + +\begin{Minutes}{Die Gebrauchsanweisung} +\subtitle{Diese Gebrauchsanweisung ist als Protokoll + mit \Lpack{Minutes.sty} geschrieben} +\moderation{Miraculix} +\minutetaker{Processus} +\participant{Asterix, Obelix, Majestix, Miraculix} +\guest{Nixalsverduss} +\missing[Troubadix (gefesselt)]{} +\minutesdate{27. Mai 53 v. Chr.} +\starttime{18:00} +\endtime{24:00} +\location{Gallien} +\cc{Cäsar, Cleopatra} +\maketitle + +\topic{Das Paket laden} +Das Paket wird mit +\begin{verbatim} +\usepackage{minutes} +\end{verbatim} +geladen. + +Als Klasse sollte jede Standardklasse gehen (Ich verwende +\Lpack{scrreprt} bzw.\ \Lpack{scrartcl}, neuerdings \Lpack{refrep}). +Ein einzelnes Protokoll kann mit einer Article-artigen Klasse +geschrieben werden, für eine Sammlung mehrerer Protokolle bietet +sich eine book- oder report-artige Klassen an. + +Mit Article-artigen Klassen entspricht jedes Protokoll einem +\verb|\part*|, mit Report-artigen Klassen einem \verb|\chapter|. + +Jedes Protokoll erhält eine ausführliche Tagesordnung, für das +Gesamtdokument wird im Inhaltsverzeichnis eine gröbere Übersicht +erstellt. + +\subtopic{Stile} +Mit dem Befehl \cmd{minutesstyle} können verschiedene +Darstellungsstile gesetzt werden. Manche Stile sind auch als +Paketoption auswählbar. \cmd{minutesstyle} ist den Paketoptionen +vorzuziehen. + +\begin{verbatim} +\minutesstyle{ +% columns = {1}, + header = {list}, %or {table}, +% contents = {true}, %or {false} + vote = {list}, %or {table}, +} +\end{verbatim} +Im folgenden werden die verschiedenen Optionen erläutert. + +\minitopic{Spaltenanzahl} +Ein- bzw.\ mehrspaltige Ausgabe. Dieses Beispiel ist +\ifcase\value{columns}\or ein\or zwei\else mehr\fi spaltig. + +Die mehrspaltige Ausgabe beginnt für jeden Tagesordnungspunkt mit +einem neuen mehrspaltigen Abschnitt. Die Überschrift geht über +beide (oder mehr) Spalten. Näheres siehe +Abschnitt~\ref{sec:Spalten}. + +Standard ist einspaltige Ausgabe. + +\minitopic{Protokollkopf} +Als Protokollkopf steht ein listenartiger und ein tabellenartiger +Protokollkopf zur Ver"-fügung. + +Mit der Option \Lopt{contents} kann die Liste der +Tagesordnungspunkten an und ausgeschaltet werden. + + +\minitopic{Aussehen von Abstimmungen} +Abstimmungen (siehe Abschnitt~\ref{sec:Abstimmung}) mit +\minmacro{vote}{abstimmung} haben zwei Aussehen zur Verfügung. + +\begin{minipage}{0.45\textwidth} +\minutesstyle{vote={list}} +\vote{Abstimmungsstil "`list"'}123[Entscheidung] +\end{minipage} +\begin{minipage}{0.4\textwidth} +\minutesstyle{vote={table}} +\vote{Abstimmungsstil "`table"'}123[Entscheidung] +\end{minipage} + +\subtopic{Optionen} +Eine Übersicht aller Paketoptionen ist unter \ref{tab:options} zu +finden. Sofern eine Option hier nicht erläutert ist, ist es ein +Stil, der im vorigen Abschnitt erläutert ist. + +\minitopic{Secret} +Mit \Lpack{minutes.sty} ist es möglich eine öffentliche und +nicht-öffentliche Version\footnote{z.B. mit Details über +Gehaltsverhandlungen von Vereinsangestellten} zu erstellen. Mit +\Lopt{Secret} wird eine nicht öffentliche Version erstellt. +Nähere siehe unter Abschnitt \ref{sec:secret}. + +\minitopic{8+3} +\Lpack{minutes} erzeugt Dateinamen mit Erweiterungen größer drei Zeichen. +Die Option \Lopt{8+3} erzeugt Dateinamen der Länge 8+3 +(Um es genau zu nehmen nur +3. Die 8 für \verb|\jobname| wird vorausgesetzt). + +\minitopic{ASCII} +Vielfach werden Protokolle per eMail versendet. Falls man diese +Protokolle nicht als Anhang versenden will, sondern als reiner +Text bietet sich eine Nachbearbeitung mit \Lprog{dvi2tty} oder +\Lprog{pdf2txt} an. Verweise auf Seitennummern verlieren dann in +der Regel ihren Sinn. Die Option \Lopt{ASCII} unterdrückt diese +und definiert einige Befehle um. + +\minitopic{Fileinfo} +Die Option \Lopt{Fileinfo} bewirkt, dass die Zeilennummer in der +eine Aufgabe in der Quelldatei definiert wurde, in der Liste der +offenen Ausgaben ausgegeben wird. Ein erledigt setzen einer +Aufgabe wird so erleichtert, die Liste wird allerdings +überfrachtet mit Informationen. + +\minitopic{Vereinseigene Optionen} +In einem File \file{minutes.cfg} können vereinsspezifische +Optionen definiert werden, z.B.\ mit Vereinsname, Adresse\ldots + + +\topic{Ein Protokoll erstellen} +Ein Protokoll wird mit einer Umgebung \minenv{Minutes}{Protokoll} +definiert. Jedes Protokoll erhält einen Kopf mit Angabe von +Moderator, Protokollant, Teilnehmern\ldots. Dieser Kopf wird mit +\minmacro{maketitle}{protokollKopf} erzeugt. Das Makro ist zwingend. + +Vor \minmacro{maketitle}{protokollkopf} sollten die für den +Protokolltitel wichtigen Angaben gemacht werden: +\begin{itemize} + \item \minmacro{subtitle}{untertitel} Ein Untertitel + \item \minmacro{moderation}{moderation} Ein Moderator oder Sitzungsleiter. + \item \minmacro{minutetaker}{protokollant} Der Protokollant. + \item \minmacro{minutesdate}{sitzungsdatum} Datum der Sitzung + \item \minmacro{starttime}{sitzungsbeginn} Beginn der Sitzung + \item \minmacro{endtime}{sitzungsende} Ende der Sitzung + \item \minmacro{location}{sitzungsort} Ort der Sitzung + \item \minmacro{participant}{Teilnehmer} Die Teilnehmer. + \item \minmacro{missing}{abwesend} Nicht anwesende Personen.\par + Falls erwünscht kann zwischen entschuldigtem und + unentschuldigtem Fehlen unterschieden werden: + \begin{itemize} + \item \minmacro{missingExcused}{fehlendEntschuldigt} + Liste der fehlenden, aber entschuldigten Teilnehmer. + \item \minmacro{missingNoExcuse}{fehlendUnentschuldigt} + Fehlende Teilnehmer ohne Entschuldigung. + \item Alternativ ist \minmacro{missing}{fehlend} + mit einem optionalen Parameter für die + entschuldigten Teilnehmer möglich. + \item \minmacro{guest}{gaeste} Liste der Gäste. + \item \minmacro{cc}{verteiler} Der Verteiler dieses Protokolls + \end{itemize} +\end{itemize} +Jeder dieser Punkte kann, muss aber nicht angegeben werden. + +\newcols[Beispiel einer Minutes-Umgebung:][1] +\begin{quote} +\begin{verbatim} +\begin{Minutes}{Die Gebrauchsanweisung} +\subtitle{Diese Gebrauchsanweisung ...} +\moderation{Miraculix} +\minutetaker{Processus} +\participant{Asterix, ...} +\guest{Nixalsverduss} +\missing[Troubadix (gefesselt)]{} +\minutesdate{27. Mai 53 v. Chr.} +\starttime{18:00} +\endtime{24:00} +\location{Gallien} +\cc{Cäsar, Cleopatra} +\maketitle +... +\end{Minutes} +\end{verbatim} +\end{quote} +\newcols[] +Im Gesamtpaket liegen Beispiele für Protokolle in den Dateien +\file{SampleGE.tex} beziehungsweise \file{SampleEN.tex} vor (Wird mit +\file{minutes.ins} aus \file{minutes.dtx} erzeugt). Die Datei +\file{Sample.tex} erzeugt ein Beispiel für ein Protokoll. Diese +Datei kann auch zum Test mit anderen Paketen verwendet werden. + +Mit der Beispielsdatei \file{MinStyGd.tex} kann das Aussehen von +Protokollen zusammen mit verschiedenen Klassen ausprobiert werden. + +\topic{Tagesordnungspunkte} \label{Tagesordnungspunkte} +Verschiedene Tagesordnungspunkte werden mit +\minmacro{topic}{topic} definiert, Unterpunkte sind mit +\minmacro{subtopic}{subtopic} bzw.\ \minmacro{subsubtopic}{subsubtopic} +erreichbar. Mit \minmacro{minitopic}{minitopic} kann man eine +Hervorhebung außerhalb einer Ordnungshierarchie erreichen. + +Tagesordnungspunkte werden durch horizontale Striche abgetrennt. +Im zweispaltigen Modus (Option \Lopt{TwoColumn}) wird für jeden +Tagesordnungspunkt ein eigener zweispaltiger Abschnitt begonnen. +Unterabschnitte werden als normaler Text weitergeführt. + +\newcols[Neuer Block][3]% +\label{sec:Spalten} Mit \minmacro{newcols}{neueSpalte}[Text] kann +innerhalb eines Tagesordnungspunktes ein neuer Abschnitt begonnen +werden. Dieser Abschnitt erhält keinen eigenen Gliederungspunkt, +kann aber im optionalen Parameter einen Titel enthalten, der +wiederum ein +\verb|\subtopic| sein kann. + +Zusätzlich kann in einem zweiten optional Parameter +{\verb|\newcols[][1]|} die Spaltenzahl geändert werden. Ohne +diesen optionalen Parameter wird auf die im Dokument gewählte +Spaltenanzahl verwendet (\Lopt{TwoColumns}). + +Dieser Abschnitt wurde mit \verb|\newcols[...][3]| +eingeleitet. + +\newcols + +\addtopic{Außerordentlicher Tagesordnungspunkt} +Üblicherweise wird eine Tagesordnung mit einer Einladung +versendet. In diesem Paket wird die Tagesordnung aus dem Protokoll +generiert. Für die gleiche Reihenfolge in der Einladung und der +von \Lpack{minutes.sty} generierten Tagesordnung ist der Protokollant +verantwortlich. + +Ein zusätzlicher Tagesordnungspunkt kann mit +\minmacro{addtopic}{zusatztopic} definiert werden. +Dieser Tagesordnungspunkt wird mit einer eigenen Nummerierung in +die Tagesordnung über"-nommen. + +\subtopic{Unterabschnitt} +Werden zusätzliche \verb|\subtopic| definiert, folgen diese der +Nummerierung der mit \verb|\addtopic| definierten Abschnitte. + +\topic{Interne Daten}\label{sec:secret} + +Die Protokolle enthalten öffent"-liche und nicht"-öffentliche +Abschnitte, die je nach Bedarf getrennt übersetzt werden +können.\par Damit ist es möglich getrennte Versionen für internen +Gebrauch und für Ver"-öf"-fentlichungen zu machen. + +Interne Daten werden mit dem Befehl \minmacro{secret}{geheim} +eingegeben. Längere Bereiche werden in einer Umgebung +\minenv{Secret}{Geheim} geschachtelt. + +Bei gleichzeitiger Verwendung von mehrspaltiger Ausgabe und +geheimen Teilen kann es Probleme bei der Ausgabe geben ("`It is a +bug, not a feature"'). + +%%------------------------------------------- +\topic{Aufgaben} + +Mit dem Kommando \minmacro{task}{aufgabe} werden Aufgaben +vergeben. Das Kommando hat folgende Parameter: + \begin{itemize} + \item ~[optional] Datum der Erledigung.\par + Ist dieser Parameter nicht gesetzt, wird die Aufgabe in die + Liste aller offenen Aufgaben aufgenommen. Ist der Wert + verwendet, wird er zur Information als Fußnote ausgegeben. + \item Verantwortliche Person. Ein Stern besagt "`irgendjemand"' + und wird nicht ausgegeben. + \item ~[optional] Datum, an dem es erledigt werden muss. + \item Was eigentlich zu machen ist. + \end{itemize} + +So ergibt +\begin{verbatim} +\task[heute morgen erledigt]{% + Asterix}{Wildschwein jagen} +\task{Miraculix}[Bei Vollmond]{% + Misteln schneiden} +\task{Obelix}{% + Hinkelstein hauen} +\task*{Festessen vorbereiten} +\end{verbatim} +\task[heute morgen erledigt]{Asterix}{Wildschwein jagen} +\task{Miraculix}[Bei Vollmond]{Misteln schneiden} +\task{Obelix}{Hinkelstein hauen} +\task*{Festessen vorbereiten} + +Eine Liste mit offenen Aufgaben erhält man mit +\minmacro{listoftasks}{aufgabenliste} +(siehe Abschnitt \ref{minutes!tasks} auf Seite +\pageref{minutes!tasks}). Sollen die Aufgaben aus einem anderen +Protokollverzeichnis geholt werden, kann \verb|\listoftasks| +optional mit dem Namen der anderen Protokollsammlung versehen +werden (Beispiel: \verb|\listoftasks[Protokolle1999]|). + +\newcols[Ein Eintrag in der Aufgabenliste sieht folgendermassen aus:][1] +\noindent +\minutestask{Misteln schneiden}{\thesection}{Bei Vollmond}{% + Miraculix}{Protokolldatum}{Datei/Zeile}{\thepage} + +\newcols + +%%------------------------------------------- +\topic{Termine} +Termine werden mit der Anweisung \minmacro{schedule}{termin} +definiert. Der so definierte Termin wird ausgegeben und erzeugt +einen Eintrag in eine \file{minCld}-Datei zur weiteren Verwendung +mit \Lpack{calendar.sty}. + +\verb|\schedule| hat folgende Parameter: +\begin{enumerate} + \item (optional) Dateiname. + Mit diesem Parameter können Termine auf verschiedene Dateien + verteilt werden. + \item Datum im Format \texttt{YYYY/MM/DD} (Jahr/Monat/Tag) + \item (optional) Zeit im Format \texttt{hh:mm} oder \texttt{hh:mm-hh:mm} + \item Termin + \item (optional) Langtext zum Termin +\end{enumerate} + +Aus +\begin{verbatim} +\schedule{2000/06/02}[6:00]{Aufstehen} +\schedule{2000/06/02}[6:10]{Anziehen}[ + Erst Unterwäsche, + dann Hose und Hemd + ] +\end{verbatim} +wird +\schedule{2000/06/02}[6:00]{Aufstehen} +\schedule{2000/06/02}[6:10]{Anziehen}[ + Erst Unterwäsche, + dann Hose und Hemd + ] + +Das Datum muss im Format \texttt{JJJJ/MM/DD} eingeben werden +(Jahr/Monat/Tag). Die Ausgabe erfolgt analog der Ausgabe von +{\verb|\today|}. Diese strukturierte Eingabe erlaubt die Erzeugung +von Eingabedateien für das Paket \Lpack{calender.sty}. Das Paket +{\Lpack{calendar.sty}} erm{\"o}glicht die Erstellung von Kalendern +in verschiedenen Versionen. + +Eine {\file{cld}}-Datei für \Lpack{calender.sty} wird mit der +Option \Lopt{CreateCld} erzeugt. Die erzeugte Datei heißt wie das +Hauptdokument mit der Endung {\file{.cld}}. Nähere Informationen +zu \Lpack{calender.sty} ist unter +{\url{macros/latex/contrib/supported/calendar}} zu finden. + +% +% Offen! +% +Sollen verschiedene Dateien mit Kalenderdaten erzeugt werden, dann +muss jede Datei mit \verb|\prepareCld[Name]| erzeugt werden. Alle +mit \verb|\schedule[Name]..| definierten Termine werden in eine +Datei \file{Name.cld} geschrieben. Dieser optionale Parameter wird +in Version \minfileversion\ noch nicht unterstützt. + + +%%------------------------------------------- +\topic{Fremde Anhänge und Protokolle} +Nicht alle Dokumente und Protokolle werden von \LaTeX-Kennern +erstellt. Im \LaTeX-Umfeld gibt es viele Ansätze Konvertierungen +nach \LaTeX\ vorzunehmen. In \Lpack{minutes.sty} wird ein anderer +Weg gegangen. + +Fremde Protokolle und Diskussionspapiere werden als fremde Objekte +dem System bekanntgegeben, die Einordnung erfolgt manuell in das +ausgedruckte Dokument. + +\subtopic{Fremde Protokolle} +Fremde Protokolle werden mit dem Makro +\minmacro{foreignMinutes}{fremdProtokoll} dem System bekannt gemacht. +\verb|\foreignMinutes| ersetzt \verb|\maketitle| innerhalb +einer Minutes-Umgebung. Das Makro hat zwei Parameter. Eine +optionale Seitenzahl und eine nähere Beschreibung des +Protokolls. + +Ein dreiseitiges fremdes Protokoll wird also so eingegeben: +\begin{verbatim} + \begin{Minutes}{Protokoll vom 10.12.2000} + \minutetaker{Wer?} + \foreignMinutes[3]{Bitte einlegen} + \end{Minutes} +\end{verbatim} + +Es wird ein normaler Protokollkopf erzeugt, als Untertitel wird +der Verweis auf ein fremdes Protokoll ausgegeben. Soll das +Protokoll eingelegt werden, kann mit dem optionalen Parameter die +erforderliche Seitenzahl eingegeben werden. Die nächste Seite hat +dann eine erhöhte Seitennummer. + +Sollen einzelne Tagesordnungspunkte im Inhaltsverzeichnis +erscheinen, kann das gemacht werden. Bei langen Texten kann es in +Kombination mit einer Seitenzahl eine eigenwillige +Seitennnummerierung ergeben. + +\subtopic{Fremde Einlagen} +Anlagen zu einem Protokoll (Diskussionspapiere, Berechnungen aus +Tabellenkalkulationen\ldots) können innerhalb eines Protokolls mit +dem Makro \minmacro{attachment}{anhang} definiert werden. + +Jeder Anhang hat einen Titel und eine Seitenzahl. Optional kann +ein Verweis angegeben werden. Mit dem Makro +\verb|\attachment[verweis]{Anlage 1}{3}| wird der Text +\begin{quote} +\attachment[verweis]{Anlage 1}{3} +\end{quote} +erzeugt. + +Mit \verb|\ref{verweis}| kann auf die Anlage verwiesen +werden. Ohne den optionalen Parameter ist kein Verweis +möglich. + +Am Ende des Dokuments kann mit +\minmacro{listofattachments}{anhangsliste} eine Liste aller +Anhänge erstellt werden. Dieses Verfahren ermöglicht es, alle +Anhänge in der Reihenfolge ihres Auftreten abzuheften und in einer +Endfassung der Protokollsammlung anzuhängen. + +%%------------------------------------------- +\topic{Abstimmungen und Beschlüsse} + +\fixme{opinion} + +\subtopic{Argumentationen} + +Diskussionen und Argumentationen werden durch die Umgebung +\minenv{Argumentation}{Argumentation} unterstützt. Argumente +dafür können in einer mit \minmacro{pro}{pro}, bzw.\ +\minmacro{Pro}{Pro}, Argumente dagegen können mit +\minmacro{contra}{contra}, bzw.\ \minmacro{Contra}{Contra} +aufgezählt werden. Anmerkungen können mit \verb|\item| eingeleitet +werden. Ergebnisse sind mit \minmacro{result}{ergebnis} eingebbar. + +Die ergibt die folgende Argumentation das daneben stehende +Ergebnis. + +\begin{minipage}{0.4\textwidth} +\begin{verbatim} +\begin{Argumentation} +\pro ja +\Pro Ja! +\contra nein +\Contra Nein! +\item Anmerkung +\result Ergebnis +\end{Argumentation} +\end{verbatim} +\end{minipage} +\begin{minipage}{0.4\textwidth} +\begin{Argumentation} +\pro ja +\Pro Ja! +\contra nein +\Contra Nein! +\item Anmerkung +\result Ergebnis +\end{Argumentation} +\end{minipage} + +\subtopic{Abstimmungen}\label{sec:Abstimmung} +Mit der Umgebung \minenv{Vote}{Abstimmung} und dem Makro +\minmacro{vote}{abstimmung} steht eine Umgebung zum erstellen einer +"`Abstimmungsbox"' zur Verfügung. Eine einzelne Abstimmung erfolgt +mit dem Makro \minmacro{Onevote}{Einzelabstimmung} + +\verb|\vote| und \verb|\Onevote| haben beide die gleichen +Parameter: +\begin{enumerate} + \item Kurzfassung über was abgestimmt wird + \item Ja-Stimmen (optional ein Text davor) + \item Nein-Stimmen (optional ein Text davor) + \item Anzahl Enthaltungen (optional ein Text davor) + \item optional der Beschluss +\end{enumerate} + +So erzeugt: +\begin{verbatim} +\begin{Vote} +\vote{Soll XX Vorstand werden?}{15}{3}{5} +\vote{Soll YY Beisitzer werden?}{15}{3}{5} +\vote{Wahlannahme der Gewählten}{5}{-}{-}[Vorstand ist gewählt] +\end{Vote} +\end{verbatim} + +\begin{Vote} +\vote{Soll XX Vorstand werden?}{15}{3}{5} +\vote{Soll YY Beisitzer werden?}{15}{3}{5} +\vote{Wahlannahme der Gewählten}{5}{-}{-}[Vorstand ist gewählt] +\end{Vote} + +Das Aussehen der Abstimmungen ist in \cmd{minutesstyle} mit der +Option |vote = {list}| beziehungsweise |vote = {table}| +definierbar. + + +\subtopic{Beschlüsse} + +Dieser Abschnitt ist noch unter Vorbehalt. Die Zuordnung Beschluss +zu Beschlussthema ist noch nicht klar definiert, ich hoffe die +Schnitttstelle bleibt so, kann es aber nicht garantieren. + +Beschlussthemen müssen mit dem Makro +\minmacro{decisiontheme}{beschlussThema} definiert werden. Einzelne +Beschlüsse werden dann mit dem Makro +{\minmacro{decision}{beschluss}} definiert. +\minmacro{decision}{beschluss} verweist mit dem ersten +Parameter auf ein Beschlußthema, der zweite Parameter ist eine +Kurzbeschreibung des Beschluss. Optional ist in einem dritten +Parameter (in eckigen Klammern) ein Langtext möglich. + +Soll ein Entschluss nicht in eine Übersichtsliste, kann statt dem +Thema ein "`*"' verwendet werden. + +So ergibt: +\begin{verbatim} +\decisiontheme{Vorstand}{ + Zusammensetzung des Vorstands} +\decision{Vorstand}{Vorstand gewählt}[ + Gewählt sind ... +] +\decision*{Anderer Beschluss} +\end{verbatim} + +\decisiontheme{Vorstand}{Zusammensetzung des Vorstands} +\decision{Vorstand}{Vorstand ist gewählt}[ + Gewählt sind \ldots +] + +\decision*{Anderer Beschluss} + +Eine Liste aller Entscheidungen kann mit +\minmacro{listofdecisions}{beschlussListe} erstellt werden +(siehe Abschnitt~\ref{minutes!decision} auf Seite +{\pageref{minutes!decision}}. Ohne weitere Bearbeitung werden alle +Entscheidungen in der Reihenfolge ihres Auftretens protokolliert. +\end{Minutes} + +\begin{Minutes}{Einzelprotokolle versus Protokollsammlung} +\maketitle +\topic{Einzelprotokoll} +Wie Protokolle verwaltet werden können ist im Anhang +\ref{sec:ProtOrg} an einem Beispiel erläutert. + +\topic{Minutes ausprobieren} +Teil des Paketes sind die Dateien: +\begin{description} + \item[Sample.tex] + Eine Beispielsdatei mit einer kleinen Protokollsammlung. + \item[SampleEN.tex] + Ein Protokoll mit allen Kommandos die es in \Lpack{minutes.sty} + gibt. + \item[SampleDE.tex] Wie \Lpack{SampleEN.tex}, aber mit deutsche + Kommandos, siehe Abschnitt~\ref{sec:DtVsEn}. +\end{description} +Die Dateien sind dazu gedacht, Kompatibilitätsprobleme von +\Lpack{minutes.sty} zu prüfen. Hat man den Verdacht, das +\Lpack{minutes.sty} einen Fehler hat, bitte erst prüfen, ob +\Lpack{Sample.tex} funktioniert. Für mich dienen Sie auch als +Prüfung, ob der Style bei Weiterentwicklungen Fehler bekommen hat +(Torture-Test) . +\end{Minutes} + + +\begin{Minutes}{Ausblick und bekannte Bugs} +\maketitle +\topic{Dank} +Das Paket wird von mir selbst verwendet, ist folglich auch auf +meinen Bedarf zugeschnitten. Für Anforderungen anderer bin ich +prinzipiell offen und neugierig. + +Danken möchte ich besonders Peter Tillmann, Jörg Binder und +Sebastian Waschik, die mir Anregungen und Korrekturen zugesandt +haben. + +\topic{Fehlermeldungen} +\subtopic{Kalender} +\begin{verbatim} +! LaTeX Error: \begin{itemize} on input line 816 ended by +\end{eventlist}. +\end{verbatim} +Dieser Fehler tritt auf, wenn ein Terminkalender ausgegeben werden +soll, aber in dem entsprechenden Zeitraum kein Termin vorliegt. +Oder der Text wird erstmalig übersetzt und die Termindatei konnte +von \LaTeX\ noch nicht angelegt werden. + +\subtopic{Hyperref} +\begin{verbatim} +! Package minutes.sty Error: load hyperref.sty before minutes.sty. +\end{verbatim} +Um Querverweise für Tasks und Termine zu pflegen, muss +\Lpack{hyperref.sty} vor \Lpack{minutes.sty} geladen werden. Ist +dies nicht der Fall, wird dieser Fehler ausgegeben. + +\subtopic{Fremde Aufgabenlisten} +\begin{verbatim} +! Package minutes.sty Warning: foreign minTsk -> Check Hyper +\end{verbatim} +Werden fremde Aufgabenlisten geladen (\verb|\listoftasks[xx]|), so +muss das erzeugende Dokument ebenso wie das aktuelle Dokument +\Lpack{hyperref.sty} geladen haben (oder nicht). + +\topic{Bekannte Fehler}\label{sec:bugs} +Die Version, seit der der Fehler bekannt ist lautet \emph{Vx.x}. +\begin{itemize} + \item Ausgabefehler bei \Lopt{TwoColumn} und \Lenv{Secret} + (\emph{V1.4}) + \item Termine erhalten zwei :: (zumindest mit \Lopt{refrep}) + \item Die Tagesordnung ergibt bei langen Nummern schlechte Ausgaben (\emph{V1.4}). + Bei \verb|\addtopic| mit langen römischen Nummern oder bei + Verwendung von "`TOP"' ist der Fehler besonders auffallend. + Das ist ein "`Standardfehler"' von \LaTeX\ und in den FAQ + erwähnt. + \item Kalenderausgaben für \Lpack{calendar.sty} sind sehr zerbrechlich (\emph{V1.4}). + \item Schlechte Ausgabe in der Aufgabenliste bei Aufgaben mit Termin (\emph{1.3}) +\end{itemize} + +\topic{Zukunft} +Hier ein paar bekannte Entwicklungs"-wünsche und etwas +Zukunftsmusik: +\subtopic{Anhänge} +\begin{itemize} + \item Anhänge sollen auch auf eingebundene \LaTeX-Dokumente + mög"-lich sein. + \item Anhänge sollen auch pro Protokoll möglich sein, nicht nur + als Gesamtanhang. +\end{itemize} + +\subtopic{Termine} +Das Makros \minmacro{schedule}{termin} erzeugt eine Eingabe für +\Lpack{calendar.sty} +Diese Eingabe erlaubt leider noch keine Langtexte. + +\subtopic{Beschlusslisten} +Beschlusslisten bedürfen einer Überarbeitung. Es ist zwar +vorgesehen die Entscheidungen nach Themen zu gruppieren (siehe +\minmacro{decisiontheme}{beschlussThema}), aber die Gruppierung +müsste noch per Hand erledigt werden. Eine Lösung mit Glossar und +MakeIndex ist denkbar, aber von mir noch nicht durchdacht. + +{\minmacro{task}{aufgabe}} und \minmacro{schedule}{termin} +enthalten beide Daten (pl.\ Datum), reagieren aber unterschiedlich +(\minmacro{schedule}{termin} erwartet ISO-Eingabe, +\minmacro{task}{aufgabe} ist frei). Das soll zusammengeführt +werden. Wenn ISO-Angabe erfolgt Eintrag in Kalender, sonst nur +Textausgabe. + +%\subtopic{Tagesordnung und Inhaltsverzeichnis} +%{\verb|\topic|} ist eng verknüpft mit \verb|\section|, mit +%gemeinsamen Eintrag im Inhaltsverzeichnis. Die Protokolle sollten +%in dem Inhaltsverzeichnis getrennt werden. + +\subtopic{Aufgaben} +Die erledigte Aufgaben werden durch eine Fußnote gekennzeichnet. +Das soll per Option an- und ausschaltbar sein. + +\subtopic{TOP} +Im deutschen ist es üblich für Tagesordnungspunkte TOP zu +schreiben. Das ist zwar einstellbar, erzeugt aber schlecht +aussehende Einträge im Inhaltsverzeichnis. + +Der Text soll in Zukunft über \cmd{minutesstyle} definierbar sein. + +\end{Minutes} + +%\pagebreak +% \begin{Minutes}{Protokoll vom 10.12.2000} +% \minutetaker{Wer?} +% \foreignMinutes[3]{Bitte einlegen} +% \end{Minutes} +%\pagebreak + +\part{Anhänge} +\appendix +\chapter{Durch minutes.sty erzeugte Anhänge} +\section{Entscheidungen} +\label{minutes!decision} +\listofdecisions +\section{Offene Aufgaben} +\label{minutes!tasks} +\listoftasks +\section{Terminübersicht} +Zur Erzeugung einer Terminübersicht wird das Packet +{\Lpack{evntlist}} aus dem Calendar-Packet genutzt. +{\Lpack{monthly}} oder andere Style aus dem Packet können ebenso +genutzt werden. Mehr über {\Lpack{calendar}} auf dem CTAN unter +{\url{macros/latex/contrib/supported/calendar}}. + +\label{minutes!date} +\makeatletter +\@ifundefined{evntlist}{ +Das Paket \Lpack{evntlist} fehlt, deshalb steht hier keine +Ereignisliste}{ +\prepareCal +\begin{eventlist}{}{minutes} +1 jun 2000 to 3 jun 2000 +\end{eventlist} +} +\makeatother + +\section{Anhänge} +\listofattachments% + +\chapter{Beispiel zur Organisation mehrerer Protokolle} +\label{sec:ProtOrg} +\begin{description} + \item[Verein] steht für einen Verein, Organisation, + Abteilung\ldots + \item[YYYYMMDD] Abkürzung für ein Datum (Jahr/Monat/Tag).\par + In dem Format werden die Dateien nach dem Datum sortiert, für + das sie stehen (siehe Beispiele unten).\par + Im Beispiel gehe ich vom Jahr 2001 aus. + \item Es gibt einen Ordner \path{Verein/Protokolle} oder + ähnliches. Alle Dateien in diesem Beispiel sind relativ zu + diesem Pfad. +\end{description} + +\section{Jahresprotokolle} +Die Datei \path{Verein2001.tex} enthält alle Protokolle eines +Jahres: +\begin{verbatim} + \documentclass{scrreprt} + \usepackage[German]{monthly} + \usepackage{minutes} + + \begin{document} + \title{Protokolle 2001 des Vereins e.V.} + \maketitle + + \inputminutes{2001/MV2001} + \inputminutes{2001/Verein20010412} + \inputminutes{2001/Verein20010419} + \inputminutes{2001/Verein20010426} + \inputminutes{2001/Verein20010503} + .... + %\inputminutes{2002/MV2002} + + \appendix + \chapter{Anhänge} + \section{Offene Aufgaben} + \subsection{Überhang aus 2000} + \listoftasks[Verein2000] + \subsection{Aktuell offen} + \listoftasks + + \section{Entscheidungen} + \listofdecisions + + \section{Liste der Anlagen} + \listofattachments + + \prepareCal + \section{Terminübersicht}%Ausgabe 12*Monatsübersicht + \begin{monthly}{firstday=1}{Verein2001} + 1 apr 2001 to 1 apr 2002 + \end{monthly} + + \printindex + \end{document} +\end{verbatim} + +\section{Einzelne Protokolle} +In dem Ordner 2001 sind alle Protokolle aus 2001. Jedes Protokoll +kommt in eine Datei \path{VereinYYYYMMDD.tex} +\begin{verbatim} + \begin{Minutes}{Protokoll vom DD.\ MM.\ YYYY} + ..... + \end{Minutes} +\end{verbatim} + +\section{Vorlage und aktuelles Protokoll} +Im Hauptordner ist eine Datei Vorlage.tex: +\begin{verbatim} + \documentclass[10pt]{scrartcl} + \usepackage{minutes} + \usepackage[German]{evntlist} + \begin{document} + %%%%%%% Block 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \inputminutes{2001/Verein20010628} + %\end{document}%Wenn keine Vorlage gewünscht + % + %%%%%%% Block 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \begin{Protokoll}{Vorlage zum ?? 2001} + ..... + \end{Protokoll} + % ----------------------- + %\end{document} + %%%%%%% Block 3 %%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \section{Offene Punkte} + \listoftasks[Verein1999]%aus alten Protokollen + \listoftasks[Verein2000]%aus alten Protokollen + \listoftasks[Verein2001] + \listoftasks + % ----------------------- + \section{Terminübersicht}\prepareCal + \begin{eventlist}{}{Verein2001,\jobname} + 01 sep 2001 to 1 dec 2001 + \end{eventlist} + \end{document} +\end{verbatim} +In der Vorlage gibt es grob drei Bereiche: +\begin{enumerate} + \item Aktuelle Protokoll hinzuladen. + \begin{verbatim} + \inputminutes{2001/Verein20010628} + \end{verbatim} + \item Vorlage für das nächste Protokoll\par + Darin immer mein Header mit + allen potentiell Anwesenden und die Punkte die demnächst anstehen. + \item Verwaltungsdaten: + \begin{itemize} + \item offene Aufgaben + \item Termine der nächsten zwei Monate + \end{itemize} +\end{enumerate} + +\section{Vor der Sitzung} +Vor einer Sitzung wird die Vorlage gedruckt. Mit dabei ist damit: +\begin{itemize} + \item Das letzte Protokoll. + \item Tagesordnung + \item Termine der Zukunft, offene Aufgaben. +\end{itemize} + +\section{Nach der Sitzung} +Nach der Sitzung kopiere ich die Vorlage als neues Dokument +\path{2001/VereinYYYYMMDD}. In der neuen Datei wird alles +bis \verb+\begin{Minutes}+ und ab \verb+\end{Minutes}+ gelöscht. + +Übrig bleibt die Tagesordnung der Sitzung. Die wird umgeschrieben +in das Protokoll der Sitzung. Vieles ist schon fertig, sofern man +sich in der Sitzung an die Vorlage gehalten hat. Nicht +besprochenes wird gelöscht, Entschlüsse vermerkt\ldots + +In der Vorlage tausche ich das aktuelle Protokoll (hier +\path{\inputminutes{2001/Verein20010628}} gegen die neue Datei. In +der Vorlage entferne ich Besprochenes, fügen neue Punkte ein\ldots + +Übersetze ich die Vorlage erhalte ich: +\begin{itemize} + \item das aktuelle Protokoll + \item Tagesordnung der nächsten Sitzung + \item Termine der nächsten Zeit + \item offene Aufgaben +\end{itemize} +Diese Vorlage wird an die Teilnehmer versendet. + +In die Datei \path{Verein2001} wird das aktuelle Protokoll +eingefügt. + +Von Zeit zu Zeit sollten die offenen Aufgaben auf erledigtes +geprüft werden. Diese Aufgaben werden in dem jeweiligen Protokoll +als erledigt gekennzeichnet, anschließend wird \path{Verein2001} +neu übersetzt. + +\section{Jahresende} +Datei \path{Verein2001} übersetzen und versenden. + +Vorher sollte man noch einen genauen Blick auf die offenen +Aufgaben werfen. + + + +\chapter{OgFudA} +\minisec{Was ist OgFudA?} +Oft gefragte Fragen und deren Antworten. Auf gut neudeutsch auch +FAQ. + +\minisec{Ich hätte gerne ein "`TOP"' vor jedem Tagesordnungspunkt} +\begin{verbatim} +\makeatletter +\renewcommand{\min@toptext}{TOP}%Text before Topic +\makeatother +\end{verbatim} +Die Ausgabe ist aber schlecht, deshalb habe ich im Standard darauf +verzichtet. Siehe auch die FAQ der Dante zum Thema +Inhaltsverzeichnis. + +\minisec{Wie soll ich meine Protokolle organisieren} +Dem habe ich ein ganzer Abschnitt~\ref{sec:ProtOrg} gewidmet. + +\minisec{Was mache ich mit einer Teilnehmerliste?} +\index{Teilnehmerliste} +\verb+\participant{\attachement{Teilnehmerliste}{1}}+ + +\minisec{Ich hätte gerne einen anderen Dokumentkopf} +\begin{verbatim} +\makeatletter +\newcommand{\myHeadertype}{ + \minutes@titlesettrue + ...Meine Ausgabe des Titels.... +} +\makeatother +\begin{Minutes}{Protokoll} +\let\maketitle\myHeadertype +... +\maketitle +... +\end{verbatim} +\cmd{myHeadertype} muss man selbst definieren, als Vorlage kann +das zum Beispiel das Kommando \cmd{min@maketitleList} oder +\cmd{min@maketitleTable} dienen. Ist man der Meinung, der Kopf +verdient es als Erweiterung in \Lpack{minutes} aufgenommen zu +werden, bitte eine Kopie an mich, er kann dann als Kopf-Stil in +\cmd{minutesstyle} integriert werden. + +\printindex + +\end{document} +\endinputminutes diff --git a/macros/latex/contrib/minutes/README.md b/macros/latex/contrib/minutes/README.md new file mode 100644 index 0000000000..a9d15f7964 --- /dev/null +++ b/macros/latex/contrib/minutes/README.md @@ -0,0 +1,64 @@ +Name of contribution: minutes +Name and email: Knut Lickert +Location on CTAN: tex-archive/macros/latex/contrib/minutes + http://tex.lickert.net/packages/minutes/index.html +Summary description: Package for writing (collection of) minutes +German Information: Paket zum Erstellen von Protokollen + to take minutes = Protokoll schreiben + protocoll = diplomatische Protokoll +License type: Free (LaTeX Project Public License) + +Announcement text: +---------------------------------------------------------------------- +minutes.sty provides the creation of a collection of minutes. +Special features: +- Support of tasks (who, schedule, what, date of finishing), + possibility of creating a list of open tasks + inclusion of open tasks from other minutes ('open last year tasks') + (also possible as task.sty) +- Support of attachments +- Support of schedule dates (support of calendar.sty) +- Different versions (`secret parts') +- Macros for votes and decisions (list of decisions) + +The minutes package contains: +- minutes.dtx +- minutes.ins +- protokol.tex German description +- Overview.tex Include for minutes.dtx and protokol.tex + Also stand-alone document +- Tagesordnung.tex + A template for a "Mitgliederversammlung" +To run the examples, you need blindtext.sty. + +After running minutes.ins this package include: +- minutes.sty The style itself +- minutes.cfg A configuration file +- Sample.tex A file, including an English, Dutch and German minute +- SampleEN.tex An English minutes (loaded by Sample.tex) +- SampleDE.tex A German minutes (loaded by Sample.tex) +- SampleNL.tex A Dutch minutes (loaded by Sample.tex) +- MinStyGd.tex A file to check the behavior with other classes, + test different layouts... + +==================================== +Version 1.8b. +Solves some incompatibility with other packages. + +Version 1.8c: +*Minor corrections (space around -- at time) +*Corrected documentation (previous pdf was uncomplete) + +Version 1.8d (2009-12-04) +*Add Polish texts +*Correction French texts +*Correction in example file Protokol.tex (after error message in d.c.t.t.) +*Extend samples with attachments with label. + +Version 1.8e: +Minor corrections Polish + +Version 1.8f (2010-10-03/2016-10-01): +*corrections for optional minutes-title +*correction in texts (avoid unwanted spaces) +*Adaption version numbering in this readme diff --git a/macros/latex/contrib/minutes/minutes.dtx b/macros/latex/contrib/minutes/minutes.dtx new file mode 100644 index 0000000000..d4274fa04a --- /dev/null +++ b/macros/latex/contrib/minutes/minutes.dtx @@ -0,0 +1,2853 @@ +\def\minfileversion{V1.8f} %^^Aof minutes.sty +\def\minfiledate{2010/03/11} %^^Aof minutes.sty +% \CheckSum{2104} +%% +%% \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{\@,\@@par,\@beginparpenalty,\@empty} +% \DoNotIndex{\@flushglue,\@gobble,\@input} +% \DoNotIndex{\@makefnmark,\@makeother,\@maketitle} +% \DoNotIndex{\@namedef,\@ne,\@spaces,\@tempa} +% \DoNotIndex{\@tempb,\@tempswafalse,\@tempswatrue} +% \DoNotIndex{\@thanks,\@thefnmark,\@topnum} +% \DoNotIndex{\@@,\@elt,\@forloop,\@fortmp,\@gtempa,\@totalleftmargin} +% \DoNotIndex{\",\/,\@ifundefined,\@nil,\@verbatim,\@vobeyspaces} +% \DoNotIndex{\|,\~,\ ,\active,\advance,\aftergroup,\begingroup,\bgroup} +% \DoNotIndex{\mathcal,\csname,\documentstyle,\dospecials} +% \DoNotIndex{\egroup} +% \DoNotIndex{\else,\endcsname,\endgroup,\endinput,\endtrivlist} +% \DoNotIndex{\expandafter,\fi,\fnsymbol,\futurelet,\gdef,\global} +% \DoNotIndex{\hbox,\hss,\if,\if@inlabel,\if@tempswa,\if@twocolumn} +% \DoNotIndex{\ifcase} +% \DoNotIndex{\ifcat,\iffalse,\ifx,\ignorespaces,\index,\input,\item} +% \DoNotIndex{\jobname,\kern,\leavevmode,\leftskip,\let,\llap,\lower} +% \DoNotIndex{\m@ne,\next,\newpage,\nobreak,\noexpand,\nonfrenchspacing} +% \DoNotIndex{\obeylines,\or,\protect,\raggedleft,\rightskip,\rm,\sc} +% \DoNotIndex{\setbox,\setcounter,\small,\space,\string,\strut} +% \DoNotIndex{\strutbox} +% \DoNotIndex{\thefootnote,\thispagestyle,\topmargin,\trivlist,\tt} +% \DoNotIndex{\twocolumn,\typeout,\vss,\vtop,\xdef,\z@} +% \DoNotIndex{\,,\@bsphack,\@esphack,\@noligs,\@vobeyspaces,\@xverbatim} +% \DoNotIndex{\`,\catcode,\end,\escapechar,\frenchspacing,\glossary} +% \DoNotIndex{\hangindent,\hfil,\hfill,\hskip,\hspace,\ht,\it,\langle} +% \DoNotIndex{\leaders,\long,\makelabel,\marginpar,\markboth,\mathcode} +% \DoNotIndex{\mathsurround,\mbox,\newcount,\newdimen,\newskip} +% \DoNotIndex{\nopagebreak} +% \DoNotIndex{\parfillskip,\parindent,\parskip,\penalty,\raise,\rangle} +% \DoNotIndex{\section,\setlength,\TeX,\topsep,\underline,\unskip,\verb} +% \DoNotIndex{\vskip,\vspace,\widetilde,\\,\%,\@date,\@defpar} +% \DoNotIndex{\[,\{,\},\]} +% \DoNotIndex{\count@,\ifnum,\loop,\today,\uppercase,\uccode} +% \DoNotIndex{\baselineskip,\begin,\tw@} +% \DoNotIndex{\a,\b,\c,\d,\e,\f,\g,\h,\i,\j,\k,\l,\m,\n,\o,\p,\q} +% \DoNotIndex{\r,\s,\t,\u,\v,\w,\x,\y,\z,\A,\B,\C,\D,\E,\F,\G,\H} +% \DoNotIndex{\I,\J,\K,\L,\M,\N,\O,\P,\Q,\R,\S,\T,\U,\V,\W,\X,\Y,\Z} +% \DoNotIndex{\1,\2,\3,\4,\5,\6,\7,\8,\9,\0} +% \DoNotIndex{\!,\#,\$,\&,\',\(,\),\+,\.,\:,\;,\<,\=,\>,\?,\_} +% \DoNotIndex{\discretionary,\immediate,\makeatletter,\makeatother} +% \DoNotIndex{\meaning,\newenvironment,\par,\relax,\renewenvironment} +% \DoNotIndex{\repeat,\scriptsize,\selectfont,\the,\undefined} +% \DoNotIndex{\arabic,\do,\makeindex,\null,\number,\show,\write,\@ehc} +% \DoNotIndex{\@author,\@ehc,\@ifstar,\@sanitize,\@title,\everypar} +% \DoNotIndex{\if@minipage,\if@restonecol,\ifeof,\ifmmode} +% \DoNotIndex{\lccode,\newtoks,\onecolumn,\openin,\p@,\SelfDocumenting} +% \DoNotIndex{\settowidth,\@resetonecoltrue,\@resetonecolfalse,\bf} +% \DoNotIndex{\clearpage,\closein,\lowercase,\@inlabelfalse} +% \DoNotIndex{\selectfont,\mathcode,\newmathalphabet,\rmdefault} +% \DoNotIndex{\bfdefault} +% \DoNotIndex{\LaTeXe,\hline,\hrulefill,\@Roman,\addtocounter,\documentclass} +% \DoNotIndex{\footnotesize,\tiny,\em,\value,\@afterheading,\@afterindentfalse} +% \DoNotIndex{\filedate,\fileversion,\linewidth,\MessageBreak} +% \DoNotIndex{\newcommand,\newcounter,\pageref,\noindent,\newlength} +% \DoNotIndex{\renewcommand,\stepcounter} +% \DoNotIndex{\Lopt,\Lpack,\Lenv,\DTK} +% +% \iffalse +%<*driver> +\documentclass{ltxdoc} +\IfFileExists{hyperref.sty}{\usepackage{hyperref}}{} +\usepackage{makeidx} +\usepackage{url} +\input{Overview}%Tables for minutes.dtx and protokol.tex +\CodelineIndex +\makeindex +%\OnlyDescription %With it, no checksum +\begin{document} + \RecordChanges + \DocInput{minutes.dtx} +\end{document} +% +%<*package> +% \fi +% +% \title{ +% \LaTeXe\ for people in associations\\ +% \Lpack{Minutes.sty}\thanks{ +% Download possible from CTAN: +% www.ctan.org/tex-archive/macros/latex/contrib/minutes/ +% }} +% \author{\\ +% Version \minfileversion\ from \minfiledate\\~\\ +% Knut Lickert\\ +%^^A lickert@gemeinschaftsauto.de\\ +% knut@lickert.net\\ +% \url{http://tex.lickert.net/packages/minutes/index.html}} +% \maketitle +% +% \changes{V1.5b}{2000/12/02}{Separation of package and German description} +% +%\begin{abstract} +% +% With \Lpack{minutes.sty} you can write minutes for +% associations or similar organizations. +% +% Special features: +% \begin{itemize} +% \item you can choose different header +% \item Support of tasks (who, schedule, what, date of finishing), +% possibility of creating a list of open tasks +% \item Support of attachments +% \item Support of schedule dates (support of \Lpack{calendar.sty}) +% \item Different versions (`secret parts') +% \item Macros for votes and decisions (list of decisions) +% \end{itemize} +%\end{abstract} +% +% \tableofcontents +% +% \section{Some hints for \Lpack{minutes.sty}} +% \begin{itemize} +% \item There is no English description of the package up to now. +% Please refer the samples and the Style Guide. +% \item The file \file{Protokol.tex} contains a +% German description of the package. +% \item Try the difference of using \Lpack{scrartcl} and +% \Lpack{scrreprt}. +% \end{itemize} +% +% \subsection{Options} +% \minOptions +% \minStyles +% \subsection{Commands} +% \minCommands +% +% \subsection{Bugs and wishes} +% \changes{V1.4b}{2000/08/09}{list of known bugs} +% Known bugs:\label{sec:bugs} +% \begin{itemize} +% \item Error with \Lopt{TwoColumn} and \Lenv{Secret} +% (\emph{V1.4}) +% \item Dates get two :: (\Lopt{refrep}) +% \item Long numbers in the list of topics create bad output (\emph{V1.4}). +% With \verb|\addtopic| it happen often (long roman Numbers) +% \item Calender \Lpack{calendar.sty} breaks easily (\emph{V1.4}). +% \item List of task with dates are printed bad (\emph{1.3}) +% \item |\task[\protect\url{xx}]| is wrong, |\task[ok \protect\url{xx}]| is ok. +% (\emph{V1.7}) +% \item polyglossia.sty is not supported. (\emph{V1.9}) +% A temporary solution (here for polish): Add \verb|\extraspolish| after you load minutes.sty. +% This solution will not work, when you change the language inside the document. +% \end{itemize} +% +% Issues for the future: +% \begin{itemize} +% \item Attachments with \LaTeX-Documents should be possible +% \item List of Attachments also for each minutes. +% \item The Macro \verb|\schedule| allows no long text +% \item List of decisions are not complete. Decisions should be arranged +% in groups (\verb|\decisiontheme|), but the grouping must be done +% manual. (makeglossary?) +% \item \verb|\task| and \verb|\schedule| contain both dates, +% but have different inputs. +% (\verb|\schedule| need input like yyyy/mm/dd, \verb|\task| is free. +% There should be one behaviour of both commands. +% \end{itemize} +% +%\iffalse +% +%<*sample> +%\fi +% \section{Samples}\label{sec:Samples} +% This samples contain all features of \Lpack{minutes.sty}. +% Can be used as a torture test for cooperation with classes and other packages. +% If you are using the calendar option you must test it with \Lpack{calendar.sty}. +% +% \subsection{Start a collection of minutes} +% You can use \Lpack{minutes} with \Lpack{report.cls} or +% \Lpack{article.cls} (or similar packets like \Lpack{scrarctl}). +% With \Lpack{article} each +% minutes is a \verb|\part*|, with \Lpack{book} a +% \verb|\chapter|. +% \begin{macrocode} +\documentclass{report} +%%\documentclass{article} +%%\documentclass{scrreprt} +%%\documentclass{scrarctl} +\usepackage[english,dutch,german]{babel} +\usepackage{minutes} + +%%\usepackage{Evntlist}%\usepackage{Calendar} +\title{Collection of minutes\\Protokollsammlung\\[1cm] +minutes.sty} +\author{\LaTeXe} +\minutesstyle{ +% columns = {1}, + header = {list}, %or {table}, + vote = {list}, %or {table}, + contents = {true}, %or {false} +} +\begin{document} +% \end{macrocode} +% You can create your own title and make a table of contents for +% the main topics of the minutes. +% \begin{macrocode} +\maketitle +\tableofcontents +% \end{macrocode} +% Here we load three samples. You can insert your minutes here. +% \begin{macrocode} +\selectlanguage{english} +\inputminutes{SampleEN}%A english minutes +\selectlanguage{german} +\inputminutes{SampleDE}%Ein deutsches Protokoll +\selectlanguage{dutch} +\inputminutes{SampleNL}%Nederlandse notulen +% \end{macrocode} +% +%\iffalse +% +%<*sampleEN> +%\fi +% \newcounter{SampleNo} +% \setcounter{SampleNo}{\value{CodelineNo}}%^^A reset line number after samples, style guide... +% \setcounter{CodelineNo}{0}%^^A reset line number after samples, style guide... +% +% \subsection{How to write a minutes} +% Here an example of the look of a minutes with all features of +% \Lpack{minutes.sty}. +% +% \subsubsection{Minutes with english macros} +% \begin{macrocode} +\begin{Minutes}{Title of the english minutes} +%%\subtitle{} +%%\moderation{} +%%\minutetaker{} +\participant{list of participants} +\missing[with excuse]{no excuse} +%%\missingExcused{} +%%\missingNoExcuse{} +\guest{guests} +\minutesdate{24. December 2000} +%%\starttime{} +%%\endtime{} +\location{Esslingen} +%%\cc{} +\maketitle + +\topic{Topic one}%<-- insert title of topic +\subtopic{Sub Topic to Topic one} +Text for the topic. + +\topic{Dates} +\schedule{2000/12/24}{Christmas eve} +\schedule{2000/12/24}[20:00]{distribution of presents} +\schedule*{2000/12/25}{Christmas day (without entry in calendar)} + +\topic{Tasks} +\task{Who}{Action} +\task*{Somebody has to do it} +\task*[today]{Somebody do it} +\task[done]{responsible}[yesterday]{Somebody did it} + +\newcols[][1]%because of a Bug +\begin{Secret} +\topic{Secret Topic} +This topic is secret and is printed with the option +\texttt{Secret}. +\end{Secret} +\subtopic{After secret topic} +\secret{small secret} +If this section is printed outside the section "secret", some +secret stuff is not printed. Check the option \texttt{Secret}. +\newcols + +\addtopic{Additional Topic} +\subtopic{subtopic} + +\topic{Attachments} +\attachment{Attachment with two pages}{2} + +\anhang[att:en]{Attachment with reference}{2} + +\topic{Decisions and votes} +\subtopic{Opinions and Argumentations} +\opinion{Herder}{Different Opinion} + +A discussion to the theme: +\begin{Opinions} +\item[Goethe] One opinion +\item[Schiller] Another opinion +\end{Opinions} + +Arguments can be discussed with pro and contra +\begin{Argumentation} +\pro reason for it +\Pro important reason for it +\contra reason against it +\Contra important reason against it +\item a comment +\result result +\end{Argumentation} + +\subtopic{A single vote} +\vote{Short voting}{1}{2}{3} + +And a single vote with decision:\par +\vote{Short voting}{1}{2}{3}[Decision] + +\subtopic{A couple of votes} +\begin{Vote} +\vote{Vote one}{1}{2}{3} +\vote{Vote two}{1}{2}{3}[decision] +\vote{Vote three}{1}{2}{3} +\end{Vote} + +\subtopic{Decisions} +\decisiontheme{Theme}{Theme for a decision} +\decision{Theme}{Decision} +\decision*{Decision without theme}[Long text for the decision] +\end{Minutes} +% \end{macrocode} +% +%\iffalse +% +%<*sampleDE> +%\fi +% \setcounter{CodelineNo}{0}%^^A reset line number for sampleDe +% +% \subsection{Minutes with german commands} +% Some of my german friends complaint about all the english commands +% they have to learn. They do not want to write \verb|\task|, they +% want to use the german word \verb|\aufgabe| for this. So here an +% example for this, a translation table is in +% section~\ref{tab:commands}. There is no difference between the +% german and the english commands, they can be mixed as you +% want.\footnote{Please check the remarks for secret} +% +% \begin{macrocode} +\begin{Protokoll}{Titel des deutschen Protokolls} +\untertitel{Untertitel} +\moderation{Moderator, Sitzungsleiter} +\protokollant{Protokollant} +\teilnehmer{Teilnehmer} +\gaeste{G\"aste} +\sitzungsdatum{25.\ Dezember 1999} +\sitzungsbeginn{10:00} +\sitzungsende{20:00} +\sitzungsort{Esslingen} +\verteiler{Vereinsmitglieder} +\fehlend[entschuldigt]{abwesend} +%%\fehlendEntschuldigt{} +%%\fehlendUnentschuldigt{} +\protokollKopf + +\topic{Top eins}%<-- hier Tagesordnungspunkt einfuegen +\subtopic{Unterpunkt zu Top eins}%<-- Unterpunkt +Text zum Tagesordnungspunkt. +%% +\topic{Termine und Aufgaben} +\subtopic{Termine} +\termin{2000/12/24}[10:00]{Heiliger Vormittag} +\termin{2000/12/24}{Heiligabend} +\termin{2000/12/24}[20:00]{Bescherung}[Ob meine W\"unsche erf\"ullt werden?] +\termin*{2000/12/25}{Weihnachten (ohne Kalendereintrag)} + +\topic{Aufgaben} +\aufgabe{Wer}{Was} +\aufgabe*{Jemand macht was} +\aufgabe*[Heute]{Jemand soll heute was machen} +\aufgabe[Erledigt]{Zust{\"a}ndig}[Gestern]{Jemand macht was} + +\newcols[][1]%notwendig wegen einem Fehler +\begin{Geheim} +\topic{Geheimer Punkt} +Dieser Text ist geheim und kann mit der Option \texttt{Secret} +ausgegeben werden. +\end{Geheim} + +\subtopic{Nach Geheimen Text} +Wenn dieser Abschnitt nicht im Hauptabschnitt "`Geheim"' liegt, +dann wurde die Ausgabe des geheimen Textes unterdr{\"u}ckt. +\geheim{Jetzt noch ein kleines Geheimnis} +\newcols + +\zusatztopic{Au{\ss}erordentlicher Tagesordnungspunkt} +\subtopic{Unterpunkt} + +\topic{Anh{\"a}nge} +\anhang{Anhang mit zwei Seiten}{2} + +\anhang[att:de]{Anhang mit Referenz}{2} + +\topic{Abstimmungen und Entscheidungen} +\subtopic{Meinungen und Argumentationen} +\meinung{Herder}{Abweichende Meinung zum Protokoll} + +Eine Diskussionsfolge: +\begin{Meinungen} +\item[Goethe] Eine Meinung +\item[Schiller] Eine andere Meinung +\end{Meinungen} + +Argumente k"onnen mit Pro und Contra geführt werden: +\begin{Argumentation} +\pro Grund daf"ur +\Pro wichtiger Grund daf"ur +\contra Grund dagegen +\Contra wichtiger Grund dagegen +\item Kommentar dazu +\ergebnis Ergebnis +\end{Argumentation} + +\subtopic{Einzelne Abstimmungen} +\abstimmung{Kurze Abstimmung}{1}{2}{3} + +Und noch eine Abstimmung mit Ergebnis:\par +\abstimmung{Kurze Abstimmung}{1}{2}{3}[Ergebnis] + +% +\subtopic{Mehrere Abstimmungen in Folge} +\begin{Abstimmung} +\abstimmung{Abstimmung eins}{1}{2}{3} +\abstimmung{Abstimmung zwei}{1}{2}{3}[Entscheidung] +\abstimmung{Abstimmung drei}{1}{2}{3} +\end{Abstimmung} + +\subtopic{Beschl{\"u}sse} +\beschlussthema{Thema}{Titel des Themas} +\beschluss{Thema}{Entscheidung gefallen} +\beschluss*{Entscheidung ohne Thema}[Langtext zur Entscheidung] +\end{Protokoll} +% \end{macrocode} +% +%\iffalse +% +%<*sampleNL> +%\fi +% \setcounter{CodelineNo}{\value{SampleNo}}%^^A reset line number +% +% \subsection{Minutes with dutch commands} +% Johan Henselmans send me a dutch translation of minutes, including +% dutch macros. Here is an example of such a dutch minutes. There is +% no difference if you use the english, german or dutch macros, you +% can also mix them\footnote{Please check the remarks for secret}. +% +% \begin{macrocode} +\begin{Notulen}{Titel van Nederlandse Notulen} +\ondertitel{Ondertitel} +\voorzitter{Voorzitter} +\notulist{Notulist} +\deelnemer{Deelnemer} +\gast{Gasten} +\bijeenkomstdatum{25.\ Dezember 1999} +\beginbijeenkomst{10:00} +\eindbijeenkomst{20:00} +\locatie{Amsterdam} +\cc{Verenigingsleden} +\afwezig[Afwezig met bericht]{afwezig zonder bericht} +%%\afwezigBericht{} +%%\afwezigZonderBericht{} +\notulenkop + +\topic{Onderwerp een}%<-- hier Tagesordnungspunkt einfuegen +\subtopic{Deelonderwerp bij onderwerp een}%<-- Unterpunkt +Tekst bij punt van orde. +%% +\topic{Termijnen en Taken} +\subtopic{Tijdsschema} +\termijn{2000/12/24}[10:00]{Kerst voordag} +\termijn{2000/12/24}{Kerstavond} +\termijn{2000/12/24}[20:00]{Bescherung}[Zal mijn wens vervuld worden?] +\termijn*{2000/12/25}{Kerstmis (zonder kalender invoer)} + +\topic{Taken} +\aktie{Wie}{Wat} +\aktie*{Iemand doet iets} +\aktie*[Vandaag]{Iemand zal vandaag iets doen} +\aktie[Voldaan]{Huidige toestand}[Gisteren]{Iemand doet iets} + +\nieuweKolom[][1]%nodig vanwege een fout +\begin{Geheim} +\topic{Geheim Onderwerp} +Deze tekst is geheim en kan met de optie \texttt{Secret} afgedrukt +worden. +\end{Geheim} + +\subtopic{Na geheime tekst} +Als een onderwerp niet in het hoofdonderwerp "`Geheim"' ligt, dan +word het afdrukken van de aeheime tekst onderdrukt. +\geheim{Een klein geheimpje} +\newcols + +\extrapunt{Notulen buiten standaard notulen} +\subtopic{Deelonderwerp} + +\topic{Bijlage} +\bijlage{Bijlage met twee bladzijden}{2} + +\topic{Afspraken en Stemmingen } +\subtopic{Enkele stemmingen} +\stemming{Korte stemming}{1}{2}{3} + +Stemming met resultaat:\par +\stemming{Korte stemming}{1}{2}{3}[Resultaat] + +% +\subtopic{Meerdere stemmingen in volgorde} +\begin{Stemming} +\stemming{Stemming een}{1}{2}{3} +\stemming{Stemming twee}{1}{2}{3}[Beslissing] +\stemming{Stemming drie}{1}{2}{3} +\end{Stemming} + +\subtopic{Besluiten} +\besluitonderwerp{Thema}{Titel van het onderwerp} +\besluit{Thema}{Besluit genomen} +\besluit*{Besluit zonderThema}[Lange tekst over het besluit] +\end{Notulen} +% \end{macrocode} +% +%\iffalse +% +%<*sample> +%\fi +% \setcounter{CodelineNo}{\value{SampleNo}}%^^A reset line number +% +% \subsection{Finish the collection of minutes} +% When you finish your minutes, you want to print +% \begin{itemize} +% \item All decisions +% \item All open tasks +% \item A list of attachments +% \item A calendar with scheduled dates (event list\ldots) +% \end{itemize} +% +% \begin{macrocode} +%%----------------- +\appendix +\selectlanguage{english} +\chapter{Appendix} +\section{List of decisions in sample.tex}\listofdecisions +\section{List of open tasks from sample.tex}\listoftasks +\section{list of attachments in sample.tex}\listofattachments +%%\selectlanguage{german} +%%\chapter{Anhang} +%%\section{Liste der Beschl{\"u}sse}\beschlussliste +%%\section{Liste offener Aufgaben}\aufgabenliste +%%\section{Liste der Anh{\"a}nge}\anhangsliste +%%\selectlanguage{dutch} +%%\chapter{Aanhangsel} +%%\section{Lijst van besluiten in sample.tex}\besluitenlijst +%%\section{Lijst van openstaande akties in sample.tex}\aktielijst +%%\section{Lijst van bijlagen in sample.tex}\bijlagenlijst +\section{Calendar} +\prepareCal +%%\begin{eventlist}{}{Sample} +%%1 dec 2000 to 31 dec 2000 +%%\end{eventlist} +\end{document} +% \end{macrocode} +% +%\iffalse +% +%<*styleguide> +%\fi +% \setcounter{CodelineNo}{0}%^^A reset line number after samples +% +% \section{Style Guide} +% This part creates a file \url{MinStyGd.tex} to see the +% look of the different options. To check another class, just modify +% the class in header. +% \begin{macrocode} +\documentclass[10pt,german]{report} +%%\documentclass[10pt,german]{scrreprt} +%%\documentclass[10pt,german]{refrep} +%% This document can be used to check the look of different +%% minutes-styles. +%% To see the effects of other classes and the cooperation with +%% different classes and styles, just add them to this document. +%% +%% Dieses Dokument kann genutzt werden einen Ueberblick ueber +%% die verschiedenen Protokollstile zu bekommen. +%% +\usepackage{babel}%blindtext mag kein german.sty +\usepackage{minutes} +\usepackage{blindtext} +\newcommand{\Lpack}[1]{\texttt{#1}} +\newcommand{\minutes}{\Lpack{minutes.sty}} + +\makeatletter +\newcommand{\minexample}[1]{ +\begin{Protokoll}{Beispiel eines Protokolls mit #1} +\untertitel{Dieses Protokoll ist mit \minutes\ erzeugt} +\moderation{Knut Lickert} +\protokollant{Knut Lickert} +\teilnehmer{Alle Anwesenden} +\gaeste{G\"aste} +\sitzungsdatum{\today} +\sitzungsbeginn{20:00} +\sitzungsende{23:00} +\sitzungsort{Vereinsgastst{\"a}tte} +\verteiler{alle Interessierten} +\fehlend[alle Analphabeten]{Vereinsm{\"u}ller} +\protokollKopf +\topic{Tagesordnung 1} +\subtopic{Unterpunkt zu Tagesordnung 1}\blindtext +\subtopic{Noch ein Unterpunkt zu Tagesordnung 1}\blindtext +\addtopic{Einschub in die Tagesordnung}\blindtext +\topic{Tagesordnung 2}\blindtext +\end{Protokoll} +}%\minexample +% %\makeatother %no/needed for different maketitle + +\begin{document} +\title{Styleguide \minutes:\\~\\ +Test for the different options\\ Test der verschiedenen Optionen} +\author{\minutes} +\maketitle + +\tableofcontents + +\minutesstyle{header={list},columns={1}} +\minexample{Listenkopf} + +\minutesstyle{header={table},columns={1}} +\minexample{Tabellenkopf} + +\minutesstyle{header={list},columns={1},contents={false}} +\minexample{Listenkopf ohne Topicliste} + +\minutesstyle{header={table},columns={1},contents={false}} +\minexample{Tabellenkopf ohne Topicliste} + +\minutesstyle{header={list},columns={2},contents={true}} +\minexample{Listenkopf/zweispaltig} + +\minutesstyle{header={table},columns={2}} +\minexample{Tabellenkopf/zweispaltig} + +\minutesstyle{header={list},columns={3}} +\minexample{Listenkopf/dreispaltig} + +\minutesstyle{header={table},columns={3}} +\minexample{Tabellenkopf/dreispaltig} + +\end{document} +% \end{macrocode} +% +%\iffalse +% +%<*package> +%\fi +% \setcounter{CodelineNo}{0}%^^A reset line number after samples, style guide... +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \StopEventually\relax +% %^^A Look for check sum +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% \part*{Implementation} +% +% \section{Starting the package} +% \subsection{Needed Packages} +% What do we need and expect: +% \changes{V1.4b}{2000/09/05}{require minitoc 2000/08/08 v32} +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesPackage{minutes}[\minfiledate\space\minfileversion\space + minutes.sty] +\RequirePackage{multicol}[1999/10/21 v1.5w] +\RequirePackage{xspace}[1997/10/13 v1.06] +\RequirePackage{url}[1999/03/28] +\RequirePackage{minitoc}[2000/12/13 v34] +\RequirePackage{keyval}[1999/03/16 v1.13] +% \end{macrocode} +% +% If \Lpack{hyperref} is loaded, we must set some special flags. +% \Lpack[2000/08/08 V32]{minitoc} is patched by Heiko Oberdiek for use with and without +% \Lpack{hyperref}. So forget \Lpack{minitoc\_href} and \Lpack{minitoc-hyper}. +% \changes{V1.4b}{2000/08/08}{Adaption for hyperref 2000/05/08 v6.70f} +% When the levels for the hyperlinks in the lists are undefined we +% get a lot of warnings. +% \begin{macrocode} +\newif\ifhyperloaded +\@ifpackageloaded{hyperref}{ +\global\hyperloadedtrue +\def\theHattachment{\theattachment}%? +%\def\theHdecision{\thedecision}% +%\def\theHschedule{\theschedule}% +%\def\theHtask{\thetask}% +\def\toclevel@attachment{1}%like section +\def\toclevel@decisiontheme{0}% like section +\def\toclevel@decision{1}% like section +\def\toclevel@schedule{1}% like section +\def\toclevel@task{1}% like section +}{} +% \end{macrocode} +% +% If \Lpack{hyperref} is loaded after \Lpack{minutes}, minutes is +% not able to work correct (up to now). So here we check if the sequence is +% correct. +% \begin{macrocode} +\AtBeginDocument{ +\@ifpackageloaded{hyperref}{ +\ifhyperloaded\else +\PackageError{minutes.sty}{load hyperref.sty before minutes.sty}{ + minutes.sty:\MessageBreak + You try to use minutes.sty with hyperref.sty\MessageBreak + minutes.sty must adapt some feature for it,\MessageBreak + so please load hyperref.sty first.}% +\fi +}{} +} +% \end{macrocode} +% +% \subsection{Default Settings} +% \begin{macro}{\minustesstyle} +% \changes{V1.6c}{2001/09/19}{add \cmd{\minutesstyle}} +% With the \Lpack{keyval} package you can select parameters better +% then with options. For the options see~\pageref{sec:minStyles} +% \begin{macrocode} +\newcommand{\minutesstyle}[1]{% + \setkeys{min@style}{#1}% +} +% \end{macrocode} +% \end{macro}% +% +% \changes{V1.6c}{2001/10/12}{Add flag for printing list of topics} +% \begin{macrocode} +\newif\ifmin@listoftopics +\min@listoftopicstrue +\define@key{min@style}{contents}[true]{% + \def\min@xx{#1} + \def\min@yy{true} + \ifx\min@xx\min@yy + \min@listoftopicstrue + \else + \min@listoftopicsfalse + \fi +} +% \end{macrocode} +% +% +% First some settings for pages, columns for \Lpack{multicol} +% Standard is one column for each (\verb|\topic|). +% In case of two columns, the title of the topic is written on both columns. +% The Option \Lopt{OneColumn} set one column, \Lopt{TwoColumn} set two column. +% +% There are two counters. \verb|\columns| is a local counter for +% internal changes. \verb|\min@columns| is a global value for +% reseting \verb|\columns| each start of a new minutes. +% \begin{macrocode} +\newcounter{columns}\setcounter{columns}{1} +\newcounter{min@columns}\setcounter{min@columns}{1} +\define@key{min@style}{columns}[1]{ + \setcounter{min@columns}{#1} +} +\DeclareOption{OneColumn}{ +\minutesstyle{columns = {1}} +} +\DeclareOption{TwoColumn}{ +\minutesstyle{columns = {2}} +} +\pagestyle{headings} +% \end{macrocode} +% +% With the flag \verb|\ifmin@fileinfo| you can influence if you want +% a paper with or without information of the file and line number, +% where some parts occurs. With the option \Lopt{Fileinfo} the file name +% (loaded with \verb|\inputminutes|) and the line number of a task +% will be printed in the list of tasks. +% \begin{macrocode} +\newif\ifmin@fileinfo +\min@fileinfofalse +\DeclareOption{Fileinfo}{ +\min@fileinfotrue +} +% \end{macrocode} +% +%\changes{V1.4b}{2000/08/22}{Option ASCII added} +% If you prepare your minutes with \Lprog{dvi2tty} for direct +% ASCII-output in a mail program the option \Lopt{ASCII} will be +% helpful to suppress some special characters and the page numbers. +% \begin{macrocode} +\DeclareOption{ASCII}{ +\renewcommand\result{\item [-->]} +\renewcommand\contra{\item [-]} +\renewcommand\pro{\item [+]} +\renewcommand\to{->} +\renewcommand\hookrightarrow{->}%used in in task +\renewcommand\@dotsep{1000}%no dots at \tableofcontents +\renewcommand\thepage{}%no pages in ASCII-lists +\pagestyle{empty} +\setcounter{columns}{1} +%\textwidth=80ex +} +% \end{macrocode} +% +%\changes{V1.8}{2007/03/14}{Option nobug added} +%\changes{V1.8b}{2007/07/19}{Option nobug deleted} +% There was a report, that this package doesn't work with the new +% Mik\TeX\ release (2.5). +% The nobug-option was a quick and dirty solution. +% +% Now the problem is found, there was an incompatibility with changes.sty. +% If you use \verb|\min@toptext| please check yourself for spaces. +% +% +% \subsection{Definition for table of contents} +% +% If \verb|\chapter| is defined, a collection of minutes is built. +% Each minutes get a table of contents (\Lpack{minitoc}). +% With the macro \verb|\tableofcontents| you get a table of contents with +% the main topics of the minutes. +% +% If \verb|\chapter| is not defined, each minutes get a table of +% contents with \verb|\tableofcontents|. +% \changes{V1.5b}{2000/12/20}{For article: Use \cmd{\parttoc} instead \cmd{\tableofcontents}} +% \begin{macrocode} +\@ifundefined{chapter}{ + \newcounter{min@savesecnumdepth} + \doparttoc + }{ + \setcounter{tocdepth}{1} + \setcounter{minitocdepth}{4} + \dominitoc + } +% \end{macrocode} +% +% \changes{V1.5b}{2000/12/20}{Add \cmd{\faketableofcontents}} +% With \verb|\faketableofcontents| the minitoc is possible without a +% \verb|\tableofcontents|. When you insert it in the top of the document, +% a table of contents remain empty. In the end of the document it works. +% \begin{macrocode} +\AtEndDocument{\faketableofcontents} +% \end{macrocode} +% +% If \verb|\section| is undefined give an error. +% \begin{macrocode} +\@ifundefined{section}% +{\PackageError{minutes.sty}{section not defined}{ + minutes.sty:\MessageBreak + You try to use minutes.sty with a class\MessageBreak + which does not support the section command\MessageBreak + Please check your class.}% +}{\relax} +% \end{macrocode} +% +% \changes{V1.4b}{2000/08/09}{filenames in length 8+3} +% \Lpack{minutes} creates file with an extension, longer than 3 letters. +% The option \Lopt{8+3} creates shorter file names. +% \begin{macrocode} +\newcommand{\min@file@Att}{minAtt} +\newcommand{\min@file@Cld}{minCld} +\newcommand{\min@file@Dec}{minDec} +\newcommand{\min@file@task}{minTsk} +\DeclareOption{8+3}{ +\renewcommand{\min@file@Att}{miA} +\renewcommand{\min@file@Cld}{miC} +\renewcommand{\min@file@Dec}{miD} +\renewcommand{\min@file@task}{miT} +\PackageWarningNoLine{minutes.sty}{ + You selected the option 8+3\MessageBreak + Check for a correct installation of minitoc.sty. +} +} +% \end{macrocode} +% +%\subsection{Configuration File} +% For the re-use of address data, you can define your local +% address in the file \file{minutes.cfg}. +% +% The option \Lopt{Dante} gives you an example. +% \begin{macrocode} +\InputIfFileExists{minutes.cfg}{ +\typeout{Using the configuration file minutes.cfg}}{} +% \end{macrocode} +% +% The option \Lopt{Dante} gives you an example how to define some data in +% the configuration file. +%\iffalse +% +%<*config> +%\fi +% \begin{macrocode} +\DeclareOption{Dante}{ +\newcommand\name{Deutschsprachige Anwendungsvereinigung + von \TeX-Anwendern e.V.} +\newcommand\address{Postfach 101640, 69008 Heidelberg} +\newcommand\phone{06221/29766} +\newcommand\eMail{dante@dante.de} +% ^^A Additional constants +} +\DeclareOption{KoKi}{ +\newcommand\name{Kommunales Kino Esslingen} +\newcommand\address{Maille 5, 73728 Esslingen} +\newcommand\phone{0711/356 799} +\newcommand\eMail{info@koki-es.de} +\newcommand\film[1]{\emph{#1}} +% ^^A Additional constants +} +% \end{macrocode} +%\iffalse +% +% +%<*package> +%\fi +% \section{Defining a Minutes} +% \subsection{The different Title-Styles} +% +%With \verb|\maketitle| you create the title of a minutes. +%By Option you can choose different styles for the title of +%a minutes. Standard is a list-like title. An Option set the +%macro \verb|\min@maketitle| to the value of the wanted +%title. +% +% All values are stored in the macros \verb|\min@...|, the texts +% are in \verb|\min@text...|. +% +% \subsubsection{List-like title} +%This title creates a list of all filled values for the +%title. If you are using many parameters, it will look long +%and awful. In this case, choose a more compact version or a +%tabular-like version.\par +% +% \begin{macro}{\min@maketitleList} +% First we write the title. Here we use the functionality of +% the sectioning command of \LaTeX\ and \Lpack{minitoc.sty}. +% \begin{macrocode} +\def\min@maketitleList{ +\minutes@titlesettrue +\@ifundefined{chapter}{% + \setcounter{min@savesecnumdepth}{\value{secnumdepth}} + \setcounter{secnumdepth}{-1}%no numbering for minutes + \part[\min@titleshort]{\min@title} + \setcounter{section}{0} + \setcounter{secnumdepth}{\value{min@savesecnumdepth}} +}{ \chapter[\min@titleshort]{\min@title}} +% \end{macrocode} +% +% \begin{macro}{\min@writeNotRelax} +% A small macro to print a \verb|\item[]|, +% if the according first value is not \verb|\relax|. +% \begin{macrocode} +\def\min@writeNotRelax##1##2{ +\ifx\relax##1\else +\item[##2] ##1 +\fi} +% \end{macrocode} +% \end{macro}% ^^A \min@writeNotRelax +% +% Here we start the output of the header data using the +% functionality of \verb|\min@writeNotRelax|. +% \changes{V1.8c}{2009/05/17}{No space at -- in time} +% \begin{macrocode} +\begin{quote} +\ifx\relax\min@subtitle\else\min@subtitle\fi +\begin{description} +%\settowidth{\leftmargin}{\min@textPresent} +\settowidth{\leftmargin}{10cm} +\min@writeNotRelax{\min@information}{$\Rightarrow$} +\min@writeNotRelax{\min@moderation}{\min@textModerator} +\min@writeNotRelax{\min@minutetaker}{\min@textMinutesTaker} +\min@writeNotRelax{\min@participiant}{\min@textPresent} +\min@writeNotRelax{\min@missing}{\min@textAbsent} +\min@writeNotRelax{\min@missingExc}{\min@textAbsentExcused} +\min@writeNotRelax{\min@missingNoExc}{\min@textAbsentNoExcuse} +\min@writeNotRelax{\min@guest}{\min@textGuest} +%\min@writeNotRelax{\min@date}{\min@textDate} +%\min@writeNotRelax{\min@starttime}{\min@textStarttime} +%\min@writeNotRelax{\min@endtime}{\min@textEndtime} +\min@writeNotRelax{\min@location}{\min@textLocation} +\ifx\relax\min@date\else +\item [\min@textDate] \min@date\ + \min@starttime + \ifx\relax\min@endtime\else--\min@endtime\fi +\fi +\min@writeNotRelax{\min@cc}{\min@textCc} +%\secret{\item[!] \min@textSecret} +\end{description} +\end{quote} +% \end{macrocode} +% Insert the list of topics. +% \begin{macrocode} +\ifmin@listoftopics + \vspace{1ex} + \@ifundefined{chapter}{\parttoc}{\minitoc}% +\fi% +% \end{macrocode} +% Start the multicols-environment if required. +% \begin{macrocode} +\ifnum\value{columns} > 1 +\begin{multicols}{\value{columns}}[][1cm] +\fi +}% +% \end{macrocode} +% \end{macro} %^^A \min@maketitleList +% +% +% \subsubsection{Table-like title} +% This title creates a table with all values for the title.\par +% +% \begin{macro}{\min@maketitleTable} +% First we write the title. Here we use the functionality of +% the sectioning command of \LaTeX\ and minitoc.sty. +% \begin{macrocode} +\def\min@maketitleTable{ +\minutes@titlesettrue +\@ifundefined{chapter}{ + \setcounter{min@savesecnumdepth}{\value{secnumdepth}} + \setcounter{secnumdepth}{-1}%no numbering for minutes + \part[\min@titleshort]{\min@title} + \setcounter{section}{0} + \setcounter{secnumdepth}{\value{min@savesecnumdepth}} +}{ \chapter[\min@titleshort]{\min@title}} +% \end{macrocode} +% +% Here we start the output of the header data using the +% tabular-environment. +% \changes{V1.5b}{2000/11/09}{Fehler behoben bei Datumsausgabe} +% \changes{V1.8c}{2009/05/17}{No space at -- in time} +% \begin{macrocode} +\begin{tabular}{|*{2}{p{0.45\linewidth}|}}\hline +%% \min@location is missing +%% \min@guest is missing + \ifx\relax\min@subtitle\else + \multicolumn{2}{|p{0.9\linewidth}|}{\min@subtitle}\\\hline\fi + \ifx\relax\min@date\else + \multicolumn{2}{|p{0.9\linewidth}|}{ + \min@textDate: \min@date\ \min@starttime + \ifx\relax\min@endtime\else--\min@endtime\fi + }\\\hline + \fi%\min@date + \min@textModerator: \min@moderation + &\min@textMinutesTaker: \min@minutetaker\\\hline + \min@textPresent:\newline \min@participiant + &\min@textCc:\newline \min@cc\\\hline + \ifx\relax\min@missingExc1 + \min@textAbsent:\newline \min@missing&\\\hline + \else + \min@textAbsentExcused:\newline \min@missingExc + &\min@textAbsentNoExcuse:\newline \min@missingNoExc\\\hline + \fi +\end{tabular} +% \end{macrocode} +% And the contents of this minutes. +% \begin{macrocode} +\ifmin@listoftopics% + \@ifundefined{chapter}{\tableofcontents}{\minitoc}% +\fi% +% \end{macrocode} +% Start the multicols-environment if required. +% \begin{macrocode} +\ifnum\value{columns} > 1 +\begin{multicols}{\value{columns}}[][1cm] +\fi +}% +% \end{macrocode} +% \end{macro} %^^A \min@maketitleTable +% +% \subsection{The decision for a title} +%Standard is a list-like header. +% \begin{macrocode} +\let\min@maketitle\min@maketitleList +\DeclareOption{ListTitle}{ +\minutesstyle{header = {list}} +} +\DeclareOption{TableTitle}{ +\minutesstyle{header = {table}} +} +% \end{macrocode} +% +% \begin{macro}{\minustesstyle/header} +% \label{sec:vote:header} +% With the command |\minutesstyle| you can define different +% parameters of a minutes. Here the definitions for headers. +% There are two possibilities: +% \begin{itemize} +% \item |\minutesstyle{header={list}| +% \item |\minutesstyle{header={table}| +% \end{itemize} +% \begin{macrocode} +\define@key{min@style}{header}{ + \def\min@xx{#1} + \def\min@yy{list} + \ifx\min@xx\min@yy + \let\min@maketitle\min@maketitleList + \else + \def\min@yy{table} + \ifx\min@xx\min@yy + \let\min@maketitle\min@maketitleTable + \else +% \def\min@yy{\relax} +% \ifcat\min@xx\min@yy?? +% How to check, if there is a command? +% \let\min@maketitle#1 +% \else + \PackageError{minutes.sty}{Unknown Header-Style}{ + minutes.sty:\MessageBreak + } +% \fi + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% +% \subsection{The Minutes-Environment} +% \DescribeEnv{Minutes} +% Minutes are defined with the environment \Lenv{Minutes}. +%Each minute must contain a \verb|\maketitle|. The flag +%\verb|\ifminutes@titleset| controls this. +% \begin{macrocode} +\newif\ifminutes@titleset +% \end{macrocode} +% \subsubsection{Start of the environment} +% \begin{environment}{Minutes} +% The environment has one parameter: the title of the minutes. In an +% optional parameter you can set a short title for the list of +% contents. +% \begin{macrocode} +\newenvironment{Minutes}[2][\relax]{%[short title]{Titel} +% \end{macrocode} +% Set \verb|\ifminutes@titleset| to false. +% The flag \verb|\ifminutes@titleset| is used at +% \verb|\end{Minutes}| to check, if \verb|\maketitle| was +% used. +% \changes{V1.7b}{2001/12/07}{reset min@section-counter (addtopic)} +% \changes{V1.7c}{2001/12/28}{Add \cmd{\notulenkop}} +% The language specific macro for |\maketitle| should be defined in +% another section. But the style could change, so we have to do it +% here. +% \begin{macrocode} +\minutes@titlesetfalse +\setcounter{columns}{\value{min@columns}} +\setcounter{min@section}{0} +\let\maketitle\min@maketitle +\let\protokollKopf\maketitle +\let\notulenkop\maketitle +% \end{macrocode} +%Define the title for use in \verb|\maketitle| and clear the +%other texts. All this macros are defined local inside the +%\Lenv{minutes} environment. +% \changes{V1.8f}{2010/03/11}{Bug correction optional title} +% \begin{macrocode} +\def\min@title{#2} +\ifx{#1}\relax +\def\min@titleshort{#2} +\else +\def\min@titleshort{#1} +\fi +\let\min@information\relax +\let\min@subtitle\relax +\let\min@moderation\relax +\let\min@minutetaker\relax +\let\min@participiant\relax +\let\min@missing\relax +\let\min@missingExc\relax +\let\min@missingNoExc\relax +\let\min@guest\relax +\let\min@date\relax +\let\min@starttime\relax +\let\min@endtime\relax +\let\min@location\relax +\let\min@cc\relax +}% +% \end{macrocode} +% +% \subsubsection{End of the environment} +% If there is a \Lopt{TwoColumn} version, we must close the +% \Lpack{multicols} environment. +% \begin{macrocode} +{ +\ifnum\value{columns} > 1 +\end{multicols} +\fi +% \end{macrocode} +% If the command \verb|\addtopic| is used, \verb|\thesection| was modified. Here we built the standard. +% \begin{macrocode} +\global\let\thesection=\min@thesection +% \end{macrocode} +% Reset the date of minutes (If it is used outside the minutes environment). +% \changes{V1.6b}{2001/02/18}{reset date for task outside a minutes environment} +% \begin{macrocode} +\let\min@date\relax +% \end{macrocode} +% Close the environment. +% \begin{macrocode} +} +% \end{macrocode} +% \end{environment} +% +% \subsection{The title of a minutes} +% Here we give the minutes taker the possibility to define author +% etc.\par +% \DescribeMacro{\subtitle} +% \begin{macrocode} +\def\subtitle#1{\def\min@subtitle{#1}} +% \end{macrocode} +% +% \DescribeMacro{\moderation} +% \DescribeMacro{\minutetaker} +% \DescribeMacro{\cc} +% \begin{macrocode} +\def\moderation#1{\def\min@moderation{#1}} +\def\minutetaker#1{\def\min@minutetaker{#1}} +\def\cc#1{\def\min@cc{#1}} +% \end{macrocode} +% \DescribeMacro{\minutesdate} +% \DescribeMacro{\starttime} +% \DescribeMacro{\endtime} +% \changes{V1.5b}{2000/10/10}{\cmd{\location} added} +% \DescribeMacro{\location} +% \begin{macrocode} +\def\minutesdate#1{\gdef\min@date{#1}}%use in \task +\def\starttime#1{\def\min@starttime{#1}} +\def\endtime#1{\def\min@endtime{#1}} +\def\location#1{\def\min@location{#1}} +% \end{macrocode} +% +% \DescribeMacro{\participant} +% \changes{V1.5b}{2000/12/20}{\cmd{\guest} added} +% \DescribeMacro{\guest} +% \begin{macrocode} +\def\participant#1{\def\min@participiant{#1}} +\def\guest#1{\def\min@guest{#1}} +% \end{macrocode} +% +% \DescribeMacro{\missing} +% \DescribeMacro{\missingExcused} +% \DescribeMacro{\missingNoExcuse} +% The declaration of missing people is divided into people with an excuse +% and people without. If you define only \verb|\missing| without an +% optional parameter, there is no difference taken. +% \begin{macrocode} +\newcommand{\missing}[2][\min@empty]{ +\ifx#1\min@empty\def\min@missing{#2} +\else +\missingExcused{#1} +\missingNoExcuse{#2} +\fi +} +\def\missingExcused#1{\def\min@missingExc{#1}} +\def\missingNoExcuse#1{\def\min@missingNoExc{#1}} +% \end{macrocode} +% +% \subsection{Signature} +% \DescribeMacro{\signature} +% If you must sign a minutes, add this before +% \verb|\end{Minutes}|. +% \begin{macrocode} +\newcommand{\signature}[1]{ +\begin{tabular}{p{4cm}} + \vspace{2em}\\ \hline + \footnotesize #1 +\end{tabular} +} +% \end{macrocode} +% +% \subsection{Compatibility with old version} +% +% \DescribeEnv{Protocoll} +% The \Lenv{Protocoll}-environment is needed for compatibility +% with an old version (I don't want to modify all my old minutes). +% There are five parameters: +%the title, the moderator, the minutes taker, the participants +%and the people you are missing. +% +% Do not mix up with \verb|\begin{Protokoll}| with `k' instead of the `c'. +% +% \begin{environment}{Protocoll} +% \begin{macrocode} +\newenvironment{Protocoll}[5]{ +\PackageWarning{minutes.sty}{Old environment protocoll, do not use!} +\begin{Minutes}{#1} +\ifx\empty#2\else\moderation{#2}\fi +\ifx\empty#3\else\minutetaker{#3}\fi +\ifx\empty#4\else\participant{#4}\fi +\ifx\empty#5\else\missing{#5}\fi +\maketitle +}{\end{Minutes}} +% \end{macrocode} +% \end{environment}%^^A Protocoll +% +% \subsection{Load a minutes} +% \begin{macro}{\inputminutes}% +% \changes{V1.4b}{2000/08/10}{Add commands for loading minutes in file} +% If you have a master file for all minutes and the minutes in +% special files, you can load the fields with \verb|\inputminutes|. +% As an advantage the filename is stored and can be used for the +% list of tasks. So you can easily find the file, where you have to +% mark the finishing of a task. +% \begin{macrocode} +\newcommand{\min@file}{\relax} +%\newcommand{\min@file}{\jobname}%Bad, wenn _ in name +% \end{macrocode} +% +% \begin{macrocode} +\newcommand*{\inputminutes}[1]{ +\renewcommand{\min@file}{\protect\path{#1}} +\input{#1} +\renewcommand{\min@file}{\relax} +} +% \end{macrocode} +% \end{macro}%^^A{\inputminutes} +% +% \section{Topics and Subtopics} +% \DescribeMacro{\topic} +% The topics of a minutes are defined with \verb|\topic|, +% \verb|\subtopic| and \verb|\subsubtopic|. +% The check for an existing \verb|\maketitle| requires a special +% definition of \verb|\topic|\par +% +% \verb|\addtopic| change \verb|\thesection|, so we save it here. +% For the \verb|\subtopic| after a \verb|\addtopic| we need a counter. +% \begin{macrocode} +\let\min@thesection=\thesection +\@ifundefined{chapter}{ +\newcounter{min@section}[part] +}{ +\newcounter{min@section}[chapter] +} +% \end{macrocode} +% \verb|\topic| check for \verb|\maketitle| and call \verb|\section|. +% \begin{macrocode} +\newcommand*{\topic}[2][\minxx]{ +\min@checktitle +% \end{macrocode} +% \changes{V1.5b}{2000/11/09}{write TOP before sectioning (German)} +% In Germany the text "Top" is written in front of the topics. The +% macro \verb|\min@toptext| contains this text.\footnote{Thanks to Peter Tillmann for this hint}. +% If you do so, the +% table of topics will become ugly, because of the long numbers. +% \changes{V1.8b}{2007/07/19}{No xspace after TOP} +% If you fill \verb|\min@toptext|, please get attention of a separator space. +% The usage of \verb|\xspace| may produce errors. +% \begin{macrocode} +\immediate\gdef\thesection{\min@toptext\min@thesection} +\ifx\minxx#1\min@newcoltopic{\section}{#2}{#2}% +\else\min@newcoltopic{\section}{#1}{#2}\fi% +%%\let\thesection=\min@thesection %subtopic without "TOP" +} +% \end{macrocode} +% +% \DescribeMacro{\addtopic} +% With \verb|\addtopic| you can insert a topic without a number, but +% within the list of topics. Here you can administrate the +% difference between topics which where in an invitation and the +% real topics.\par +% A following \verb|\subtopic| will get a number in roman numbers. +% For this we define the counter \verb|min@section| and we reset all +% subsidiary counters. +%\changes{V1.5}{2000/09/15}{Bug: \cmd{\addtopic} and \Lpack{scrartcl}} +% \begin{macrocode} +\newcommand*{\addtopic}[2][\minxx]{ +\min@checktitle +\refstepcounter{min@section} +\@ifundefined{chapter}{ +\immediate\gdef\thesection{(\min@toptext\@Roman\c@min@section)} +}{ +\immediate\gdef\thesection{(\min@toptext\thechapter.\@Roman\c@min@section)} +} +\ifx\minxx#1\min@newcoltopic{\section}{#2}{#2}% +\else\min@newcoltopic{\section}{#1}{#2}\fi% +\global\addtocounter{section}{-1} +%%%If you do not like the roman number +%%\section*{#2} +%%\ifx\minxx#1\addcontentsline{toc}{section}{#2} +%%\else\addcontentsline{toc}{section}{#1}\fi% +} +% \end{macrocode} +% +% \DescribeMacro{\min@checktitle} +%Here we check with \verb|\ifminutes@titleset|, if the +%title is printed. If not we make an error message.\par +%After the first error message in a minutes, there is no +%other error message in this minutes. +% \begin{macrocode} +\newcommand{\min@checktitle}{ +\ifminutes@titleset\else +\minutes@titlesettrue +\PackageError{minutes.sty}{no output of title}{ +minutes.sty:\MessageBreak + You called the environment minutes,\MessageBreak + but you forgot to call the 'maketitle'.\MessageBreak + If you do not use twocolumn, you can continue.\MessageBreak + With twocolumn, you will become trouble later +}% +\fi} +% \end{macrocode} +% +% \DescribeMacro{\min@newcoltopic} +% Because we are using \Lpack{multicols} the definition of +% \verb|\min@newcoltopic| must contain a \verb|\end{multicols}| and the start +% of a new \Lenv{multicols}-environment. +% Parameter one contains \verb|\section| or \verb|\section*|. +% \begin{macrocode} +\newcommand{\min@newcoltopic}[3]{ +\ifnum\value{columns} > 1 +\end{multicols} +\hrulefill +\begin{multicols}{\value{columns}}[{#1[#2]{#3}}] +\else +#1[#2]{#3} +\fi +} +% \end{macrocode} +% \DescribeMacro{\subtopic} +% \DescribeMacro{\subsubtopic} +% \begin{macrocode} +\let\subtopic=\subsection +\let\subsubtopic=\subsubsection +% \end{macrocode} +% +% \DescribeMacro{\minitopic} +% Copy of \verb|\minisec| from \Lpack{scrrept.cls}. +% There is no \verb|\let|, because of the freedom of the choice of the class. +% \begin{macrocode} +\newcommand\minitopic[1]{\@afterindentfalse \vskip 1.5ex + {\parindent \z@ \textbf{#1}\par\nobreak}% + \@afterheading} +% \end{macrocode} +% +% \subsection{Finish and start the columns} +% \begin{macro}{\newcols} +% If you want to finish the actual \Lenv{multicols} and restart it, you +% can use \verb|\newcols|. The macro has two optional parameters: +% a title and a new number of columns.\par +% With \verb|\newcols[][1]| you can change the number of columns. +% This number will be used until a new \Lenv{minutes} starts or +% another \verb|\newcols| reset the value. +% Store the first optional parameter in \verb|\min@newcolsTitle| +% and start \verb|\min@newcols|. +% \begin{macrocode} +\newcommand{\newcols}[1][\relax]{ +\global\def\min@newcolsTitle{#1} +\min@newcols +} +% \end{macrocode} +% \end{macro}%^^A {\newcols} +% +% \begin{macro}{\min@newcols} +% Close and open the minutes environment. In between modify +% the counter \verb|columns|. The first optional parameter +% for the new columns block is going on all columns. +% \begin{macrocode} +\newcommand{\min@newcols}[1][\value{min@columns}]{ +\ifnum\value{columns} > 1 +\end{multicols} +\fi +\setcounter{columns}{#1} +\ifnum\value{columns} > 1 +\begin{multicols}{\value{columns}}[\min@newcolsTitle][2cm] +\else +\min@newcolsTitle +\fi +} +% \end{macrocode} +% \end{macro}^^A {\min@newcols} +% +% \section{Different versions of minutes (secret parts)} +% +% With \verb|\includeversion{Env}| and \verb|\excludeversion{Env}| +% you can prepare different versions of the minutes. +% +% Parts for special people can be between \verb|\begin{Env}| and +% \verb|\end{Env}|. +% By default the \verb|minutes.sty| contains an environment for +% Secret parts. +% +% This coding is based on coding from \verb+version.sty+ of +% Stephen Bellantoni 1990, loosely based on +% "`annotation.sty"' by Tom Hofmann. +% The command \verb|\includeversion| must be adapted for \Lpack{minutes.sty}. +% See this example: +% \begin{center}\begin{minipage}{10cm} +%\begin{verbatim} +%\begin{Secret} +%\topic{xxx} +%\end{Secret} +%\end{verbatim} +%\end{minipage}\end{center} +%This will create an error, because \verb|\topic| will +%closing the \Lenv{multicolumns}, but the last opened environment +%was \Lenv{Secret}. So we have to manipulate a little bit the +%actual name of the current environment. When we close +%\Lenv{Secret} again, we must also close first our opened +%\Lenv{multicols}.\par +% +% \DescribeMacro{\includeversion} +% \DescribeMacro{\excludeversion} +% \begin{macrocode} +\begingroup +\catcode`@=11\relax% +\catcode`{=12\relax\catcode`}=12\relax% +\catcode`(=1\relax \catcode`)=2\relax% +\gdef\includeversion#1(% + \expandafter\gdef\csname #1\endcsname% + ( \ifnum\value(columns) > 1 + \def\@currenvir(multicols) + \fi + )% + \expandafter\gdef\csname end#1\endcsname% + ( \ifnum\value(columns) > 1 + \def\@currenvir(#1) + \fi + )% +)% +\gdef\excludeversion#1(% + \expandafter\gdef\csname #1\endcsname% + (\@bsphack\catcode`{=12\relax\catcode`}=12\relax\csname #1@NOTE\endcsname)% + \long\expandafter\gdef\csname #1@NOTE\endcsname ##1\end{#1}% + (\csname #1END@NOTE\endcsname)% + \expandafter\gdef\csname #1END@NOTE\endcsname% + (\@esphack\end(#1))% +)% +\endgroup +% \end{macrocode} +% +% \subsection{Secret parts} +% There is a possibility to mark secret parts of minutes. Short +% secret parts can be defined with \verb|\secret|, longer secret +% parts can be between \verb|\begin{Secret}| and +% \verb|\end{Secret}|. +% +% \DescribeMacro{\secret} +% \DescribeEnv{Secret} +% \begin{macrocode} +\excludeversion{Secret} +\excludeversion{Geheim} +\newcommand{\secret}[1]{} +\newcommand{\geheim}[1]{} +\DeclareOption{Secret}{ +\includeversion{Secret} +\includeversion{Geheim} +\renewcommand{\secret}[1]{#1} +\renewcommand{\geheim}[1]{#1} +} +% \end{macrocode} +% +% %%%%%%%%%%%%%% +% \subsection{Postscripts} +% \begin{macro}{postscript} +% \begin{environment}{Postscript} +% The environment \Lenv{Postscript} is defined for additional +% information, which belong not to the original minutes, +% but they should inserted here. +% \begin{macrocode} +\newcommand{\postscript}[1]{[\emph{#1}]} +\newenvironment{Postscript}{ +\begin{description} +\item[\min@textPostscript:]~\\ \em}{ +\em\end{description}} +% \end{macrocode} +% \end{environment} +% \end{macro} +% +% \section{Non-\LaTeXe documents} +% \subsection{Foreign Minutes} +% \begin{macro}{\ForeignMinutes} +% If you have minutes from a foreign system (e.g.\ from a +% M\$-Product), you can start a \Lenv{Minutes}-environment. +% Instead a \verb|\maketitle| you give the information, where you +% find the foreign minutes.\par +% Using the optional parameter, you can define free pages for the +% printouts of the minutes, you want to insert. Default is one page.\par +% In addition you can use all parameters of the +% \Lenv{Minutes}-Environment. +% \begin{macrocode} +\newcounter{@pagecount}% +\newcommand{\foreignMinutes}[2][1]{%[pages]{Description} +\ifnum #1 > 0 +\def\min@information{\min@textforeignMinutes: #2} +\fi +\maketitle +\setcounter{@pagecount}{#1}\addtocounter{@pagecount}{-1}% +\addtocounter{page}{\value{@pagecount}}% +} +% \end{macrocode} +% \end{macro}%^^A \ForeignMinutes +% +% \subsection{Attachments} +% Data for the appendix with foreign documents are saved in a +% *.min-File. The *.min-File is filled via the *.aux-file. +% +% \begin{macro}{\theminutes@attachment} +% First we need some counter and their outputs. +% \changes{V1.7b}{2002/01/24}{Counter for attachment not with small roman letters} +% Attachments are counted with roman numbers. +% +% A comment of a friend of mine according small roman numbers: +% ^^A\selectlanguage{german}% +% \emph{Aufz\"ahlungen/Numerierungen mit +% Kleinbuchstaben "`gibt es nicht"'!!! Das ist eine amerikanische +% Unsitte, weil die dort nicht verstanden haben, das es lateinische +% Ziffern nur als Versalbuchstaben gibt!!! Bitte abgew\"ohnen!} +% ^^A\selectlanguage{english} +% \begin{macrocode} +\newcounter{minutes@page} +\@ifundefined{chapter}{ +\newcounter{minutes@attachment} +\renewcommand{\theminutes@attachment}{\Roman{minutes@attachment}} +}{ +\newcounter{minutes@attachment}[chapter] +\renewcommand{\theminutes@attachment}{ + \thechapter.\roman{minutes@attachment}} +} +% \end{macrocode} +% \end{macro} %^^A{\theminutes@attachment} +% +% \begin{macro}{\attachment} +% With \verb|\attachment| you are able to define an attachment. +% There are three parameters: +%\begin{enumerate} +% \item a label [optional]. This value can be used for references with +% \verb|\ref| \ldots. With this parameter, you get also a reference to the +% page, where you have to insert the attachment. +% \item A title +% \item Number of pages. +%\end{enumerate} +%At the location, where you placed the \verb|\attachment| you get a +%text `enclosure:', the title and with an defined label +% a reference to the page, where you +% should insert the attachment.\par +% +% First write the text "enclosure". +% \begin{macrocode} +\newcommand{\attachment}[3][\relax]{%[label]{titel}{Seiten} +\stepcounter{minutes@attachment} +\par +\min@textEnclosure\ \theminutes@attachment: #2 +\ifx\relax#1\else\min@textPage~\pageref{#1}\fi[#3]% +% \end{macrocode} +%Now we add the information to the *.aux-file. The value of the +%second parameter of \verb|\contentsline| contains four parts. +%These parts will be analyzed by \verb|\l@attachment|. +% \begin{macrocode} +\addcontentsline{\min@file@Att}{attachment}{% + {#1}{\theminutes@attachment}{#2}{#3}} +}%^^A \attachment +% \end{macrocode} +% \end{macro}%^^A attachment +% +% \DescribeMacro{\listofattachments} +% Make a list of all attachments, defined with |attachment|. +% +% If the attachment definition contains the optional label, +% it is set here. +% +% The page numbers will be increased by the defined length +% of the attachment. +% +% Bugs: +% \begin{itemize} +% \item empty list is not suppressed!!!! +% \item If the list is longer then two pages, the next numbering +% will be wrong. +% \end{itemize} +% +% \begin{macrocode} +\newcommand{\listofattachments}{ +\ifhyperloaded +\renewcommand{\contentsline}[4]{ +\csname l@##1\endcsname{##2}{##3} +} +\fi +\renewcommand\@pnumwidth{2em}%Original: 1.55em +\setcounter{minutes@page}{\value{page}}\stepcounter{minutes@page} +{\@starttoc{\min@file@Att}} +\clearpage +\setcounter{page}{\value{minutes@page}}% +} +% \end{macrocode} +% +% \begin{macro}{\l@attachment} +% \verb|\l@attachment| is called by \verb|\contentsline|. +% +% Parameter two contains the page, where the attachment is +% inserted. This value is not used (do we need a back reference?) +% +% Parameter one contains the four variables from \verb|\attachment|. +% To parse this, we expand them, before we call \verb|\min@l@attachment| +% +% Hyperref modify the parameters for \verb|\l@attachment|. +% \begin{macrocode} +\newcommand{\l@attachment}[2]{% +\expandafter\min@l@attachment#1 +}%^^A \listofAttachments +% \end{macrocode} +% \end{macro}%^^A \l@attachment +% +% \begin{macro}{\min@l@attachment} +%The command \verb|\min@l@attachment| prepares a line for the +%list of the attachments and it makes an entry to the aux-file for +%the table of contents and the label. +% +% First the output. Here we use the macro \verb|\contentsline|. +% \begin{macrocode} +\newcommand{\min@l@attachment}[4]{%{label}{theattachment}{title}{pages} +\@dottedtocline{1}{0mm}{20mm}{% +\numberline {#2} #3}{% +\arabic{minutes@page} [#4]} +% \end{macrocode} +% +%The entry to the aux-file should be done normally with +%\verb|\addcontentsline| and \verb|\label|, but this commands give +%the actual number of the page. We want to give our own numbering. +%So we need to create the toc-entry and labels on our own.\par +% +% Prepare the label information. +% \begin{macrocode} +\ifx\relax#1\else +\ifhyperloaded +\protected@write\@auxout{}% +{\string\newlabel% +{#1}%Label +{% +{#2}%number of section +{\arabic{minutes@page}}%pagenumber +{#2\relax }%title+\relax +{section.\thesection}%"section"+sectionnumber +{}% +}%closenewlabel +}%close \protected@write +\else% hyperref is not used +\protected@write\@auxout{}% +{\string\newlabel{#1}{{#2}{\arabic{minutes@page}}}}% +\fi%\ifhyperloaded +\fi%\ifx\relax +% \end{macrocode} +% Increase the internal pagenumber for the list. +% \begin{macrocode} +\addtocounter{minutes@page}{#4}% +}%\def\min@l@attachment +% \end{macrocode} +% \end{macro}%^^A \min@l@attachment +% +% \subsection{Compatibility with old version} +% \begin{macro}{\enclosure} +% The macro \verb|\enclosure| is used for compatibility with an old version. +% It is the same behaviour as \verb|attachment|, the sequence of +% parameters is modified. +% \begin{macrocode} +\newcommand{\enclosure}[3][1]{%[pages]{label}{titel} +\attachment[#2]{#3}{#1} +}%^^A \enclosure +\let\listofenclosure\listofattachments +% \end{macrocode} +% \end{macro}%^^A enclosure +% +% +% \section{Some Macros for Votes} +% \changes{V1.6c}{2001/09/19}{new layout/version} +% +% +% \begin{macro}{\vote} +% \changes{V1.5b}{2000/12/30}{reconstruction Vote-environment} +% The syntax of this macro is +% \verb|\vote{text}{yes}{no}{no vote}[decision]|. +% Each number (yes/no/no vote) can get a text on its own. For better +% understanding, look to the samples. +% +% First the title is written to \verb|\min@voteT|, then we call +% \verb|\min@voteI| to parse the optional texts for "yes". +% \begin{macrocode} +\newcommand{\vote}[1]{ +\gdef\min@voteT{#1} +\min@voteI} +% \end{macrocode} +% \end{macro}%^^A vote +% \begin{macro}{\min@voteI} +% Read the text and number of yes-votes and save them. The next +% macros do the same for no\ldots +% \begin{macro}{\min@voteTI} +% \begin{macro}{\min@voteVI} +% \begin{macrocode} +\newcommand{\min@voteI}[2][\min@textYes]{ +\gdef\min@voteTI{#1} +\gdef\min@voteVI{#2} +\min@voteII +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{macro}{\min@voteII} +% \begin{macro}{\min@voteTII} +% \begin{macro}{\min@voteVII} +% Now we fill the values for "no". +% \begin{macrocode} +\newcommand{\min@voteII}[2][\min@textNo]{ +\gdef\min@voteTII{#1} +\gdef\min@voteVII{#2} +\min@voteIII +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{macro}{\min@voteIII} +% \begin{macro}{\min@voteTIII} +% \begin{macro}{\min@voteVIII} +% And now the values for "no vote". +% \begin{macrocode} +\newcommand{\min@voteIII}[2][\min@textNoVote]{ +\gdef\min@voteTIII{#1} +\gdef\min@voteVIII{#2} +\min@voteIV +} +% \end{macrocode} +% \end{macro}%^^A Votes +% \end{macro} +% \end{macro} +% +% \begin{macro}{\min@voteIV} +% |\min@voteIV| calls |\min@voteV|. There is the final preparation +% of a vote. +% \begin{macrocode} +\newcommand{\min@voteIV}[1][\min@empty]{ +\min@voteV{#1} +} +% \end{macrocode} +% \end{macro}%^^A Votes +% +% \begin{macro}{\min@voteV} +% |\min@voteV| is a dummy for the final preparation of a vote. The +% real macro is defined by an option. Default is |\min@voteIVlist|. +% If you want to change the look, add a new macro and replace it +% here. There are the following parameters: +% \begin{itemize} +% \item |\min@voteT| The text of the decision. +% \item |min@voteVI| and |\min@voteTI| Number of "yes" (and Text +% "yes". +% \item |min@voteVII| and |\min@voteTII| Number of "no" (and Text) +% \item |min@voteVIII| and |\min@voteTIII| Number of "no vote" (and Text) +% \end{itemize} +% \begin{macrocode} +\newcommand{\min@voteV}{\min@voteIVlist} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\minustesstyle/vote} +% \label{sec:vote:look} +% With the command |\minutesstyle| you can define different +% parameters of a minutes. Here the definitions for votes. +% There are two possibilities: +% \begin{itemize} +% \item |\minutesstyle{vote={list}| +% \item |\minutesstyle{vote={table}| +% \end{itemize} +% \begin{macrocode} +\define@key{min@style}{vote}{ + \newif\ifmin@nofound + \min@nofoundtrue + \def\min@xx{#1} + \def\min@yy{list} + \ifx\min@xx\min@yy + \renewcommand{\min@voteV}{\min@voteIVlist} + \min@nofoundfalse + \fi + \def\min@yy{table} + \ifx\min@xx\min@yy + \renewcommand{\min@voteV}{\min@voteIVtable} + \min@nofoundfalse + \fi + \ifmin@nofound + \PackageError{minutes.sty}{Unknown Vote-Style}{ + minutes.sty:\MessageBreak + You try to use the style #1 for votes.\MessageBreak + This style is unknown}% + \fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\min@voteIVtable} +% \verb|\min@voteIVtable| close and open a tabular-environment. +% This allows a page break between two votes. +% longtab.sty would allow the same behavior, but I want to keep the number +% of needed packages low.\par +% First we define the length for the width of an vote-box. +% The width will a quarter of the total place, but not more +% than 2 cm. The total place is the \verb|\linewidth|. +% \changes{V1.6c}{2001/09/20}{add decisions to list of decisions}% +% \begin{macrocode} +\newlength{\votelength} +\newcommand{\min@voteIVtable}[1]{ + \setlength{\votelength}{0.25\linewidth} + \ifdim\votelength > 2cm \setlength{\votelength}{2cm} \fi + \par\noindent + \begin{tabular}{*{3}{p{\votelength}}}% \hline + \multicolumn{3}{p{3\votelength}}{\min@voteT}\\\hline + \tiny \min@voteTI & \tiny \min@voteTII & \tiny \min@voteTIII \\ + \hfill \min@voteVI & \hfill \min@voteVII + & \hfill \min@voteVIII\\\hline + \ifx\min@empty#1\else% + \multicolumn{3}{p{3\votelength}}{\decision{-}{#1}}% + \fi + \end{tabular}\par +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\min@voteIVlist} +% \verb|\min@voteIVlist| shows the result in a list with "yes, "no"\ldots +% \begin{macrocode} +\newcommand{\min@voteIVlist}[1]{ + \par + \begin{tabular}{ll} + \multicolumn{2}{p{0.9\textwidth}}{\min@voteT}\\ + \min@voteTI: & \min@voteVI\\ + \min@voteTII: & \min@voteVII\\ + \min@voteTIII: &\min@voteVIII\\ + \ifx\min@empty#1\else% + \multicolumn{2}{p{0.9\textwidth}}{\decision{-}{#1}}% + \fi + \end{tabular}\par +} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Old environment/macros} +% \begin{environment}{Vote} +% If you want to hold some votes together, use a +% \Lenv{Vote}-Environment. There was a sense for it +% before Version V1.6c. +% \begin{macrocode} +\newenvironment{Vote}{ + \setlength{\parindent}{0mm} +}{} +% \end{macrocode} +% \end{environment} ^^A Vote +% +% \begin{macro}{\Onevote} +% \verb|\Onevote| was defined in version less V1.6c. +% For compatibility it is remained. +% \changes{V1.7c}{2001/12/28}{Warning, when \cmd{\Onevote} is used} +% \begin{macrocode} +\newcommand{\Onevote}{% + \PackageWarningNoLine{minutes.sty}{% + The use of the macro Onevote is obsolete since V1.6 + }% + \vote% + } +% \end{macrocode} +% \end{macro}%^^A OneVote +% +%\section{Decisions} +% +% You can insert the list of decisions with the command +% \verb|\listofdecisions| +% +% \subsection{Declare decisions} +%Decisions are taken down in the command \verb|\decision|. +%Each decision will be put to an overview of all decisions +%(glossary). So decisions must belong to a decision theme. +% +% \begin{macro}{\decisiontheme} +%The command \verb|\decisiontheme| has two parameter: A +%classifier and a Title. All decisions must be assigned to one of these +% classified decisions. +% \begin{macrocode} +\newcommand{\decisiontheme}[2]{ +\@ifundefined{chapter}{ +\addcontentsline{\min@file@Dec}{decisiontheme}{{#1}{#2}{\thepart}} +}{ +\addcontentsline{\min@file@Dec}{decisiontheme}{{#1}{#2}{\thechapter}} +}% +} +% \end{macrocode} +% \end{macro}%^^A \decisiontheme +% +% \begin{macro}{\decision} +% Called with: +% \verb|\decision{Theme}{Short descr}[long]| or +% \verb|\decision*{...|.\par +% The asterisk-version will not produce an entry in the +% list of all decisions.\par +% Here we check the asterisk. +% \begin{macrocode} +\newcommand{\decision}[2]{% +\def\min@decisionTheme{#1}% +\def\min@decisionShorttext{#2}% +\min@decision% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\min@decision} +% \begin{macrocode} +\newcommand{\min@decision}[1][\min@xx]{% +\if*\min@decisionTheme\else% +\@ifundefined{chapter}{% +\addcontentsline{\min@file@Dec}{decision}{% + {\min@decisionTheme}{\min@decisionShorttext}{\thepart}}% +}{% +\addcontentsline{\min@file@Dec}{decision}{% + {\min@decisionTheme}{\min@decisionShorttext}{\thechapter}}% +}% +\fi% +\par\noindent\textbf{\min@textDecision\ifx*\min@decisionTheme$^*$\fi: }% +\min@decisionShorttext\par% +\ifx#1\min@xx\else% +\begin{quote}\small #1\end{quote}% +\fi% +} +% \end{macrocode} +% \end{macro}%^^A \min@decision +% +%\subsection{Output of the list of decisions} +% \begin{macro}{\listofdecisions} +% If hyperref is loaded, \verb|\contentsline| must be modified. +% \begin{macrocode} +\newcommand{\listofdecisions}{ +\ifhyperloaded +\renewcommand{\contentsline}[4]{ +\csname l@##1\endcsname{##2}{##3} +} +\fi +\@starttoc{\min@file@Dec} +}% \listofdecisions +% \end{macrocode} +% \end{macro} %^^A\listofdecisions +% +% \begin{macro}{\l@decisiontheme} +% \begin{macro}{\min@l@decisiontheme} +% Here it is defined how one line for the theme looks like. +% \begin{macrocode} +\newcommand{\l@decisiontheme}[2]{ +\expandafter\min@l@decisiontheme#1 +} +\newcommand{\min@l@decisiontheme}[3]{%Theme}{Decision}{Chapter} +\noindent\textbf{#2}\par +} +% \end{macrocode} +% \end{macro} %^^A{\l@decisiontheme} +% \end{macro} %^^A{\min@l@decisiontheme} +% +% \begin{macro}{\l@decision} +% \begin{macro}{\min@l@decision} +% Here it is defined how one line for the decision looks like. +% \begin{macrocode} +\newcommand{\l@decision}[2]{ +\noindent\expandafter\min@l@decision#1{#2} +} +\newcommand{\min@l@decision}[4]{%{Theme}{Decision}{Chapter}{page} +\@dottedtocline{1}{0mm}{0mm}{#2}{#4} +} +% \end{macrocode} +% \end{macro} %^^A{\l@decision} +% \end{macro} %^^A{\min@l@decision} +% +% \subsection{Argumentations} +% \begin{environment}{Argumentation} +% \changes{V1.4b}{2000/07/24}{Added the environment Argumentation with pro and contra} +% Before you make a decision you want to discuss the problem. +% A comparison of arguments can be done with \Lopt{Argumentation}. +% +% \begin{macrocode} +\newenvironment{Argumentation}{\begin{itemize}}{\end{itemize}} +% \end{macrocode} +% \end{environment} %^^A{Argumentation} +% +% \begin{macro}{\pro} \begin{macro}{\Pro} +% \begin{macro}{\contra}\begin{macro}{\Contra} +% \begin{macro}{\result} +% The macros \verb|\pro| and \verb|\contra| (respective the big +% alternatives) define argument for and against the discussed point. +% \verb|\result| gives a result. +% \begin{macrocode} +\newcommand{\pro}{\item[\textcircled{+}]} +\newcommand{\Pro}{\item[\textbf{\textcircled{+}}]} +\newcommand{\contra}{\item[\textcircled{-}]} +\newcommand{\Contra}{\item[\textbf{\textcircled{-}}]} +\newcommand{\result}{\item[$\Rightarrow$]} +% \end{macrocode} +% \end{macro} %^^A\result +% \end{macro}\end{macro} %^^A\contra/\Contra +% \end{macro}\end{macro} %^^A\pro/\Pro +% +% +% \begin{environment}{Opinions} +% \changes{V1.7d}{2002/01/04}{Added the environment Opinions} +% When there are discussions, different people has different +% opinions. Here you can built a discussion with different +% participants. +% +% \begin{macrocode} +\newenvironment{Opinions}{\begin{description}}{\end{description}} +% \end{macrocode} +% \end{environment} %^^A{Opinions} +% +% \begin{macro}{\opinion} +% \changes{V1.7d}{2002/01/04}{Added \cmd{\opinion}} +% \begin{macrocode} +\newcommand{\opinion}[2]{\textsc{#1:} #2} +% \end{macrocode} +% \end{macro} %^^A +% +% \section{Tasks} +% \changes{V1.6b}{2001/02/18}{task possible outside minutes environment} +% \begin{macro}{\task} +% Tasks are defined with the macro \verb|\task|. There are +% following parameters: +% \begin{itemize} +% \item {}[optional] Date of completion.\par +% If this parameter is not set, the task will be listed in the +% list of all open tasks. If it is filled a footnote is printed +% with the information. +% \item Responsible person. An Asterisk means `anybody' and +% nothing is printed. +% \item {}[optional] Date to to it +% \item What to do. +% \end{itemize} +% If \verb|\task| is used outside the minutes environment, we need the macro +% \verb|\min@date|. +% \begin{macrocode} +\let\min@date\relax +% \end{macrocode} +% +% \begin{macrocode} +\newcommand{\task}[2][\relax]{ +\def\min@taskDone{#1} +\def\min@taskWho{#2} +\min@task +} +% \end{macrocode} +% \end{macro}%^^A{\task} +% \changes{V1.4b}{2000/08/10}{date and fileinfo of the minutes in task list} +% \begin{macro}{\min@task} +% \begin{macrocode} +\newcommand{\min@task}[2][\relax]{ +\def\min@taskWhen{#1} +\def\min@taskWhat{#2} +\ifx\relax\min@file + \def\min@fileinfo{} +\else + \def\min@fileinfo{\min@file/\the\inputlineno} +\fi +\def\min@space{} +\par\noindent\textbf{\min@textTask}% +\if\relax\min@taskWhen\else\ (\min@taskWhen)\fi% +\if\relax\min@taskDone{% +\@ifundefined{chapter}{% +\addcontentsline{minTsk}{task}{\protect\minutestask% + {\min@taskWhat}{\thepart}{\min@taskWhen}% + {\min@taskWho}{\min@date}{\min@fileinfo}}% +}{% +\addcontentsline{minTsk}{task}{\protect\minutestask% + {\min@taskWhat}{\thechapter}{\min@taskWhen}% + {\min@taskWho}{\min@date}{\min@fileinfo}}% +}%chapter defined +}\else%\relax\min@taskDone +\ifx\min@space\min@taskDone\else\footnote{\min@taskDone}\fi% +\fi%\relax\min@taskDone +: +\min@taskWhat\ +\if*\min@taskWho\else (\min@taskWho)\fi +} +% \end{macrocode} +% \end{macro}%^^A{\min@task} +% +%\subsection{Output of the list of tasks} +% \begin{macro}{\listoftasks} +% \begin{macrocode} +\newcommand{\listoftasks}[1][\relax]{ +\bgroup +\ifhyperloaded +\renewcommand{\contentsline}[4]{ +\csname l@##1\endcsname{##2}{##3} +} +\fi +\ifx\relax#1 +\@starttoc{minTsk} +\else +\PackageWarning{minutes.sty}{ + foreign minTsk -> Check Hyper\MessageBreak + You are using the list of tasks with tasks from a foreign + document\MessageBreak + This document must use the hyperref-package like this document. +}% +{\InputIfFileExists{#1.minTsk}{}{}} +\fi +\egroup +}% \listoftasks +% \end{macrocode} +% \end{macro} %^^A\listoftasks +% +% To write one task, we must define the width for the responsible persons. +% If somebody want's to modify it, just set another value for +% \verb|\min@responsiblelength|. This +% value reduce the place for the tasks itself. +% \begin{macrocode} +\newlength{\responsiblelength} +\setlength{\responsiblelength}{0.15\linewidth} +% \end{macrocode} +% +% \begin{macro}{\l@task} +% Call \verb|\minutestask| from task-file with the page information. +% \begin{macrocode} +\newcommand{\l@task}[2]{#1{#2}} +% \end{macrocode} +% \end{macro}%^^A{\l@task} +% +% \begin{macro}{\minutestask} +% Write one task in the list of all tasks. There are a lot of data, +% and it is a problem who to print them in a nice way. +% +% \verb|\minutestask| contains following information: +% \begin{enumerate} +% \item Text of the task +% \item Minutes where the task is defined +% \item When the task should be done +% \item Who should do the task. Asterisk is for anybody. +% \item Date of the minutes (defined by \verb|\minutesdate|) +% \item Page in the document, where the task is defined. +% \end{enumerate} +% +% \changes{V1.6b}{2001/03/09}{Hint from Albert Sill: with scrartcl in unneeded / in listoftasks} +% \begin{macrocode} +\newcommand{\minutestask}[7]{% +% {What}{section}{When}{Who}{date}{file}{page} +\if*#4 +\def\min@l@taskWho{\min@textAnybody} +\else +\def\min@l@taskWho{#4} +\fi +\def\numberline##1{\parbox[t]{\responsiblelength}{##1\hfil}~} +\@dottedtocline{1}{0mm}{\responsiblelength}{ +\numberline{\min@l@taskWho} +\if\relax#3\else$\hookrightarrow$ #3\\\fi%date to do +#1 \if\relax#5\else (#5)\fi%Text (date of minutes) +\ifmin@fileinfo\footnotesize\relax~[#6]\fi}%File/linenumber +{#2\ifx#2\empty\else/\fi#7}%sec/page, +} +% \end{macrocode} +% \end{macro}%^^A{\minutestask} +% +% +% \section{Schedule} +% \begin{macro}{\schedule} +% Called as \verb|\schedule*[File]{yyyy/mm/dd}[xx:xx]{What}|. The +% first optional parameter defines the filename of the +% \file{cld}-File. Default is \verb|\jobname|. +% +% There are only pseudo parameters. +% There is a sequence of actions: +% \begin{enumerate} +% \item \verb|\schedule| checks for an asteriks and after it, it calls +% \verb|\min@scheduleStar| or \verb|\min@scheduleNoStar|. +% \item \verb|\min@scheduleStar| or \verb|\min@scheduleNoStar| set +% a flag and then they call \verb|\min@scheduleI|. +% \item \verb|\min@scheduleI| saves the optional job name and the +% date. After this \verb|\min@scheduleII| is called. +% \item \verb|\min@scheduleII| read the rest of the data and do +% the work. +% \end{enumerate} +% +% Better: \verb|\appointment|, \verb|\event|? +% \begin{macrocode} +\newcommand*{\schedule}{\@ifstar\min@scheduleStar\min@scheduleNoStar} +\newif{\ifmin@scheduleStar} +\newcommand{\min@scheduleNoStar}{\global\min@scheduleStarfalse\min@scheduleI} +\newcommand{\min@scheduleStar}{\global\min@scheduleStartrue\min@scheduleI} +% \end{macrocode} +% \end{macro} %^^A \schedule +% +% \begin{macro}{\min@scheduleI} +% \begin{macrocode} +\newcommand*{\min@scheduleI}[2][\jobname]{%[file]{yyyy/mm/dd} +\def\min@sch@file{#1} +\def\min@sch@date{#2} +\min@scheduleII +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\min@scheduleII} +% \begin{macrocode} +\newcommand*{\min@scheduleII}[2][]{%[time]{schedule text} +\def\min@sch@time{#1} +\def\min@sch@text{#2} +\min@scheduleIII +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\min@scheduleIII} +% +% Write the schedule line. The date is bold, rest normal. +% The date is built by the defined format for a date. +% +% In addition an entry to the \file{aux}-File is created with all +% parameters. This entry can be used to create a \file{cld}-File for +% \Lpack{calendar.sty} +% \changes{V1.5b}{2000/12/19}{Modified look for dates} +% \begin{macrocode} +\newcommand{\min@scheduleIII}[1][\min@xx]{%[long text] + \par\noindent\emph{\expandafter\min@writedate \min@sch@date/% + \ifx\@empty\min@sch@time\else\ \min@sch@time\fi:} + \min@sch@text + \ifx#1\min@xx\else\nobreak% + \begin{list}{}{\setlength{\leftmargin}{1em}\setlength{\partopsep}{\parsep}} + \item #1 + \end{list} + \fi\par% + \ifmin@scheduleStar\else + \ifx#1\min@xx% + \addcontentsline{\min@file@Cld}{schedule}{\protect\min@l@schedule{\min@sch@file}% + {\min@sch@date}{\min@sch@time}{\min@sch@text}{}} + \else + \addcontentsline{\min@file@Cld}{schedule}{\protect\min@l@schedule{\min@sch@file}% + {\min@sch@date}{\min@sch@time}{\min@sch@text}{#1}} + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\min@writedate} +% ^^A check CTAN/macros/latex/contrib/supported/isodate +% Fill \verb|\day|\ldots and call \verb|\today| for a language specific +% printout of the date. The modification of \verb|\day|\ldots are local. +% \begin{macrocode} +\def\min@writedate#1/#2/#3/{ +\day=#3 +\month=#2 +\year=#1 +\today +} +% \end{macrocode} +% \end{macro} +% +% +% \subsection{Commands to prepare \file{cld}-File} +% \changes{V1.3}{2000/07/22}{Support of calendar.sty} +% Preparation can be called by an option \Lopt{CreateCld}. +% \begin{macrocode} +\DeclareOption{CreateCld}{\prepareCal} +% \end{macrocode} +% +% \begin{macro}{\prepareCal} +% Extract data from \file{aux} and fill \file{cld}. The target file +% is in the optional parameter. +% \begin{macrocode} +\newcommand{\prepareCal}[1][\jobname]{ +\ifhyperloaded +\renewcommand{\contentsline}[4]{ +\csname l@##1\endcsname{##2}{##3} +} +\fi +\newwrite\cld +\gdef\min@calfilename{#1} +\immediate\openout\cld=#1.cld +\@starttoc{\min@file@Cld} +\immediate\closeout\cld % +} +% \end{macrocode} +% \end{macro} %^^A\prepareCal +% +% \begin{macro}{\l@schedule} +% This macro is called from \verb|\@starttoc|. The first parameter +% contains the data in the macro \verb|\min@l@schedule|. +% \begin{macrocode} +\newcommand{\l@schedule}[2]{#1} +% \end{macrocode} +% \end{macro} %^^A\l@schedule +% +% \begin{macro}{\min@l@schedule} +% Writes one entry to the \file{cld}-File. +% If \#4 or \#5 is complex, there is an overflow. +% \begin{macrocode} +\newcommand{\min@l@schedule}[5]{%{file}{date}{time}{what}{longtext} +\let\"\relax%no expansion for "Umlaute" +\let\ss\relax%no expansion for sz +\catcode`\"12\relax%"is normal +\def\min@xx{#5} +%\def\min@temp{#1} +%\if\jobname\min@calfilename--> output to other file.cld +\ifx\min@xx\@empty +\immediate\write\cld{\expandafter\min@writecal#2/ #3 {#4}} +\else +%%This is not robust +%%\immediate\write\cld{\expandafter\min@writecal#2/ #3 {#4}[#4:\noexpand\\ #5]} +%%This is robust, but not the expected behaviour. +\immediate\write\cld{\expandafter\min@writecal#2/ #3 {#4}} +\fi +} +% \end{macrocode} +% \end{macro} %^^A\l@schedule +% +% \begin{macro}{\min@writecal} +% Write the date in a version, understood by \Lpack{calendar.sty}. +% Without the dot after the month there is no space between month +% and year. A \verb|\ | is not extracted and can not be interpreted +% by \Lpack{calendar.sty}. +% \begin{macrocode} +\def\min@writecal#1/#2/#3/{ +#3 +\ifcase#2 \or jan\or feb\or mar\or apr\or may\or +jun\or jul\or aug\or sep\or oct\or nov\or dec\fi. + #1 +} +% \end{macrocode} +% \end{macro} %^^A\min@writecal +% +% \section{Multilingual texts, Support of Babel.sty} +% \subsection{German commands}\label{german!commands} +% \begin{macro}{German Alias} +% German minute takers can use German macros. There is no difference +% in the look or the handling of the parameters, the German macros +% are only alias.\par +% \DescribeMacro{German header macros} +% \begin{macrocode} +\let\Protokoll\Minutes +\let\endProtokoll\endMinutes +\let\untertitel\subtitle +\let\moderation\moderation +\let\protokollant\minutetaker +\let\teilnehmer\participant +\let\sitzungsdatum\minutesdate +\let\sitzungsbeginn\starttime +\let\sitzungsende\endtime +\let\sitzungsort\location +\let\gaeste\guest +\let\verteiler\cc +\let\fehlend\missing +\let\fehlendEntschuldigt\missingExcused +\let\fehlendUnentschuldigt\missingNoExcuse +%\let\protokollKopf\min@maketitle%->in \begin{Minutes} +\let\fremdProtokoll\foreignMinutes +% \end{macrocode} +% \DescribeMacro{German topic macros} +% \verb|\topic| is also ok for German. +% \begin{macrocode} +\let\neueSpalte\newcols +\let\zusatztopic\addtopic +% \end{macrocode} +% \DescribeMacro{German voting macros} +% \begin{macrocode} +\newenvironment{Abstimmung}{\begin{Vote}}{\end{Vote}} +\let\abstimmung\vote +\let\Einzelabstimmung\Onevote%obsolete since V1.6 +% \end{macrocode} +% \DescribeMacro{German argumentations} +% |\pro|, |\contra| etc. is fine for German. +% \changes{V1.7d}{2002/01/04}{Added the environment Meinung} +% \begin{macrocode} +\let\ergebnis\result +\newenvironment{Meinungen}{\begin{Opinions}}{\end{Opinions}} +\let\meinung\opinion +% \end{macrocode} +% \DescribeMacro{German decision macros} +% \begin{macrocode} +\let\beschluss\decision +\let\beschlussthema\decisiontheme +\let\beschlussliste\listofdecisions +% \end{macrocode} +% +% \DescribeMacro{German task macros} +% \begin{macrocode} +\let\aufgabe\task +\let\aufgabenliste\listoftasks +% \end{macrocode} +% +% \DescribeMacro{German schedule macros} +% \begin{macrocode} +\let\termin\schedule +% \end{macrocode} +% \DescribeMacro{German attachment macros} +% \begin{macrocode} +\let\anhang\attachment +\let\anhangsliste\listofattachments +% \end{macrocode} +% \DescribeMacro{other german macros} +% \begin{macrocode} +\let\nachtrag\postscript +\newenvironment{Nachtrag}{\begin{Postscript}}{\end{Postscript}} +% \end{macrocode} +% \end{macro} +% +% \subsection{Dutch commands}\label{dutch!commands} +% Thanks to Johan Henselmans for all the hard work to put Dutch +% commands into \Lpack{minutes.sty}. +% \begin{macro}{Dutch Alias} +% \changes{V1.7c}{2001/12/28}{Add Dutch commands} +% Dutch minutetaker can use Dutch macros. There is no difference +% in the look or the handling of the parameters, the Dutch macros +% are only alias.\par +% \DescribeMacro{Dutch header macros} +% \begin{macrocode} +\let\Notulen\Minutes +\let\endNotulen\endMinutes +\let\ondertitel\subtitle +\let\voorzitter\moderation +\let\notulist\minutetaker +\let\deelnemer\participant +\let\bijeenkomstdatum\minutesdate +\let\beginbijeenkomst\starttime +\let\eindbijeenkomst\endtime +\let\locatie\location +\let\gast\guest +\let\cc\cc +\let\afwezig\missing +\let\afwezigBericht\missingExcused +\let\afwezigZonderBericht\missingNoExcuse +%\let\notulenkop\min@maketitle%->in \begin{Minutes} +\let\extranotulen\foreignMinutes +% \end{macrocode} +% \DescribeMacro{Dutch topic macros} +% \verb|\topic| is also ok for Dutch. +% \begin{macrocode} +\let\nieuweKolom\newcols +\let\extrapunt\addtopic +% \end{macrocode} +% \DescribeMacro{Dutch voting macros} +% \begin{macrocode} +\newenvironment{Stemming}{\begin{Vote}}{\end{Vote}} +\let\stemming\vote +%%\let\Eenstemming\Onevote%obsolete since V1.6 +% \end{macrocode} +% \DescribeMacro{Dutch argumentations} +%^^A \changes{V1.7d}{2002/01/04}{Added the environment Meinung} +% \begin{macrocode} +\let\resultaat\result +%\newenvironment{Meinung}{\begin{Opinions}}{\end{Opinions}} ?? +%\let\meinung\opinion ?? +% \end{macrocode} +% \DescribeMacro{Dutch decision macros} +% \begin{macrocode} +\let\besluit\decision +\let\besluitonderwerp\decisiontheme +\let\besluitenlijst\listofdecisions +% \end{macrocode} +% +% \DescribeMacro{Dutch task macros} +% \begin{macrocode} +\let\aktie\task +\let\aktielijst\listoftasks +% \end{macrocode} +% +% \DescribeMacro{Dutch schedule macros} +% \begin{macrocode} +\let\termijn\schedule +% \end{macrocode} +% \DescribeMacro{Dutch attachment macros} +% \begin{macrocode} +\let\bijlage\attachment +\let\bijlagenlijst\listofattachments +% \end{macrocode} +% \DescribeMacro{other Dutch macros} +% \begin{macrocode} +\let\naschrift\postscript +\newenvironment{Naschrift}{\begin{Postscript}}{\end{Postscript}} +% \end{macrocode} +% \end{macro} +% +% \subsection{The texts of \texttt{minutes.sty}} +% \changes{V1.8f}{2010/03/11}{Added \& to avoid unwanted spaces} +% For multilingual use, the packet expect the use of babel.sty. +% If babel.sty is not used, the last defined language will be used +% (up to now German). +% +% If you want to add another language, copy the part +% |\extrasenglish| and replace the English words with the new one of +% your language. Please send me your addition (knut@lickert.net), so +% I can add it in the next version. +% +% \begin{macro}{\addto} +% \begin{macrocode} +\@ifundefined{addto}{\newcommand{\addto}[2]{#2}}{\relax} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{English texts} +% \begin{macro}{\extrasenglisch} +% \begin{macrocode} +\addto\extrasenglish{% +\def\min@textModerator{Moderation}% +\def\min@textMinutesTaker{Minutes taker}% +\def\min@textPresent{Those present}%Participiant: +\def\min@textAbsent{Absent}% +\def\min@textAbsentExcused{\min@textAbsent\xspace (excused)}% +\def\min@textAbsentNoExcuse{\min@textAbsent\xspace (not excused)}% +\def\min@textGuest{Guest}% +\def\min@textDate{Date}% +\def\min@textStarttime{Begin of the meeting}% +\def\min@textEndtime{End of the meeting}% +\def\min@textLocation{Location of the meeting}% +\def\min@textCc{Distribution}% +\def\min@textPostscript{Postscript}% +\def\min@textEnclosure{Enclosure}% +\def\min@textforeignMinutes{Foreign minutes}% +\def\min@textSecret{including non-public informations}% +\def\min@textPage{page}% +\def\min@toptext{}%Text before Topic +\def\min@textForeign{(no \LaTeXe -minute)}% +\def\min@textYes{Yes}% +\def\min@textNo{No}% +\def\min@textNoVote{no vote}% +\def\min@textDecision{Decision}% +\def\min@textTask{Task}% +\def\min@textResponsible{Responsible}% +\def\min@textAnybody{Anybody}% +\@ifundefined{chapter}{% + \renewcommand{\partname}{Minutes}% + \renewcommand{\ptctitle}{Overview of topics}% + }{% + \renewcommand{\chaptername}{Minutes}% + \def\mtctitle{List of topics}% + }% +} +% \end{macrocode}%^^A english +% \end{macro} +% +% \subsubsection{Dutch texts} +% Thanks again to Johan Henselmans for all the hard work to put +% Dutch texts into \Lpack{minutes.sty}. +% \begin{macro}{\extrasdutch} +% \changes{V1.7c}{2001/12/28}{Add Dutch texts} +% \begin{macrocode} +\addto\extrasdutch{% +\def\min@textModerator{Voorzitter}% +\def\min@textMinutesTaker{Notulist}% +\def\min@textPresent{Aanwezig}%Participiant: +\def\min@textAbsent{Afwezig}% +\def\min@textAbsentExcused{\min@textAbsent\xspace (met bericht)}% +\def\min@textAbsentNoExcuse{\min@textAbsent\xspace (zonder bericht)}% +\def\min@textGuest{Gasten}% +\def\min@textDate{Datum}% +\def\min@textStarttime{Begin van de bijeenkomst}% +\def\min@textEndtime{Eind van de bijeenkomst}% +\def\min@textLocation{Locatie van de bijeenkomst}% +\def\min@textCc{Distributie}% +\def\min@textPostscript{Naschrift}% +\def\min@textEnclosure{Bijlagen}% +\def\min@textforeignMinutes{Externe notulen}% +\def\min@textSecret{inclusief niet openbare informatie}% +\def\min@textPage{pagina}% +\def\min@toptext{}%Text before Topic +\def\min@textForeign{(no \LaTeXe -minute)}% +\def\min@textYes{Ja}% +\def\min@textNo{Nee}% +\def\min@textNoVote{Geen Mening}% +\def\min@textDecision{Besluit}% +\def\min@textTask{Aktie}% +\def\min@textResponsible{Verantwoordelijk}% +\def\min@textAnybody{Iedereen}% +\@ifundefined{chapter}{% + \renewcommand{\partname}{Notulen}% + \renewcommand{\ptctitle}{Onderwerpen}% + }{% + \renewcommand{\chaptername}{Notulen}% + \def\mtctitle{Onderwerpen}% + }% +} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{French texts} +% \begin{macro}{\min@frenchText} +% \changes{V1.7b}{2001/12/26}{Support of French minutes} +% Ok, I learned French in school, so I decided to add the French +% words. But since my schooldays I forgot a lot, and I am not +% familiar with French minutes. Please send me your corrections. +% \changes{V1.8d}{2009/12/04}{Correction French after some corrections} +% +% \changes{V1.8d}{2009/12/04}{Support of french/frenchb} +% There are two French language packages french and frenchb. +% This macro is used for both. +% \begin{macrocode} +\def\min@frenchText{% +\def\min@textModerator{Animateur}%ou (Animateuse) +\def\min@textMinutesTaker{Secr\'{e}taire de s\'{e}ance}% +\def\min@textPresent{Participant}% +\def\min@textAbsent{Absent}% +\def\min@textAbsentExcused{\min@textAbsent\xspace (annonc\'{e})}% +\def\min@textAbsentNoExcuse{\min@textAbsent\xspace (pas annonc\'{e})}% +\def\min@textGuest{Visiteur}% +\def\min@textDate{Date}% +\def\min@textStarttime{Commencement}% +\def\min@textEndtime{Fin}% +\def\min@textLocation{Lieu}% +\def\min@textCc{Distribution}% +\def\min@textPostscript{Suppl\'{e}ment}% +\def\min@textEnclosure{Appendice}% +\def\min@textforeignMinutes{proc\`{e}s--verbal \'{e}trang\`{e}re}% +\def\min@textSecret{avec des informations secret}% +\def\min@textPage{page}% +\def\min@toptext{}%Text before Topic +\def\min@textForeign{proc\`{e}s--verbal sans \LaTeX}% +\def\min@textYes{Oui}% +\def\min@textNo{Non}% +\def\min@textNoVote{Sans d\'{e}cision}% +\def\min@textDecision{D\'{e}cision}% +\def\min@textTask{Devoir}% +\def\min@textResponsible{R\'{e}sponsible}% +\def\min@textAnybody{Quelqu'un}% +\@ifundefined{chapter}{% + \renewcommand{\partname}{Proc\`{e}s--verbal}% + \renewcommand{\ptctitle}{Table des proc\`{e}s--verbal}% + }{% + \renewcommand{\chaptername}{Proc\`{e}s--verbal}% + \def\mtctitle{Table des proc\`{e}s--verbal}% + }% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\extrasfrench} +% \begin{macrocode} +\addto\extrasfrench{% + \min@frenchText% + } +% \end{macrocode} +% \end{macro} +% \begin{macro}{\extrasfrenchb} +% \begin{macrocode} +\addto\extrasfrenchb{% + \min@frenchText% + } +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Polish texts} +% \changes{V1.8d}{2009/12/04}{Add Polish texts} +% Thanks to Sebastian Szwarc for his translations. +% \begin{macro}{\extraspolish} +% \begin{macrocode} +\addto\extraspolish{% +\def\min@textModerator{Przewodnicz\k{a}cy}% +\def\min@textMinutesTaker{Sekretarz}% +\def\min@textPresent{Obecni}%Participiant: +\def\min@textAbsent{Nieobecni}% +\def\min@textAbsentExcused{\min@textAbsent\xspace (nieusprawiedliwieni)}% +\def\min@textAbsentNoExcuse{\min@textAbsent\xspace (usprawiedliwieni)}% +\def\min@textGuest{Go\'{s}cie}% +\def\min@textDate{Data}% +\def\min@textStarttime{Pocz\k{a}tek zebrania}% +\def\min@textEndtime{Koniec zebrania}% +\def\min@textLocation{Miejsce:}% +\def\min@textCc{Do wiadomo\'{s}ci}% +\def\min@textPostscript{PS}% +\def\min@textEnclosure{Za{\l}\k{a}cznik}% +\def\min@textforeignMinutes{Protoko{\l}y zewn\k{e}trzne}% +\def\min@textSecret{Poufne}% +\def\min@textPage{strona}% +\def\min@toptext{}%Text before Topic +\def\min@textForeign{(no \LaTeXe -minute)}% +\def\min@textYes{Tak}% +\def\min@textNo{Nie}% +\def\min@textNoVote{Wstrzyma{\l}o si\k{e}}% +\def\min@textDecision{Decyzja}% +\def\min@textTask{Zadanie}% +\def\min@textResponsible{Osoba odpowiedzialna}% +\def\min@textAnybody{Ktokolwiek}% +\@ifundefined{chapter}{% + \renewcommand{\partname}{Protok\'{o}{\l}}% + \renewcommand{\ptctitle}{Lista spraw}% + }{% + \renewcommand{\chaptername}{Protok\'{o}{\l}}% + \def\mtctitle{Lista spraw}% + }% +} +% \end{macrocode}%^^A Polish +% \end{macro} +% +% \subsubsection{German text} +% \begin{macro}{\min@germanText} +% And the German texts. German got a new spelling, +% so we have to define it for German and ngerman. +% The texts in this packet are written in the same manner for both +% spellings. +% \begin{macrocode} +\def\min@germanText{% +\def\min@textModerator{Moderation}% +\def\min@textMinutesTaker{Protokollant}% +\def\min@textPresent{Anwesend}% +\def\min@textAbsent{Abwesend}% +\def\min@textAbsentExcused{\min@textAbsent\xspace (entschuldigt)}% +\def\min@textAbsentNoExcuse{\min@textAbsent\xspace (unentschuldigt)}% +\def\min@textGuest{G\"aste}% +\def\min@textDate{Datum}% +\def\min@textStarttime{Beginn der Sitzung}% +\def\min@textEndtime{Ende der Sitzung}% +\def\min@textLocation{Sitzungsort}% +\def\min@textCc{Verteiler}% +\def\min@textPostscript{Nachtrag}% +\def\min@textEnclosure{Anhang}% +\def\min@textforeignMinutes{Fremdes Protokoll}% +\def\min@textSecret{mit nicht\"offentlichen Informationen}% +\def\min@textPage{Seite}% +\def\min@textForeign{(kein \LaTeXe -Protokoll)}% +\def\min@textYes{Ja}% +\def\min@textNo{Nein}% +\def\min@textNoVote{Enthaltung}% +%%\def\min@textDecision{Beschlu{\ss}}% diff new/old spelling +\def\min@textTask{Aufgabe}% +\def\min@textResponsible{Verantwortlich}% +\def\min@textAnybody{Irgendwer}% +\def\min@toptext{}%Top} %-> ugly table of contents +\@ifundefined{chapter}{% + \renewcommand{\partname}{Protokoll}% + \renewcommand{\ptctitle}{Tagesordnung}% + }{% + \renewcommand{\chaptername}{Protokoll}% + \renewcommand{\mtctitle}{Tagesordnung}% + }% +} +% \end{macrocode} +% \begin{macro}{\extrasgerman} +% \begin{macrocode} +\addto\extrasgerman{% + \min@germanText% + \def\min@textDecision{Beschlu{\ss}}% + } +% \end{macrocode} +% \end{macro} +% \begin{macro}{\extrasngerman} +% \begin{macrocode} +\addto\extrasngerman{% + \min@germanText% + \def\min@textDecision{Beschluss}% + } +% \end{macrocode} +% \end{macro} +% \end{macro}%^^A\min@germanText +% +% \section{Execute the Options} +% \begin{macrocode} +\ProcessOptions\relax +% \end{macrocode} +% +% \Finale +% \PrintIndex +% \PrintChanges +%\iffalse +% +%\fi +% \end{document} +%\endinput diff --git a/macros/latex/contrib/minutes/minutes.ins b/macros/latex/contrib/minutes/minutes.ins new file mode 100644 index 0000000000..9504d0b19f --- /dev/null +++ b/macros/latex/contrib/minutes/minutes.ins @@ -0,0 +1,96 @@ +\def\batchfile{minutes.ins} +\input docstrip.tex +\keepsilent +% For documentation with index and changes, run: +% latex minutes +% latex minutes +% makeindex -s gglo -o minutes.gls minutes.glo +% makeindex -s gind -o minutes.ind minutes.idx +% latex minutes +% +% or for PDF-Documentation run +% +% pdflatex minutes.dtx +% pdflatex minutes.dtx +% makeindex -s gglo -o minutes.gls minutes.glo +% makeindex -s gind -o minutes.ind minutes.idx +% pdflatex minutes.dtx +% thumbpdf minutes +% pdflatex minutes.dtx +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\preamble +---------------------------------------------------------------------- +The original file is loadable from CTAN on: +macros/latex/contrib/supported/minutes + +Name of contribution: minutes +Name and email: Knut Lickert +Location on CTAN: tex-archive/macros/latex/contrib/supported/minutes + http://tex.lickert.net/packages/minutes/index.html +Summary description: Package for writing (collection of) minutes +German Information: Paket zum Erstellen von Protokollen + to take minutes = Protokoll schreiben + protocoll = diplomatische Protokoll +License type: Free + +Announcement text: +---------------------------------------------------------------------- +minutes.sty provides the creation of a collection of minutes. +Special features: +- Support of tasks (who, schedule, what, date of finishing), + possibility of creating a list of open tasks + inclusion of open tasks from other minutes ('open last year tasks') + (also possible as task.sty) +- Support of attachments +- Support of schedule dates (support of calendar.sty) +- Different versions (`secret parts') +- Macros for votes and decisions (list of decisions) + +The minutes package contains: +- minutes.dtx +- minutes.ins +- protokol.tex German description +- Overview.tex Include for minutes.dtx and protokol.tex + Also stand-alone document +- Tagesordnung.tex + A template for a "Mitgliederversammlung" +To run the examples, you need blindtext.sty. + +After running minutes.ins this package include: +- minutes.sty The style itself +- minutes.cfg A configuration file +- Sample.tex A file, including an English, Dutch and German minute +- SampleEN.tex An English minutes (loaded by Sample.tex) +- SampleDE.tex A German minutes (loaded by Sample.tex) +- SampleNL.tex A Dutch minutes (loaded by Sample.tex) +- MinStyGd.tex A file to check the behavior with other classes, + test different layouts... +---------------------------------------------------------------------- +\endpreamble + +\generateFile{minutes.sty}{f}{\from{minutes.dtx}{package}} +\nopreamble +%\generateFile{minutes.cfg}{t}{\from{minutes.dtx}{config}} +\generateFile{Sample.tex}{f}{\from{minutes.dtx}{sample}} +\generateFile{SampleEN.tex}{f}{\from{minutes.dtx}{sampleEN}} +\generateFile{SampleDE.tex}{f}{\from{minutes.dtx}{sampleDE}} +\generateFile{SampleNL.tex}{f}{\from{minutes.dtx}{sampleNL}} +\generateFile{MinStyGd.tex}{f}{\from{minutes.dtx}{styleguide}} + +\Msg{***************************************************************} +\Msg{*} +\Msg{* To finish the installation you have to copy the files } +\Msg{*} +\Msg{*\space\space *.sty, *.cfg into a directory searched by TeX} +\Msg{*} +\Msg{* Adapt the *.cfg-File to your need} +\Msg{*} +\Msg{* in Sample.tex you will find an example} +\Msg{* SampleEN.tex contains an example for an english minutes} +\Msg{* SampleGE.tex enth"alt ein Beispiel eines deutschen Protokolls} +\Msg{*} +\Msg{***************************************************************} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\endinput diff --git a/macros/latex/contrib/minutes/minutes.pdf b/macros/latex/contrib/minutes/minutes.pdf new file mode 100644 index 0000000000..1a2d8ce8c0 Binary files /dev/null and b/macros/latex/contrib/minutes/minutes.pdf differ -- cgit v1.2.3