1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264
|
%%
%% This is file `labboode.tex',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% labbook.dtx (with options: `labboode')
%%
%% Copyright (C) 2002 Frank Kster.
%%
%% All rights reserved.
\ProvidesFile{labboode.tex}%
[2003/05/20 v1.1 LaTeX2e labbook document class]
\documentclass[a4paper]{article}
\usepackage{doc}
\usepackage{ngerman}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\MacroIndent=2em
\MakeShortVerb{\|}
\begin{document}
\title{labbook.cls, eine \LaTeX-Klasse zum F"uhren von experimentellen
Laborjournalen, Version 1.1}
\author{Frank K"uster}
\date{2003-05-20}
\maketitle
\begin{abstract}
Diese Klasse soll es erm"oglichen, Laborb"ucher mit chronologischen
Aufzeichnungen "uber Experimente mit \LaTeX\ zu f"uhren. Die neuen
Seiten werden einfach jeden Tag hinten angeheftet, aus den
Gliederungselementen wird ein Experiment-Index generiert, um das
Auffinden von bestimmten Experimenten zu erleichtern. Durch
unterschiedliche Seitennummerierung kann der Vorspann (Index,
Inhalt, Abkrzungsverzeichnis) unabhngig vom Hauptteil verl"angert
werden. Die Klasse basiert auf der KOMA-Script-Klasse
|scrbook.cls|. Es k"onnen daher alle Merkmale dieser Klasse
verwendet werden -- die Lekt"ure des |scrguide|, der
KOMA-Script-Dokumentation, wird daher sehr empfohlen.
\end{abstract}
\tableofcontents
\section{Generelles}
\subsection{Rechtliches}
Die F"uhrung von Laborb"uchern ist teilweise gesetzlich geregelt, oft
stellen Institutionen zur Forschungsf"orderung weitere Anforderungen.
In der Regel ist es daher \emph{nicht} erlaubt, ein Laborjournal
lediglich in elektronischer Form zu f"uhren; teilweise sind gebundene
B"ucher vorgeschrieben. Allerdings scheint es auch dort "ublich zu
sein, die Notizen, die man w"ahrend der Experimente auf losen
Bl"attern, in Computerdateien oder einem "`Schmierbuch"' gef"uhrt hat,
mehr oder weniger regelm"a"sig ins gebundene Laborjournal zu
"ubertragen.
Aus diesem Grund scheint es mir vertretbar, mit einer elektronischen
und einer parallelen ausgedruckten Fassung des Laborjournals zu
arbeiten. Bei Bedarf kann die ausgedruckte Fassung geheftet oder
gebunden werden, eine auf CD-ROM gebrannte Version sollte einem Buch
an Beweiskraft nicht nachstehen. Dem stehen die gro"sen Vorteile v.a. einer
PDF-Fassung gegen"uber: Volltextsuche, einfache Einbindung von
Graphen und Bildern, M"oglichkeit der Verlinkung von Datendateien etc.
\subsection{Merkmale}
\label{sec:features}
\begin{description}
\item[Basisklasse] |labbook.cls| basiert auf der KOMA-Script-Klasse
|scrbook.cls| und bietet daher alle Mglichkeiten dieser Klasse, vom
Seitenlayout ber Kopfzeilengestaltung und Absatzauszeichnung bis
hin zu Variationen des Layouts von \textit{floats} und
Randbemerkungen. Die Lektre des scrguide wird sehr empfohlen!
\item[Gliederung] Die Gliederung erfolgt zun"achst chronologisch,
statt |\chapter| wird |\labday| verwendet. Innerhalb eines Tages
wird nach Experimenten untergliedert -- das kann eine vollstndige
Messung von der Planung bis zur Auswertung sein, aber auch ein
Arbeitsgang eines mehrere Tage dauernden Versuchs. |\experiment|
steht auf der Ebene von |\section|, zustzlich steht
|\subexperiment| auf der |\subsection|-Ebene zur Verfgung. Darunter
gibt es die "ublichen Gliederungsebenen, auch wenn eine sehr tiefe
Schachtelung wenig sinnvoll erscheint -- man beachte das
|\minisec|-Kommando von KOMA-Script.
\item[Index und Inhaltsverzeichnis] Wegen der chronologischen Gliederung ist ein
traditionelles Inhaltsverzeichnis nicht ausreichend, besonders wenn
Versuche in einem zusammenh"angenden Experiment an verschiedenen
Tagen durchgef"uhrt werden. Daher wird zustzlich ein Index
ausgegeben. Der Index wird aus den Inhaltsverzeichnis-Eintrgen der
Abschnittsbefehle erstellt. Als Argument fr |\experiment| und
|\subexperiment| kann man auch vorher definierte Abkrzungen
verwenden. Dadurch soll die konsistente Erstellung des Index
erleichtert werden. Auerdem knnen einem Experiment mehrere
Indexeintrge zugeordnet werden.
\item[hyperref-Integration] Die Klasse arbeitet gut mit dem Paket
|hyperref.sty| zur Erstellung von pdf-Dateien mit
Navigationsfunktionen zusammen.
\end{description}
\section{Benutzung}
\label{sec:usage}
\subsection{Initialisierung}
\label{sec:options}
Wenn man hyperref verwenden mchte \emph{muss} man die Klassenoption
|hyperref| angeben:
\begin{verbatim}
\documentclass[hyperref]{labbook}
\end{verbatim}
Danach kann man hyperref und andere Pakete in der jeweils passenden
Reihenfolge laden. Wird hyperref geladen, ohne die Option anzugeben,
dann berschreibt es einige nderungen, die in dieser Klasse in
\LaTeX-Interna eingefgt werden. Umgekehrt werden diese nderungen gar
nicht erst durchgefhrt, wenn man die Option |hyperref| angibt, aber
das Laden des Paketes vergisst! Bei der Verwendung von hyperref
sollte man auerdem die KOMA-Option |idxtotoc| in Erwgung ziehen: Der
Index wird nmlich nicht nur in das Inhaltsverzeichnis aufgenommen,
sondern auch in die PDF-Bookmarks.
Ansonsten werden derzeit einfach alle Optionen an scrbook
durchgereicht. Die Verwendung von |openany| bietet sich an, damit
Labortage auf jeder Seite beginnen knnen.
\section{Gliederungsbefehle}
\label{sec:gliederungsbefehle}
subsection{\textbackslash\texttt{labday}}
label{sec:labday}
\DescribeMacro{\labday} Der Befehl |\labday| kann verwendet werden, um
eine nicht nummerierte "Uberschrift zu erzeugen. Ihr Text (bzw. der des
optionalen Arguments) wird ins Inhaltsverzeichnis aufgenommen und als
lebender Kolumnentitel gesetzt. In der Regel wird man einfach das
Datum, vielleicht mit dem Wochentag, verwenden. |\labday| kmmert
sich auch um die Indexeintrge der untergeordneten Gliederungspunkte;
man sollte es nur innerhalb von mainmatter verwenden. Intern wird
|\addchap| aufgerufen, es gibt keine Sternform und kein optionales
Argument.
\subsection{\textbackslash\texttt{experiment} und
\textbackslash\texttt{subexperiment}: Einfache Verwendung}
\label{sec:exper-und-subexp}
\DescribeMacro{\experiment} Innerhalb eines Tages k"onnen nummerierte
"Uberschriften fr einzelne Experimente mit
\begin{verbatim}
\experiment[<Kurzform>]{<Langform>}
\end{verbatim}
erzeugt werden. Ihr Text (bzw. der des optionalen Arguments) wird
nicht nur ins Inhaltsverzeichnis und den Seitenkopf geschrieben,
sondern auch in den Index. Dieser erleichtert die Orientierung,
besonders wenn Experimente mehrfach oder "uber mehrere Tage hinweg
durchgef"uhrt werden. Die Indexeintr"age geben nicht nur die Seiten
des Beginns jedes Experiments an, sondern den ganzen Seitenbereich,
und fassen zusammenhngende Bereiche des gleichen Experiments an
unterschiedlichen Tagen zusammen.
Beachten Sie, dass man im optionalen Argument keine Kommas verwenden
darf, weil es auch eine durch Kommas abgetrennte Liste enthalten kann
(s.\,u.). Wenn Sie doch ein Komma bentigen, schlieen Sie das
optionale Argument nochmals in geschweifte Klammern ein:
\begin{verbatim}
\experiment[{eins, zwei, drei}]{Die Eins, die zwei und die Drei}
\end{verbatim}
\DescribeMacro{\subexperiment} Das selbe gilt f"ur die darunter
liegenden |\subexperiment|-Eintr"age. Sie sind f"ur Untergliederungen
der Art "`Planung, Durchf"uhrung, Auswertung"' oder "`Herstellung,
Reinigung, Messung"' vorgesehen.
\subsection{Fortgeschrittene Verwendung: Abk"urzungen}
\label{sec:abkurzungen}
\DescribeMacro{\newexperiment} Wenn man fr das gleiche Experiment an
unterschiedlichen Stellen leicht unterschiedliche Formulierungen (oder
Schreibungen) whlt, erhlt man unterschiedliche Indexeintrge. Um
dies zu vermeiden, kann man sich Abk"urzungen fr hufig auftretende
Experimente definieren. Dies geschieht mit dem Makro
|\newexperiment{<abk>}{<Langform>}{<Kurzform>}|
Dabei bezeichnet |<abk>| die Abk"urzung, mit der man auf die
definierte |<Langform>| und |<Kurzform>| zugreifen kann (letztere fr
Index, Inhaltsverzeichnis und Kolumnentitel). Der Text der Abk"urzung
ist dabei \emph{ohne} vorangestellten Backslash einzugeben, also als
|\experiment{abk}|! Die Abk"urzungen d"urfen auer der Tilde
(\textasciitilde), dem Komma und Leerzeichen smtliche Zeichen
enthalten.
\DescribeMacro{\newsubexperiment} Fr |\subexperiment| steht ein
analoges Makro, |\newsubexperiment|, zur Verfgung.
Bei jeder Verwendung eines dieser Makros wird "uberpr"uft, ob die
gew"unschte Abk"urzung bereits verwendet wurde, und gegebenenfalls ein
Fehler erzeugt. Gleichlautende Abk"urzungen f"ur |\experiment| und
|\subexperiment| sind grunds"atzlich m"oglich, d"urften aber nur
Verwirrung stiften (beim Benutzer, nicht bei \TeX). Wird das dritte
Argument dieser Makros leer gelassen, so wird die Langform auch f"ur
Index und Inhaltsverzeichnis verwendet.
|\experiment| und |\subexperiment| k"onnen wie |\section| mit oder
ohne optionales Argument verwendet werden, und zwar sowohl mit v"ollig
frei gew"ahlten "Uberschriften (Kurz- und Langform) als auch mit einer
Abk"urzung. Die Kombination einer Abk"urzung im optionalen Argument
und einer variierten, freien Langform im Hauptargument ist m"oglich,
die Verwendung eines frei formulierten optionalen Arguments mit einer
Abk"urzung im Pflichargument f"uhrt jedoch zu einem Fehler, denn die
Abk"urzung legt ja bereits einen Index- und Verzeichniseintrag fest.
Die Verwendung zweier unterschiedlicher Abk"urzungen in optionalem und
Pflichtargument ist m"oglich, wenn sie beide zum selben Indexeintrag
f"uhren.
\subsection{Mehrfache Indexeintrge}
Manchmal fhrt man zusammenpassende Arbeitschritte fr verschiedene
Experimente parallel aus, das verkompliziert die Indexeintrge.
Stellen Sie sich z.\,B. vor, Sie htten mit einer Screening-Methode
die Substanzen A152 und B96 aus einer kombinatorischen Bibliothek als
vielversprechende Medikamente identifiziert. Als nchstes mchten Sie
deren exakte Struktur, Zusammensetzung oder Sequenz verifizieren und
eine Prparationsmethode fr etwas grere Mengen entwickeln.
Wahrscheinlich knnen Sie Zeit sparen, indem Sie einige dieser
Schritte fr beide Substanzen parallel ausfhren, aber dann erhalten
Sie einen Index mit Eintrgen wie "`A152 und B96, Sequenzierung"' --
und zwei Monate spter sollen Sie sich erinnern, ob sie B96 zusammen
mit A152 sequenziert haben oder stattdessen in der folgenden Woche mit
A43 und C12. Daher wre es praktisch, fr das Experiment
"`Sequenzierung von A152 und B96"' zwei Indexeintrge zu erhalten,
nmlich "A152, Sequenzierung"' und "B96, Sequenzierung"'. Und genau
das knnen Sie einfach erzeugen.
\DescribeMacro{\subexperiment}\DescribeMacro{\experiment}
Denn die Syntax von |\experiment| und |\subexperiment| erlaubt es,
eine durch Kommata abgetrennte Liste im optionalen Argument zu
verwenden. Das erste Element wird fr das Inhaltsverzeichnis und die
Kolumnentitel verwendet, und die folgenden Elemente liefern
Indexeintrge. Angenommen, Sie haben die Abkrzungen A152-seq und
B96-seq definiert, dann brauchen Sie nur zu schreiben:
\begin{verbatim}
\experiment[Sequenzierung A152 und B96, A152-seq,
B96-seq]{Sequenzierung der Inhibitor-Kandidaten A152 und B96}
\end{verbatim}
und Sie erhalten was Sie wnschen. Leerzeichen vor und nach den
Kommata werden ignoriert. Sie knnen berall Abkrzungen oder freien
Text whlen, obwohl fr die Indexeintrge wahrscheinlich nur
Abkrzungen wirklich sinnvoll sind.
\section{Implementierung}
Die Implementierung ist auf Englisch dokumentiert und kann durch
bersetzung von |labbook.dtx| mit latex erhalten werden.
\PrintIndex
\end{document}
\endinput
%%
%% End of file `labboode.tex'.
|