Intro til L A TEX Del I Avdeling for informatikk og e-læring, HiST Mars 2013
Plan for dagen 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Oversikt 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Hvorfor L A TEX? Det er hovedsakelig to måter å produsere tekstdokumenter på: Visuelle programmer: WYSIWYG. Her manipulerer brukeren dokumentet direkte, både når det gjelder innhold og grafisk design. Eksempler: Word, Pages, PowerPoint osv. Strukturorienterte programmer: Her skilles struktur og innhold fra utseende, og du programmerer dette hver for seg, for så å kompilere og få sluttresultatet. Eksempler på dette er L A TEX og HTML. Typisk har visuelle programmer lav terskel for å komme i gang og brukeren har (forhåpentligvis) en følelse av å ha kontroll med resultatet hele tiden. Struktorienterte programmer krever at brukeren programmerer i en teksteditor for så å kompilere. De har gjerne høyere terskel for å komme i gang, og du vet ikke det nøyaktige resultatet av koden før etter kompilering (selv om erfaring gir deg en viss peiling).
Et L A TEX-dokument kodes ved hjelp av forskjellige typer kommandoer, for så å kompileres (typisk ved hjelp av kompilatoren pdflatex). Resultatet blir (normalt) et profesjonelt utseende dokument, da du tvinges til å forholde deg til nøye utspekulert layout og struktur. Spesialiteten til L A TEX er typesetting av matematiske formler. Det er lett å lage og samarbeide om store dokumenter i L A TEX. TEX ble laget av Donald Knuth på 70- og 80-tallet, og født ut av frustrasjon over at det ikke fantes noen gode systemer for å typesette hans legendariske verk The Art of Computer Programming. Senere bygde Leslie Lamport L A TEX oppå dette igjen tidlig på 80-tallet, for å gjøre det lettere å bruke.
Mer om L A TEX Ulemper er at du må kompilere for å se resultatet av det du gjør, og at det kan være krevende å endre ting fra standardoppsettet. Det er også noe krevende å bli god i L A TEX. Ellers bør det bemerkes at TEX og L A TEX er fri programvare, og at universitetsmiljøer over hele verden stadig jobber med forbedringer og utvikling av L A TEX og tilleggspakker. Alt du egentlig trenger for å tekke er en installert L A TEX-distribusjon og en tekstbehandler som kan produsere ren tekst. I praksis bruker man gjerne editorer som har innebygd L A TEX-funksjonalitet for å skrive kode effektivt og for å kompilere, som f.eks. TeXShop, Texmaker, TeXnicCenter og Emacs. Dette kommer ikke til å bli noen komplett referanse til L A TEX, men heller et forsøk på å gjøre dere kjent med typisk oppbygging av dokumenter og hvordan ting funker. Utover dette er Google en god venn nå du tekker!
Oversikt 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Hvordan ser et enkelt LaTeX-dokument ut? Slik ser et maksimalt forenklet kompilerbart dokument ut: \documentclass{article} \begin{document} Heisann verden! \end{document} Se eksempel1.tex for et litt mer komplisert eksempel. Alt som står foran \begin{document} kalles preamble, og er innstillinger. \documentclass definerer generell formatering av dokumentet. Alternativer til article er book, report, letter, beamer med mer. Resten av lista her er valg (options). \usepackage brukes til å laste tilleggspakker du trenger for å få dokumentet ditt til å se ut som du ønsker. Kommentarer gjemmer seg bak %-tegnet.
Kommandoer er casesensitive. De starter med backslash og så navnet på kommandoen. Valg gis i hakeparenteser, argumenter i krøllparenteser. Eksempel \maketitle \includegraphics[width=3cm]{bilde.png} \begin{navn}...noe...\end{navn} brukes for å definere miljøer. Et miljø er vanligvis noe litt større enn en kommando. Eksempel \begin{document}...\end{document} \begin{itemize} %punktliste \item [1.] Alt1 \item [2.] Alt2 \end{itemize}
Inndeling av dokumentet Hvilke typer inndeling er er tilgjengelig avhenger av dokumentklassen (f.eks. har bøker kapitler, mens artikler har seksjoner). Ellers er det ganske greitt: Eksempel \section{navn på seksjon} \subsection{navn på delseksjon} \section*{navn på unummerert seksjon} Å stjerne enkelte kommandoer gjør at de går fra å være nummererte (standard) til å bli unummererte. Du kan også tvinge fram en bestemt nummerering du ønsker. \maketitle setter inn en tittel slik du har spesifisert. \tableofcontents gir deg innholdsliste basert på inndelingen din. Unummererte seksjoner/kapitler tas ikke med.
Noen kommentarer Artikkel-klassen kommer også med ferdig miljø for abstract (\begin{abstract}...\end{abstract}), og kommandoer for fotnoter, system for referanser og annet som typisk hører hjemme i en artikkel. Noen tegn er reservert og må escapes (vanligvis med backslash, noen med egne kommandoer). Dette gjelder #, $, %, &, {, }, _, ^, \, og ~. Litt om kompilering: Vanligvis brukes kompilatoren pdflatex (eller en eldre versjon kalt latex), men det finnes også andre alternativer som passer til litt forskjellig bruk. Det er lett å innføre feil i syntaksen, og kompilatoren er lite tilgivende. Den gir deg feilmelding og forteller hvor i teksten den mener det gikk galt. Det varierer veldig hvor informativ denne feilmeldingen er. Det er derfor lurt å kompilere ofte så du ikke innfører så mange feil i slengen!
Oversikt 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Litt om formatering av tekst Kode \emph{uthevet skrift} \textbf{fet skrift} tekst\textsuperscript{superscript} \textit{kursiv} \textcolor{red}{rød tekst} Resultat Uthevet skrift fet skrift tekst superscript kursiv rød tekst. Du kan også lage dine egne makroer: Eksempel \newcommand{\blaauthevet}[1]{\emph{\textcolor{blue}{#1}}} % i preamblet... \blaauthevet{dette blir uthevet tekst med blå farge.}
Lister Eksempel Det er hovedsakelig to miljøer for lister: itemize og enumerate. \begin{itemize} \item Punkt 1 \item [b.] Punkt 2 \item [Tredje:] Punkt 3 \end{itemize} \begin{enumerate} \item Punkt 1 \item Punkt 2 \end{enumerate} Du kan skrive hva som helst som valg til punktene i itemize-miljøet.
Lister forts. Her er resultatet av koden fra forrige slide: Punkt 1 b. Punkt 2 Tredje: Punkt 3 1 Punkt 1 2 Punkt 2 Som du ser er det uproblematisk å nøste lister (inntil et visst punkt). Itemize er veldig fleksibelt mph. punktene du kan skrive inn hva som helst. Det er også mulig å velge forskjellige typer tellere i enumerate, samt å stille telleren til å starte på et bestemt tall.
Litt om tabeller En tabell skrives i utgangspunktet ved hjelp av tabular-miljøet: Eksempel \begin{tabular}{l cr} Kol1 & Kol2 & Kol3 \\ \hline a & 2 & 23.4 \\ b & 29837 & -2 \end{tabular} Kol1 Kol2 Kol3 a 2 23.4 b 29837-2 Valgene lcr betyr at vi skal ha tre kolonner som er hhv venstremidt- og høyresentrert. Streken mellom l og c betyr at vi skal ha en vertikal strek mellom disse kolonnene. \hline gir en horisontal strek.
Et eksempel til Eksempel \begin{tabular}{ l c p{2cm} } \hline \textbf{kol1} & \textbf{kol2} & \textbf{kol3} \\ \hline \hline a & 2 & 23.4 \\ b & 29837 & -2 \\ \hline \end{tabular} Kol1 Kol2 Kol3 a 2 23.4 b 29837-2 p{2cm} bestemmer kolonnebredde.
Table-miljøet Eksempel \begin{table}[t] \centering \begin{tabular}[lcr]{}... \end{tabular} \caption{tabellen min} \label{tab1} \end{table} En sentrert tabell som flyter øverst på siden. For å få litt bedre typesetting, kan du sette en tabell inn i et table-miljø. Da blir den nummerert, du får mulighet til å legge til en beskrivende tekst, og tabellen vil bli plassert på det L A TEX mener er et pent sted i dokumentet (spesielt aktuelt ved store tabeller). Du kan bruke opsjonene htpb for å formidle at du helst vil ha tabellen din akkurat der du satte den inn (her), øverst på en side (top), nederst (bunn) eller på en egen side (p). \caption{} gir en beskrivende undertekst. \label{} gir en merkelapp du kan bruke andre steder i dokumentet (\ref{}).
Oversikt 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Oppgave Se på dokumentet oppgave1.pdf og forsøk å gjenskap dette. Bruk blant annet seksjoner, tabeller, lister og tekstformatering. Noen ting kan det hende du må finne ut av selv. Lag din egen tekstmakro for rød, fet, uthevet tekst. Legg til en innholdsfortegnelse. Tips: Noen ganger må du kompilere to ganger for at ting som referanser og innholdsfortegnelser skal vises riktig.
Oversikt 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Matematikk i L A TEX Skal du ha matematikk i dokumentet ditt, bør du bruke pakkene amsmath, amsfonts og amssymb (\usepackage{amsmath,amsfonts,amssymb}). Det finnes to moduser for å skrive matematikk - inline og som egen blokk (display). Når du er i en slik modus kan du bruke en haug med egne mattekommandoer. Inline modus får du ved å skrive $... $, mens du kan bruke miljøene displaymath, equation* eller equation for å få egne blokker (sistnevnte gir nummererte ligninger). Det finnes også en shorthandversjon, \[...\] for unummererte ligninger. Eksempel: Gitt en annengradsligning $ax^2 + bx + c = 0$ der $a,b$ og $c$ er relle tall, er alle løsninger på formen \begin{displaymath} x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}. \end{displaymath}
Litt mattesyntaks Greske bokstaver: π (\pi), θ (\theta), µ (\mu), Π (\Pi) Sub- og superscript: 2 14 x (2^{14+x}), 2 14 x (2_{14+x}), 2 x 14 (2_{14+x}^{x}) Andre vanlige symboler: (\leq), 8 (\infty), X (\cap), (\cdot), P (\in),.... Matematiske tegn på tastaturet fungerer (som regel) som vanlig:,, {, p, q,,. \sqrt{14} gir kvadratrota? 14, mens \frac{1}{2} gir brøken 1 2. \binom{n}{k} gir binomialkoeffiesienten n k. Generelt, hvis en kommando ikke er etterfulgt av {}, så virker den kun på første tegn etter kommandoen. Derfor gir 2^14 resultatet 2 1 4 og vi trenger parenteser for å få 2 14. Eksempel: $\forall x \in X, \exists y \in \mathbb R$ slik at $y\leq \epsilon gir @x P X, Dy P R slik at y ɛ. \mathbb er et eksempel på en mattefont. En annen er \mathcal (kalligrafiske bokstaver).
Noen eksempler \begin{equation} f(x+h) = \sum_{i=0}^{\infty} \frac{h^k}{k!} f^{(k)}(x) \end{equation} \begin{equation} \sqrt{\frac{1}{2+\frac{1}{n}}} < \sqrt[n]{b+4c} \end{equation} f px hq d 1 2 1 n 8 i0 h k k! f pkq pxq (1)? n b 4c (2)
Matriser \begin{matrix} a & b & c \\ d & e & f \\ g & h & i \end{matrix} \left( \begin{matrix} a & b & c \\ d & e & f \\ g & h & i \end{matrix} \right) a b c d e f g h i a b c d e f g h i
Matriser forts. Små matriser i tekst: Små matriser som $\bigl(\begin{smallmatrix} 4&14\\ \alpha&0 \end{smallmatrix} \bigr)$ kan vi sette inn i tekst uten problemer. Små matriser som α 4 14 0 kan vi sette inn i tekst uten problemer.
Noen ganger ønsker vi å ha litt tekst inne i en formel. Problemet er at alle bokstaver som L A TEX finner inne i et matematikkmiljø tolker den som matematiske tegn, så vi har egne miljøer for å hjelpe på dette. Uten eget miljø: L_1 = \{s \in (0^*1^*)^* siste tegn i s er 0\}. L 1 ts P p0 1 q sistetegniser0u. Med bruk av \text-miljøet: L_1 = \{s \in (0^*1^*)^* \text{ siste tegn i } s\text{ er }0\}. L 1 ts P p0 1 q siste tegn i s er 0u. Legg merke til at vi må ha med mellomrom rundt ordene (mellomrom ignoreres generelt i matematikkmodus)!
Oversikt 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Litt om Beamer Beamer er en egen klasse som brukes til presentasjoner. Det finnes en del standardthemes (se f.eks. Beamer Theme gallery), og det finnes egne themes du kan laste ned. Du kan også lage ditt eget. Åpne fila beamereks.tex. Beamer har også en god del funksjonalitet for overganger. Den superenkle måten å gjøre det på er ved hjelp av \pause, eller ved å sette opsjonen <+-> på hele foilen (da vises automatisk hvert punkt i punktlister i rekkefølgen de står i). Du kan også spesifisere akkurat når noe skal vises ved å bruke \uncover<2,4->{innhold} (innhold vises i lag 2, lag 4 og resten av lagene). Klassen har (blant annet) opsjonene screen og handout, som produserer pdfer med hhv. alle steg inkludert eller bare hver komplette frame.
Oversikt 1 Introduksjon 2 Et enkelt dokument 3 Litt mer formatering 4 Oppgave 5 Matematikk i L A TEX 6 Litt om Beamer 7 Oppgave
Oppgave Ta utgangspunkt i fila beamereks.tex og prøv å gjøre den om til presentasjonen du ser i beamer.pdf (med alle stegene).
Worst Superhero Ever http://spikedmath.com/350.html