%jur-fall.sty - Style-Datei f"ur eine Umgebung mit juristischen Beispielsf"allen - Peter Felix Schuster \ProvidesPackage{jur-fall}[2006/08/02 v0.18 Paket f"ur juristische Beispielsf"alle als Umgebung] \RequirePackage{ifthen} \RequirePackage{jur-aufz} %Z"ahler f"ur F"alle und Abwandlungen definieren und setzen \newcommand{\@fallname}{Fall}%Makro f"ur die Bezeichnung f"ur F"alle \newcommand{\@abwandlungname}{Abwandlung}%Makro f"ur die Bezeichnung f"ur Abwandlungen \newcommand{\@anspruchname}{Anspruch}%Makro f"ur die Bezeichnung f"ur Anspr"uche \newcounter{fall}%Z"ahler fall (f"ur Fall-Nr) \newcounter{abwandlung}[fall]%Z"ahler abwandlung (f"ur Abwandlung-Nr), wird bei fall-Erh"ohung zur"uckgesetzt \newcounter{einzelabwandlung}%[fall]%Z"ahler einzelabwandlung (f"ur Nummer von alleinstehenden Abwandlungen) \newcounter{anspruch}[fall]%Z"ahler anspruch (f"ur Anspruch-Nr), wird bei fall-Erh"ohung zur"uckgesetzt \setcounter{fall}{0}%Anfangs auf 0 setzen \setcounter{abwandlung}{0}%Anfangs auf 0 setzen \setcounter{einzelabwandlung}{0}%Anfangs auf 0 setzen \setcounter{anspruch}{0}%Anfangs auf 0 setzen \newcommand{\newfall}{\refstepcounter{fall}}%Makro, das den Z"ahler erh"oht \newcommand{\newabwandlung}{\refstepcounter{abwandlung}}%Makro, das den Z"ahler erh"oht \newcommand{\neweinzelabwandlung}{\refstepcounter{einzelabwandlung}}%Makro, das den Z"ahler erh"oht. Eher sinnlos, %wenn er nicht gebraucht wird \newcommand{\newanspruch}{\refstepcounter{anspruch}}%Makro, das den Z"ahler erh"oht % \the gibt an, wie der Z"ahler ausgegeben werden soll. \renewcommand{\thefall}{\@fallname\,\arabic{fall}}%In arabischen Ziffern nummerieren. \renewcommand{\theabwandlung}{\@abwandlungname\space\alph{abwandlung})}%In Kleinbuchstaben nummerieren. \renewcommand{\theeinzelabwandlung}{\@abwandlungname.}%Gar nicht nummerieren (wer a sagt, muss auch b sagen) \renewcommand{\theanspruch}{\Roman{anspruch}.}%In gro"sen r"omischen Ziffern nummerieren. % \p@ (steht wohl f"ur pre- oder so) wird bei Verweisen auf den Counter (\ref...) vor die Ausgabe des Counters gepackt \renewcommand{\p@fall}{}%Bei Verweisen Fall (Nr) ausgegeben \renewcommand{\p@abwandlung}{\thefall,\space}%Bei Verweisen Fall (Nr), Abwandlung (Nr) ausgegeben \renewcommand{\p@einzelabwandlung}{\thefall,\space}%Bei Verweisen Fall (Nr), Abwandlung (Nr) ausgegeben \renewcommand{\p@anspruch}{\thefall,\space}%Bei Verweisen Fall (Nr), Anspruch (Nr) ausgegeben %\ifthenelse{\equal{\arabic{abwandlung}}{0}}{dann nix}{sonst \theabwandlung} %\ifthenelse{\equal{\arabic{einzelabwandlung}}{0}}{dann nix}{sonst \theeinzelabwandlung} %Hyperref verwendet \theH, um Fehler bei nicht-eindeutigen Referenzierungen (zB gibt es unter Fall 1 eine %Abwandlung a, wie auch unter Fall 2, beides hei"st aber a.) zu umgehen. %Hier ist es ganz sinnvoll, auf \p@\the zur"uckzugreifen. \newcommand{\theHabwandlung}{\p@abwandlung\theabwandlung}%F"ur hyperref \newcommand{\theHeinzelabwandlung}{\p@einzelabwandlung\theeinzelabwandlung\arabic{einzelabwandlung}}%F"ur hyperref \newcommand{\theHanspruch}{\p@anspruch\theanspruch}%F"ur hyperref %TODO: Umstellen auf \@starsection: % \@startsection{fall}{1}{0pt}{\baselineskip}{0pt}{\bfseries}[#1]{#2} % \@startsection{abwandlung}{2}{0pt}{\baselineskip}{0pt}{\bfseries}[#1]{#2} % \@startsection{einzelabwandlung}{2}{0pt}{\baselineskip}{0pt}{\bfseries}[#1]{#2} % \@startsection{anspruch}{3}{0pt}{\baselineskip}{0pt}{\bfseries}[#1]{#2} %Umgebung fall definieren. \newenvironment{fall}[1][]{%Ab hier Anfangsbefehle f"ur Umgebung \newfall%Z"ahler erh"ohen. \par\vspace{.75\baselineskip}%Neuen Absatz beginnen wenn n"otig. Abstand halten \begingroup\itshape\textbf{\thefall\ifthenelse{\equal{#1}{}}{.}{, \glqq{}#1\grqq{}:} }% %Gruppe beginnen, auf kursiv, Fall-Nummer ausgeben, die Fallbezeichnung voranstellen, evtl. Falltitel nachstellen }%Bis hier Anfangsbefehle f"ur Umgebung {%Ab dieser Zeile Endbefehle f"ur Umgebung \endgroup% \par\vspace{.25\baselineskip}%Neuen Absatz beginnen wenn n"otig. Abstand halten }%Gruppe beenden (Kein kursiv mehr). %TODO: gemeinsamen Nenner definieren! %Dasselbe in gr"un f"ur Abwandlungen \newenvironment{abwandlung}{% \par\vspace{.75\baselineskip}%Neuen Absatz beginnen wenn n"otig. Abstand halten \newabwandlung\begingroup\itshape\textbf{\theabwandlung}% }% {% \endgroup% \par\vspace{.25\baselineskip}%Neuen Absatz beginnen wenn n"otig. Abstand halten } %Die Sternchen-Variante sollte verwendet werden, wenn es zu einem Fall nur eine Abwandlung gibt (alleinstehende Abwandlung). %Bei ihr wird nicht wirklich gez"ahlt, sondern nur Abwandlung. ausgegeben. %\neweinzelabwandlung \newenvironment{abwandlung*}{% \par\vspace{.75\baselineskip}%Neuen Absatz beginnen wenn n"otig. Abstand halten \neweinzelabwandlung\begingroup\itshape\textbf{\theeinzelabwandlung}}% {% \endgroup% \par\vspace{.25\baselineskip}%Neuen Absatz beginnen wenn n"otig. Abstand halten } % Anspruch ist eine Pseudeo-Gliederungsebene, die eine "Uberschrift erzeugt. % \Anspruch{"Uberschrift} % Auch hier wieder eine Sternchen-Variante, die den Z"ahler unterdr"uckt % \Anspruch*{"Uberschrift} \newcommand{\Anspruch}{\@ifstar{\@anspruch}{\@ansprueche}}%"Uberpr"ufen, ob mit Sternchen aufgerufen %\newcommand{\einzelanspruch}[1]{\@anspruch{#1}} %Aufruf ohne Stern: \newcommand{\@ansprueche}[1]{\newanspruch\@anspruch{\theanspruch\space{}#1}}%Mit Nummer, ansonsten wie Sternchen-Variante %Sternchen-Variante und gemeinsamer Nenner \newcommand{\@anspruch}[1]{\allowbreak\par\vskip .67\baselineskip%Absatz, Abstand lassen, Titel #1 schreiben, Abstand \noindent\textbf{#1}%\begingroup\endgroup%\sffamily \par\nobreak\vskip .33\baselineskip \@afterheading} %\@afterheading sorgt daf"ur, dass kein Umbruch zwischen "Uberschrift und folgendem Text erfolgt %aus: source2e 61.2 (S. 332 von 534) (Def. v. \@xsect) %\nopagebreak\par\vspace{.25\baselineskip}\nopagebreak %Kann man hier \par nutzen? %Umgebung anspruch und anspruch*. Machen eigentlich nix anderes als \Anspruch und \Anspruch* %Allerdings definieren sie die Oberebene f"ur Aufz"ahlungen um. (Benutzung empfohlen!) %Aufruf mit \begin{anspruch}{Titel des Anspruchs} ... \end{anspruch} \newenvironment{anspruch}[1]{\footnotesize\@ansprueche{#1}\oberebene{\p@anspruch\theanspruch}}{}%\begingroup\endgroup \newenvironment{anspruch*}[1]{\footnotesize\@anspruch{#1}\oberebene{\thefall, Anspruch}}{}%\begingroup\endgroup \endinput