LaTeX

Fra TermvaktWiki
Revisjon per 12. mar 2014 kl. 10:28 av Trondth (Diskusjon | bidrag)
(diff) ← Eldre revisjon | Nåværende revisjon (diff) | Nyere revisjon → (diff)
Gå til: navigasjon, søk

Innhold

Hva er LaTeX

LaTeX er et format og program for ulike typer dokumentproduksjon, som artikler, bøker, brev og lignende. Det kan kanskje være noe krevende å sette seg inn i, men etter litt øving har du et veldig kraftig verktøy som forholdsvis enkelt lager meget pene dokumenter. På en fornuftig måte får du plasert ligninger, tabeller, grafer og kildekode. LaTeX egner seg dermed fint til innleveringer av obliger, og ikke minst til masteroppgaver. Kile er et redigeringsverktøy som gir deg et lettere grafisk grensesnitt å jobbe i. LaTeX skiller seg ut fra andre tekstbehandlingsverktøy ved at du kun trenger å tenke på innholdet du skriver, LaTeX sørger for at utseende blir seende best mulig ut. Et LaTeX-dokument kan du lage ved hjelp en hvilken som helst teksteditor med den spesielle LaTeX-syntaxen. Etter at du har skrevet ferdig koden, må du imidlertid kompilere, dvs. kjøre PDFLaTeX-programmet på dokumentet ditt. Du sitter da igjen med det ferdige dokumentet ditt, dette er en pdf-fil. På MatNats termstuer har vi gode LaTeX-bøker til utlån som omfatter alt fra hvordan komme i gang til avansert bruk. Henvend deg til en termvakt som låner ut boken til deg.

Hvordan komme igang

Her er en liten oversikt over hvordan du på enklest mulig måte kommer i gang med LaTeX. Hvis du vil se på en LaTeX-fil, f.eks. for å finne ut hvordan du setter inn bilder, ta en titt på malen som er laget i den forbindelse.

  1. Lagre en LaTeX-fil, gjerne etter denne malen, og kall den ett filnavn som slutter med .tex, f.eks. minfil.tex. Emacs er veldig fin å lage LaTeX-dokumenter i, den gjenkjenner .tex-filer og gir deg fine og oversiktlige farger på kommandoer etc. Kile er et annet program som passer veldig bra for latex, også i linux. Skal du bruke windows kan du også bruke emacs, eller det noe enklere Texniccenter.
  2. Skriv LaTeX-kode i filen. En LaTeX-fil må alltid begynne med \begin{document} og slutte med \end{document} (noen flere kommandoer er gitt under.)
  3. Kompiler filen med kommandoen pdflatex minfil.tex. Det blir da laget mange filer til ulike formål. Du er sannsynligvis bare interessert i den som heter minfil.pdf.
  4. For å se på .pdf-fila, bruk kommandoen evince minfil.pdf (Du kan bruke ctrl+r for å oppdatere evince neste gang du kompilerer fila di, slik at du ikke trenger å lukke preview for hver gang)
  5. Endre tex-filen hvis du ikke er førnøyd.
  6. Gjør punkt 2 til 4 gjentatte ganger, inntil du er fornøyd.

Litt videre

Her har vi tatt med endel forskjellige kommandoer du kan komme borti ved bruk av LaTeX.

Noen kommandoer

