summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-11 23:55:01 +0000
committerKarl Berry <karl@freefriends.org>2006-01-11 23:55:01 +0000
commitb666f84e2a883ef2518e7df007bdab97e4a96c29 (patch)
treebfac3ef234edecd9401d80d1b2e8cc634e699b53
parent21fd8a0ac7c5b484056809096f0f735f008bdbe9 (diff)
trunk/Master/texmf-dist/source/latex/mentis
git-svn-id: svn://tug.org/texlive/trunk@380 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/source/latex/mentis/mentis.dtx1309
-rw-r--r--Master/texmf-dist/source/latex/mentis/mentis.ins55
2 files changed, 1364 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/mentis/mentis.dtx b/Master/texmf-dist/source/latex/mentis/mentis.dtx
new file mode 100644
index 00000000000..4916399f561
--- /dev/null
+++ b/Master/texmf-dist/source/latex/mentis/mentis.dtx
@@ -0,0 +1,1309 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2003 Georg M. Verweyen <Georg.Verweyen@rub.de>
+% ------------------------------------------------------------
+%
+% This file may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.2
+% of this license or (at your option) any later version.
+% The latest version of this license is in:
+%
+% http://www.latex-project.org/lppl.txt
+%
+% and version 1.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+%
+% \fi
+%
+% \iffalse
+%<*driver>
+\ProvidesFile{mentis.dtx}
+%</driver>
+%<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<class>\ProvidesClass{mentis}[2004/06/23 v1.3 mentis.cls]
+%<*driver>
+\documentclass[a4paper]{ltxdoc}
+\usepackage{tabularx}
+\usepackage{picinpar}
+\usepackage{textcomp}
+\usepackage{hyperref}
+\usepackage{mathptmx}
+\usepackage[scaled=.90]{helvet}
+\usepackage{courier}
+\usepackage{calc}
+\usepackage[latin1]{inputenc}
+\usepackage[T3,T1]{fontenc}
+\usepackage[activate]{pdfcprot}
+\usepackage[german,ngerman]{babel}
+\hypersetup{%
+ pdftitle={Die mentis-Klasse},%
+ pdfauthor={\textcopyright\ Georg M.~Verweyen <Georg.Verweyen@ruhr-uni-bochum.de>},%
+ pdfsubject={Anleitung zur .cls-Datei des Mentis Verlages},%
+ pdfkeywords={Mentis-Verlag, mentis.cls, Satzspiegel, Vorgaben,
+ Gliederung, Klasse, LaTeX, \LaTeXe}%
+}
+\setlength{\emergencystretch}{25pt}
+ \EnableCrossrefs
+ \CodelineIndex
+ \RecordChanges
+\begin{document}
+ \DocInput{mentis.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{737}
+%
+% \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 \~}
+%
+%
+% \changes{v1.0}{2003/09/25}{Erste Fassung}
+%
+% \GetFileInfo{mentis.cls}
+%
+% \DoNotIndex{\newcommand,\newenvironment}
+%
+%
+% \title{Die \textsf{mentis}-Klasse\thanks{%
+% An dieser Stelle möchte ich mich erst einmal für die lausig abgestimmten
+% Schriftarten dieser Dokumentation entschuldigen. Der einzige Vorteil
+% dieser Darstellung ist, dass die Verwendung von Adobe Standard"=Schriften
+% die Größe der Datei und damit auch die Downloadzeit um 80\,\%\ reduziert.
+% Auch sonst entspricht diese Datei nicht meinen typografischen
+% Vorstellungen, sie folgt einfach dem Standard für automatisch generierte
+% Dokumentationen von \LaTeX"=Klassen.}}
+% \author{Georg M.\,Verweyen \\ \texttt{Georg.Verweyen@rub.de}}
+%
+% \maketitle
+%
+% \begin{abstract}\noindent
+% \textsf{mentis.cls} provides a class file for the German publisher
+% \emph{Mentis Verlag GmbH, Paderborn}, that's why the rest of this document
+% is written in German.
+%
+% Für zwei verschieden Formate des Mentis Verlags nimmt \textsf{mentis.cls}
+% alle notwendigen Anpassungen vor, außerdem erleichtern einige Befehle die
+% Arbeit mit Beispielsätzen, Feingliederungen und anderem.
+% \end{abstract}
+%
+%
+%
+%\section{Warum \textsf{mentis.cls}}
+%
+% Diese Datei stellt sicher, dass \LaTeX-Dateien typographisch korrekt,
+% gut lesbar und allen Vorgaben des Mentis-Verlages gerecht gesetzt
+% werden. Im Einzelnen sorgt das Paket für einen guten Satzspiegel, für
+% einheitliche Überschriftenformatierung, es stellt Befehle für Beispielsätze
+% zur Verfügung, ändert die Darstellung der Fußnoten, des Inhaltsverzeichnisses
+% und des Literaturverzeichnisses.
+% Vor allem muss sich der Autor um all diese Feinheiten keine unnötigen
+% Gedanken machen, sondern nur dem Programm mitteilen was für eine logische
+% Struktur (etwa eine Fußnote) er haben will. WYGIWYM: What You Get Is What You Mean.
+%
+% Entstanden ist diese Datei beim Satz der Bücher \emph{Logik, Sprache, Metaphysik}
+% und \emph{Freges Kritik} von Prof.\ Dr.~Ulrich Pardey.
+% Das vorliegende Format trägt daher vor
+% allem seinen Bedürfnissen Rechnung. Dennoch sollten die vorgenommenen Anpassungen
+% eine solide Basis für andere Veröffentlichungen im Mentis-Verlag bilden.
+%
+% An dieser Stelle möchte ich darauf hinweisen, dass alle wesentlichen
+% Anpassungen des recht amerikanischen Stils der \LaTeXe"=Basisklassen an
+% kontinentaleuropäische Lesegewohnheiten dem KOMA"=Script"=Paket von Frank
+% Neukam, Markus Kohm und Axel Kielhorn zu verdanken sind.
+% \textsf{mentis.cls} ist nicht mehr als das angepasste Tüpfelchen auf dem
+% i von KOMA-Scr{\i}pt.
+%
+%
+% \section{Gebrauch}
+% Wenn Sie diese Anleitung als fertige pdf"~ oder dvi"=Datei aus dem Netz geladen
+% haben, müssen Sie auf Ihrem System eventuell noch die cls"=Datei erzeugen. Dazu
+% benötigen Sie die Dateien |mentis.dtx| und |mentis.ins|. Am einfachsten geht dies
+% indem Sie in der Kommandozeile |latex mentis.ins| eingeben und eine eventuelle Rückfrage
+% mit |y| bejahen. Diese Anleitung können Sie erzeugen indem Sie |latex mentis.dtx|
+% eingeben.
+% Kommen wir endlich zu Ihrem Text:
+% Zunächst müssen Sie \LaTeX\ mitteilen, dass es sich bei dem Projekt, an dem
+% \DescribeMacro{\documentclass\{mentis\}}
+% Sie gerade arbeiten, um ein Buch für den Mentis"=Verlag handelt.
+% Dazu geben Sie einfach als
+% obligatorischen Parameter des |\documentclass|"=Befehls |mentis| ein:
+% |\documentclass|""|{mentis}|
+%
+% Dann müssen Sie noch angeben, ob Ihr Buch im kleineren oder größeren
+% Format des Verlages gedruckt werden soll, dies geschieht als optionales Argument:
+% |\documentclass|""|[mentisklein]|""|{mentis}| oder
+% |\documentclass|""|[mentisgross]|""|{mentis}|.
+%
+%\begin{tabwindow}[0,r,{\small%
+% \begin{tabular}[t]{|p{.27\textwidth}|p{.11\textwidth}|}
+% \firsthline Texthöhe inkl.\ Kopfzeile mit lebendem Kolumnentitel und
+% Fußnote& 19,5\,cm/""18,2\,cm\\\hline Textbreite & 11,7\,cm/""10\,cm\\\hline Abstand der
+% Marginalien vom Text & 2\,mm\\\hline Maximale Breite der Marginalien &
+% 1,7\,cm/""1,4\,cm\\\hline Abstand der Kopfzeile vom Text & Eine
+% Zeilenhöhe\\\lasthline
+% \end{tabular}
+% },{Maße des Satzspiegels im großen/""kleinen Format}]
+% Sofern Sie keine Pakete einbinden, die den Satzspiegel beeinflussen, sollte
+% Ihr Dokument jetzt bereits die richtigen Maße aufweisen. Diese sind im
+% einzelnen der Tabelle zu entnehmen.
+%
+% Falls Sie noch Abweichungen feststellen, haben Sie höchstwahrscheinlich
+% Befehle in Ihrem Dokument benutzt, die den Satzspiegel beeinflussen
+% --~etwa |\textheight|, |\textwidth|, |\enlargethispage|. Diese sollten Sie
+% entfernen und nur in Notfällen (sehr schlechte Seitenumbrüche) darauf
+% zurückgreifen. Auch andere Pakete zur Änderung der Seitenränder etc.,
+% wie etwa \textsf{geometry.sty} sollten Sie hier nicht nutzen.
+%\end{tabwindow}
+%
+%
+%\section{Optionen}
+%Wie bereits erwähnt, steht und fällt \textsf{mentis.cls} mit der
+%Verwendung von KOMA"=Script. Das bedeutet nicht nur, dass Sie dieses Paket
+%installiert haben sollten (was bei allen üblichen Distributionen von
+%\LaTeXe\ der Fall ist), es bedeutet auch, dass Sie sich ein wenig mit KOMA-Script
+%vertraut machen sollten, wenn Sie von den Standardeinstellungen abweichen
+%wollen.
+%
+%Die wesentlichen Optionen, die Sie \textsf{mentis.cls} in der Form
+%|\documentclass|""[\meta{Option},""\meta{Option},""\dots] übergeben können
+%sind: |mentisgross|/""|mentisklein|, |mentisroemisch|, |final|/""|draft|, |openany|/""|openright|,
+%|smallheadings|/""|normalheadings|/""|bigheadings|,
+%|10pt|/""|11pt|/""|12pt|. Achten Sie bitte darauf, alle Optionen
+%ohne Leerräume und durch Kommata getrennt hintereinander zu schreiben.
+%
+% \DescribeMacro{mentisgross}\DescribeMacro{mentisklein} Eine dieser beiden
+% Optionen \emph{muss} angegeben werden. Damit wird dem Paket mitgeteilt, ob
+% der Text im etwas größeren oder kleineren Format des Verlages erscheinen
+% soll.
+%
+%\DescribeMacro{mentisroemisch} Diese Option stellt die Nummerierung der Kapitel
+% auf römische Ziffern um und passt das Inhaltsverzeichnis entsprechend an. Außerdem
+% werden den Abschnittsnummern nicht die Kapitelnummern vorangestellt. Also nicht
+% ">III.2"< sondern einfach ">2"<. Kapitelnummer und "~name findet der Leser jederzeit in der
+% Kopfzeile.
+%
+%\DescribeMacro{final/draft} |draft| teilt \LaTeX\ mit, dass es sich um
+%einen Probeausdruck handelt. Überlange Zeilen werden dann durch schwarze Balken
+%markiert. Außerdem geben dann einige nützliche Pakete (die Sie bei Bedarf
+%selbst einbinden müssen) auf dem Ausdruck
+%zusätzliche Informationen, die im späteren Druck (final)
+%natürlich nicht erscheinen sollen, so zeigt \textsf{showlabels} alle Namen
+%von Labeln und Verweisen, \textsf{showidx} zeigt, auf welche Stellen im
+%Text später der Index verweisen wird etc. |final| schaltet diese
+%Funktionen zentral ab.
+%
+%\DescribeMacro{openany/openright} Mit |openright| legen Sie fest, dass
+%Kapitel nur auf rechten, also ungeraden Buchseiten beginnen dürfen.
+%|openany| hebt diese Restriktion auf. Eine eigene neue Seite erhalten
+%Kapitelanfänge in jedem Fall.
+%
+%\DescribeMacro{...headings} Mit dieser Option wählen Sie die Größe der
+%Überschriften, ich persönlich finde |smallheadings| meistens ausreichend.
+%
+%\DescribeMacro{10pt/11pt/12pt} Diese Option gibt die Größe der
+%Grundschrift an. Alle verwendeten Größen (Überschriften, Fußnoten,
+%Kopfzeilen) werden bei Änderung dieser Grundschrift angepasst. Ich halte
+%10 Punkt für gut lesbar, allerdings werden beim größeren Satzspiegel
+%die Zeilen dann etwas lang. 11 Punkt sind in der Latin Modern eine
+%sehr komfortable Schriftgröße, 12 pt wäre für ein (Sach"~)""Buch ziemlich groß.
+%
+%\DescribeMacro{oneside} Wenn Sie für den eigenen Bedarf ein Exemplar
+%einseitig ausdrucken wollen, können Sie die Option |oneside| angeben,
+%damit ändert sich die Position der Seitenzahl, die Randverteilung und die
+%Erstellung der lebenden Kolumnentitel --~für den Buchdruck ist natürlich
+%zweiseitiger Druck voreingestellt (|twoside|).
+%
+%
+%\section{Gliederungselemente}
+%
+%Wie bei \LaTeX"=Büchern üblich ist die höchste Gliederungsebene
+%|\chapter|""\oarg{Kurztitel}""\marg{Titel}.\footnote{%
+% Bemerkenswert bei \textsf{mentis} ist, dass die
+% Kurztitel lediglich in der Kopfzeile auftauchen, im Inhaltsverzeichnis
+% dagegen der reguläre Titel. (Diese Funktion könnte bei einer
+% Umstellung auf \LaTeX3\ für Probleme sorgen.)
+%} Es folgen
+%|\section|""\oarg{Kurztitel}""\marg{Titel},
+%|\subsection|""\oarg{Kurztitel}""\marg{Titel} und
+%|\subsubsection|""\oarg{Kurztitel}""\marg{Titel}. Darüberhinaus gibt es
+%die Möglichkeit, das Buch mit |\part|""\oarg{Kurztitel}""\marg{Titel} in
+%einige (wenige!) große Teile zu gliedern. Diese Gliederungselemente
+%verlangen (jedenfalls typographisch) nach einem Titel!
+%\DescribeMacro{\Pnum} Um die Möglichkeit zu bieten, Unterabschnitte ohne
+%Titel zu nummerieren steht der Befehl |\Pnum| zur Verfügung. Wird er mit
+%leerem Argument verwendet, so entsteht ein neuer Unterabschnitt mit
+%laufender Nummer, die dem Paragraphen in hervorgehobener Schrift
+%vorangestellt wird. In Abschnitt 3 erzeugt |\Pnum{}| also einen Absatz, an
+%dessen Anfang \textbf{\sffamily 3.1} steht, weitere Verwendung erzeugt
+%\textbf{\sffamily 3.2} usw. Diese Unterabschnitte werden zwar nicht ins
+%Inhaltsverzeichnis aufgenommen, man kann jedoch mit
+%|\label|\marg{Labelname} und |\ref|\marg{Labelname} darauf Bezug nehmen.
+%Anders verhält sich |\Pnum| wenn das Argument nicht leer ist, dann wird
+%dem Absatz dieses Argument vorangestellt. Diese Funktion ist für
+%Markierung von Absätzen mit Buchstaben, römischen Ziffern oder kurzen
+%Ausdrücken wie ">Zu iii)"< besonders geeignet. Eine Bezugnahme auf diese
+%Struktur ist mit |\ref| nicht vorgesehen.
+%
+%\DescribeMacro{\absatz} |\absatz| erzeugt einen neuen Absatz, der vom
+%vorhergehenden durch einen wohlbemessenen (flexiblen) Abstand getrennt ist.
+%Mitten in diesem Leerraum steht ein kleines Sternchen.\footnote{%
+% Es ist unschwer zu erkennen, dass es sich bei hierbei um mein
+% Lieblingsmakro handelt \dots
+%}
+%
+%\section{Langzitate}
+%
+%Langzitate werden in eine Umgebung namens |quote| gesetzt.
+%\DescribeEnv{quote} Diese beginnt mit |\begin{quote}| und wird
+%durch |\end{quote}| beendet. Dazwischen
+%steht der Text, der dann im Druck etwas kleiner und eingerückt erscheint.
+%An- und Abführungszeichen sind am Anfang und Ende eines solchen
+%Langzitates redundant und sollten daher nicht gesetzt werden.
+%
+%
+%\section{An- und Abführungszeichen}
+%Von allen Anführungszeichen gefallen mir ">umgekehrte Guillemets"< entschieden
+%am besten. Diese sind meines Wissens im deutschen Buchsatz auch am häufigsten
+%vertreten. In der Schweiz und in Frankreich bevorzugt man "<normale
+%Guillemets">. In Deutschland sind auch -- aber weniger im Buchdruck --
+%"`Deutsche Anführungszeichen"' üblich.\footnote{%
+% An dieser Stelle vielleicht eine kleine Warnung vor MS-Word: Die
+% einfachen deutschen Abführungszeichen werden oft als einfache
+% anglikanische Abführungszeichen gesetzt. Bei automatisch
+% transformierten Texten findet sich der Fehler dann auch in
+% \LaTeX"=Dateien. Achten Sie also darauf, dass der kleine hochgestellte
+% Strich aussieht wie eine 6, nicht wie eine 9.
+%} Im Englischen Sprachraum die ``Anglikanischen Anführungszeichen''.
+% Nur auf alten Computern findet man noch die \dq Doubleqoutes\dq.
+%Zu allen Versionen gibt es auch noch einfache Ausführungen. Um das Chaos
+%zu lichten schlage ich folgende Befehle vor: |\Dll|, |\Drr|, |\Dl| und
+%|\Dr| für die deutschen Anführungszeichen: Doppelte"=Links,
+%Doppelte"=Rechts, Einfache"=Links, Einfache"=Rechts. Für die englischen,
+%die man bei englischsprachigen Zitaten nach Duden verwenden sollte:
+%|\Ell|, |\Err|, |\El| und |\Er|.
+%
+%Sollten einem die Anführungszeichen nachher gar nicht gefallen, braucht
+%man nur einmal den entsprechenden Befehl zu ändern.
+%
+%
+%\section{Beispielsätze}
+%Wenn man im Text Beispielsätze verwendet, dann sollten diese aus dem
+%laufenden Text hervorgehoben werden. \textsf{mentis.cls} macht das
+%einheitlich für den Autor mit dem Befehl \DescribeMacro{\Psatz}
+%|\Psatz|""\marg{Nummer}""\marg{Satz}. Die Nummer des Satzes erscheint in
+%runden Klammern als Marginalie in der ersten Zeile des Satzes. Wird keine
+%Nummer angegeben, erscheint auch keine Marginalie.
+%
+%\section{Kleinkram}
+%Für die Markierung von
+%Varianten von Sätzen sind kleine hochgestellte Striche oder Sterne üblich,
+%um nicht auf Hochkomma oder zentrierte Sterne zurückzugreifen, empfehle
+%ich die Verwendung von \DescribeMacro{\strich}\DescribeMacro{\stern}
+%|\strich| und |\stern|.
+%
+%Um einen Begriff in spitze Klammern zu setzen, biete ich \DescribeMacro{\spitz}
+%|\spitz|\marg{Begriff} an.
+%
+%Für tiefgestellte Zahlen oder Buchstaben, Indizes in diesem Sinne, steht
+%\DescribeMacro{\textsubscript} |\textsubscript|\marg{Index} bereit -- analog
+%zum |\textsuperscript| der Standardklassen.
+%
+% Ein etwas
+%kürzeres \emph{alias} mit der selben Funktion wie |\textsubscript| ist
+%\DescribeMacro{\tief} |\tief|.
+% Um ">A$_{1}$"< zu erhalten ist |A\tief{1}| wesentlich (!) besser als |A$_{1}$|,
+%da die Schriftartumschaltung nur mit erster Variante sichergestellt ist!
+%">|\textbf{A$_{1}$}|"< erzeugt eben nicht ">\textbf{A}$_{\bf 1}$"<,
+% sondern ">{\textbf{A$_{1}$}}"<.
+%
+%Weitere Kleinigkeiten sind hier vorerst nicht kommentiert, und stehen am Ende der Dokumentation.
+%
+%\section{Literaturnachweise}
+%Ich empfehle dringend die Verwendung des \textsf{Jurabib}"=Paketes
+%zusammen mit BiB\TeX. Entsprechende Anpassungen für \textsf{Jurabib} nimmt
+%\textsf{mentis.cls} vor.
+%
+%
+%\section{Zeilenumbruch}
+% Wenn man beim kleineren Format eine 10-Punkt-Schrift, oder beim größeren Format
+% eine 11-Punkt-Schrift wählt und nicht zu kurze Absätze schreibt, dann hat man so
+% viele Wörter in einer Zeile und so viele Zeilen pro Absatz, dass man sehr anspruchsvoll
+% sein kann, was die Qualität des Blocksatzes angeht. \LaTeX2e{} reagiert auf zwei
+% Parameter, die das Verhalten beim Umbruch steuern, beide habe ich etwas niedriger
+% gesetzt, als üblich, was einerseits einen hervorragenden Satz, aber andererseits auch
+% etwas mehr Warnungen in der Log-Datei ergibt. |\emergencystretch| hat die Länge |1em| und
+% der |\tolerance|-Wert ist 125. Sollte ein Absatz schlecht umgebrochen werden wegen zu
+% kurzer Zeilen oder Abbildungen etc.\, so kann mit
+% \DescribeEnv{tolerant} |\begin{tolerant}|\marg{Wert} \ldots |\end{tolerant}| für einen Absatz
+% (oder mehrere) ein höherer Wert (bis 9\,999) gewählt werden. Die Wortabstände werden
+% dann bei Bedarf größer gewählt.
+%
+%
+% \StopEventually{\PrintChanges\PrintIndex}
+%
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \section{Implementierung} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%Ab hier folgt der Programmcode mit Erläuterungen, niemand sollte sich genötigt fühlen
+%weiter zu lesen, im Falle eines Problems kann es jedoch sehr nützlich sein, das
+%Uhrwerk zu öffnen um zu schauen, wie es funktioniert.
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Einbindung von Paketen} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Zunächst lade ich mit allen angegebenen Optionen die KOMA-Script Klasse
+% für Bücher: \textsf{scrbook}.
+% \begin{macrocode}
+\LoadClassWithOptions{scrbook}
+% \end{macrocode}
+%
+%Bevor ich das vergesse, einige Dinge müssen am Anfang des Dokuments also direkt beim Befehl
+%|\begin{document}| ausgeführt werden:
+% \begin{macrocode}
+\AtBeginDocument{%
+ \selectlanguage{ngerman}%
+ \makeindex%
+ \pagestyle{scrheadings}\pagestyle{mentis}%
+}
+% \end{macrocode}
+% Dann folgen etliche Pakete:
+%
+% |inputenc| ermöglicht die direkte Eingabe von Umlauten, auf nicht Windows-Rechnern
+% kann in Abhängigkeit vom Editor eine andere Codierung als |Latin1| vorliegen.
+% \begin{macrocode}
+\RequirePackage[latin1]{inputenc}
+% \end{macrocode}
+%|fontenc| stellt die richtige Codepage zur Verfügung, entscheidend ist die letzte Angabe,
+%hier also das aktuelle Kodierungs"=schema für westliche Schriftarten
+% \begin{macrocode}
+\RequirePackage[OT1,T3,T1]{fontenc}
+% \end{macrocode}
+% |babel| ist das Sprachentalent unter den Paketen, |ngerman| steht für die Neue Deutsche
+% Rechtschreibung und die damit geänderte Silbentrennung.
+% \begin{macrocode}
+\RequirePackage[polutonikogreek,german,ngerman]{babel}
+% \end{macrocode}
+% Mit |varioref| können flexible Verweise \`a la ">auf der folgenden Seite"< automatisch
+% erzeugt werden.
+% \begin{macrocode}
+\RequirePackage[german]{varioref}
+% \end{macrocode}
+%|lgreek| stellt griechische Schrift inkl. Silbentrennung zur Verfügung.
+% \begin{macrocode}
+\RequirePackage{lgreek}
+% \end{macrocode}
+%|tabularx| ist eine mächtige Erweiterung der |tabular|"=Umgebung und
+%|hhline| bringt noch einige hübsche Tabellenlinien mit.
+% \begin{macrocode}
+\RequirePackage{tabularx}
+\RequirePackage{hhline}
+% \end{macrocode}
+% |xspace| stellt den gleichnamigen Befehl zur Verfügung, der am Ende von Makros einen
+% zusätzlichen Leerraum einfügt, wenn dort im Quelltext auch ein Leerraum war.
+% \begin{macrocode}
+\RequirePackage{xspace}
+% \end{macrocode}
+%Diese drei Pakete der American Mathematic Society enthalten Symbole, Fonts und Operatoren.
+% \begin{macrocode}
+\RequirePackage{amsmath}
+\RequirePackage{amsfonts}
+\RequirePackage{amssymb}
+% \end{macrocode}
+%|textcomp| stellt ein paar weitere Symbole bereit.
+% \begin{macrocode}
+\RequirePackage{textcomp}
+% \end{macrocode}
+% Das |graphics|"=Paket braucht man einfach immer mal wieder.
+% \begin{macrocode}
+\RequirePackage{graphics}
+% \end{macrocode}
+%|scrpage2| wird hier völlig unterfordert und wird nur für die lebenden Kolumnentitel gebraucht
+% \begin{macrocode}
+\RequirePackage{scrpage2}
+% \end{macrocode}
+%|jurabib| passt Bib\TeX\ den Bedürfnissen deutscher Geisteswissenschaftler an.
+% \begin{macrocode}
+\RequirePackage{jurabib}
+% \end{macrocode}
+%|picinpar| Lässt Absätze um Graphiken oder Tabellen etc.\ fließen.
+% \begin{macrocode}
+\RequirePackage{picinpar}
+% \end{macrocode}
+%|makeidx| erstellt automatisch den Index.
+% \begin{macrocode}
+\RequirePackage{makeidx}
+% \end{macrocode}
+%|relsize| stellt relative Textgrößen zur Verfügung.
+% \begin{macrocode}
+\RequirePackage{relsize}
+% \end{macrocode}
+% Zwei hab' ich noch, damit und durch den Befehl |\RaggedRight| erreicht man Flattersatz
+% \emph{mit} Trennungen -- ist wichtig für den Index. Und |multicol| braucht man sowieso!
+% \begin{macrocode}
+\RequirePackage{multicol}
+\RequirePackage{ragged2e}
+% \end{macrocode}
+% Damit wären die Pakete alle installiert.
+% Bleibt noch, alle Optionen an \textsf{scrbook} weiterzureichen und danach das
+% Ende der Optionen zu erklären.
+% \begin{macrocode}
+\DeclareOption*{%
+ \PassOptionsToClass{\CurrentOption}{scrbook}%
+}
+% \end{macrocode}
+% Für die kleine Reihe des Verlages steht die Option |mentisklein| bereit, sie ruft
+% intern den Befehl |\m@ntisklein| auf.
+% \begin{macrocode}
+\DeclareOption{mentisklein}{\m@ntisklein}
+\DeclareOption{mentiskleinAfuenf}{\m@ntiskleinAfuenf}
+% \end{macrocode}
+% Für die große Reihe gibt es analog |mentisgross|/""|\m@ntisgross|.
+% \begin{macrocode}
+\DeclareOption{mentisgross}{\m@ntisgross}
+% \end{macrocode}
+% |mentisroemisch| stellt die Nummerierung der Kapitel mit römischen Ziffern bereit durch
+% den internen Befehl |\m@ntisroemisch|
+% \begin{macrocode}
+\DeclareOption{mentisroemisch}{\m@ntisroemisch}
+% \end{macrocode}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Inhaltsverzeichnis/""\texttt{mentisroemisch}} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%Ursprung des ganzen Problems mit dem Inhaltsverzeichnis ist die Nummerierung der
+%Kapitel mit römischen Ziffern. Die vermaledeite acht (VIII) ist dann einfach zu lang!
+% Ich definiere also eine neue Länge |\ChapterExtraWidth| um die einige Längen dann
+% vergrößert oder auch verkleinert werden. Mit
+% |\setlength|""|{\ChapterExtraWidth}|""\marg{Länge} kann dieser Wert verändert
+% werden, das wird aber vermutlich erst ab Kapitel ">XVII"< nötig und so viele Kapitel
+% würde ich nicht mehr römisch nummerieren. Analog gibt es |\S(ubs)ectionExtraWidth| und
+% |\PagenumExtraWidth|. Für alle diese Längen können auch negative Längen eingegeben werden.
+% Hier werden für Mentis einige Werte voreingestellt, die KOMA-Script Standardwerte sind in den
+% Längen ohne ">|Extra|"< abgelegt. Die Berechnung der effektiven Länge aus normaler Länge plus
+% Extralänge geschieht unmittelbar vor dem Setzen, d.\,h.\ man könnte auch für einzelne Überschriften
+% andere Abstände wählen.
+% Auch die Seitenzahlen brauchen, wenn sie fett und dreistellig sind etwas mehr als 1,55 em,
+% daher:
+% \begin{macrocode}
+\renewcommand{\@pnumwidth}{1.95em}
+% \end{macrocode}
+% \begin{macrocode}
+\newlength{\ChapterExtraWidth}
+\setlength{\ChapterExtraWidth}{0em}
+% \end{macrocode}
+% |mentisroemisch| verlängert den Raum für die Kapitelmarkierung um ein ">em"<.
+% Der Rest rückt automatisch nach.
+% \begin{macrocode}
+\DeclareRobustCommand{\m@ntisroemisch}{%
+ \setlength{\ChapterExtraWidth}{1em}%
+% \end{macrocode}
+% Und das Erscheinungsbild der Kapitel- und Abschnittsnummern wird hier geändert.
+% Die Kapitel werden römisch nummeriert und der erste Unterabschnitt soll nicht
+% ">I.1"< heißen sondern einfach ">1"<, also ohne das Kapitel -- das findet man ja in der
+% Kopfzeile. Danach endet der Befehl |\m@ntisroemisch|.
+% \begin{macrocode}
+ \renewcommand\thesection{\arabic{section}}
+ \renewcommand\thechapter{\Roman{chapter}}
+}
+\newlength{\SectionExtraWidth}
+\setlength{\SectionExtraWidth}{0em}
+\newlength{\SubsectionExtraWidth}
+\setlength{\SubsectionExtraWidth}{0em}
+\newlength{\ChapterLabelWidth}%
+\newlength{\SectionIndentWidth}
+\newlength{\SubsectionIndentWidth}
+\newlength{\SubsubsectionIndentWidth}
+\newlength{\SectionLabelWidth}
+\newlength{\SubsectionLabelWidth}
+\newlength{\SubsubsectionLabelWidth}
+\renewcommand*\l@chapter[2]{%
+ \setlength{\ChapterLabelWidth}{1.5em}%
+ \addtolength{\ChapterLabelWidth}{\ChapterExtraWidth}%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 1.0em \@plus\p@
+ \setlength\@tempdima{\ChapterLabelWidth}%
+ \if@tocleft
+ \ifx\toc@l@number\@empty\else
+ \setlength\@tempdima{0\toc@l@number}%
+ \fi
+ \fi
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \sectfont
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi%
+}
+\renewcommand*\l@section{%
+ \setlength{\SectionLabelWidth}{2.3em}%
+ \addtolength{\SectionLabelWidth}{\SectionExtraWidth}%
+ \addtolength{\SectionLabelWidth}{-.5\ChapterExtraWidth}%
+ \setlength{\SectionIndentWidth}{1.5em}%
+ \addtolength{\SectionIndentWidth}{\ChapterExtraWidth}%
+ \@dottedtocline{1}{\SectionIndentWidth}{\SectionLabelWidth}%
+}
+\renewcommand*\l@subsection{%
+ \setlength{\SubsectionIndentWidth}{3.8em}%
+ \addtolength{\SubsectionIndentWidth}{\ChapterExtraWidth}%
+ \addtolength{\SubsectionIndentWidth}{\SectionExtraWidth}%
+ \setlength{\SubsectionLabelWidth}{3.2em}%
+ \addtolength{\SubsectionLabelWidth}{\SubsectionExtraWidth}%
+ \addtolength{\SubsectionLabelWidth}{-\ChapterExtraWidth}%
+ \@dottedtocline{2}{\SubsectionIndentWidth}{\SubsectionLabelWidth}%
+}
+\renewcommand*\l@subsubsection{%
+\setlength{\SubsubsectionIndentWidth}{7.0em}%
+\addtolength{\SubsubsectionIndentWidth}{\ChapterExtraWidth}%
+\addtolength{\SubsubsectionIndentWidth}{\SectionExtraWidth}%
+\addtolength{\SubsubsectionIndentWidth}{\SubsectionExtraWidth}%
+\setlength{\SubsubsectionLabelWidth}{4.1em}%
+\addtolength{\SubsubsectionLabelWidth}{-\ChapterExtraWidth}%
+ \@dottedtocline{3}{\SubsubsectionIndentWidth}{\SubsubsectionLabelWidth}%
+}
+% \end{macrocode}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Der Satzspiegel, \texttt{mentisgross/""mentisklein}}%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%Einige Einstellungen zum Satzspiegel in Mentis-Büchern. Die Position des größeren
+%Satzspiegels auf einer A4-Seite entspricht sogar ziemlich genau der klassischen Neunerteilung,
+%wenn man 2cm für die Bindung in einer Klemmmappe abzieht, so dass auch der Probeausdruck
+%für meinen Geschmack sehr gut aussieht.
+%
+%Erstmal kommen die Daten für die größere Reihe:
+% \begin{macrocode}
+\DeclareRobustCommand{\m@ntisgross}{
+ \setlength{\oddsidemargin}{16.6mm}
+ \setlength{\textwidth}{117mm}
+ \setlength{\topmargin}{8.6mm}
+ \setlength{\marginparsep}{2mm}
+ \setlength{\marginparwidth}{17mm}
+ \setlength{\textheight}{195mm}
+ \setlength{\headsep}{\baselineskip}
+% \end{macrocode}
+% Soweit ist noch alles zu verstehen |oddsidemargin| und |topmargin| spielen für
+% den Druck keine Rolle, sie positionieren den zu bedruckenden Bereich lediglich
+% harmonisch auf einem A4"=Bogen, der Rest ergibt sich aus Tabelle 1 in Abschnitt 1.
+% Leider umfasst |\textheight| weder die Höhe der Kopfzeile, noch ihren Abstand zum Text.
+% Beide Werte müssen also noch von |\textheigth| abgezogen werden.
+% \begin{macrocode}
+ \addtolength{\textheight}{-\headsep}
+ \addtolength{\textheight}{-\headheight}
+}
+% \end{macrocode}
+% Hier nochmal genau dasselbe nur mit den Daten für die kleine Reihe,
+% vgl.\ Tabelle 1 in Abschnitt 1.
+% \begin{macrocode}
+\DeclareRobustCommand{\m@ntisklein}{
+ \setlength{\oddsidemargin}{24.4mm}
+ \setlength{\textwidth}{100mm}
+ \setlength{\topmargin}{14.6mm}
+ \setlength{\marginparsep}{2mm}
+ \setlength{\marginparwidth}{17mm}
+ \setlength{\textheight}{182mm}
+ \setlength{\headsep}{\baselineskip}
+ \addtolength{\textheight}{-\headsep}
+ \addtolength{\textheight}{-\headheight}
+}
+\DeclareRobustCommand{\m@ntiskleinAfuenf}{
+ \setlength{\oddsidemargin}{-15mm}
+ %\setlength{\evensidemargin}{-15mm}
+ \setlength{\textwidth}{100mm}
+ \setlength{\topmargin}{-16,07mm}
+ \setlength{\marginparsep}{2mm}
+ \setlength{\marginparwidth}{17mm}
+ \setlength{\textheight}{182mm}
+ \setlength{\headsep}{\baselineskip}
+ \addtolength{\textheight}{-\headsep}
+ \addtolength{\textheight}{-\headheight}
+}
+
+% \end{macrocode}
+%
+% Mit diesen Einstellungen sind die Optionen alle abgearbeitet:
+% \begin{macrocode}
+\ProcessOptions\relax
+% \end{macrocode}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Kopf- und Fußzeilen} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%Einige Seiten sollen völlig frei von Kopf- oder Fußzeilen bleiben:
+%\begin{itemize}
+% \item Die Titelseite
+% \item Die erste Seiten \dots
+% \begin{itemize}
+% \item eines neuen Hauptteils
+% \item eines neuen Kapitels
+% \item des Index
+% \end{itemize}
+%\end{itemize}
+% \begin{macrocode}
+\renewcommand{\titlepagestyle}{empty}
+\renewcommand{\partpagestyle}{empty}
+\renewcommand{\chapterpagestyle}{empty}
+\renewcommand{\indexpagestyle}{empty}
+% \end{macrocode}
+%Bei Mentis sind die Kopfzeilen etwas kleiner als die Grundschrift und kursiv.
+% \begin{macrocode}
+\renewcommand{\headfont}{\normalfont\small\itshape}
+% \end{macrocode}
+%
+% Der Seitenstil |mentis| setzt die Seitenzahlen und die lebenden Kolumnentitel
+% an die richtigen Stellen. Im ersten Block werden die Kopfzeilen, im zweiten
+% die Fußzeilen definiert. Jeder dieser Blöcke ist in Abschnitte für die linken
+% Seiten, rechten Seiten und die Seiten im einseitigen Druck aufgeteilt.
+%
+% Also |\newpagestyle{|\marg{Kopf-links}""\marg{Kopf-rechts}""\marg{Kopf"=einseitig}|}|""%
+% |{|\marg{Fuß-links}""\marg{Fuß-rechts}""\marg{Fuß"=einseitig}|}|
+% (natürlich ohne Leerräume oder Zeilenumbrüche das Ganze).
+% \begin{macrocode}
+\newpagestyle{mentis}%
+ {%
+ {\rlap{\pagemark}%
+ \hfill\leftmark\hfill%
+ }%
+ {\hfill\rightmark\hfill%
+ \llap{\pagemark}%
+ }%
+ {\hfill\headmark\hfill%
+ }%
+ }%
+ {%
+ {}%
+ {}%
+ {\hfill\pagemark\hfill}
+ }%
+% \end{macrocode}
+% War doch ganz einfach!
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Fußnoten} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Die Fußnotenmarkierung steht klein, hoch und mit einem Leerzeichen Abstand zum
+% Fußnotentext.
+% \begin{macrocode}
+\deffootnote[1.2em]{1.2em}{1.2em}{\textsuperscript{\thefootnotemark}\ }
+% \end{macrocode}
+%
+%Der Fußnotentrennstrich ist genau 2cm lang.
+% \begin{macrocode}
+\renewcommand*{\footnoterule}{%
+ \hrule\@width 2cm
+ \kern8\p@
+}
+% \end{macrocode}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Langzitate} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%\begin{environment}{quote}
+% Langzitate mit kleinerer Schriftart, zwei Gevierte eingerückt.
+% \begin{macrocode}
+\renewenvironment{quote}%
+{\list{}{\setlength{\listparindent}{1em}%
+ \setlength{\itemindent}{0em}%
+ \setlength{\leftmargin}{2em}%
+ \setlength{\rightmargin}{0em}%
+ \setlength{\parsep}{\z@}%
+ }%
+ \smaller\item\relax\ignorespaces%
+}%
+{\endlist}%
+% \end{macrocode}
+%\end{environment}
+%
+%\begin{environment}{footquote}
+% Langzitate in Fußnoten mit noch kleinerer Schriftart, ebenfalls eingerückt.
+% |footquote| ist seit Version 1.1 obsolet! Einfach |quote| nehmen!
+% \begin{macrocode}
+\newenvironment{footquote}{\begin{quote}}{\end{quote}}%
+% \end{macrocode}
+%\end{environment}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{An"~ und Abführungszeichen} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Nicht nötig, diese Befehle, aber nützlich, wenn man alle Anführungszeichen
+% umstellen (können) will. Es sind bloße Abkürzungen für die jeweiligen Zeichen.
+%
+%\begin{macro}{\Dll}
+% \begin{macrocode}
+\newcommand{\Dll}{\frqq}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\Drr}
+% \begin{macrocode}
+\newcommand{\Drr}{\flqq}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\Dl}
+% \begin{macrocode}
+\newcommand{\Dl}{\frq}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\Dr}
+% \begin{macrocode}
+\newcommand{\Dr}{\flq}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\Ell}
+% \begin{macrocode}
+\newcommand{\Ell}{\textquotedblleft}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\Err}
+% \begin{macrocode}
+\newcommand{\Err}{\textquotedblright}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\El}
+% \begin{macrocode}
+\newcommand{\El}{\textquoteleft}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\Er}
+% \begin{macrocode}
+\newcommand{\Er}{\textquoteright}
+% \end{macrocode}
+%\end{macro}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Gliederungselemente} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Es folgt die Definition der Kapitelüberschrift aus scrbook.cls mit kleinen Änderungen,
+% die für ungekürzte Einträge von Überschriften ins Inhaltsverzeichnis sorgen.
+% \begin{macrocode}
+\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \@maybeautodot\thechapter%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+% \end{macrocode}
+%In der folgenden Zeile habe ich 2 statt 1 gesetzt.
+% \begin{macrocode}
+ {\protect\numberline{\thechapter}#2}%
+ \else
+% \end{macrocode}
+%In der folgenden Zeile habe ich wieder 2 statt 1 gesetzt.
+% \begin{macrocode}
+ \addcontentsline{toc}{chapter}{#2}\fi
+ \else
+% \end{macrocode}
+%Nocheinmal 2 statt 1 gesetzt.
+% \begin{macrocode}
+ \addcontentsline{toc}{chapter}{#2} %
+ \fi
+ \chaptermark{#1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \@ifundefined{float@addtolists}{}{%
+ \float@addtolists{\protect\addvspace{10\p@}}}
+ \if@twocolumn
+ \if@at@twocolumn
+ \@makechapterhead{#2}%
+ \else
+ \@topnewpage[\@makechapterhead{#2}]%
+ \fi
+ \else
+ \@makechapterhead{#2}%
+ \@afterheading
+ \fi}
+% \end{macrocode}
+%
+% Die unscheinbaren Zeilen -- ;-) -- die folgen werden, definieren die |\section| und sind
+% entnommen aus ltsect.dtx.
+%
+% Die Umdefinition greift in den \LaTeX-Kernel ein -- eine dauerhafte Kompatibilität ist also
+% \emph{nicht} gesichert! Wer weiß ob \LaTeX3 dieselben internen Befehle verwendet \dots?
+%
+% Anders scheint es nicht möglich zu sein, im Inhaltsverzeichnis die vollständige
+% und in der Kopfzeilen eine gekürzte Überschrift zu haben. Für den rettenden Hinweis danke
+% ich Markus Kohm!
+% \begin{macrocode}
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \ifnum #2>\c@secnumdepth
+ \let\@svsec\@empty
+ \else
+ \refstepcounter{#1}%
+ \protected@edef\@svsec{\@seccntformat{#1}\relax}%
+ \fi
+ \@tempskipa #5\relax
+ \ifdim \@tempskipa>\z@
+ \begingroup
+ #6{%
+ \@hangfrom{\hskip #3\relax\@svsec}%
+ \interlinepenalty \@M #8\@@par}%
+ \endgroup
+% \end{macrocode}
+% Die 7 in der folgenden Zeile (und auch anderswo) steht für die gekürzte
+% Version der Überschrift.
+% \begin{macrocode}
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\csname the#1\endcsname}%
+ \fi
+% \end{macrocode}
+%In der folgenden Zeile habe ich 8 statt 7 gesetzt, also die volle Überschrift
+% \begin{macrocode}
+ #8}%
+ \else
+ \def\@svsechd{%
+ #6{\hskip #3\relax
+ \@svsec #8}%
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\csname the#1\endcsname}%
+ \fi
+% \end{macrocode}
+% Nochmal 8 statt 7!
+% \begin{macrocode}
+ #8}}%
+ \fi
+ \@xsect{#5}%
+}
+% \end{macrocode}
+%
+%\begin{macro}{\Pnum}
+%Der Absatz soll mit etwas vertikalem Abstand (|\Pn@mskip|) zum vorhergehenden, dafür
+%aber ohne Einzug gesetzt werden.
+%Zuvor brauchen wir noch ein paar Counter, wird ein höher liegender Befehl verwendet,
+%werden sie auf Null gesetzt. Ist das erste |\Pnum| mit leerem Argument auf der entsprechenden
+%Ebene wird das gespeichert, indem der Counter auf Eins gesetzt wird.
+%
+% \begin{macrocode}
+\newcommand{\Pn@mskip}{\bigskip}%
+\newcounter{Pn@msection}[chapter]%
+\newcounter{Pn@msubsection}[section]%
+\newcounter{Pn@msubsubsection}[subsection]%
+\newcounter{Pn@mparagraph}[subsubsection]%
+\newcommand*{\Pnum}[1]{%
+ \ifthenelse{%
+ \equal{#1}{}%
+ }%
+% \end{macrocode}
+% \emph{Wenn} das Argument leer ist, dann untersuchen, ob |section| den Wert |0| hat,
+% das hieße wir befinden uns direkt unter |chapter|.
+% \begin{macrocode}
+ {%
+ \ifthenelse{%
+ {\value{section}=0}\or{\value{Pn@msection}=1}%
+ }{%
+ \Pn@mskip\par\noindent%
+ \refstepcounter{section}\setcounter{Pn@msection}{1}%
+ {\usekomafont{sectioning}\thesection\ }%
+ }%
+% \end{macrocode}
+% Wenn |subsection| den Wert |0| hat, heißt das wir befinden uns direkt unter |section|.
+% Gleiches gilt wenn dies der zweite, dritte, vierte Durchlauf ist und |Pn@msubsection|
+% bereits den Wert Eins hat.
+% Also wird |subsection| erhöht und dann der Wert dem neuen Absatz vorangestellt, |Pn@msubsection|
+% erhält den Wert Eins. Analog geht es auf den nächsten Ebenen weiter.
+% \begin{macrocode}
+ {%
+ \ifthenelse{%
+ {\value{subsection}=0}\or{\value{Pn@msubsection}=1}%
+ }{%
+ \Pn@mskip\par\noindent%
+ \refstepcounter{subsection}\setcounter{Pn@msubsection}{1}%
+ {\usekomafont{sectioning}\thesubsection\ }%
+ }{%
+ \ifthenelse{%
+ {\value{subsubsection}=0}\or{\value{Pn@msubsubsection}=1}%
+ }{%
+ \Pn@mskip\par\noindent%
+ \refstepcounter{subsubsection}\setcounter{Pn@msubsubsection}{1}%
+ {\usekomafont{sectioning}\thesubsubsection\ }%
+ }{%
+ \ifthenelse{%
+ {\value{paragraph}=0}\or{\value{Pn@mparagraph}=1}%
+ }{%
+ \Pn@mskip\par\noindent%
+ \refstepcounter{paragraph}\setcounter{Pn@mparagraph}{1}%
+ {\usekomafont{sectioning}\theparagraph\ }%
+ }{%
+% \end{macrocode}
+% Spätestens hier wird man misstrauisch, das Argument von |Pnum| ist leer, alle Zähler
+% inklusive |paragraph| sind höher als Null --~was nun? Eine Fehlermeldung!
+% \begin{macrocode}
+
+ \ClassError{mentis}{Pnum hat kein Argument, findet aber auch keine Ebene mit Wert 0}%
+ {Pruefen Sie die Verwendung von Pnum!}%
+ }%
+ }%
+ }%
+ }%
+ }{%
+% \end{macrocode}
+% Wenn das Argument \emph{nicht} leer ist, dann einfach das Argument setzen!
+% Hier folgt also endlich die erste |else|-Schleife (hat mich zwei Tage gekostet!).
+% \begin{macrocode}
+ \Pn@mskip\par\noindent%
+ {\usekomafont{sectioning}#1}\ %
+ }%
+}%
+% \end{macrocode}
+%\end{macro}
+%
+%
+%\begin{macro}{absatz}
+% |\absatz| trennt zwei Absätze durch einen zentrierten Stern (sehr hübsch!)
+% \begin{macrocode}
+\newcommand{\absatz}{%
+ {\removelastskip\medskip\centering $\star$ \\\medskip\noindent}%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Beispielsätze} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%\begin{macro}{\Psatz}
+%|\Psatz| setzt Beispielsätze eingerückt und mit einer Nummer in Klammern auf dem Rand.
+% \begin{macrocode}
+\newcommand{\randnummer}[1]{\marginline{\small(#1)}}
+\newcommand{\Psatz}[2]{%
+ \begin{list}{}{%
+ \setlength{\topsep}{0pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\parskip}{0pt}%
+ \setlength{\leftmargin}{2em}%
+ \setlength{\rightmargin}{0pt}%
+ \setlength{\listparindent}{\parindent}%
+ }%
+ \fussy%
+ \ifthenelse{%
+% \end{macrocode}
+%Ist das Argument 1 leer?
+% Wenn ja:
+% \begin{macrocode}
+ \equal{#1}{}
+ }%Dann:
+ {\item{\makebox[0mm]{\rule{0mm}{0mm}}\ignorespaces#2}}
+% \end{macrocode}
+%Wenn nein:
+% \begin{macrocode}
+ {%
+ \item{\makebox[0mm]{\rule{0mm}{0mm}}\randnummer{#1}\ignorespaces#2}%
+ }
+ \end{list}
+}
+% \end{macrocode}
+%\end{macro}
+%
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Konfiguration der Literaturnachweise} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Es folgt eine Reihe von Schaltern für \textsf{jurabib}. Diese Einstellungen
+% beziehen sich im wesentlichen auf den Textteil.
+% \begin{macrocode}
+\jurabibsetup{%
+% \end{macrocode}
+%In der Fußnote erscheint die natürliche Reihenfolge: Vorname Nachname.
+% \begin{macrocode}
+ authorformat=citationreversed,%
+% \end{macrocode}
+%Nur beim ersten Autor von mehreren wird der Nachname im Anhang nach vorn gesetzt.
+% \begin{macrocode}
+ authorformat=firstnotreversed,%
+% \end{macrocode}
+%Bei drei Autoren: Müller, Meier \emph{und} Schmitz
+% \begin{macrocode}
+ authorformat=and,%
+% \end{macrocode}
+%Zitierte Autoren gehen automatisch in den Index.
+% \begin{macrocode}
+%%% authorformat=indexed,%
+% \end{macrocode}
+%">hrsg. von Meier"< statt ">Meier (Hrsg.)"<, wenn möglich.
+% \begin{macrocode}
+ edby=true,%
+% \end{macrocode}
+%Alle Zitate führen den (Kurz-)titel in der Fußnote und bei Bezugnahme.
+% \begin{macrocode}
+ titleformat=all,%
+% \end{macrocode}
+% Doppelpunkt zwischen Autor und Titel
+% \begin{macrocode}
+ titleformat=colonsep,%
+% \end{macrocode}
+%Wenn auf der gleichen Seite direkt aufeinander folgend der
+%gleiche Beleg gefordert wird, dann und nur dann kommt ">ebenda \dots"<
+%anstatt alles nochmal zu wiederholen.
+% \begin{macrocode}
+ ibidem=strict,%
+% \end{macrocode}
+%Ersetzt den Autornamen bei mehreren Werken durch Derselbe
+% \begin{macrocode}
+ bibformat=ibidem,%
+% \end{macrocode}
+%Statt eines Bearbeiters (von Gesetzestexten) kann man z.\,B. ">Vgl."</""">Siehe"<
+%vor einen Beleg setzen.
+% \begin{macrocode}
+ see=true,%
+% \end{macrocode}
+%Geisteswissenschaftliche Grundeinstellungen (-- whatever that means!)
+% \begin{macrocode}
+ human=true,%
+% \end{macrocode}
+%Vor Anmerkungen etc. steht ein Komma
+% \begin{macrocode}
+ commabeforerest=true%
+}
+% \end{macrocode}
+%Die folgenden Umdefinitionen greifen in die Funktion von Jurabib ein und stellen sicher,
+%dass statt A.\,a.\,O./""a.\,a.\,O. Ebenda/""ebenda gesetzt wird und die Jahreszahlen von
+% Zeitschriften in runden Klammern erscheinen.
+% \begin{macrocode}
+\AddTo\bibsgerman{%
+ \renewcommand*{\ibidemname}{Ebenda}
+ \renewcommand*{\ibidemmidname}{ebenda}
+}
+\renewcommand*{\bibpldelim}{(}
+\renewcommand*{\bibprdelim}{)}
+% \end{macrocode}
+%Die Formatierungen ab hier sind vor allem für das Literaturverzeichnis wichtig.
+%Statt ">ders."< im Literaturverzeichnis ">-- "<
+% \begin{macrocode}
+\renewcommand*{\bibauthormultiple}{-- }
+% \end{macrocode}
+%Vornamen (normal)
+% \begin{macrocode}
+\renewcommand*{\bibfnfont}{}
+% \end{macrocode}
+%Nachnamen in \textsc{Kapitälchen}
+% \begin{macrocode}
+\renewcommand*{\biblnfont}{\textsc}
+% \end{macrocode}
+%Vornamen von Herausgebern in normaler Schrift -- Diese Funktionen sind von
+% \textsf{jurabib} nicht dokumentiert!!!
+% \begin{macrocode}
+\renewcommand*{\bibefnfont}{}
+% \end{macrocode}
+%Nachnamen von Herausgebern in \textsc{Kapitälchen}
+%-- Diese Funktionen sind nicht dokumentiert!!!
+% \begin{macrocode}
+\renewcommand*{\bibelnfont}{\textsc}
+% \end{macrocode}
+%Titel \textit{kursiv}
+% \begin{macrocode}
+\renewcommand*{\bibtfont}{\textit}
+% \end{macrocode}
+%Buchtitel \textit{kursiv}
+% \begin{macrocode}
+\renewcommand*{\bibbtfont}{\textit}
+% \end{macrocode}
+%Zeitschriftentitel \textit{kursiv}
+% \begin{macrocode}
+\renewcommand*{\bibjtfont}{\textit}
+% \end{macrocode}
+%Die Titel unselbständiger Veröffentlichungen erfordern etwas mehr Aufwand:
+% Ich definiere erst einen Pseudofont namens |\textAnfzeichen|, der sein Argument in
+%Anführungszeichen setzt. Und kann dann diesen Font auf Zeitschriftentitel anwenden.
+% \begin{macrocode}
+\providecommand*{\textAnfzeichen}[1]{{\Dll}#1{\Drr}}
+\renewcommand{\bibapifont}{\textAnfzeichen}
+\renewcommand{\jbapifont}{\textAnfzeichen}
+% \end{macrocode}
+%Hängender Einzug im Lit.-Verz: ein Geviert.
+% \begin{macrocode}
+\setlength{\jbbibhang}{1em}
+\jbdotafterbibentry
+% \end{macrocode}
+%
+%
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%
+% % \subsection{Kleinkram} %
+% %%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Zum Schutz vor Schusterjungen und Hurenkindern, das sind einsame Zeilen
+% ganz unten bzw. oben auf der Seite
+%
+%\begin{macrocode}
+\clubpenalty=5001 \widowpenalty=5001
+% \end{macrocode}
+%
+% \begin{macrocode}
+\setlength{\emergencystretch}{25pt}
+% \end{macrocode}
+%Einige Mathesymbole f"ur Bereiche
+% \begin{macrocode}
+\newcommand{\setB}{{\mathord{\mathbb B}}\xspace}
+\newcommand{\setC}{{\mathord{\mathbb C}}\xspace}
+\newcommand{\setN}{{\mathord{\mathbb N}}\xspace}
+\newcommand{\setQ}{{\mathord{\mathbb Q}}\xspace}
+\newcommand{\setR}{{\mathord{\mathbb R}}\xspace}
+\newcommand{\setZ}{{\mathord{\mathbb Z}}\xspace}
+% \end{macrocode}
+%\begin{macro}{\strich}
+%|\strich| sorgt f"ur einen sch"onen Strich hinter Variablen oder Zahlen
+% \begin{macrocode}
+\newcommand{\strich}{\ensuremath{{}^{\prime}}}%
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\stern}
+%|\stern| sorgt f"ur einen sch"onen Stern hinter Variablen oder Zahlen
+% \begin{macrocode}
+\newcommand{\stern}{\ensuremath{{}^{\ast}}}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\spitz}
+%Der Befehl |\spitz| setzt sein Argument in \textlangle spitze Klammern\textrangle.
+% \begin{macrocode}
+\newcommand{\spitz}[1]{%
+{\textlangle}#1{\textrangle}%
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\textbfsf}
+%|\txtbfsf| ist ein kürzerer Zugriff auf fette Groteskschrift
+% \begin{macrocode}
+\newcommand{\textbfsf}[1]{%
+{\sffamily\bfseries #1}%
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\textsubscript}
+%Dieser Befehl funktioniert wie |\textsuperscript| nur eben mit tiefgestelltem Ergebnis.
+% \begin{macrocode}
+\DeclareRobustCommand*\textsubscript[1]{%
+ \@textsubscript{\selectfont#1}}%
+\def\@textsubscript#1{%
+ {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\tief}
+% |\tief| ist ein praktisches Alias für |\textsubscript|.
+% \begin{macrocode}
+\newcommand{\tief}[1]{\textsubscript{#1}}%
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\hochtief}
+%|\hochtief| setzt das erste Argument hoch, das zweite direkt darunter tief an einen davorstehenden
+%Buchstaben.
+% \begin{macrocode}
+\newcommand*{\hochtief}[2]{%
+ {\m@th\ensuremath{%
+ ^{\mbox{\fontsize\sf@size\z@\selectfont#1}}%
+ _{\mbox{\fontsize\sf@size\z@\selectfont#2}}%
+ }}%
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\roem}
+%|\roem| setzt Zahlen als römische Zahlen in Kapitälchen, ist nicht so aufdringlich wie aus Versalien gesetzt.
+% \begin{macrocode}
+\newcommand*{\roem}[1]{\textsc{\@roman{#1}}}
+% \end{macrocode}
+%\end{macro}
+% |emergencystretch| gibt \LaTeX zusätzlichen Wortzwischenraum bei schwierigen
+% Zeilenumbrüchen. 1em ist ziemlich wenig.
+% \begin{macrocode}
+\setlength{\emergencystretch}{1em}%
+\tolerance=125%
+% \end{macrocode}
+% |tolerant| öffnet eine Umgebung, in der leichter getrennt und geschoben werden kann.
+% \begin{macrocode}
+\newenvironment{tolerant}[1]{%
+ \par\tolerance=#1\relax
+ }{%
+ \par
+ }
+% \end{macrocode}
+% Für die Liebhaber gepflegter Typographie mit gebrochenen Schriften stehen
+% folgende Befehle zur Verfügung |\fraktext, \swabtext, \gothtext| stehen
+% für Fraktur, Schwabacher und Gotische Schrift. |\antiktext| schaltet
+% innerhalb dessen auf Antiqua. |\fett| simuliert mehr schlecht als recht
+% die fehlenden fetten Typen. |\emph| wirkt als Sperrung. Genauere
+% Dokumentation unter |blacklettert1.dtx|.
+% \begin{macrocode}
+\newcommand{\fraktext}[1]{{\fontfamily{yfrak}\selectfont #1}}
+\newcommand{\swabtext}[1]{{\fontfamily{yfrak}\textsl{#1}}}
+\newcommand{\gothtext}[1]{{\fontfamily{yfrak}\textbf{#1}}}
+\newcommand{\fett}[1]{\scalebox{1.25}[1]{#1}}
+\newcommand{\antiktext}[1]{\textrm{\textup{#1}}}
+% \end{macrocode}
+% Ach ja, ganz am Ende, wo er ja auch hingehört, noch ein bisschen was zum
+% Feinschliff am Index: \emph{kein} Blocksatz, dafür aber am Ende
+% ausgeglichene Spalten!
+% \begin{macrocode}
+\newcommand{\orgtheindex}{}
+\let\orgtheindex\theindex
+\let\orgendtheindex\endtheindex
+\def\theindex{%
+ \def\twocolumn{\begin{multicols}{2}}%
+ \def\onecolumn{}%
+ \clearpage\RaggedRight
+ \orgtheindex
+}
+\def\endtheindex{%
+ \end{multicols}%
+ \orgendtheindex
+}
+% \end{macrocode}
+% \Finale
+\endinput
diff --git a/Master/texmf-dist/source/latex/mentis/mentis.ins b/Master/texmf-dist/source/latex/mentis/mentis.ins
new file mode 100644
index 00000000000..9d7a0b5e912
--- /dev/null
+++ b/Master/texmf-dist/source/latex/mentis/mentis.ins
@@ -0,0 +1,55 @@
+%%
+%% Copyright (C) 2003 by Georg M. Verweyen <Georg.Verweyen@rub.de>
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.2 of this license
+%% or (at your option) any later version. The latest version of this
+%% license is in:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.2 or later is part of all distributions of LaTeX version
+%% 1999/12/01 or later.
+%%
+
+\input docstrip.tex
+\keepsilent
+
+\usedir{tex/latex/mentis}
+
+\preamble
+
+This is a generated file.
+
+Copyright (C) 2003 by Georg M. Verweyen <Georg.Verweyen@rub.de>
+
+This file may be distributed and/or modified under the conditions of
+the LaTeX Project Public License, either version 1.2 of this license
+or (at your option) any later version. The latest version of this
+license is in:
+
+ http://www.latex-project.org/lppl.txt
+
+and version 1.2 or later is part of all distributions of LaTeX version
+1999/12/01 or later.
+
+\endpreamble
+
+\generate{\file{mentis.cls}{\from{mentis.dtx}{class}}}
+
+\obeyspaces
+\Msg{*************************************************************}
+\Msg{* *}
+\Msg{* Um die Installation abzuschließen, verschieben Sie die *}
+\Msg{* folgende Datei in ein Verzeichnis, das TeX durchsucht *}
+\Msg{* *}
+\Msg{* mentis.cls *}
+\Msg{* *}
+\Msg{* Um eine Anleitung zu erzeugen, die Datei mentis.dtx mit *}
+\Msg{* LaTeX durchlaufen lassen. *}
+\Msg{* *}
+\Msg{* Happy TeXing! *}
+\Msg{* *}
+\Msg{*************************************************************}
+
+\endbatchfile