Übungen zum L A TEX-Kurs 2015 O. Keszöcze J. H. Kobarg J.-P. Litza N. Przigoda T. Scholz Hinweis: Viele der folgenden Aufgaben benötigen eigenständige Arbeit! Insbesondere musst du selbstständig Anleitungen lesen. Dies ist keine Schikane, sondern soll zeigen, dass L A TEX sehr gut und ausführlich dokumentiert ist. 1. Dokumentenformatierungen 1.1) Erstelle ein Minimaldokument mit dem Code aus Abbildung 1, verwende die Dateiendung.tex und erstelle daraus eine PDF. 1.2) Füge deiner Datei Titel, Autor und Datum sowie ein Inhaltsverzeichnis hinzu. Du musst L A TEX evtl. mehrmals ausführen, damit alle Seitenzahlen korrekt sind. 1.3) Ersetze die Option ngerman vom babel-paket durch english und finde heraus was passiert. 1.4) Tausche an beliebiger Stelle ein \section{text} gegen \section*{text} aus und beobachte das Verhalten von L A TEX; beobachte was passiert, wenn du \section[text1]{text2} anstelle der Variante mit Sternchen verwendest. 1.5) Füge deiner Datei mehr Text hinzu; verwende dazu das Paket lipsum und den Befehl \lipsum[1-7]. Dies fügt 7 Absätze eines lateinischen Fülltextes ( Lorem ipsum ) ein. Wenn du den Text vor der letzten \subsubsection einfügst, aktualisiert L A TEX dann die Seitenzahl im Inhaltsverzeichnis? Wie kannst du es dazu bringen? 1.6) Experimentiere mit den Zählern secnumdepth und tocdepth, dies geschieht im Header (oder Kopf) der Datei mit dem Befehl \setcounter, der als ersten Parameter den zu ändernden Zähler und als zweiten Parameter den neuen Wert enthält. Abbildung 1: Minimaldokument \documentclass{scrartcl} \usepackage[utf8]{inputenc} \usepackage[t1]{fontenc} \usepackage[ngerman]{babel} \begin{document} \section{überschrift} Etwas Text... \subsection{unter-überschrift} Noch mehr Text... \subsubsection{uu-überschrift} Lorem ipsum dolor sit amet,\ldots \end{document} Abbildung 2: Liste zum Nachbauen a) Hier geht es um Listen b) Listen kann man schön verschachteln man muss dabei einiges beachten L A TEX ist eine strukturierte Sprache! Zeichen lassen sich ändern i. Verschachtelung geht aber immer ii.... wie man hier sieht! c) man muss sich beim Eingeben nur konzentrieren, sonst passieren Fehler: i. beliebt ist, eine {enumerate}-umgebung mit einer {itemize}-umgebung zu schließen ii. oder statt {itemize} {itemise} zu tippen 1
1.7) Benenne beliebige Abschnitte mit einem \label{label} und referenziere dieses irgendwo im Text mit \ref{label} oder \pageref{label}; existiert ein Unterschied bei den Ausgaben für die unterschiedlichen Varianten von \section aus Aufgabe 1.4)? 1.8) Formatiere mit allen bisher gelernten Textformatierungsbefehlen jeweils einen lorem ipsum- Absatz. Versuche dabei auch die verschiedenen Befehle ineinander zu schachteln. Welche Kombinationen machen keinen Sinn? Hinweis: Die geschweiften Klammern, { und }, um die einzelnen Absätze können hier sehr hilfreich sein! 1.9) Binde das Paket soulutf8 ein und setze globale Option \setuldepth{y}. Unterstreiche nun einige Wörter mir \ul, z. B. \ul{lorem} und \ul{get}. Was ändert sich, wenn du stattdessen \setuldepth{u} setzt? 1.10) Füge einen Anhang mit \appendix ein und erstelle verschiedene Abschnitte (mit \section) in diesem Anhang. 1.11) Füge deinem Dokument mit Hilfe von Kommentaren einige in der PDF nicht sichtbare Zeilen hinzu. (Gibt es auch eine Möglichkeit mehrere Zeilen auf einmal einzukommentieren?) 1.12) Zitiere aus deinem Lieblingsbuch mit den deutschen Anführungszeichen innerhalbs eines Satzes. 1.13) Erstelle die Aufzählung aus Abbildung 2 in L A TEX. 1.14) Formatiere jeweils einen lorem ipsum-absatz linksbündig, zentriert und rechtsbündig. 1.15) Zitiere aus deinem Lieblingsbuch jeweils eine Passage mit Hilfe der quote- und quotation- Umgebung. 1.16) Füge dem L A TEX-Dokument ein 2.5cm breites, 3.4inch hohes und um 77 Grad gedrehtes Bild von Donald E. Knuth hinzu. Das Bild benötigt natürlich eine Unterschrift und soll an mindestens zwei Stellen referenziert werden. Füge dem Bild abschließend nocheinmal den optionalen Parameter keepaspectratio hinzu, was hat sich verändert? 1.17) Füge das hyperref-paket hinzu. Was fällt dir jetzt bei den Referenzen und im Inhaltsverzeichnis auf? Kannst du es so aussehen lassen, wie vorher (aber trotzdem die funktionalen Vorteile des hyperref-pakets behalten)? 2. Andere Pakete/Klassen 2.1) Ändere das Verhalten der Absatzkontrolle, verwende dazu das Paket parskip. 2.2) Sofern du noch nicht die KOMA-Skript-Pakete verwendet hast, ändere die globale Dokumentenklasse auf scrartcl aus dem KOMA-Skript-Paket; verändere die Schriftart der Überschriften, lies in der Dokumentation nach, wie man eine komafont einstellt. a) Erstelle eine Vorlage für einen einseitigen Bericht. b) Erstelle eine Vorlage für einen zweiseitigen Artikel. c) Erstelle eine Vorlage für ein zweiseitiges Buch im DIN A5-Format mit zweispaltigem Satz. Hinweis: Die Anleitung scrguide.pdf kannst du entweder von www.komascript.de herunterladen oder im TeXmaker unter Hilfe TexDoc [selection] nach Eingabe von scrguide anzeigen. Das funktioniert auch mit Paketnamen, um deren Dokumentation aufzurufen. 2
Ansonsten befinden sich die Anleitungen für alle Pakete als PDF-Datei auf der Internetseite www. ctan.org 2.3) Durch das Paket geometry lassen sich die Randeinstellungen veränderen; binde das Paket ein und verändere a) den Rand deines Dokuments auf 2 cm, b) stattdessen die Breite des Textfeldes auf 15 cm und die Höhe auf 18 cm, c) das gesamte Dokument auf Querformat, d) das gesamte Dokument auf A5-Papier, e) das gesamte Dokument auf zweiseitigen Druck. Füge mit deinen neuen Erkenntnissen der vorherigen Aufgabe innere und äußere Seitenränder hinzu, die man deutlich erkennen und voneinander unterscheiden kann. Hinweis: Lies die Anleitung von geometry um die Aufgaben zu lösen. Durch Einbinden des Paketes layout lässt sich die Textbegrenzung mit \layout anzeigen. 3. Tabellen 3.1) Erstelle die Tabellen aus Abbildung 3 und 4. 3.2) Die erste Spalte der Tabelle soll im Anschluss fett formatiert werden und die zweite Spalte zentriert; verwende dazu das array-paket. 3.3) Erstelle mehrere Tabellen wie in Abbildung 3 und umgebe jede einzelne mit einer {table}- Umgebung, füge außerdem nach belieben ein paar Textabsätze mit \lipsum hinzu. 3.4) Verändere das Aussehen der Tabellenüberschriften, so dass diese wie auf diesem Übungsblatt aussehen, also Tabelle : Text und oberhalb der Tabelle auftauchen. Editiere dazu nicht den Text, sondern mache von der globalen Einstellung captions=einstellung des Koma-Script-Paketes und den Koma-Fonts gebrauch. 4. Formelsatz 4.1) Finde die L A TEX-Kommandos für die folgenden Symbole: ± ϕ = Hinweis: Schau den Befehl in der Comprehensive L A TEX Symbol List (symbols-a4.pdf) oder unter http://detexify.kirelabs.org/classify.html nach. 4.2) Erstelle mit \newcommand neue Kommandos, um den Schreibaufwand zu reduzieren. a) \R soll das Zeichen für reelle Zahlen R, \eps ε ausgegeben; Abbildung 3: Einfache Tabelle 1 2 3 4 5 6 7 8 9 Abbildung 4: Schwierige Tabelle Feld Feld Feld Feld Feld Feld Feld über zwei Spalten Feld Feld Feld über zwei Zeilen Feld über zwei Zeilen und zwei Spalten 3
x 1 b) \xvec{n} soll (x 1,..., x n ), \XVec{n} soll. ausgeben; n soll hierbei variabel sein, also x n soll z. B. \xvec{5} ausgeben: (x 1,..., x 5 ). Ihr müsst aber nicht die Punkte... ersetzen, sondern könnt sie einfach so mit ausgeben. c) \abs{-a} soll a ausgeben und \norm{-a} auf gleiche Weise a ; d) \Sin{x} soll sin(x), \ArcSin{x} soll sin 1 (x) ausgeben. 4.3) Setze die folgenden Texte in L A TEX um: a) Seien a, b, c R, mit a, b die Katheten und c die Hypotenuse eines rechtwinkligen Dreiecks. Dann gilt: a 2 + b 2 = c 2. b) Die Summenformel für die geometrische Folge lautet Für den Grenzwert von s n gilt s n = 1 + q + q 2 + + q n = lim s n = n n k=0, für q > 1, 1, für q = 1,, für q < 1. 1 1 q q k = 1 qn+1. 1 q c) Satz 1 (Existenz des linksneutralen Elements). Sei (G, ) eine Gruppe. 1) Sind e 1 und e 2 beide neutrale Elemente, so folgt e 1 = e 2. 2) Sind h 1 und h 2 beide Inverse zu g G, so folgt h 1 = h 2. Beweis. 1) Ausnutzen der Eigenschaft der neutralen Elemente liefert schon e 1 = e 1 e 2 = e 2. 2) Es gilt: h 2 = e h 2 = (h 1 g) h 2 = h 1 (g h 2 ) = h 1 e = h 1. d) Sei I ein offenes Intervall in R. Die Abbildung f : I R sei (n + 1)-mal stetig differenzierbar, n N und sei x 0 I. Dann gilt: n f (k) (x 0 ) f(x) = (x x 0 ) k + 1 x (x t) n f (n+1) (t)dt. k! n! x 0 k=0 A. Weitere Aufgaben A.1) Es gibt neben der {figure}-umgebung für Bilder noch die {table}-umgebung für Tabellen. Erstellt eine Tabelle und fügt ihr eine Caption hinzu. A.2) Erstellt eine L A TEX-Datei und fügt einige Bilder und Tabellen ein. Fügt dem Dokument nun noch mittels \tableofcontents wie gewohnt ein Inhaltsverzeichnis hinzu und dazu ein Tabellen- und Bilderverzeichnis. 4
A.3) Schreibe 5 cm und 7 J /K mit wissenschaftlich korrektem Abstand zwischen Maßeinheit und -zahl. Hinweis: Lade dazu das Packet units. Diese Aufgabe erleichtert insbesondere eure Physikprotokolle. A.4) Erstelle erneut eine Tabelle, in der du verschiedene Zahlen (z.b. Messwerte) am Komma ausrichten, dabei ist das Paket numprint hilfreich, das das Spaltenformat n{d}{f} bereitstellt. Hinweis: Diese Aufgabe erleichtert insbesondere eure Physikprotokolle. A.5) Schreibe einen beliebigen Java-Quellcode mittels des listings-pakets. Folgende Punkte sind hierbei zu beachten: Überlange Zeilen werden nicht umgebrochen, ändere dies sinnvoll Solltest du nur einen Teil des Codes ausgeben wollen, kann es sein, dass man viele störende Tabulatoren am Beginn jeder Codezeile hat. Finde heraus, wie du sie ohne manuelles Löschen aus der Ausgabe entfernst Die verwendeteten Tabulatoren sind unter Umständen zu groß. Finde heraus, ob sich ihre Größe verändern lässt. Hinweis: Diese Aufgabe erleichtert insbesondere eure Abgaben in Praktischer Informatik 1. Ihr sollt natürlich keinen Java-Code selbst schreiben. Ladet euch einfach irgendeinen Quellcode aus dem Internet herunter. A.6) Wem die Kontrolle über Tabellen in L A TEX noch zu eingeschränkt erscheint, der soll mit Hilfe des array-pakets ein neues Spaltenformat erstellen, das in einer Spalte mit fester Breite linksbündigen Text (engl. raggedright) ausgibt. A.7) Man kann L A TEXs Freiheit für die {figure}- und {table}-umgebung durch eine optionale Platzierung wie [tp] lokal verändern, besser ist natürlich eine globale Veränderung: \renewcommand{\textfraction}{0.15} \renewcommand{\bottomfraction}{0.65} \renewcommand{\topfraction}{0.85} \renewcommand{\floatpagefraction}{0.60} Welchen Einfluss haben \textfraction und der Zähler totalnumber auf das Verhalten der Umgebungen? Für Zähler siehe Aufgabe 1.6). A.8) Erstelle oder verwende ein Dokument mit mehreren abgesetzten, nummerierten Formeln (d.h. {equation}- oder {align}-umgebungen). Das mathtools-paket bietet die showonlyrefs- Option. Recherchiere die Verwendungsweise und wende sie an. A.9) Erstelle in deinem Arbeitsverzeichnis eine neue Datei kommandos.tex und verschiebe deine selbst erstellten Befehle dorthinein. In deinem Hauptdokument setze anstelle der ausgeschnittenen Befehle \input{kommandos}. Strukturiere den Rest deines Dokumentes auf gleiche Weise. Die ganz wissbegierigen dürfen den Unterschied zwischen \input und \include herausfinden! 5