Sie sind hier

Die formale Erklärung declaration.tex

Bild von Markus Kohm

Die Datei declaration.tex enthält die formale Erklärung über das selbstständige Anfertigen der Arbeit, wie sie bei Diplomarbeiten, Dissertationen u. ä. üblich ist. Im einseitig gesetzten Beispieldokument ist das die zweite Seite unmittelbar hinter dem Titel. Informationen darüber, ob dies in einem doppelseitigen Dokument ebenfalls die zweite Seite oder erst die dritte Seite sein soll, existieren nicht. Beides wäre denkbar.

Auf den ersten Blick fällt auf, dass diese Datei wiederum Unix/Linux-Zeilenenden (nur LF) verwendet. Dies ist im LaTeX-Umfeld für Pakete und Vorlagen durchaus üblich. Darüber hinaus fällt auf, dass diese Datei wiederum keinen Kopfkommentar enthält.
Im Kopf einer Vorlagendatei oder einer anderen Datei, die man weitergibt, sollte neben dem Original-Dateinamen auch der Urheber, die Lizenz und idealer Weise der Zweck der Datei angegeben sein.

declaration.tex:

In Anbetracht der sehr vielen Zeilen, die hier als vertikaler Abstand vom oberen Rand festgelegt werden, darf angenommen werden, dass dies mit dem Ziel geschieht, den restlichen Inhalt an das Ende der Seite zu verschieben. In dem Fall wäre allerdings die Verwendung von \fill als Argument von \vspace* weit sinnvoller als ein auf den Einzelfall bezogener Wert gewesen. Jede kleine Änderung am Inhalt kann so zu einer ungewollten Veränderung führen.
Um Inhalt an das Seitenende zu verschieben, sollte man die vorhandenen dehnbaren Entfernungen verwenden.

declaration.tex:

Hier wird eine horizontale Linie über die gesamte Breite gezogen. Falls mit Absatzeinzug gearbeitet wird, wird hier allerdings dieser ebenfalls vor der Linie eingefügt. Das wäre sicher unerwünscht.
In Vorlagen sollte man entweder darauf hinweisen, dass der nicht erwünschte Absatzeinzug aus bestimmten Gründen nicht entfernt werden muss, oder diesen mit \noindent einfach vorsorglich unterdrücken.

Darüber hinaus wird allgemein dringend davon abgeraten in LaTeX-Dokumenten den Low-Level-TeX-Befehl \hbox zu verwenden. Dieser kann je nach gerade aktivem Modus zu unerwünschten Effekten führen. Innerhalb von Paketen und Klassen kann der Befehl verwendet werden, wenn der Entwickler des Pakets bzw. der Klasse sicher ist, dass die Anwendung unter allen Randbedingungen korrekt funktioniert. Anfängern sind diese Umstände nicht bekannt. In der Regel wird \hbox in LaTeX-Einführungen auch nicht behandelt.
In LaTeX-Dokumenten sind die LaTeX-Anweisungen \mbox und \makebox dem TeX-Primitiv \hbox unbedingt vorzuziehen!

Im konkreten Fall ist die \hbox schlicht überflüssig. \hrulefill benötigt diese nicht und liefert bereits selbst das gewünschte Ergebnis.
Überflüssige Anweisungen, die zudem nicht gebräuchlich sind und den Anwender nur verwirren, sollten nicht oder zumindest nicht ohne zusätzliche Erklärung verwendet werden.

declaration.tex:

