labbook.cls, eine LATEX-Klasse zum Führen von experimentellen ...
labbook.cls, eine LATEX-Klasse zum Führen von experimentellen ...
labbook.cls, eine LATEX-Klasse zum Führen von experimentellen ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>labbook</strong>.<strong>cls</strong>, <strong>eine</strong> L ATEX-<strong>Klasse</strong> <strong>zum</strong> <strong>Führen</strong> <strong>von</strong><br />
<strong>experimentellen</strong> Laborjournalen, Version 1.1<br />
Frank Küster<br />
2003-05-20<br />
Zusammenfassung<br />
Diese <strong>Klasse</strong> soll es ermöglichen, Laborbücher mit chronologischen<br />
Aufzeichnungen über Experimente mit <strong>LATEX</strong> zu führen. Die neuen Seiten<br />
werden einfach jeden Tag hinten angeheftet, aus den Gliederungselementen<br />
wird ein Experiment-Index generiert, um das Auffinden <strong>von</strong><br />
bestimmten Experimenten zu erleichtern. Durch unterschiedliche Seitennummerierung<br />
kann der Vorspann (Index, Inhalt, Abkürzungsverzeichnis)<br />
unabhängig vom Hauptteil verlängert werden. Die <strong>Klasse</strong> basiert auf der<br />
KOMA-Script-<strong>Klasse</strong> scrbook.<strong>cls</strong>. Es können daher alle Merkmale dieser<br />
<strong>Klasse</strong> verwendet werden – die Lektüre des scrguide, derKOMA-Script-<br />
Dokumentation, wird daher sehr empfohlen.<br />
Inhaltsverzeichnis<br />
1 Generelles 1<br />
1.1 Rechtliches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1<br />
1.2 Merkmale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />
2 Benutzung 2<br />
2.1 Initialisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />
3 Gliederungsbefehle 3<br />
3.1 \experiment und \subexperiment: Einfache Verwendung . . . . 3<br />
3.2 Fortgeschrittene Verwendung: Abkürzungen . . . . . . . . . . . . 4<br />
3.3 MehrfacheIndexeinträge....................... 4<br />
4 Implementierung 5<br />
1 Generelles<br />
1.1 Rechtliches<br />
Die Führung <strong>von</strong> Laborbüchern ist teilweise gesetzlich geregelt, oft stellen Institutionen<br />
zur Forschungsförderung weitere Anforderungen. In der Regel ist es<br />
daher nicht erlaubt, ein Laborjournal lediglich in elektronischer Form zu führen;<br />
teilweise sind gebundene Bücher vorgeschrieben. Allerdings scheint es auch dort<br />
1
üblich zu sein, die Notizen, die man während der Experimente auf losen Blättern,<br />
in Computerdateien oder <strong>eine</strong>m „Schmierbuch“ geführt hat, mehr oder<br />
weniger regelmäßig ins gebundene Laborjournal zu übertragen.<br />
Aus diesem Grund scheint es mir vertretbar, mit <strong>eine</strong>r elektronischen und <strong>eine</strong>r<br />
parallelen ausgedruckten Fassung des Laborjournals zu arbeiten. Bei Bedarf<br />
kann die ausgedruckte Fassung geheftet oder gebunden werden, <strong>eine</strong> auf CD-<br />
ROM gebrannte Version sollte <strong>eine</strong>m Buch an Beweiskraft nicht nachstehen.<br />
Dem stehen die großen Vorteile v.a. <strong>eine</strong>r PDF-Fassung gegenüber: Volltextsuche,<br />
einfache Einbindung <strong>von</strong> Graphen und Bildern, Möglichkeit der Verlinkung<br />
<strong>von</strong> Datendateien etc.<br />
1.2 Merkmale<br />
Basisklasse <strong>labbook</strong>.<strong>cls</strong> basiert auf der KOMA-Script-<strong>Klasse</strong> scrbook.<strong>cls</strong><br />
und bietet daher alle Möglichkeiten dieser <strong>Klasse</strong>, vom Seitenlayout über<br />
Kopfzeilengestaltung und Absatzauszeichnung bis hin zu Variationen des<br />
Layouts <strong>von</strong> floats und Randbemerkungen. Die Lektüre des scrguide wird<br />
sehr empfohlen!<br />
Gliederung Die Gliederung erfolgt zunächst chronologisch, statt \chapter<br />
wird \labday verwendet. Innerhalb <strong>eine</strong>s Tages wird nach Experimenten<br />
untergliedert – das kann <strong>eine</strong> vollständige Messung <strong>von</strong> der Planung<br />
bis zur Auswertung sein, aber auch ein Arbeitsgang <strong>eine</strong>s mehrere Tage<br />
dauernden Versuchs. \experiment steht auf der Ebene <strong>von</strong> \section,<br />
zusätzlich steht \subexperiment auf der \subsection-Ebene zur Verfügung.<br />
Darunter gibt es die üblichen Gliederungsebenen, auch wenn <strong>eine</strong><br />
sehr tiefe Schachtelung wenig sinnvoll erscheint – man beachte das<br />
\minisec-Kommando <strong>von</strong> KOMA-Script.<br />
Index und Inhaltsverzeichnis Wegen der chronologischen Gliederung ist ein<br />
traditionelles Inhaltsverzeichnis nicht ausreichend, besonders wenn Versuche<br />
in <strong>eine</strong>m zusammenhängenden Experiment an verschiedenen Tagen<br />
durchgeführt werden. Daher wird zusätzlich ein Index ausgegeben. Der<br />
Index wird aus den Inhaltsverzeichnis-Einträgen der Abschnittsbefehle erstellt.<br />
Als Argument für \experiment und \subexperiment kann man<br />
auch vorher definierte Abkürzungen verwenden. Dadurch soll die konsistente<br />
Erstellung des Index erleichtert werden. Außerdem können <strong>eine</strong>m<br />
Experiment mehrere Indexeinträge zugeordnet werden.<br />
hyperref-Integration Die <strong>Klasse</strong> arbeitet gut mit dem Paket hyperref.sty<br />
zur Erstellung <strong>von</strong> pdf-Dateien mit Navigationsfunktionen zusammen.<br />
2 Benutzung<br />
2.1 Initialisierung<br />
Wenn man hyperref verwenden möchte muss man die <strong>Klasse</strong>noption hyperref<br />
angeben:<br />
\documentclass[hyperref]{<strong>labbook</strong>}<br />
2
\labday<br />
\experiment<br />
\subexperiment<br />
Danach kann man hyperref und andere Pakete in der jeweils passenden Reihenfolge<br />
laden. Wird hyperref geladen, ohne die Option anzugeben, dann überschreibt<br />
es einige Änderungen, die in dieser <strong>Klasse</strong> in L ATEX-Interna eingefügt<br />
werden. Umgekehrt werden diese Änderungen gar nicht erst durchgeführt, wenn<br />
man die Option hyperref angibt, aber das Laden des Paketes vergisst! Bei der<br />
Verwendung <strong>von</strong> hyperref sollte man außerdem die KOMA-Option idxtotoc in<br />
Erwägung ziehen: Der Index wird nämlich nicht nur in das Inhaltsverzeichnis<br />
aufgenommen, sondern auch in die PDF-Bookmarks.<br />
Ansonsten werden derzeit einfach alle Optionen an scrbook durchgereicht.<br />
Die Verwendung <strong>von</strong> openany bietet sich an, damit Labortage auf jeder Seite<br />
beginnen können.<br />
3 Gliederungsbefehle<br />
subsection\labday labelsec:labday<br />
Der Befehl \labday kann verwendet werden, um <strong>eine</strong> nicht nummerierte<br />
Überschrift zu erzeugen. Ihr Text (bzw. der des optionalen Arguments) wird ins<br />
Inhaltsverzeichnis aufgenommen und als lebender Kolumnentitel gesetzt. In der<br />
Regel wird man einfach das Datum, vielleicht mit dem Wochentag, verwenden.<br />
\labday kümmert sich auch um die Indexeinträge der untergeordneten Gliederungspunkte;<br />
man sollte es nur innerhalb <strong>von</strong> mainmatter verwenden. Intern<br />
wird \addchap aufgerufen, es gibt k<strong>eine</strong> Sternform und kein optionales Argument.<br />
3.1 \experiment und \subexperiment: Einfache Verwendung<br />
Innerhalb <strong>eine</strong>s Tages können nummerierte Überschriften für einzelne Experimente<br />
mit<br />
\experiment[]{}<br />
erzeugt werden. Ihr Text (bzw. der des optionalen Arguments) wird nicht nur<br />
ins Inhaltsverzeichnis und den Seitenkopf geschrieben, sondern auch in den Index.<br />
Dieser erleichtert die Orientierung, besonders wenn Experimente mehrfach<br />
oder über mehrere Tage hinweg durchgeführt werden. Die Indexeinträge geben<br />
nicht nur die Seiten des Beginns jedes Experiments an, sondern den ganzen Seitenbereich,<br />
und fassen zusammenhängende Bereiche des gleichen Experiments<br />
an unterschiedlichen Tagen zusammen.<br />
Beachten Sie, dass man im optionalen Argument k<strong>eine</strong> Kommas verwenden<br />
darf, weil es auch <strong>eine</strong> durch Kommas abgetrennte Liste enthalten kann (s. u.).<br />
Wenn Sie doch ein Komma benötigen, schließen Sie das optionale Argument<br />
nochmals in geschweifte Klammern ein:<br />
\experiment[{eins, zwei, drei}]{Die Eins, die zwei und die Drei}<br />
Das selbe gilt für die darunter liegenden \subexperiment-Einträge. Sie<br />
sind für Untergliederungen der Art „Planung, Durchführung, Auswertung“ oder<br />
„Herstellung, Reinigung, Messung“ vorgesehen.<br />
3
\newexperiment<br />
\newsubexperiment<br />
3.2 Fortgeschrittene Verwendung: Abkürzungen<br />
Wenn man für das gleiche Experiment an unterschiedlichen Stellen leicht unterschiedliche<br />
Formulierungen (oder Schreibungen) wählt, erhält man unterschiedliche<br />
Indexeinträge. Um dies zu vermeiden, kann man sich Abkürzungen für<br />
häufig auftretende Experimente definieren. Dies geschieht mit dem Makro<br />
\newexperiment{}{}{}<br />
Dabei bezeichnet die Abkürzung, mit der man auf die definierte<br />
und zugreifen kann (letztere für Index, Inhaltsverzeichnis<br />
und Kolumnentitel). Der Text der Abkürzung ist dabei ohne vorangestellten<br />
Backslash einzugeben, also als \experiment{abk}! Die Abkürzungen dürfen außer<br />
der Tilde (~), dem Komma und Leerzeichen sämtliche Zeichen enthalten.<br />
Für \subexperiment steht ein analoges Makro, \newsubexperiment, zur<br />
Verfügung.<br />
Bei jeder Verwendung <strong>eine</strong>s dieser Makros wird überprüft, ob die gewünschte<br />
Abkürzung bereits verwendet wurde, und gegebenenfalls ein Fehler<br />
erzeugt. Gleichlautende Abkürzungen für \experiment und \subexperiment<br />
sind grundsätzlich möglich, dürften aber nur Verwirrung stiften (beim Benutzer,<br />
nicht bei TEX). Wird das dritte Argument dieser Makros leer gelassen, so<br />
wird die Langform auch für Index und Inhaltsverzeichnis verwendet.<br />
\experiment und \subexperiment können wie \section mit oder ohne optionales<br />
Argument verwendet werden, und zwar sowohl mit völlig frei gewählten<br />
Überschriften (Kurz- und Langform) als auch mit <strong>eine</strong>r Abkürzung. Die Kombination<br />
<strong>eine</strong>r Abkürzung im optionalen Argument und <strong>eine</strong>r variierten, freien<br />
Langform im Hauptargument ist möglich, die Verwendung <strong>eine</strong>s frei formulierten<br />
optionalen Arguments mit <strong>eine</strong>r Abkürzung im Pflichargument führt jedoch<br />
zu <strong>eine</strong>m Fehler, denn die Abkürzung legt ja bereits <strong>eine</strong>n Index- und Verzeichniseintrag<br />
fest. Die Verwendung zweier unterschiedlicher Abkürzungen in optionalem<br />
und Pflichtargument ist möglich, wenn sie beide <strong>zum</strong> selben Indexeintrag<br />
führen.<br />
3.3 Mehrfache Indexeinträge<br />
Manchmal führt man zusammenpassende Arbeitschritte für verschiedene Experimente<br />
parallel aus, das verkompliziert die Indexeinträge. Stellen Sie sich<br />
z. B. vor, Sie hätten mit <strong>eine</strong>r Screening-Methode die Substanzen A152 und<br />
B96 aus <strong>eine</strong>r kombinatorischen Bibliothek als vielversprechende Medikamente<br />
identifiziert. Als nächstes möchten Sie deren exakte Struktur, Zusammensetzung<br />
oder Sequenz verifizieren und <strong>eine</strong> Präparationsmethode für etwas größere<br />
Mengen entwickeln. Wahrscheinlich können Sie Zeit sparen, indem Sie einige<br />
dieser Schritte für beide Substanzen parallel ausführen, aber dann erhalten Sie<br />
<strong>eine</strong>n Index mit Einträgen wie „A152 und B96, Sequenzierung“ – und zwei Monate<br />
später sollen Sie sich erinnern, ob sie B96 zusammen mit A152 sequenziert<br />
haben oder stattdessen in der folgenden Woche mit A43 und C12. Daher wäre<br />
es praktisch, für das Experiment „Sequenzierung <strong>von</strong> A152 und B96“ zwei<br />
Indexeinträge zu erhalten, nämlich Ä152, Sequenzierung“ und "B96, Sequenzierung“.<br />
Und genau das können Sie einfach erzeugen.<br />
\subexperiment Denn die Syntax <strong>von</strong> \experiment und \subexperiment erlaubt es, <strong>eine</strong><br />
\experiment durch Kommata abgetrennte Liste im optionalen Argument zu verwenden. Das<br />
erste Element wird für das Inhaltsverzeichnis und die Kolumnentitel verwen-<br />
4
det, und die folgenden Elemente liefern Indexeinträge. Angenommen, Sie haben<br />
die Abkürzungen A152-seq und B96-seq definiert, dann brauchen Sie nur zu<br />
schreiben:<br />
\experiment[Sequenzierung A152 und B96, A152-seq,<br />
B96-seq]{Sequenzierung der Inhibitor-Kandidaten A152 und B96}<br />
und Sie erhalten was Sie wünschen. Leerzeichen vor und nach den Kommata<br />
werden ignoriert. Sie können überall Abkürzungen oder freien Text wählen, obwohl<br />
für die Indexeinträge wahrscheinlich nur Abkürzungen wirklich sinnvoll<br />
sind.<br />
4 Implementierung<br />
Die Implementierung ist auf Englisch dokumentiert und kann durch Übersetzung<br />
<strong>von</strong> <strong>labbook</strong>.dtx mit latex erhalten werden.<br />
5