LaTeX hjælp
I skal alle bruge LaTeX til at skrive jeres rapporter og artikler igennem kurset, hvorfor det selvfølgelig er smart hvis I har det installeret på jeres egen computer. På denne side kan I få hjælp til hvordan I kan gøre dette selv, og hvordan I kan komme i gang med at bruge det.
Contents |
Installation
Torsdag d. 25. april holder Pia et foredrag med en introduktion til hvad LaTeX er og hvordan man bruger det, og hvis I ikke selv kan få installationen til at virke som nedenfor, så kan I få hjælp efter dette foredrag.
Windows
Til Windows anbefales MiKTeX pakken som LaTeX installation. Denne kan hentes i den nyeste version (2.9) på http://miktex.org/download. På denne side kan du vælge enten at installere en grundlæggende version ("Basic MiKTeX 2.9" Installer), eller en fuld version der henter alle pakkerne én gang for alle via nettet før installationen (MiKTeX 2.9 Net Installer). Hvis man installerer den grundlæggende version vil MiKTeX selv downloade og installere pakker når man forsøger at bruge dem første gang - hvilket selvfølgelig giver langsommere kompilering de første par gange man bruger det. Til gengæld vil installationen fylde mindre. Det er et valg I selv må træffe - men hvis I vil være på den sikre side så bare installér den fulde version (MiKTeX 2.9 Net Installer). Efter at man har hentet installationsfilen kører man den bare som en normal installation, og følger vejledningerne på skærmen. Hvis man har valgt at installere den fulde version skal man først vælge at hente alle pakkerne og gemme dem i en mappe lokalt på computeren. Når den har hentet filerne vil installationsprogrammet afslutte, og man skal så køre den igen, og denne gang vælge at installere fra mappen hvor man hentede pakkerne til.
Som editor anbefales TeXnicCenter: Denne kan hentes i den nyeste version (2 Beta 1) på http://www.texniccenter.org/resources/downloads/29. Følg installationsvejledningen på skærmen fra installationsprogrammet for at installere. Hvis du har installeret MiKTeX først burde TeXnicCenter selv kunne finde ud af at lave dine build-profiler.
Foruden disse to bør man også have en viewer - enten Yap til at se DVI filer (denne er inkluderet i MiKTeX installationen), GSView til at se PS filer, eller SumatraPDF til at læse PDF filer (eller andre mere specialiserede PDF viewere). Man kan også bruge Adobe Reader til at se PDF'er, men de nyere versioner har gjort det sværere at samarbejde med TeXnicCenter, så dette anbefales ikke.
Linux
Til Linux anbefales TeXLive pakken som LaTeX installation: TeXLive kan normalt installeres via din pakke-manager (led efter flere pakker med navne der indeholder texlive, f.eks. texlive-base m.fl., og installér dem alle). TeXLive kan også hentes på http://www.tug.org/texlive/acquire-netinstall.html.
Der er rigtig mange editorer til LaTeX i Linux: Kile (en del af KDE systemet) minder meget om TeXnicCenter til Windows. Denne kan normalt installeres igennem din pakke-manager, men kan også hentes på http://kile.sourceforge.net/. Det er også muligt at få extensions til bl.a. Emacs og gedit til at arbejde med LaTeX.
Standard PDF viewer sammen med Kile er Okular, men det er muligt at sætte mange andre op.
Mac
Til Mac anbefales MacTeX (der faktisk er det samme program som TeXLive til Linux).
Som editor anbefales TeXShop. En samlet pakke med bl.a. MacTeX, TeXShop og viewere kan hentes på http://pages.uoregon.edu/koch/texshop/obtaining.html.
Cross-platform
Man kan også bruge editoren TeXWorks, der virker på alle platforme. Hvis I er en gruppe af studerende der bruger flere forskellige styresystemer kan det gøre arbejdet nemmere hvis I alle har den samme editor, husk at tænke over dette!
Kom godt i gang
Hvis man er vant til at skrive dokumenter i programmer som Microsoft Word eller OpenOffice, vil det nok være lidt underligt at stå overfor LaTeX for første gang. LaTeX er ikke et tekstbehandlingsprogram, men er derimod et dokumentbehandlingssystem der skal sørge for at dine dokumenter bliver pæne, uden at du skal sidde og vælge layoutet hele tiden.
Når man skriver i LaTeX, bruger man små kommandoer til at fortælle programmet hvad det er man laver - f.eks. at det man skriver er en titel, eller af man gerne vil indsætte en figur. Dokumentet skrives i ren tekst, og denne tekst sendes til en compiler, der "oversætter" teksten til et færdigt formateret dokument. De fleste editorer vil have en knap til at kompilere og vise det færdige dokument bagefter.
Hent evt. slides eller handout fra introduktionsforedraget til LaTeX (disse slides er fra kurset i 2012, og vil muligvis blive ændret til 2013 versionen).
Den bedste måde at komme i gang med LaTeX på, er ved at prøve det. Hent derfor eksempeldokumentet, åben det i din valgte editor. Prøv at kompilere og se på den slut-fil der kommer ud af det. Leg med de forskellige linier i eksempelfilen, kompilér igen, og se hvad der ændrer sig.
Eksempler
Rapport-format
Når I skal skrive en rapport i LaTeX har I ret frie hænder mht. layoutet. Tanken bag LaTeX er at man ikke selv behøver tænke over layoutet, og til en vis grad kan man sagtens udnytte dette. Hvis I har lyst, må I dog gerne ændre på layout - både sidehoveder, sidefødder, overskrift-fonte, marginer, figurtekst-formatering osv. - men hold det nu læseligt!
Et typisk dokument
Normalt vil man bruge article
klassen til at skrive en mindre rapport. Med denne klasse vil et typisk dokument starte med
\documentclass[10pt,a4paper,twoside]{article}
Herefter kommer de typiske pakker som man vil loade, der sørger for at man får korrekte danske bogstaver, ordomdeling, mulighed for matematik og mulighed for at indsætte figurer,
\usepackage[T1]{fontenc}
\usepackage[danish]{babel}
\usepackage[latin1]{inputenc}
\usepackage{amsfonts,amsmath,amssymb}
\usepackage[pdftex]{graphicx}
\usepackage[dvipsnames]{xcolor}
Man kan loade lige så mange pakker man har lyst til, se evt. Pakker I bør kende sektionen længere nede. Herefter kan man vælge at fodre \maketitle
makroen med rapportens titel, forfattere mm., hvis man altså ikke hellere selv vil lave en forside,
\title{...}
\author{...}
\date{...}
Nu starter det rigtige dokument, hvor man kan begynde at skrive sin tekst. Dette gøres med
\begin {document}
Hvis man vil bruge \maketitle
makroen til at lave en forside automatisk, skal man køre den nu,
\maketitle\clearpage
Efter forsiden skal man skrive sit abstract. Dette gøres inden i abstract
environmentet,
\begin {abstract}
%skriv dit abstract her
\end{abstract}
og man laver så en automatisk indholdsfortegnelse med
\tableofcontents\clearpage
Nu skriver man så sin tekst som man plejer, med \section
, \subsection
, figurer, tabeller, ligninger osv.
Før dokumentet helt er slut, skal man som det aller sidste lave sin referenceliste. Dette kan enten gøres med BibTeX, eller direkte med et thebibliography
environment. Hvis man bruger BibTeX skal man bare skrive en linie med koden
\bibliography{bibliografi-filnavn}
Hvis man hellere vil bruge thebibliography
environmentet, skriver man alle sine referencer direkte i dokumentet, f.eks.
\begin {thebibliography}{9}
\bibitem{taylor}
John R. Taylor,
\emph{An Introduction to Error Analysis},
2. udgave (University Science Books 1997)
\end{thebibliography}
Bemærk at 9-tallet bare fortæller environmentet hvor bred nummereringskolonnen for bibliografien skal være - hvis du har 10 referencer skal du skrive to tal, f.eks. 99, osv.
Til sidst afsluttes dokumentet med
\end{document}
Artikel-format
Når I skal skrive en artikel i den virkelige verden, vil den journal som I skal sende den til oftest have en masse krav om layout. De helt store tidsskrifter har normalt en LaTeX style-fil, som du skal skrive din artikel i.
I eksperimentel fysik kurset skal I skrive i REVTeX formatet, der bruges af tidsskrifter udgivet under American Physical Society. I skal bruge REVTeX 4.1, der pt. er den nyeste version.
Et typisk dokument
En artikel skrevet med REVTeX 4.1 vil starte sit preamble med
\documentclass[aps,prl,twocolumn]{revtex4-1}
Derefter loader man alle de pakker man gerne vil bruge (lige som man gør det med en normal rapport), og starter så sit dokument med
\begin {document}
Herefter skal man fodre den automatiske titel-generator med artiklens titel, forfattere og dato:
\title{}
\author{}
\date{\today}
Og til sidst skriver man sit abstract i det sædvanlige abstract
environment,
\begin {abstract}
%skriv dit abstract her
\end{abstract}
Titlen genereres med
\maketitle
Bemærk at \maketitle
skal komme efter abstractet i REVTeX, da titel-generatoren bruger abstractet - i modsætning til i en normal rapport, hvor abstractet er et uafhængigt environment.
Nu kan man så skrive sin tekst som man plejer, med \section
, \subsection
, figurer, tabeller, ligninger osv.
Referencer kan enten laves med BibTeX, eller direkte med et thebibliography
environment, lige som for rapporten forklaret ovenfor. Til sidst afsluttes dokumentet med
\end{document}
Pakker I bør kende
Der er nærmest uendeligt mange pakker (små udvidelser) til LaTeX, og mange af dem er alt for specialiserede til at være brugbare for jer. Der er dog en lille bunke som I bør kende til.
Alle pakker loades i preamble med kommandoen \usepackage{...}
.
Layout
-
geometry
pakken lader dig styre marginer og sidestørrelse af dit dokument på en nem måde.
-
a4wide
pakken sørger for at en typisk A4 side får lidt bredere tekst end hvad der er standard i LaTeX, hvilket ser lidt pænere ud i en rapport.
-
fancyhdr
pakken tillader at ændre på sidehoved og sidefod af dine dokumenter
-
caption
pakken kan bruges til at bestemme hvordan figur/tabel-tekster skal formateres.
-
sectsty
pakken bruges til at skifte udseendet af overskrifter i dokumentet.
-
chngcntr
pakken bruges til at ændre countere i et dokument, så figurer f.eks. ikke bare hedder 1, 2, 3, ..., men derimod hedder 1.1, 1.2 osv. for hver sektion. Dette er rigtig godt at gøre i store dokumenter.
Nyt indhold i dokumentet
-
graphicx
pakken gør det muligt at indsætte figurer i dine tekster, ved brug af\includegraphics
kommandoen.
-
subfig
pakken bruges til at lave underfigurer, så man f.eks. kan have to figurer ved siden af hinanden, med navn 2.a og 2.b.
-
listings
pakken bruges til når man vil indsætte kildekode i sit dokument, og kan endda lave syntax highlighting.
Matematik og typesetting
-
amsmath
pakken sørger for at du kan skrive matematik på en pæn måde, med environments somequation
ogalign
. Hvis du vil have matematik i dit dokument, skal du altid bruge denne pakke. Ofte vil man også loadeamssymb
pakken, der giver flere symboler.
-
bm
pakken sørger for at man kan lave fede græske bogstaver, f.eks.\bm{\pi}
.
-
siunitx
pakken bruges til at skrive enheder på en korrekt måde, med f.eks.\SI{5.2}{m/s^2}
. Koden kan bruges både i matematik og i tekst, og sørger altid for den rigtige spacing og at enhederne ikke står i kursiv.
-
xcolor
pakken muliggører brug af farver i dit dokument, f.eks. kan du skrive en rød kommentar medbla bla {\color{red} kommentar} bla
.
Sprog-egenskaber
-
fontenc
pakken vælger den font-encoding som du bruger i dit dokument. Denne skal man bruge for at LaTeX kan finde ud af at lave korrekt ordomdeling i ord der indeholder specialtegn som f.eks. æ, ø og å. Normalt vil en dansker bruge\usepackage[T1]{fontenc}
.
-
babel
pakken sørger for typografiske regler der er sprog-specifikke, bl.a. ordomdeling. Hvis man skriver sit dokument på dansk skal man bruge\usepackage[danish]{babel}
. Pakkens egenskab skal selvfølgelig bare sættes til det sprog man nu engang bruger.
-
inputenc
pakken fortæller LaTeX compileren hvilken encoding der er brugt til at skrive kildekode-filen. Dette vælges typisk i den editor du bruger, og afhænger meget af styresystemet du er på. Man bruger pakken ved at indsætte\usepackage[egenskab]{inputenc}
i sit preamble, og sætteregenskab
til den encoding man bruger, f.eks.latin1
,utf8
,ansinew
ellerapplemac
.
Andet
-
booktabs
pakken bruges til at lave pæne tabeller, med bedre spacing mellem linierne, og forskellig spacing afhængigt af hvor vandrette linier ligger. Man bruger oftest\toprule
,\midrule
og\bottomrule
.
Mere specialiseret hjælp
I kurset er der nogle få ting som er rare at kende til hvis man f.eks. vil lave nemme tabeller. Nedenfor er en oversigt over forskellige sider med hjælp til sådanne ting:
- Nemme LaTeX tabeller kan laves direkte fra OpenOffice og eksporteres til LaTeX kode