\iflanguage{english}{I declare that I have developed and written the enclosed thesis completely by myself, and have not used sources or means without declaration in the text.}{Ich versichere wahrheitsgem\"a\ss, die Arbeit selbstst\"andig angefertigt, alle benutzten Hilfsmittel vollst\"andig und genau angegeben und alles kenntlich gemacht zu haben, was aus Arbeiten anderer unver\"andert oder mit Ab\"anderungen entnommen wurde.}

Hier haben wir wieder die bereits aus titlepage.tex bekannte Fallunterscheidung mit der genau zwei Sprachen unterschieden werden. Auch hier könnte man wieder sprachabhängige Makros definieren. Allerdings sehe ich das hier weniger zwingend. Wirklich störend ist hier jedoch der Spaghetti-Code. Ein wenig Struktur und eine Begrenzung der Zeilenlänge wie bereits für thesis.tex angemahnt, täte hier Not.
In Vorlagen und generell in Dateien, die man weitergibt, sollte man die Zeilenlänge auf maximal 80 Zeichen/Zeile, besser jedoch auf 76–78 Zeichen/Zeile beschränken.
Die Struktur des Quelltextes sollte die Syntax und die Semantik unterstützen.

Dass hier für die Umlaute die TeX-Schreibweise verwendet wurde, ist übrigens dann absolut empfehlenswert, wenn die die komplette Deklaration in der Wrapper-Klasse verschwindet. In einer Vorlagendatei, bei der die Eingabecodierung bereits festgelegt wurde, ist es hingegen eher störend.
Solange die Eingabecodierung ungewiss ist, sind für Sonderzeichen unbedingt die TeX-Schreibweisen zu verwenden.
Nachdem die Eingabecodierung festgelegt ist, sollten alle Sonderzeichen, die Bestandteil der Eingabecodierung sind, zwecks besserer Lesbarkeit auch in der Eingabecodierung eingegeben werden.

titlepage.tex:

\textbf{PLACE, DATE}
\vspace{1.5cm}
 
\dotfill\hspace*{8.0cm}\\
\hspace*{2cm}(\textbf{YOUR NAME}) %center name with hspace

Hier soll offensichtlich ein durchaus üblicher Unterschriftenblock erstellt werden. Da hier bei PLACE, DATE und YOUR NAME keine Fallunterscheidung mit \iflanguage getroffen wird, nehme ich fast an, dass dies Platzhalter sein sollen. Der Anwender soll diese möglicherweise durch den tatsächlichen Ort, das tatsächliche Datum und seinen tatsächlichen Namen ersetzen. Alternativ wäre aber auch denkbar, dass er diese handschriftlich eintragen soll. Falls die Texte direkt ersetzt werden sollen, ist leider auch nicht angegeben, ob diese nur fett gedruckt werden, um ihren Platzhaltercharakter zu unterstützen, oder ob diese auch im Endergebnis fett gedruckt werden sollen. Dasselbe gilt für den Versalsatz, also die ausschließliche Verwendung von Großbuchstaben.
Textelemente und Textauszeichungen, die der Anwender ersetzen soll, sollten durch entsprechende Kommentare erläutert werden, soweit dies nicht eindeutig aus dem Kontext hervor geht.

titlepage.tex:

\thispagestyle{empty}

Diese Seite soll ebenfalls im Seitenstil empty, also ohne Kopf und Fuß gesetzt werden. Dies ist zweifellos sinnvoll. Was hier jedoch fehlt, ist das definierte Ende der Seite. Falls ein Anwender diese Datei einmal nicht mit \include, sondern mit \input lädt, wird dies unbedingt benötigt. Am einfachsten wäre, die gesamte Seiten ebenfalls in eine titlepage-Umgebung zu packen. Alternativ kann natürlich auch \newpage, \clearpage oder sogar eine der \cleardoublepage-Varianten verwendet werden.
Elemente, die als einzelne, komplette Seite zu setzen sind, sollten immer mit einem expliziten Seitenende abschließen.

Das ist schon alles in dieser Datei. Zu empfehlen wäre in jedem Fall, die Erklärung als eigenen Befehl oder eigene Umgebung zu definieren. Im Falle einer Umgebung wäre der Text der Erklärung der Inhalt der Umgebung. Bei einem Befehl hätte man hingegen den Vorteil, dass der Text als optionales Argument definiert werden könne, wobei der Standardtext verwendet wird, wenn dieses optionale Argument weggelassen wird. Ort, Datum und Name wären entweder Argumente oder ähnlich \title, \date und \author über weitere Befehle zu definieren. Ob zum Setzen des Datums die Standardanweisung \date Anwendung finden könnte, wäre zu überlegen.

Die Form feststehende Elemente sollten in der Wrapper-Klasse durch entsprechende Definitionen festgelegt werden.

Eventuell könne man die Erklärung auch als Teil des Titels betrachten und bei einer passenden Umdefinierung von \maketitle mit berücksichtigen.

Damit bin ich am Ende der Datei declaration.tex angelangt – was das Zerlegen der Datei angeht. Wie ich mir eine Alternative vorstellen könnte, beabsichtige ich zu einem späteren Zeitpunkt nachzureichen. Genau genommen dürfte bekannt sein, dass ich eigentlich lieber keine Vorlagen liefern würde. In diesem Fall beabsichtige ich jedoch eine Ausnahme zu machen. Ich bitte deshalb auch darum, bei etwaigen Kommentaren noch nicht zu versuchen, Alternativen aus mir herauszukitzeln.

Comments for "Die formale Erklärung declaration.tex" abonnieren