close

Anmelden

Neues Passwort anfordern?

Anmeldung mit OpenID

Grüner Hering gebraten mit Möhren und Kartoffeln 3,50 € (G

EinbettenHerunterladen
LATEX-Kurs
Informationen für Kursleiter
Michael Helmling
Jan Ohst
Version vom Donnerstag, den 23. Oktober 2014, 16:08 Uhr
Übersetzt mit XELATEX
2
Vorwort
Dieses Dokument ist eine Anleitung für einen LATEX-Kurs. Die Teilnehmer sollen in die
Lage versetzt werden, eine Abschlussarbeit in einem naturwissenschaftlich-technischen
Fach mit LATEX zu verfassen – das beinhaltet insbesondere Formelsatz und Literaturverwaltung.
Der Kurs beginnt mit der Installation und setzt keine Vorkenntnisse seitens der Teilnehmer voraus. Er ist in mehrere Einheiten gegliedert, deren ungefähre Länge, soweit bekannt, jeweils angegeben ist. Die Einheiten sind grob in den ersten Teil, der die „Grundausstattung“ enthält, und einen zweiten Teil mit verschiedenen weiterführenden Themen
gegliedert.
Als TEX-Editor wird TEXstudio verwendet, der für alle Plattformen frei verfügbar ist und
einen integrierten PDF-Betrachter hat. Bei der Literaturverwaltung setzen wir auf das
ebenfalls plattformunabhängige Java-Programm JabRef.
Im Prinzip kann der Kurs von einer Person alleine gehalten werden, es ist jedoch zweckmäßig wenn ein weiterer Übungsleiter verfügbar ist, der umhergehen und Leuten bei
Problemen und Fragen individuell helfen kann, ohne den Kursfluss zu sehr aufzuhalten.
Gelegentlicher Rollentausch entlastet nicht nur die Übungsleiter sondern ist auch der
Aufmerksamkeit bei den Teilnehmern zuträglich. Bei größeren Teilnehmerzahlen sind
natürlich gegebenenfalls auch weitere Hilfskräfte angebracht.
Dieses Dokument sowie alle benötigten Hilfsdateien (Übungen etc.) werden in einem
Mercurial-Repository1 verwaltet, auf das lesend mit dem Login latex, Passwort kurs
zugegriffen werden kann.
1
https://hg.uni-koblenz.de/helmling/latexkurs
3
Inhaltsverzeichnis
1 Grundausstattung
1.1 Vorbereitungen . . . . . . . . . . . . .
1.2 Einleitung und Motivation (5 Minuten)
1.3 Erste Schritte (60 Minuten) . . . . . .
1.4 Fehlersuche (15 Minuten) . . . . . . .
1.5 Mathe-Modus (60 Minuten) . . . . . .
1.6 Textsatz II (45 Minuten) . . . . . . . .
1.7 Hilfe zur Selbsthilfe (5 Minuten) . . .
1.8 Literaturverzeichnis (70 Minuten) . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 Weiterführende Themen und spezielle Pakete
2.1 Seitenlayout und Dokumentoptionen (45 Minuten) . . . . . . . . .
2.2 Vortragsfolien mit Beamer (70 Minuten) . . . . . . . . . . . . . . .
2.3 Theorem-Umgebungen: Sätze, Definitionen, Beweise (30 Minuten)
2.4 Algorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5 Optimieren des Workflows . . . . . . . . . . . . . . . . . . . . . . .
2.6 Mit TEX erzeugte Grafiken . . . . . . . . . . . . . . . . . . . . . . .
2.7 Verschiedene Tipps und Tricks . . . . . . . . . . . . . . . . . . . .
2.8 Für die Zukunft . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Literaturverzeichnis
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4
4
6
6
9
10
11
13
13
.
.
.
.
.
.
.
.
17
17
19
20
22
23
25
26
27
28
4
1 Grundausstattung
Die Einheiten dieses Kapitels beinhalten eine Grundausstattung, die jeder haben sollte
der im mathematisch-naturwissenschaftlichen Bereich eine Ausarbeitung oder Abschlussarbeit erstellt.
1.1 Vorbereitungen
Begleitliteratur für die Teilnehmer
Es bietet sich an, Begleitliteratur direkt im Kurs zu verkaufen, damit die Teilnehmer eine
einheitliche Quelle für weitere Gehversuche haben. Dieser Kurs orientiert sich lose am
RRZN-LATEX-Handbuch [Stu12], das über die Uni-Rechenzentren kostengünstig erworben
werden kann. Im Handout (siehe handout.tex) sind einige wichtige Unterschiede zwischen diesem Kurs und dem RRZN-Handbuch aufgelistet.
Handouts
Die Handouts sind in ausreichender Zahl zu drucken.
Software
Software
Falls ein Rechnerraum verwendet wird, sollte man vor dem Kurs sicherstellen dass die
benötigte Software (TEX-System, Editor, Literaturverwaltung) in hinreichend aktueller
Version auf den Rechnern installiert ist. Gegebenenfalls Gastaccounts für externe Teilnehmer vorhalten.
Da die Installation und Konfiguration der Kompomenten immer Probleme bereitet, sollte
man denjenigen, die ihren eigenen Laptop verwenden möchten, im Voraus eine Anleitung zukommen lassen, welche Programme installiert und wie sie konfiguriert werden
müssen. Im Falle von Problemen bietet es sich an, diese Teilnehmer eine halbe Stunde
vor Kursbeginn antanzen zu lassen oder besser einen Tag vor dem eigentlichen Kurs eine
„Installations-Hilfestunde“ anzubieten. Die Software sollte in der gleichen Reihenfolge
installiert werden wie im Folgenden aufgelistet.
1 Grundausstattung
5
TEX-System Unter Windows MiKTEX1 mit den Standard-Optionen installieren, MacTEX2
entsprechend. Linux-Nutzern die TEX Live3 -Pakete (texlive-full bei Debian und Ubuntu) im Paketmanager suchen lassen.
Editor Wir verwenden TexStudio4 . Windows/Mac: normal installieren. Unter Linux bietet es sich eventuell an, die aktuellen Pakete von der Homepage zu verwenden, da
die Distributionen derzeit meistens entweder gar keine oder veraltete Versionen
beinhalten.
BIBTEX-Editor Wir verwenden JabRef5 . Auch hier gibt es fertige Installer für Windows
und Mac, bei den meisten Linux-Distributionen ist ein jabref-Paket vorhanden.
Das Programm benötigt eine Java6 -Umgebung, welche ggf. noch installiert werden muss.
Je nach Ausstattung der Arbeitsplätze müssen die Übungsleiter entscheiden, ob der Compiler pdfLATEX oder das modernere XELATEX verwendet wird. Letzteres hat wegen der vollen Unicode-Unterstützung keine Probleme mehr mit Umlauten und Sonderzeichen und
erlaubt die Benutzung beliebiger TrueType- und OpenType-Schriftarten, ist aber nach
derzeitigen Stand auf den Terminals der Uni Koblenz unerträglich langsam.
Die zum Kurs gehörenden Beispieldateien an einem Ort im Netz ablegen wo die Teilnehmer leicht Zugriff haben.
Sonstiges
Zur Demonstration wird ein Beamer benötigt; der angeschlossene Rechner sollte möglichst die gleiche Software-Konfiguration wie die Teilnehmer haben. Es sollte immer
möglichst viel vom eingegebenen Quelltext sichtbar sein, wenn es geht natürlich auch
die PDF-Ausgabe. Eventuell sind sogar zwei Projektionsflächen, also je eine für Quelltext
und Ausgabe, sinnvoll.
Natürlich muss ein Rechnerraum reserviert werden. Auch wenn dieser nicht voll mit
Teilnehmern ausgebucht ist, sollte man keine anderen Leute reinlassen, weil das Unruhe
in den Raum bringt. Während der vorlesungsfreien Zeit rechtzeitig vor Kursbeginn im
Rechenzentrum einen Schlüssel ausleihen.
1
4
www.miktex.org
http://texstudio.sf.net
2
5
3
http://tug.org/mactex
http://tug.org/texlive
6
http://jabref.sf.net
http://java.com/getjava
6
1.2 Einleitung und Motivation (5 Minuten)
1.2 Einleitung und Motivation (5 Minuten)
Die Funktionsweise eines TEX-Systems kurz erläutern:
• Arbeitsteilung zwischen Editor, Viewer (hier im Editor integriert) und TEX-Compiler.
• Beteiligte Dateien: Benutzer bearbeitet eine tex-Datei (einfache Textdatei), Ausgabe
ist PDF. LATEX legt verschiedene temporäre Dateien an, die man erstmal ignorieren
kann.
• Prinzip der Trennung von Layout und Inhalt: Um das Layout kümmert sich LATEX bzw.
die Dokumentenklasse (Buch, Artikel, …), Anpassungen stehen am Anfang der Quelltextdatei, im eigentlichen Dokumentteil (idealerweise) nicht mehr. Beispiele anführen warum das nützlich ist.
Mit einem kurzem geschichtlichen Überblick auch die Aussprache von „LATEX“ klären.
Die Struktur dieses Kurses erläutern: eher informal, basiert auf Interaktivität, der eigene,
größtenteils gemeinsam erstellte Quelltext ist als „Mitschrift“ gedacht und sollte deshalb
aufgehoben werden.
1.3 Erste Schritte (60 Minuten)
Dokumentstruktur und Befehle
Befehl
Alle starten mit einem leeren Dokument ( Datei Neu ). Gemeinsam wird ein minimales
funktionsfahiges Dokument erstellt. Dabei erwähnen was ein Befehl ist: speziell interpretierte Zeichenfolge in der Eingabe, meistens in der Form \befehl.
\ documentclass { scrartcl }
\ begin { document }
Hallo
\ end { document }
Hinweise für Mac-Nutzer
+ Alt + 7 , die geschweiften KlamAuf der Mac-Tastatur ist der Backslash mit
mern mit Alt + 8 und Alt + 9 und die eckigen mit Alt + 5 und Alt + 6 zu
erreichen.
speichern
Diese Datei in einem eigenen Ordner speichern lassen (besonders wichtig auf den Uni-
1 Grundausstattung
7
Rechnern; siehe oben); der Dateiname sollte kein Leerzeichen und keine Sonderzeichen
enthalten. Erklären dass man das Dokument mit F1 , dem grünen Doppelpfeil in der
Toolbar oder Tools Kompilieren & Anzeigen übersetzt. Teilnehmer ein wenig rumprobieren
lassen, auch mal einen Blick in den Ordner werfen und Hilfsdateien erklären (kann man
gefahrlos löschen, etc.). Umgebung erklären (eigentliches Dokument wird zwischen die
Befehle \begin{document} und \end{document} eingegeben), testweise etwas davor
oder danach schreiben lassen.
kein Leerzeichen
Erklären dass TEX Abstände innerhalb einer Zeile selbstständig ermittelt und auch ein neuer Absatz erst mit einer kompletten Leerzeile beginnt. Hierbei nochmals den Unterschied
zwischen Quelltext und Ausgabe klarmachen.
Abstände
Absatz
Hilfsdateien
Umgebung
Weitere Beispiele für Befehle (jetzt im Text) anbringen:
• \today als Befehl ohne Argumente,
\today
• \emph als Befehl mit einem Argument (Hinweis auf Trennung von Inhalt und Design:
\emph sagt TEX dass etwas hervorgehoben ist, nicht wie),
\emph
• \enquote als Befehl, der nicht sofort funktioniert. Jetzt kann man das Prinzip der
Pakete erklären, die in der Prämbel mit \usepackage eingebunden werden; in diesem
Fall ist es das csquotes-Paket.
\enquote
Dabei Kommentare (%) erklären und den Teilnehmern nahelegen, neu eingeführte Befehle per Kommentar zu erklären (und das auch selbst am Beamer so machen).
Pakete
csquotes
Kommentare
Fließtext schreiben
Einfache Textformatierung: Fettschrift mit \textbf (erwähnen dass man das eher vermeiden sollte – umgeht Trennung Layout / Inhalt). Jetzt das Konzept einer Umgebung einführen: \begin{name} …\end{name}. Ein einfaches Beispiel ist die center-Umgebung.
Dann kommt man zu Aufzählungslisten (enumerate, itemize) mit der weiteren Besonderheit dass diese nicht ohne \item-Befehle funktionieren.
\textbf
Bei dieser Gelegenheit kann man die Autovervollständigung im Editor bei Befehlen und
Umgebungen vorstellen (
drücken wenn der Befehl erscheint).
Autovervollständigung
Umgebung
center
Aufzählungslisten
Sonderzeichen und Sprachanpassungen
Jetzt merken die ersten, dass das Datum und die Anführungszeichen in englischem Format gesetzt wurden. Erklären, dass babel für Mehrsprachigkeit zuständig ist, das mit
\ usepackage [ ngerman ]{ babel }
babel
8
1.3 Erste Schritte (60 Minuten)
eingebunden wird.
XELATEX / LuaLATEX
Anstelle von babel sollte man hier das modernere polyglossia verwenden.
\ usepackage { polyglossia }
\ setmainlanguage [ babelshorthands = true ]{ german }
Dabei kann man gleich Paket-Optionen erklären, mal french statt ngerman ausprobieren lassen. Beim Wechsel kommt zunächst eine Fehlermeldung – hier kann man die Information unterbringen dass man manchmal mehrfach übersetzen muss. Nochmal auf
Trennung Inhalt / Style hinweisen (Anführungszeichen).
Encoding
Bei der Gelegenheit gleich noch das Encoding setzen. Historische Gründe kurz motivieren
und
\ usepackage [ utf 8]{ inputenc }
\ usepackage [ T 1]{ fontenc }
\ usepackage { lmodern }
in die Präambel schreiben lassen. Jetzt gehen auch Umlaute und manche Sonderzeichen.
XELATEX / LuaLATEX
Bei den modernen Compilern ist die UTF8-Codierung Standard. Anstelle der drei
obigen Pakete muss man nur das fontspec-Paket laden, damit auch das OpenTypeSchriftsystem verwendet wird.
\ usepackage { fontspec }
\textbackslash
\{, \}
\&, \$
Was natürlich nicht einfach so gehen kann sind die Zeichen \, { und }. Dafür die Befehle
\textbackslash, \{ und \} erklären. Bei der Gelegenheit die Ersatzbefehle \& und \$
einführen. Erwähnen dass es noch ein paar mehr gibt; meistens hilft \ + gewünschtes
Zeichen.
Struktur
\section
\subsection
\subsubsection
Befehle \section, \subsection und \subsubsection erklären und zeigen, dass die
Überschriften automatisch in der Größe angepasst und nummeriert werden.
1 Grundausstattung
9
Jetzt wollen wir noch einen Titel und Inhaltsverzeichnis. Zuerst das Inhaltsverzeichnis
(einfacher): an die gewünschte Stelle \tableofcontents schreiben. Nochmal ggf. auf’s
mehrfache Übersetzen hinweisen.
\tableofcontents
Für den Titel müssen erst Informationen zum Dokument angegeben werden: Titel, Autor
und Datum. Das geschieht, am besten direkt nach \begin{document}, mit den folgenden
Befehlen:
\ title { Test - Dokument }
\ author { Je Mand }
\ date {\ today }
Eine Titelseite (dahinter) mit \maketitle erstellen. Jetzt ist auch genug Text vorhanden,
dass man das Hin- und Herspringen zwischen PDF und Quelltext ( Strg + Klick im PDF,
F7 im Quelltext) gut erklären kann.
\maketitle
Markierungen und Referenzen
Die Befehle \label, \ref und \pageref erklären. Empfehlen das Label immer direkt \label, \ref
nach dem entsprechenden Strukturbefehl zu setzen. Hinweis, dass nur bestimmte Dinge \pageref
gelabelet werden können (Faustregel: „Alles was eine Nummer bekommt“). Eigene Struktur für Labels überlegen und dabei auf dokumentenweite Eindeutigkeit achten. Nummern dokumentenweite
im Label vermeiden, da die sich ändern könnten: zu vermeiden ist etwa \label{section2}, Eindeutigkeit
besser wäre \label{section:introduction}.
An der Stelle das hyperref-Paket empfehlen, was Referenzen anklickbar macht und schon
beim TEXen sehr hilfreich sein kann.
1.4 Fehlersuche (15 Minuten)
Als Mittel zur Fehlersuche erklären: möglichst viel ausschließen. Sowieso möglichst oft
compilieren, um zu merken wann der Fehler passiert ist. Als Angewohnheit empfehlen
schließende Klammern und \end{...} immer gleich mitzutippen. Sonst auf Google verweisen.
hyperref
10
1.5 Mathe-Modus (60 Minuten)
1.5 Mathe-Modus (60 Minuten)
Mathematik-Pakete
Zunächst die Mathematik-Pakete amsmath, amssymb und amsfonts einbinden lassen,
die sicherheitshalber in jedem Dokument, das Mathematik beinhaltet, benutzt werden
sollten.
equation
Als Einstieg in den Mathe-Modus die equation-Umgebung zum Setzen einer zentrierten
Formel (nicht nur Gleichung) einführen. Dabei einige Grundlagen erklären:
• Normale Buchstaben sind Variablen, Zahlen sind Zahlen.
• Alle Abstände werden automatisch ermittelt.
x^2, a_j
Klammerung
• Hoch- und tiefstellen (x^2 und a_j), auch kombinierbar, Klammerung notwendig
bei mehr als einem Buchstaben (x^{i,j}_{k,l}). Daran erinnern, dass geschweifte Klammern selbst mit \{ und \} eingegeben werden.
\eqref
Die Gleichung bekommt eine Nummer. Label kann man wie gewohnt setzen, zum Referenzieren von Gleichungen am besten \eqref verwenden, da es die Formatierung übernimmt.
gather
\\
Mehrzeilige Formeln bietet die gather-Umgebung, wobei die Zeilen mit \\ getrennt und
jeweils zentriert werden. Darauf hinweisen, dass am Ende kein \\ mehr stehen sollte
und auch komplette Leerzeilen innerhalb der Umgebung zu Fehlern führen.
Ausrichtung
align, &
Zusätzliche Ausrichtung der Formeln bietet die align-Umgebung: die Zeichen nach einem & stehen in jeder Zeile untereinander (in der Regel Gleichheitszeichen).
\[...\]
Die drei Umgebungen gibt es auch als *-Variante ohne Nummerierung; für equation*
außerdem die Kurzform \[...\].
subequations
Zur Nummerierung kann man noch die subequations-Umgebung erwähnen, die um
eine der mehrzeiligen Umgebungen herumgelegt wird.
Nun die weiteren Möglichkeiten des Mathematiksatzes angehen:
• auf die Symbollisten in TEXstudio hinweisen, die auf Klick den Befehl einfügen,
Operatoren
• Operatoren (sin, log, max etc.) mit extra Befehl setzen lassen, da anderer Schriftstil,
\mathbb{N}
• Symbole wie N (\mathbb{N}) erklären,
\sqrt[x]{y},
\frac{d}{n}
\sum, \int, \bigcup
\left, \right
• Wurzeln (\sqrt[x]{y}) und Brüche (\frac{d}{n}),
• die „größeren“ Elemente (\sum, \int, \bigcup etc.) sowie größenangepasste Klammern mit vorangestelltem \left und \right,
1 Grundausstattung
11
• die verschiedenen \dots-Befehle erklären: \dotsc für Auslassungspunkte zwischen
Kommata, \dotsm für Multiplikationspunkte, mehr braucht man nicht unbedingt.
\dots
Nach align sollte die Funktionsweise der pmatrix-Umgebung für Matrizen leicht zu
verstehen sein, in der man auch mit & in die nächste Spalte und mit \\ in die nächste
Zeile wechselt. Genauso funktioniert cases für Definitionen mit Fallunterscheidung. In
dem Zusammenhang sollte man das \text-Command einführen, für sowas wie „falls
x ≥ 5“.
pmatrix
Kleinere Formeln kann man auch innerhalb des normalen Absatzmodus mit der $...$Umgebung setzen. Dies sollte auf jeden Fall auch verwendet werden um den Schriftstil
von Variablennamen im Text abzuheben. Erklären, dass in diesem Modus bestimmte
Elemente (Brüche, Grenzen von Summen und Integralen) kompakter gesetzt werden.
$...$
cases
\text
Wenn Zeit ist bietet sich an dieser Stelle eine „Wünsch dir was“-Runde an, in der die
Kursteilnehmer fragen können wie man konkrete mathematischen Strukturen mit TEX
setzt. Kandidaten sind zum Beispiel \underbrace, mathematische Akzente, mehrzeilige
Limits von Summen, varianten griechischer Buchstaben, …
1.6 Textsatz II (45 Minuten)
Bilder und Abbildungen
Zum Einbinden von Bildern den Befehl \includegraphics aus dem graphicx-Paket einführen. Bilder müssen in einem der Formate pdf, png oder jpg vorliegen und am einfachsten im selben Ordner wie die tex-Datei liegen. Bei vielen Bildern bietet sich ein
Unterordner an, der dann mit einem „/“ (nicht „\“) abgetrennt wird:
\includegraphics
graphicx
\ includegraphics { bilder / panda . jpg }
Die Größe kann über verschiedene Optionen angepasst werden:
Größe
• \includegraphics[width=8cm]{panda.jpg}
• \includegraphics[height=38mm]{panda.jpg}
• \includegraphics[scale=1.5]{panda.jpg}
Hier sollte man darauf hinweisen, dass bei der Angabe von Längen die amerikanische
Schreibweise mit einem Dezimalpunkt (statt Komma) verwendet werden.
Gerade bei wissenschaftlichen Veröffentlichungen stehen Bilder praktisch nie mitten im
Text, sondern werden mit einer Bildunterschrift und Nummer versehen und oben oder
unten auf der Seite platziert.
Dezimalpunkt
12
1.6 Textsatz II (45 Minuten)
aaaa
d
b c
xyz
Tabelle 1.1: Beispieltabelle für Abschnitt 1.6
figure, \caption
Platzierung
Dazu die figure-Umgebung benutzen, darin in der Regel mit centering zentrieren, die
Grafik mit mit \includegraphics einfügen und mit \caption beschriften (ggf. auch ein
Label hinzufügen; das immer nach dem \caption-Befehl). Platzierung ist über einen Parameter der figure-Umgebung möglich: \begin{figure}[<x>] wobei <x> durch einen
oder mehrere Positionsmarker (h: „hier“, t: oben auf einer Seite, b: unten, p: auf eigener
Abbildungsseite) zu ersetzen ist. In wissenschaftlichen Texten sind fast ausschließlich t
und b üblich. Der Standard ist tbp und sollte normalerweise beibehalten werden.
Tabellen (optional)
tabular
\multicolmun
Für Tabellen die tabular-Umgebung einführen. Dabei die Spaltendefinitionen (lcr und
|) erklären, die Befehle & und \\ um Spalte bzw. Zeile zu wechseln, \hline für horizontale Linien und \multicolmun zum Verbinden mehrerer Zellen erklären. Als Beispiel die
folgende Tabelle (siehe Tabelle 1.1) am Präsentationsrechner eintippen:
\ begin { tabular }{| l || c | r |}
\ hline aaaa & b & c \\ \ hline
d & \ multicolumn {2}{ c |}{ xyz }\\ \ hline
table
Die table-Umgebung als analog zu figure erklären (funktioniert genauso, wird aber
getrennt nummeriert).
Verschiedenes
\footnote
Silbentrennung
”-, \-, ”=
hyphenation
Badboxes
microtype
Den \footnote-Befehl für Fußnoten einführen. Auf gelegentlich notwendige Nachhilfe
bei der Silbentrennung hinweisen. Hierbei die Befehle ”- für eine zusätzliche, \- für eine
ausschließliche Trennstelle und ”= als Bindestrich, an dem getrennt werden darf, nennen.
Vor allem der letzte ist wichtig, weil LATEX Wörter mit Bindestrich sonst gar nicht trennt.
Zur globalen Trennhilfe den hyphenation-Befehl (in der Präambel) erklären.
Im Zusammenhang mit der Silbentrennung ist auch die Erklärung der Badboxes sinnvoll,
die entstehen wenn TEX keine passende Umbruchstelle in einer Zeile findet, woraufhin
diese in den Rand hinausragt. Die Ursache ist meistens fehlende Silbentrennung oder
eine zu lange Formel im Text. In manchen Fällen hilft es nur, den Satz (oder einen der
Umliegenden) leicht umzuformulieren. Auch das microtype-Paket kann helfen und ist
1 Grundausstattung
13
ohnehin zu empfehlen.
Kurz auf typographische Feinheiten eingehen: Geschützte Leerzeichen mit ~ bei Konstrukten wie Prof.~Ruzika oder S.~15, korrekte Gedankenstriche (--) mit Leerzeichen
davor und dahinter, kleiner Abstand (\,) bei zweiteiligen Abkürzungen, \dots für Auslassungspunkte, etc.
~, --, \,
\dots
1.7 Hilfe zur Selbsthilfe (5 Minuten)
Die vier Säulen der Informationsgewinnung zu LATEX:
a) Freunde und Bekannte fragen, wenn diese mehr Erfahrung haben oder spezielle
Sachen schon gemacht haben;
Freunde und
Bekannte
b) Das Lieblings-LATEX-Buch konsultieren (ggf. insbesondere die offizielle Begleitliteratur zum Kurs). Bei Büchern aus der Bibliothek ist darauf zu achten, dass das Erscheinungsdatum nicht zu lange zurückliegt. Empfehlenswert ist z. B. [Voß12].
LATEX-Buch
c) Internet-Suche, wenn man ein spezielles Problem der Art „Wie mache ich …“ hat. Internet-Suche
Hier hilft es meistens ein paar Stichpunkte und „Latex“ in die Suchmaschine einzugeben.
d) Paketdokumentation: Weiß man bereits, welches Paket für die gewünschte Aufgabe zuständig ist, lohnt sich ein Blick in die meist sehr umfangreichen PaketHandbücher. Darauf hinweisen, dass viele davon schon mitinstalliert sind. Zum
Auffinden das Konsolenprogramm texdoc erklären, das auch in TEXstudio eingebaut ist: entweder über Hilfe Pakethilfe und dort den Paketnamen eintragen7 , oder
per Rechtsklick auf die entsprechende \usepackage{...}-Zeile oder auch einen
Befehl aus dem entsprechenden Paket, und dann Paketdokumentation öffnen.
1.8 Literaturverzeichnis (70 Minuten)
Motivieren: Man zitiert in seinem Dokument verschiedene Quellen, jede mit einem eigenen Kürzel. Am Ende soll ein Literaturverzeichnis stehen, in dem die alle Quellen und
die Kürzel aufgelistet sind. Von Hand wäre das sehr umständlich (vgl. Inhaltsverzeichnis): Man müsste manuell sortieren und vergisst leicht Einträge hinzuzufügen oder zu
löschen. Außerdem möchte man oft die gleiche Quelle in mehreren Dokumenten zitieren
und die Daten nicht jedes Mal neu eingeben, es gibt aber verschiedene Stilvorgaben je
nach Prüfungsamt / Zeitschrift, etc.
7
Funktioniert auf den Uni-Koblenz-Rechnern nicht (Stand Oktober 2013)
Paketdokumentation
texdoc
14
BIBTEX
1.8 Literaturverzeichnis (70 Minuten)
BIBTEX löst das Problem so: Man verwaltet eine gemeinsame Datenbank mit Literaturangaben; LATEX sucht sich daraus automatisch die für das jeweilige Dokument relevanten
Einträge zusammen.
Zitieren im Text
Biber
Erstmal in TEXstudio unter Optionen TeXstudio konfigurieren
dardbibliographie auf Biber umstellen.
erzeugen
den Eintrag Stan-
Dann zum leichteren Einstieg die vorbereitete Datei beispiel.bib verteilen (sollte im
Ordner der tex-Datei gespeichert werden). Im LATEX-Dokument, das die Bibliographie
biblatex verwenden soll, muss das biblatex-Paket geladen werden. Ebenfalls in der Präambel
\addbibresource wird die Datenbank geladen (\addbibresource). An gewünschter Stelle – in der Regel
\printbibliography am Dokumentende – wird mit \printbibliography die Literaturliste ausgeben. Jetzt
einmal übersetzen lassen: ein leeres Verzeichnis erscheint – klar, wir haben ja auch noch
keine Referenzen im Dokument.
Zitieren
\cite
\textcite
Zitierstil
sorting
Zum Zitieren im Text den Befehl \cite erklären, ggf. noch \textcite. Dazu zunächst ein
paar vorgegebene Keys aus der Datei nennen, die die Teilnehmer ausprobieren können.
Nochmal übersetzen lassen, jetzt sollten die Referenzen und die Bibliographieliste erscheinen (mit Nummern als Kürzel). Erklären dass ein eigenständiges Programm (Biber)
für das Erstellen der Bibliographie zuständig ist, das normalerweise von TEXstudio automatisch gestartet wird, was aber nicht immer korrekt erkannt wird – dann mit F11 oder
Tools Bibliographie per Hand durchführen.
Jetzt den Zitierstil ändern lassen: dazu biblatex die Paketoption style=alphabetic geben, übersetzen, Biber starten, nochmal übersetzen. Als weitere Optionen sorting für
die Sortierreihenfolge kurz anreißen: sorting=none übernimmt die Reihenfolge aus dem
Text, nyt sortiert nach Name–Jahr–Titel, ynt nach Jahr–Name–Titel. Viele weitere Optionen sind in [Stu12] erklärt.
Anlegen einer Datenbank
JabRef
Zur Verwaltung einer eigenen Datenbank benutzen wir JabRef. Hier erst einige wichtige
Einstellungen unter Options Preferences vornehmen:
• Auf der General -Seite Default Encoding auf UTF8 stellen.
• Bei Bedarf hier auch die Sprache umstellen (bezieht sich nur auf die Oberfläche von
JabRef).
• Unter Advanced das Häkchen bei BibLaTeX mode setzen.
1 Grundausstattung
15
Dann JabRef neu starten und die heruntergeladene Datei öffnen. Jetzt gemeinsam als
neuen Eintrag das Begleitbuch [Stu12] eingeben:
Über den Menüpunkt BibTeX New Entry einen neuen Eintrag erstellen. Es öffnet sich die
Liste von Eintragstypen, die man kurz erklärt. Wir wählen book (man kann erwähnen,
dass der Eintragstyp nicht immer ganz eindeutig ist – ist z. B. das RRZN-Handbuch ein
„richtiges“ Buch oder eher ein techreport?). Jetzt öffnet sich der Eintragseditor mit der
aktiven Seite Required Fields .
author
Hier das Format Nachname, Vorname empfehlen, mehrere Autoren werden
mit dem Wort and abgetrennt.
title
Hier exemplarisch zeigen dass man Befehle einbauen kann (\LaTeX). „Einführung in das Textsatzsystem“ kann man später auch als subtitle angeben.
date
Datum in verschiedener Genauigkeit (2000, 2000-05, 2000-05-13), Bereiche
lassen sich mit 2000-05/2000-07 eingeben.
Eintragstypen
bibtexkey Ein Schlüssel (analog zu \label) mit dem der Eintrag später im LATEX-Dokument referenziert wird.
Jetzt gehen wir zu den Optional fields über. Hier nicht im Detail auf alles eingehen; für
diese Quelle werden nur publisher, edition und subtitle benötigt (evt. pagetotal).
Jetzt geht man noch kurz die übrigen Reiter durch; z. B. kann man bei Optional fields 2
unter series etwa „RRZN-Handbücher“ eintragen. Auch comment (unter General ) für
eigene Kommentare kann bei größeren Datenbanken hilfreich sein (wo habe ich das her,
etc.).
Weil Eingeben per Hand mühsam und fehleranfällig ist, suchen wir jetzt einen Eintrag
im Internet. Dazu beispielsweise Google Scholar8 zeigen, dort exemplarisch nach dem
Paper „The ellipsoid method and its consequences in combinatorial optimization“ von Grötschel, Lovász und Schrijver [GLS81] suchen, BIBTEX-Exportfunktion von Google Scholar
zeigen. Zum Vergleich das Paper auf der SpringerLink-Seite öffnen und demonstrieren
dass der Eintrag hier etwas anders aussieht. Empfehlung: Auf der Seite des Verlags gibt
es meistens die vollständigsten Einträge.
Zum Import in JabRef den kompletten BIBTEX-Quelltext markieren, die Eintragsliste markieren (damit er den Quelltext nicht in ein Feld einfügt), unt mit Bearbeiten Einfügen
hinzufügen. Jetzt sollte man nochmal kurz drüberschauen ob alles stimmt (in diesem Beispiel fehlt der notwendige journaltitle-Eintrag, weil hierfür in vor-biblatex-Zeiten
noch journal verwendet wurde – den sieht man nur noch im Reiter BibTeX source . Bei
hinreichend motivierten Teilnehmern kann man das erklären; ansonsten ist biblatex
aber auch abwärtskompatibel und übernimmt den journal-Wert).
8
http://scholar.google.de
Google Scholar
SpringerLink
16
Schließlich die Datenbank mit File
chern.
1.8 Literaturverzeichnis (70 Minuten)
Save database
in den Ordner der TEX-Datei spei-
17
2 Weiterführende Themen und spezielle
Pakete
2.1 Seitenlayout und Dokumentoptionen (45 Minuten)
Dokumentenklassen
Bisher stand immer \documentclass{scrartcl} ganz oben. Die Dokumenteklasse legt
einige grundsätzliche Layout- und Strukturdinge fest. Wichtigste sind:
Dokumenteklasse
• scrartcl: Artikel z. B. in Zeitschriften,
• scrreprt: Längere Berichte oder Abschlussarbeit –– hier kommt über section noch
die Gliederungsebene \chapter (Kapitel) dazu,
\chapter
• scrbook: Bücher (hier gibt es noch \part für mehrteilige Bücher).
Optionen der KOMA-Klassen
• Papierformat: paper=, z. B. A4, A5, letter etc.,
Papierformat
• Schriftgröße: fontsize=, eins von 10pt, 11pt, 12pt,
Schriftgröße
• Seitenaufteilung: twoside entweder true oder false, Unterschiede erklären (bei
doppelseitigem Druck ist der gesamte innere Rand so groß wie jeweils ein äußerer,
Kopf- und Fußzeile eventuell verschieden),
twoside
• Titelseite mit titlepage=true oder false ein- bzw. ausschalten,
Titelseite
• parskip: Statt Einzug am Absatzanfang einen vertikalen Abstand einfügen. Übliche
Werte sind half oder full,
parskip
• headings, Werte small, normal und big,
headings
18
Satzspiegelberechnung
Bindekorrektur
geometry
2.1 Seitenlayout und Dokumentoptionen (45 Minuten)
• Satzspiegelberechnung: die Option DIV legt fest wie viel Platz der Textkörper auf der
Seite einnimmt. Der Wert muss mindestens 5 betragen, Standard ist 9. Eine Bindekorrektur kann man mit der BCOR-Option angeben, die den durchschnittlichen Verlust
durch etwaige Bindung (z. B. 7.25mm) erhält (sinnvoll nur bei twoside=true).
Mit dem geometry-Paket kann man die Seitenränder komplett selbst einstellen (wie bei
manchen Prüfungsordnungen gefordert):
\ usepackage [ top =2 cm , left =1.5 cm , right =1.5 cm , bottom =3 cm ]{ geometry }
Kopf- und Fußzeile
\pagestyle{}
\thispagestyle
scrlayer-scrpage
Mit \pagestyle{} kann man den Stil der Kopf- und Fußzeile umschalten. Werte sind
empty, plain (nur Seitenzahl), headings (Kopfzeile mit aktuellem Kapitel). Interessant
ist \thispagestyle, was nur für die aktuelle Seite gilt.
Mehr Möglichkeiten bietet das Paket scrlayer-scrpage. Nach dem Einbinden wird es
mit dem Befehl \pagestyle{scrheadings} aktiviert. Dann kann man die einzelenen
Elemente für Kopf- und Fußzeilen getrennt nach der Position (right/center/left) bei
doppelseitigem Druck auf odd und even (bei einseitigem Druck ist jede Seite per Definition ungerade) einzeln festlegen. Als optionaler Parameter ist jeweils der Wert für den
plain-Style anzugeben, der beispielsweise auf Kapitelseiten verwendet wird.
\ ohead [\ thepage ]{\ thepage }
%S e i t e n z a h l außen
\ lohead []{\ leftmark }
% auf ungeraden S e i t e n
l i n k s das K a p i t e l
\ rehead []{\ LaTeX - Kurs }
% a u f g e r a d e n S e i t e n r e c h t s den T i t e l
\ setkomafont { pagehead }{\ sffamily \ bfseries }
% Kopfzeile
f e t t und s e r i f e n l o s
\ cfoot []{ Beispiel }
\ setkomafont { pagefoot }{\ tiny \ sffamily }
% In der F u ß z e i l e ein
Beispieltext
Inhaltsverzeichnis anpassen
\section*
Kurzform
Weitere Feinheiten zum Inhaltsverzeichnis: Einzelne Kapitel oder Abschnitte, die nicht
im Inhaltsverzeichnis auftauchen sollen, mit \section* etc. definieren. Außerdem kann
für lange Kapitelnamen eine Kurzform als optionaler Parameter angegeben werden.
2 Weiterführende Themen und spezielle Pakete
19
Bis zu welcher Ebene Unterabschnitte im Inhalt auftauchen legt der Zähler tocdepth
fest:
tocdepth
\ setcounter { tocdepth }{1}
zeigt zum Beispiel bei scrreprt nur Chapters und Sections an. Analog kann man mit
secnumdepth ab einer gewissen Tiefe auf Nummerierung verzichten.
secnumdepth
Die Bibliographie erhält mit \printbibliography[heading=bibintoc] einen Eintrag
im Inhaltsverzeichnis.
2.2 Vortragsfolien mit Beamer (70 Minuten)
Ein komplett anderer Anwendungsbereich für LATEX ist das Erstellen von Vortragsfolien
mit der beamer-Klasse. Zum Einstieg kopiert man am besten die Präambel des bisherigen Kurs-Mitschriebs in ein neues Dokument; eventuelle Pakete und Einstellungen zum
Layout müssen aber entfernt werden. Dann die documentclass auf beamer setzen.
beamer
Als erstes eine Titelfolie erstellen; dazu die erweiterten Metadaten-Befehle wie \subtitle \subtitle
und die Kurzformen erklären. Könnte z. B. so aussehen:
\ title [ Tolle Präsentation ]{ Eine tolle Beamer - Präsentation
mit langem Titel }
\ subtitle { Wie es seien sollte \ ldots }
\ author { Ing Cognito }
\ institute [ Uni Koblenz ]{ Universität Koblenz \\ Mathematik }
\ date {\ today }
\ maketitle
Man sieht jetzt schon das komplett andere Layout (Querformat, farbige Ausgabe, usw.).
frame
Dann eine erste Folie mit der frame-Umgebung erstellen, mit Titel und einem block:
\ begin { frame }{ Folientitel }
\ begin { block }{ Worum es geht :}
In diesem Vortrag geht es um Beamer .
\ end { block }
\ end { frame }
block
Der Block sieht vorerst nicht spannend aus; das bessert sich, wenn man ein Layout mit
\usetheme lädt, z. B. Boadilla. Für eine Übersicht von Themes auf Google verweisen.
\usetheme
Als nächstes das Overlay-Konzept von beamer einführen: Animationen können dadurch
Overlay
20
\alert
2.3 Theorem-Umgebungen: Sätze, Definitionen, Beweise (30 Minuten)
emuliert werden, dass eine Folie in mehrere „Unterfolien“ unterteilt werden und Elemente nur auf manchen davon sichtbar sind (in der Regel: nacheinander erscheinen).
Am einfachsten geht das mit einer itemize-Umgebung oder dem \alert-Befehl:
\ begin { itemize }
\ item Immer sichtbar .
\ item <2 - > Ab zweiter Folie sichtbar .
\ item <3 - > Ab dritter Folie sichtbar .
\ end { itemize }
Nur \ alert <2 >{ manchmal } hervorgehoben .
\pause, \onslide, Für Overlays mit beliebigem Inhalt die Befehle \pause, \onslide, \only und \alt nen\only, \alt nen.
columns
Zum schöneren Folien-Layout die columns-Umgebung empfehlen, mit der Inhalte in mehreren Spalten nebeneinander gesetzt werden können. Insbesondere hübsch in Verbindung mit Blöcken oder Bildern:
\ begin { columns }
\ begin { column }{0.6\ textwidth } % e r s t e S p a l t e , 60% B r e i t e
\ begin { block }{ Links }
Inhalt der links steht .
\ end { block }
\ end { column }
\ begin { column }{0.4\ textwidth } % z w e i t e S p a l t e , 40% B r e i t e
\ includegraphics { ein _ bild . png } % B i l d a u f r e c h t e r S p a l t e
\ end { column }
\ end { columns }
Zum Schluss noch die Möglichkeit zeigen, auch in Präsentationen Gliederungsbefehle wie
\section und \subsection zu benutzen. Diese haben keinen direkten Effekt (erzeugen
keine Überschrift), werden aber im Inhaltsverzeichnis und bei manchen Designs auch
auf jeder Folie angezeigt. Für wiederholte Übersichtsfolien beim Section-Wechsel die
Variante \tableofcontents[currentsection] vorstellen, die den aktuellen Abschnitt
hervorhebt.
2.3 Theorem-Umgebungen: Sätze, Definitionen, Beweise (30
Minuten)
Zunächst das Problem erklären: Man möchte automatisch nummerierte Sätze, Definitionen etc., Beweise sollen automatisch ein Kästchen am Ende bekommen, und so weiter.
2 Weiterführende Themen und spezielle Pakete
Stil
roman
sans
mono
fett
kursiv
21
Umgebung
Argument
\rmfamily
\sffamily
\ttfamily
\bfseries
\itshape
\textrm
\textsf
\texttt
\textbf
\textit
Tabelle 2.1: Befehle für die verschiedenen Schriftfamilien und -stile
Wir verwenden dazu das ntheorem-Package, das mit den Optionen thmmarks, amsmath
und standard geladen werden sollte.
ntheorem
Die standard-Option lädt vordefinierte Umgebungen: Proof, Theorem, Definition, aber
auch Satz und Beweis. Falls die Teilnehmer motiviert genug sind, kann man auch noch
erklären wie man eigene Umgebungen erstellt.
Diese müssen in der Präambel mit newtheorem definiert werden. Erstes Argument ist der
Name der Umgebung, das zweite das eigentliche Wort das angezeigt wird. Die Zählung
kann man an z. B. die aktuelle Section binden (optionaler Parameter am Ende), oder
definieren dass der gleiche Zähler wie für eine andere Theorem-Umgebung verwendet
wird (optionale Parameter zwischen den notwendigen). Beispiel:
newtheorem
\ newtheorem { satz }{ Satz }[ section ]
\ newtheorem { defn }[ satz ]{ Definition }
Zum Ändern der Darstellung gibt es diverse Befehle, die vor der entsprechenden Definition mit \newtheorem stehen müssen und dann für alle folgenden Theorem-Definitionen
gelten. An dieser Stelle ist ein Exkurs über Schriftstile sinnvoll.
Schriftfamilien und -stile
Die drei TEX-Schriftfamilien „Roman“ (für Fließtext; mit Serifen), „Sans Serif“ (Überschriften, serifenlos) und „Monospaced“ (Quelltext, nichtproportional) nennen. Innerhalb jeder Schriftfamilie kann man noch diverse Stile zuschalten, wovon eigentlich nur kursiv,
fett und Kapitälchen relevant sind. Für jede dieser Änderungen gibt es je zwei verschiedene Befehle: eine Umgebungsvariante, welche Schriftfamilie bzw. -stil bis zum Ende
der aktuellen Umgebung ändert, und eine Argumentvariante, die einen Text als Argument enthält und den Stil nur auf diesen anwendet. Die verschiedenen Befehle sind in
Tabelle 2.1 aufgeführt.
Zum Ändern der Schriftart gibt es verschiedene Pakete (das normale pdfLATEX kann leider keine Systemschriften verwenden); eine kleine Liste ist in [Stu12] aufgeführt; mehr
Schriftfamilien
22
2.4 Algorithmen
Auswahl kann im „LATEX font catalogue“1 eingesehen werden. Viele dieser Pakete ändern
Roman- und Sans-, teilweise auch die Mathematik-Schriftart.
XELATEX / LuaLATEX
Die Fonts für die drei Schriftfamilien können über die Befehle \setromanfont,
\setsansfont und \setmonofont geändert werden. Als Parameter steht dabei
entweder der Name der Schriftart (Times New Roman) oder der Dateiname
(times.ttf). Weitere Informationen liefert die fontspec-Dokumentation.
Das unicode-math-Paket erlaub darüber hinaus die Verwendung von OpenTypeSchriften auch für den Mathematiksatz. Allerdings gibt es bisher nur sehr wenige
Fonts die diese Funktion unterstüzten.
Darstellung anpassen
Beweis-Umgebung
Beispiel für eine Beweis-Umgebung:
\ theoremstyle { nonumberplain }
% k e i n e Nummerierung
\ theoremheaderfont {\ bfseries \ itshape } % B e w e i s f e t t / k u r s i v
\ theorembodyfont {\ normalfont }
\ theoremsymbol {\ ensuremath {\ Box }} % K ä s t c h e n ( Mathe−Modus )
\ newtheorem { beweis }{ Beweis } % d i e e i g e n t l i c h e D e f i n i t i o n
Eine Liste aller Sätze und Definitionen zum Beispiel kann mit
\ listtheorems { Satz , Definition }
erstellt werden.
2.4 Algorithmen
algpseudocode
algorithm
Möchte man Algorithmen in Pseudocode in sein Dokument einfügen, so haben diese eine
sehr spezielle Struktur. Daher benutzen wir die Pakete algpseudocode und algorithm.
Mit diesen Paketen haben wir die Umgebung algorithmic zu Verfügung um Pseudocode
darzustellen. Hier können wir z. B. auf die folgenden Befehle zugreifen:
• \State Für normale Befehle.
• \Require,\Ensure zum Festlegen von Eingabe und Ausgabe.
1
http://www.tug.dk/FontCatalogue
2 Weiterführende Themen und spezielle Pakete
23
• Übliche Kontrollanweisungen wie \If{}, \For{}, oder \While{}
• \Comment{} für Kommentare.
Zum kenntlichmachen von logischen Blöcken müssen Kontrollanweisungen immer mit
einem entsprechenden End-Befehl (\EndIf, \EndFor, etc.) abgeschlossen werden. Um
eine Nummerierung der Zeilen zu bekommen kann man \begin{algorithmic}[x] nutzen. Hier wird jede x-te Zeile nummeriert.
\EndIf, \EndFor
Die algorithm-Umgebung als analog zu figure und table erklären (funktioniert genauso, wird aber getrennt nummeriert).
2.5 Optimieren des Workflows
Eigene Befehle definieren
Für häufig benötigte Befehle kann man sich eigene Abkürzungen definieren. Üblich für
Mathematiker sind zum Beispiel die Zahlensymbole R, N etc. Mit \newcommand legt man
einen neuen Befehl an (wenn es den Namen schon gibt, kommt ein Fehler):
\newcommand
\ newcommand \ R {\ mathbb { R }}
Als Upgrade – wenn man eh schon einen eigenen Befehl hat – kann man hier noch ein
\ensuremath drumherum basteln, dann kann man die Symbole im normalen Text benutzen, ohne auf Mathemodus umzuschalten.
\ensuremath
Eigene Befehle können auch Parameter haben. Als Beispiel definieren wir einen Befehl
für das Skalarprodukt (⟨a, b⟩):
\ newcommand \ scalProd [2]{\ left \ langle #1 ,#2\ right \ rangle }
Große Dokumente aufteilen
Große Dokumente kann man in mehrere Dateien aufteilen, zum Beispiel eine extra Datei
pro Kapitel anlegen. Das Masterdokument enthält dann nur die Präambel, die documentUmgebung und dazwischen eine Reihe \include-Befehle, die als Argument die Dateinamen ohne Endung erhalten. Während der Arbeit kann es praktisch sein, nur einen Teil der
Kapitel einzubinden; dazu kann vor dem \begin{document} der Befehl \includeonly
mit einer kommagetrennten Liste stehen (spart Compilezeit und macht evt. übersichtlicher).
Masterdokument
\include
\includeonly
24
2.5 Optimieren des Workflows
Damit man auch in den Unterdokumenten mit F1 übersetzen kann (obwohl es ja keine
eigenständigen LATEX-Dateien sind), kann man in der ersten Zeile ein spezielles Kommentar schreiben:
% ! TeX r o o t = m a s t e r . t e x
\input
teilt TEXstudio mit, dass er master.tex übersetzen soll, obwohl eine andere Datei ausgewählt ist. Erwähnen dass \include immer eine neue Seite anfängt, sollte man also nur
bei Kapiteln u. ä. verwenden. Alternativ \input verwenden (mit Endung), was wirklich
nur den Inhalt einfügt (es gibt aber kein \inputonly).
Todo-Markierungen
Kommentare
Um bei längeren Dokumenten jene Stellen zu markieren, an denen noch gearbeitet werden muss, gibt es verschiedene Strategien. Die einfachste besteht in der Verwendung
spezieller Kommentare der Form %TODO: <Beschreibung>. Diese werden von LATEX natürlich ignoriert, TEXstudio jedoch kennzeichnet sie durch entsprechende Hervorhebung
im Quelltext. Dass sie in der PDF-Ausgabe nicht sichtbar sind, kann von Nachteil (leicht
zu übersehen) oder Vorteil (keine Gefahr, dass man sie im finalen Dokument vergisst)
sein.
Um solche Markierungen in der Ausgabe sichtbar zu machen, kann man einen eigenen
Befehl definieren, etwa:
\ newcommand \ todo [1]{\ textbf {\ textcolor { red }{#1}}}
\marginline
Ebenfalls zu empfehlen ist der Befehl \marginline, der eine Randnotiz einfügt – das
hat den Vorteil, dass die Notiz den eigentlichen Textteil unberührt lässt und somit nicht
Seitenaufteilung, Badboxes und so weiter beeinflussen kann.
todonotes
Am flexibelsten ist die Verwendung eines Pakets wie todonotes; hierzu einfach auf die
Paketdoku verweisen.
Weitere Hilfsmittel
draft
Die Klassenoption draft hilft im Entwurfsmodus: Badboxes werden durch schwarze Kästchen angezeigt, Bilder und andere aufwändige Elemente zwecks schnelleren Übersetzens
weggelassen.
Die Vorschau-Funktion von TEXstudio erlaubt es, kleine Ausschnitte getrennt vom Restdokument zu übersetzen, was sehr schnell geht. Hilfreich insbesondere beim Setzen komplexerer Formeln oder Grafiken.
2 Weiterführende Themen und spezielle Pakete
25
Außerdem beherrscht TEXstudio die Code-Faltung: Im Quelltext-Editor kann man Umgebungen und Kapitel einklappen, was sich zum Beispiel für Kapitel, an denen man gerade
nicht arbeitet, anbietet.
Code-Faltung
2.6 Mit TEX erzeugte Grafiken
Daten- und Funktionsplots
Für Plots von Funktionen und Daten wird das pgfplots-Paket verwendet. Zunächst als
einfachstes Beispiel einen Sinus zeichnen:
\ begin { tikzpicture } % B i l d −Umgebung
\ begin { axis } % n o r m a l e r 2D− P l o t m i t l i n e a r e n A c h s e n
\ addplot { sin ( x ) };
\ end { axis }
\ end { tikzpicture }
Sieht erstmal nicht nach Sinus aus: der Standardbereich ist [−5, 5], Sinus wird aber in
Grad angegeben. Wir ändern mit [domain=0:360] als Option von \addplot den Definitionsbereich auf eine Periode. Unter der Lupe sieht man jetzt Ecken im Graph, deshalb
setzen wir die Stützstellen hoch (samples=360). Wollen wir stattdessen Bogenmaß verwenden, kann auch domain=0:2*pi und als Funktion sin(deg(x)) verwendet werden
(Achtung: dieses symbolische Rechnen funktioniert nur in der Plot-Umgebung.)
Achsenbeschriftung: die axis-Option nimmt Key-Value-Optionen xlabel und ylabel.
Als zweiten Plot z.B. einen Cosinus nehmen. Zur Unterscheidung Farben einführen (red,
blue), Legende (\addlegendentry).
Jetzt als Alternative einen Koordinaten-Plot einfügen:
\ addplot [ green ] coordinates {
(0 , 1)
(2 , 0)
(4 , 1)
(6 , 0)
};
\ addlegendentry { Zickzack };
Hier kann man noch verschiedene Optionen durchprobieren: only marks, mark=(+*x-),
smooth, const plot, mark size=1mm. Hinweisen dass es Millionen weiterer Plot-Typen
und Optionen gibt (siehe Handbuch oder TEXample2 ).
2
http://www.texample.net
pgfplots
26
2.7 Verschiedene Tipps und Tricks
Wenn man möchte kann man als Eye-Candy für die Möglichkeiten von pgfplots zum
Beispiel folgenden 3D-Plot zeigen:
\ begin { tikzpicture }
\ begin { axis }[ colorbar ]
\ addplot 3
[ surf , samples =15 , faceted color = blue , domain =0:1 , y domain = -1:1]
{x ^2 - y ^2};
\ end { axis }
\ end { tikzpicture }
Grafiken aller Art mit TikZ
tikz
Praktisch jede Grafik lässt sich mit tikz erstellen, das wir jetzt einbinden. Schritt für
Schritt wird ein einfacher Graph erstellt (mit festen Koordinaten). Erstmal nur einen
\node auf (0,0) mit Label {$v_1$}. Dann draw und circle dazu, einen zweiten Knoten, Kante dazwischen, Kantenbeschriftung, … Dabei könnte zum Beispiel sowas rauskommen:
\ begin { tikzpicture }
\ node [ draw , circle ] (v 1) at (0 ,0) {$ v _1$};
\ node [ draw , circle , fill = yellow , draw = blue , thick ]
(v 2) at (4 ,0) {$ v _2$};
\ node [ draw , circle ] (v 3) at (2 ,2) {$ v _3$};
\ node [ draw , circle ] (v 4) at (2 , -2) {$ v _4$};
\ draw [ < - > , double , thick ] ( v 1) -- node [ above ] {$ c =5$} (v 2);
\ path [ draw , bend right ] ( v 4) to node [ right ] {$ b $} (v 1);
\ path [ draw , bend left ] ( v 4) to node [ left ] {$ a $} (v 1);
\ draw [ draw = blue ] ( v 1) -- ( v 3) -- (v 2);
\ node [ above right =5 mm ] at ( v 3) { das ist $v _3$} edge (v 3);
\ end { tikzpicture }
2.7 Verschiedene Tipps und Tricks
• Preview-Modus von TexStudio: Textausschnitt markieren und nur diesen Teil compilen – gerade bei großen Dokumenten spart das enorm viel Zeit.
• Aufzählungszeichen ändern (alph, arabic, …),
• einfache Zählermanipalation.
2 Weiterführende Themen und spezielle Pakete
27
2.8 Für die Zukunft
Tipps für die weitere Arbeit mit LATEX, die man den Teilnehmern mit auf den Weg geben
kann:
• TEX-System ab und zu aktualisieren ( Maintainance (Admin) Update (Admin) bei MiKTEX),
da immer wieder Fehler behoben und neue Funktionen eingebaut werden.
• Häufig benutzte eigene Abkürzungen in eigenes Paket auslagern.
• Für größere Projekte und/oder solche mit mehreren Teilnehmern Versionsverwaltung
(Subversion, git, Mercurial, …) verwenden.
28
Literaturverzeichnis
[GLS81] M. Grötschel, L. Lovász und A. Schrijver. „The ellipsoid method and its consequences in combinatorial optimization“. In: Combinatorica 1.2 (1981), S. 169–
197. url: http://link.springer.com/article/10.1007/BF02579273.
[Stu12]
T. F. Sturm. LATEX. Einführung in das Textsatzsystem. 9. Aufl. RRZN-Handbücher.
Regionales Rechenzentrum für Niedersachsen (RRZN), Mai–Juni 2012. 338 S.
[Voß12]
H. Voß. Einführung in LATEX. Unter Berücksichtigung von pdfLATEX, XELATEX und
LuaLATEX. 1. Aufl. DANTE e. V., Lehmanns Media, 2012. isbn: 9783865414625.
Document
Kategorie
Internet
Seitenansichten
122
Dateigröße
149 KB
Tags
1/--Seiten
melden