\section{navnpåavsnitt} Navn på avsnitt
\section*{navnpåavsnitt} Navn på avsnitt uten nummer foran, * kan brukes på \subsection osv.
\subsection{navnpåunderavsnitt} Navn på underavsnitt
\begin{itemize} Starte punktliste, husk og avslutte listen med: \end{itemize}. Se også mal
\begin{enumerate} Punktliste med tallpunkter, husk \end{enumerate}
\begin{figure} Kommando for å sette inn figur. Her trengs imidlertid mer, se mal
\LaTeX{} Kommandoen gjør at latex skriver LaTeX på den "offisielle" måten.
\% Kommandoen gjør det mulig å få med %-tegnet i teksten, dette gjelder for alle spesialtegn
\today Gir dagens dato
\textsl{tekst} Gir "slant" tekst, altså skrå
\textbf{tekst} Gir fet skrift
\begin{center} Sentrerer videre skrift, husk \end{center}
\clearpage Begynner på en ny side, kan også bruke \newpage
\\ Lager linjeskift
\vspace{-15pt} Fjerner vertikal luft, man kan også legge til, ved å fjerne minustegnet
\hspace{15pt} Legger til horisontal luft i teksten
\begin{verbatim} Legger inn ren tekst akkurat som den er, husk \end{verbatim}
\rule{\textwidth}{1pt} Lager en horisontal strek, 1 punkt tykk, like bred som teksten
\footnote{fotnotetekst} Lager en fotnote med teksten skrevet inni {}
\small{tekst} Lager tekst som blir mindre enn vanlig, hvis ikke annet er angitt er vanlig 10pt

Relevante linker

Det finnes veldig mange gode LaTeX-linker. Jeg vil uansett på det varmeste anbefale Dag Langmyhrs hjemmeside for deg som vil lære deg LaTeX. "LaTeX for nybegynnere" er skrevet av Dag Langmyhr og er veldig pedagogisk og fin da den forklarer mye om LaTeX - og har annenhver side med tekst og LaTeX-kode. "The Not So Short Introduction To LaTeX" er også å anbefale. Jeg vil påstå at man kan lære seg veldig mye LaTeX kun ved hjelp av disse to. Vi også lagt til linken til USITs hjemmeside for LaTeX. I tillegg til disse linkene er det enkelt å søke på nettet etter kommandoer etc. Termstuene er også i besittelse av forskjellige LaTeX-bøker som det er fult mulig å låne.

På hjemmesiden til Dag finnes link til både "LaTeX for nybegynnere" og forskjellige foredrag han har holdt, f.eks. "LaTeX for viderekommende". Her finnes også "Lokal guide til BibTeX".
Som tittelen sier er det en ikke fullt så kort introduksjon til LaTeX, og den er veldig god! Blant annet finner du veldig mye matematiske symboler her, veldig godt kapittel om matte og formler i LaTeX.
Mange gode linker, og endel nyttige tips for LaTeX-brukere på universitetet.
Lenker til LaTeX for logikere (spesifikt kurset INF1080, men ikke utelukkende)

Referanseliste (BibTeX)

BibTeX er et referanselistehåndteringsverktøy for LaTeX. Her kan man lage seg en referanseliste man kan bruke til alle sine senere innleveringer og oppgaver. BibTeX består ev en fil som heter filnavn.bib. I denne filen lagrer man alle referansene sine, om man skal bruke dem i oppgaven eller ei. Ved å referere til .bib-fila fra .tex-fila henter BibTeX automatisk alle referansene som er brukt, og systematiserer dem. Et eksempel er gitt i Dag Langmyhrs "Lokal guide til BibTeX", så bare "høydepunktene" blir gjengitt her. Lurer du på noe mer, sjekk Langmyhrs guide.

minereferanser.bib
@book{219boka,
author = {Øystein Andersen and Geir Brånå and Svein Erik Lønnum},
edition = {2.},
publisher = {NKI},
title = {Fotogrammetri},
year = 1991
}

Dette er BibTeX-fila, minereferanser.bib. Den består av en referanse, boka "Fotogrammetri". Forskjellige typer dokumenter og hvilke objekter som inngår i dem kan leses i "Lokal guide til BibTeX". En viktig ting i fila er referansen som skal brukes i .tex-fila, "nøkkelen" til referansen. I minereferanser.bib heter den nøkkelen "219boka" ("@book{219boka,"). BibTeX-fila gjør ingen nytte for seg så lenge den ikke er knyttet til et LaTeX-dokument. Referansene til BibTeX-fila i .tex-fila gjøres med kommandoen "\cite{219boka}".

En typisk linje i .tex-fila vil da se slik ut:

minfil.tex
I følge Andersen m.fl.\cite{219boka} har... 

...og helt på slutten av .tex-fila setter vi inn disse linjene:

\bibliography{referanser} 
\bibliographystyle{norplain}

Vi har nå referert til BibTeX-fila ved hjelp av "\cite{219boka}", og vi har hentet inn referansefila vår ved hjelp av "\bibliography{referanser}". I tillegg har vi, ved hjelp av "\bibliographystyle{norplain}" fortalt LaTeX hvilken stil vi vil ha på den ferdige referanselista vår.

Så må det hele kompileres og kjøres. Dette må gjøres i en litt spesiell rekkefølge:

  1. Kjør LaTeX-fila: pdflatex minfil.tex slik at den får med seg at den har referanser
  2. Kjør BibTeX-fila: bibtex minfil slik at LaTeX får hentet frem referansene
  3. Kjør LaTeX-fila: pdflatex minfil.tex to ganger, først så den får med seg referansene fra BibTeX-fila, så for at den får koblet.

Noen nyttige tips

  • Du kan i utgangapunktet lage deg kun en BibTeX-fil som du benytter deg av under hele ditt studieopphold. LaTeX henter kun ut de referansene du refererer til, og BibTeX bryr seg ikke om at du har referanser i .bib-fila som ikke blir referert til.
  • Siden de forskjellige referansestilene som finnes henter ut informasjonen fra BibTeX-fila forskjellig, lønner det seg alltid og fylle inn så mye informasjon som mulig i BibTeX-fila. Skriv for eksempel alltid inn hele navnet på forfatter(ene). Referansestilen du velger, velger om den blir seendes slik ut: Etternavn, F. eller slik: Fornavn Etternavn. Fyll også inn all informasjon du har om dokumentet du referer til, utgave, redaktør osv osv.
  • Hvis du bruker emacs til å skrive minereferanser.bib så hjelper emacs deg når du skal sette inn nye referanser. I menylinja kan du nemlig velge "Entry-Types", hvor du kan velge hvilken type referanse du skal putte inn, f.eks. book, article osv, og emacs vil da ta med alt du kan legge inn. OPT betyr optional, vil du ha punktet med bare slett de tre bokstavene.

Mal av en LaTeX-fil

Malen er laget med tanke på at den kan kopieres inn i et nytt dokument og brukes direkte. Det viktigste i dette tilfellet er de øverste linjene. Den første forteller hva slags dokumentklasse det skal være - denne linjen må alltid være med! De andre linjene inkluderer en rekke pakker en trenger for at latex skal kunne kompilere. Skal en f.eks. ha med figurer i dokumentet sitt, må pakken {epsfig} og pakken {graphicx} være inkludert. Vidre i dokumentet har jeg lagt inn forskjellige ting, som bilder og punktlister, slik at du kan se hvordan det skal gjøres. Dette kan selvfølgelig bare klippes vekk hvis du bruker denne malen som grunnstamme for ditt dokument.

NB! Husk å ikke klippe vekk den helt siste linja: \end{document}, denne må være med for at latex skal kunne kompilere ordentlig.

Siden det ikke ligger ved noe bilde som heter BILDE.eps, så vil du få noen feilmeldinger når du kompilerer, det er bare å trykke enter til du er gjennom, også skrive "evince mal.pdf" også vil du kunne se dokumentet.

\documentclass[a4paper,norsk,11pt,twoside]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[norsk]{babel}
\usepackage{epsfig}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{pstricks}
\usepackage{subfigure}
\usepackage{booktabs}       % Pakke for pene tabeller
                            % http://ctan.uib.no/macros/latex/contrib/booktabs/booktabs.pdf
 

\date{DATO}
\title{DOKUMENTTITTEL}
\author{FORFATTER}


% Kommentarer er markert med "%" i margen. Alle disse kan, om du
% ønsker det, fjernes i sin helhet.
% 
% Erstatt ``DOKUMENTTITTEL'' med dokumentets tittel. 
% Erstatt ``FORFATTER'' med ditt navn. 

% Hvis du vil ha dagens dato hver gang du redigerer dokumentet kan du
% bytte ut DATO med \today, ellers erstatter du "DATO" med en fornuftig dato.
 
% Det finnes også ved universitetet en pakke som heter "uioforside", denne kan du lese mer om her. 


\begin{document}
\maketitle
\newpage



\tableofcontents{}

% denne kommandoen gir deg innholdsfortegnelse, såfremt du har brukt \section{} og ikke
% \section*{} (altså at du har valgt nummererte avsnitt).

 

\section{AVSNITTSOVERSKRIFT}
 
% \section{} gir avsnitt

\subsection{UNDER-AVSNITTSOVERSKRIFT}
 
 % \subsection{} gir under-avsnitt 


 % Punkt-liste:

\begin{itemize}
\item{} TEKST
\end{itemize}



 % Nummerert punktliste:

\begin{enumerate}
\item{}
\end{enumerate}



 % Sette inn bilde/figur:

\begin{figure}[hbt]
\begin{center}
\fbox{\includegraphics[width=\textwidth]{BILDE.eps}}
\caption{BILDEUNDERTEKST}\label{fig:finfigur}}
\end{center}
\end{figure} 

 % width = \textwidth gjør at bildet blir like stort som teksten, her kan man endre
 % størrelsen på bildet ved å skrive "width = 10cm" f.eks.

 % "[hbt]" gjør at du prøver å overstyre LaTeX til å putte figuren HER i teksten (h), hvis ikke det går
 % figurer i LaTeX er flytende objekter, og vil gjerne ikke puttes seg akkurat der vi vil...),
 % prøver vi å få LaTeX til å sette figuren på BÅNN av siden (b), hvis ikke det går, så på TOPPEN (t)

 % "\fbox{}" lager en ramme rundt figuren.

 % Latex tar kun .eps-filer (og .ps-filer). Stort sett alle bildeformater kan konverteres til
 % .eps i bildebehandlingsprogrammet Gimp.

 % "\caption" er bildeteksten, hvis du vil ha teksten mindre kan man slenge på "\caption{\small{tekst}}".

 % "\label{}" er figurens "nøkkel". Denne nøklen kan du referere til hvor som helst i teksten din,
 % referansen må da se slik ut: "Se figur \ref{fig:figur1}".

 % Latex må få kompilere to ganger for at den skal få med seg både at det er en referanse,
 % og for å kople referanse og label. 



 % Sette inn formel/matteelement (nummerert):

\begin{equation}\label{eq:9.141}
\varrho^{j}_{i}(t) =
\sqrt{(X^{j}(t)-X_{i}) +(Y^{j}(t)-Y_{i}) +(Z^{j}(t)-Z_{i}) } \equiv f(X_{i}, Y_{i}, Z_{i})
\end{equation}

 % "\varrho" gir den greske bokstaven rho
 % "\sqrt{}" gir kvadratrot
 % "^{}" betyr at det som står inni {} skal opphøyes, "_{}" betyr det motsatte
 % likningen blir seendes slik ut (står nederst på siden)
 % "\equiv" gir likhetstegn med tre streker
 % equation lager nummererte formler, man kan også bruke "$formel$" hvis man vil
 % ha matteelementer midt i en tekst (altså matteelementer mellom to dollartegn $$). 



 % Sette inn en tabell:

\begin{table}
\centering
\begin{tabular}{c c c c}
\toprule
Var1 & Var2 & Var3 & Var4\\
\midrule
data & data & data & data\\
data & data & data & data\\
\bottomrule
\end{tabular}
\caption{TABELLFORKLARINGSTEKST}\label{tab:fintabell}
\end{table}

 %"|c|c|c|c|" lager en tabell med fire kolonner
 %"\hline" lager en horisontal linje
 %du kan lage så mange rader du vil, hver kolonne i raden skilles med &-tegn.
 % "\caption" og "\label" er det samme som på figur. Man må ikke skrive "{tab:fintabell}",
 % man kan skrive hva man vil, men hvis en skriver et stort dokument kan det være greit å
 % skille mellom referanser som er fra tabeller, likninger, figurer og overskrifter. 



 % Referanseliste fra BibTeX:
\bibliography{referanser}

\bibliographystyle{norplain}
 %"\bibliography{referanser}" henter inn filen "referanser.bib" hvor du har listet opp alle referansene dine.
 %"\bibliographystyle{norplain}" forteller LaTeX at referanselisten din skal ha stilen "norplain" 



\end{document}


Likningen fra \begin{equation}:

Latex likning.jpg

UiOforside

Dersom du ønsker et forsideark med UiOs offisielle logo og navn, kan dette lett ordnes i LaTeX. Det kan blant annet brukes på kompendier og til innlevering av oppgaver, herunder mastergrad, doktorgrad, prosjekter osv. Forsidearket skal ikke brukes på dokumenter som ikke har noe med UiO å gjøre.

Ved hjelp av LaTeX

Kopier koden nedenfor til filnavn.tex, og modifiser etter behov i de respektive stedene.

\documentclass[a4paper,norsk]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel,textcomp,uiosloforside}                                       
\title{\LaTeX-pakken uiosloforside}
\author{Dag Langmyhr}
\begin{document}
\uiosloforside
\end{document}

Kompilering av LaTeX-fil

Kompiler ved å skrive

pdflatex filnavn.tex

i terminalvinduet. Programmet lager da mange filer, bla filnavn.pdf.

Vanlige problemer

Her har vi prøvd å ta med de vanligste problemene en kan støte på i forbindelse med LaTeX.

Figurene mine havner ikke der jeg vil

LaTeX vil forsøke og plassere alle figurer der det ser best ut, det beste er å la det skje og heller bruke kryssreferanser til figurene dine.

Ingenting har forandret seg enda jeg har kompilert

Noen ganger må man kompilere flere ganger for at LaTeX skal få med seg at ting har forandret på seg. F.eks. hvis en har lagt til figurer med \label{} må det kompileres to ganger for at LaTeX skal få med seg at det er en label, og for å kombinere labels og referanser.

Badness 10 000

Dette står det når du kompilerer LaTeX-fila di hvis LaTeX ikke er helt fornøyd med hvordan teksten ser ut på siden. For eksempel vil du få badness 10000 hvis du selv legger inn linjeskift med \\. Dette er forsåvidt ikke så mye å bry seg om, men bruk heller \newline dersom du vil tvinge frem et linjeskift.

Biber

Biber lager seg en cache som kan føre til problemer når man veksler mellom maskiner man sitter på. biber --cache | xargs rm -rf sletter denne cachen.

Feilmeldinger

Når kompileringen stopper på grunn av feil, kan man velge å avbryte med å skrive x og trykke enter. Selve feilmeldingen består av et utropstegn og en beskrivelse, samt en referanse til hvilken linje kompilatoren var kommet til da feilen ble funnet:

   ! Undefined control sequence.
   l.6 \tabel  

Det kan være at feilen ligger mye lengre oppe i dokumentet enn, typisk hvis man har glemt å lukke en parantes eller lignende.

Mer info om feilmeldinger: [1]


Eksterne Lenker

  • Nybegynnere. Innføring i LaTeX av Dag Langmyhr.
  • Viderekomne. Nyttig info om å bruke LaTeX av Dag Langmyhr.
  • Avansert. Not so short introduction to LaTeX. Omfattende info om LaTeX.
Personlige verktøy
Navnerom
Varianter
Handlinger
Navigasjon
Kategorier
Programvare
Andre
Translate
Verktøy