Een introductie tot LATEX Tweede editie Rudy Gevaert
[email protected] http://www.webworm.org
ZeusWPI
[email protected] http://www.zeus.rug.ac.be
10 maart 2003
c 2002,2003, Rudy Gevaert. All rights reserved worldwide. Copyright Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, Front-Cover Texts being “Een introductie tot LATEX, and no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”.
Samenvatting LATEX is een programma, dat bijzonder geschikt is voor het vervaardigen van ‘drukrijpe’ technische documentatie; vooral di´e documentatie die mathematische formules bevat. Het kan natuurlijk ook voor andere teksten gebruikt worden, vari¨erend van brieven tot complete boeken. LATEX is noch een DeskTop Publishing-pakket noch een tekstverwerker, maar een zet-systeem. LATEX kan op een groot aantal verschillende computers worden ge¨ınstalleerd. Het is te verkrijgen voor o.a. UNIX-, MSDOS-, Atari-, Amiga- en Macintosh-systemen, etc. Vaak zijn er zowel commerciele als ‘public domain’ versies te verkrijgen. In deze notities geven wij een introductie tot werken in LATEX en met LATEX.
1
Voorwoord Pending :) Rudy Gevaert Maart 2002
Voorwoord tweede editie Op verzoek werden de twee lessen in ´e´en cursus gestoken. Rudy Gevaert Maart 2003
2
INHOUDSOPGAVE
Inhoudsopgave Voorwoord
1
1 Wat 1.1 1.2
4 4 4
is LATEX? TEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LATEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Waar haal ik het het en hoe installeer ik 2.1 CTAN . . . . . . . . . . . . . . . . . 2.2 TEX distributies . . . . . . . . . . . . 2.3 Verdere info . . . . . . . . . . . . . .
het? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 4 4 5
3 Creatie van LATEX bestanden 3.1 LATEX commando’s . . . . . . 3.2 Speciale tekens . . . . . . . 3.2.1 Accenten . . . . . . . 3.2.2 Afbreken van woorden 3.2.3 Wiskunde . . . . . . 3.3 Editors . . . . . . . . . . . .
. . . . . .
5 5 5 5 6 6 7
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
4 Het basisrecept
7
5 Documentstructuren 5.1 Initialisatie van documentclass . 5.1.1 Opmaakopties . . . . . . 5.2 Een eerste LATEX document . . . 5.2.1 Het document omgeving 5.2.2 Titels . . . . . . . . . . 5.2.3 Abstracs . . . . . . . . . 5.2.4 Onderverdelingen . . . . 5.2.5 Inhoudstafel . . . . . . . 5.2.6 Een voorbeelddocument .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
7 7 8 8 8 8 9 9 9 9
6 Omgevingen 6.1 Lijsten . . . . . . . . . . . . . . . . . . 6.2 Tabellen . . . . . . . . . . . . . . . . . 6.2.1 Tabulatoren (tabbing) . . . . . . 6.2.2 Automatische tabellen (tabular) 6.2.3 Drijvende tabellen (table) . . . . 6.3 Verbatim tekst . . . . . . . . . . . . . . 6.4 Citaten . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
9 10 11 11 13 14 15 16
7 Nuttige commando’s 7.1 Voetnoten . . . . . . . . . . . . . 7.2 Verwijzingen . . . . . . . . . . . . 7.3 Bibliografie . . . . . . . . . . . . . 7.4 Index en glossaries . . . . . . . . . 7.5 Gebruik van lettertypes . . . . . . 7.5.1 Tekst benadrukken . . . . 7.5.2 De font grootte veranderen
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
16 16 17 17 18 18 18 18
. . . . . . . . .
. . . . . . . . .
. . . . . . .
. . . . . . . . .
. . . . . . .
. . . . . . .
3
INHOUDSOPGAVE 8 Wiskunde 8.1 Introductie . . . . . . . . . . . . . . . . . 8.2 Basiselementen . . . . . . . . . . . . . . 8.2.1 Constanten en variabelen . . . . . 8.2.2 Exponenten en indexen . . . . . . 8.2.3 Breuken . . . . . . . . . . . . . . 8.2.4 Wortels . . . . . . . . . . . . . . 8.2.5 Sommaties, integralen en limieten 8.2.6 Varia . . . . . . . . . . . . . . . . 8.3 Lijst van mathematische symbolen . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
9 Grote documenten
18 18 19 19 20 20 20 20 21 21 26
10 Figuren 10.1 Figuren invoegen . . . . . . . . . . . . 10.2 De schaal van de figuur aanpassen . . . 10.3 Figuren roteren . . . . . . . . . . . . . 10.4 Een figuur op een enkele pagina . . . . 10.5 Hoe bekom je nu een .eps bestand? . . 10.6 Weetjes . . . . . . . . . . . . . . . . . 10.6.1 Hoe het invoegen eigenlijk werkt 10.6.2 Path . . . . . . . . . . . . . . . 10.6.3 Standaard extensies . . . . . . . 10.6.4 Figuur types . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
26 27 27 28 28 32 32 32 33 33 33
11 Kleuren
33
12 Zelf commando’s defini¨ eren
34
13 Brieven
35
14 Babel
36
15 Slides
36
16 Package’s installeren
36
Referenties
38
A GNU Free Documentation License A.1 Applicability and Definitions . . . . . A.2 Verbatim Copying . . . . . . . . . . . A.3 Copying in Quantity . . . . . . . . . . A.4 Aggregation With Independent Works A.5 Translation . . . . . . . . . . . . . . . A.6 Termination . . . . . . . . . . . . . . A.7 Future Revisions of This License . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
39 39 40 40 40 41 41 41
1
WAT IS LATEX?
1
4
Wat is LATEX?
1.1
TEX
TEX (uitspraak “Tech” als in techniek, kan ook als ‘TEX’ geschreven worden) is een computerprogamma van Donald E. Knuth. Het is speciaal ontworpen voor het zetten en drukken van mathematische teksten en formules. Een belangrijk kenmerk van TEX is dat het uitbreidbaar is, het bevat een soort programmeertaal waarin ingewikkelde functies beschreven kunnen worden (met z.g. macros).
1.2
LATEX
LATEX (uitspraak “Lah-tech” of “Lee-tech”, kan ook als ‘LATEX’ geschreven worden) is een zogenaamd macro-pakket dat door Leslie Lamport is geschreven en van TEX gebruik maakt. Het stelt de auteur in staat zijn publicaties op eenvoudige wijze en met gebruik van een van te voren opgegeven structuur, met boekdruk-kwaliteit te zetten en af te drukken. Het wordt veel gebruikt voor wetenschappelijke teksten en boeken, vooral in de exacte wetenschappen. Daarnaast kun je LATEX ook gebruiken voor het maken slides, brieven, posters, naamkaartjes, . . .
2
Waar haal ik het het en hoe installeer ik het?
Voordat je LATEX kunt gaan gebruiken moet je eerst een TEX distributie op je systeem installeren. Er bestaan verschillende distributies, en platform afhankelijk. Heb je toegang tot een *nix systeem (eduserv bijvoorbeeld), dan zal er waarschijnlijk wel al een TEX distributie ge¨ınstalleerd zijn. Heb je geen toegang tot een *nix systeem, dan moet je op je eigen computer een TEX distributie installeren.
2.1
CTAN
De gemakkelijkste manier om TEX en LATEX software te bekomen is te gaan zoeken op servers van verschillende academische instellingen. Er zijn drie grote netwerk servers voor TEX en LATEX, gevestigd in de Verenigde Staten 1 , Groot Brittani¨e2 en Duitsland3 . Samen vormen ze het Comprehensive TEX Archive Network, CTAN. Zeus biedt ook een mirror aan van CTAN: ftp://hermes.rug.ac.be/CTAN/tex-archive. Iedere server heeft dezelfde opbouw, dus als er sytems/unix/teTeX/ staat bedoelen we eigenlijk ftp://hermes.rug.ac.be/CTAN/tex-archive/sytems/unix/teTeX/. Wat volgt is een overzicht van TEX systemen per platform.
2.2
TEX distributies
Unix tetex: systems/unix/teTeX/1.0/distrib/sources Linux tetex: systems/unix/teTeX/1.0/distrib/sources Win32 miktex: download systems/win32/miktex/setup/setup.exe en lees systems/win32/ miktex/setup/install.html Mac cmactex: systems/mac/cmactex Daarnaast bestaan er nog andere ook, maar hiervoor verwijzen we naar CTAN. 1
ftp://ctan.tug.org/tex-archive/ ftp://ftp.tex.ac.uk/tex-archive/ 3 ftp://ftp.dante.de/tex-archive/
2
3
CREATIE VAN LATEX BESTANDEN
2.3
5
Verdere info
Deze introductie kan niet alles uitleggen daarom verwijzen wij graag naar volgende urls: • http://www.tug.org TEX User Group website. • help/uk-tex-faq de UK TEX FAQ. • documentation/ hopen informatie. • http://www.cs.ruu.nl/~piet/ltx-errata.html “LaTeX handleiding” door Piet van Oostrum4 • news:comp.text.tex De UK TEX FAQ is een must voor iedere beginnende en gevorderde LATEX gebruiker. Via http: //www.google.com vindt u natuurlijk een bijna onuitputbare bron van TEX en LATEX resources.
3
Creatie van LATEX bestanden
Om met LATEX een document te maken moet je (met een tekst-editor) een bestand aanmaken waarin je tekst staat, samen met de aanwijzingen (commando’s) waaraan LATEX kan zien hoe de tekst opgemaakt kan worden. Er bestaan editors die LATEX documenten begrijpen en die je kunnen helpen met het bijhouden van de logische struktuur, maar elke gewone tekst-editor kan gebruikt worden. Als de tekst klaar is wordt hij verwerkt door het LATEX programma, waaruit een z.g. DeVice Independent (DVI) file komt, die daarna met een previewer bekeken kan worden of met een printerdriver afgedrukt.
3.1
LATEX commando’s
Alle LATEX commando’s beginnen met een backslash (\) en bestaan meestal uit kleine letters, bijvoorbeeld \clearpage. In LATEX worden meerdere spaties, nieuwe lijnen and tabs aanzien als ´e´en enkele spatie, zo kun je meerdere spaties gebruiken voor een betere structuur in je tekstbestand.
3.2
Speciale tekens
De volgende symbolen hebben een speciale betekenis voor LATEX, ze kunnen niet zomaar gebruikt worden. % # _ { }
~
^ "
\
| < > $ &
De tekens: $ & % # { } kunnen door er een \ (backslash) voor te zetten gewoon afgedrukt worden. Bij voorbeeld: \$ zet een $ op het papier. 3.2.1
Accenten
Met LATEX is het mogelijk om accenten en speciale karakters uit een grote verscheidenheid van talen te gebruiken (zie tabel 1). In voorbeelden wordt meestal de letter o gebruikt, maar het is, in principe, mogelijk om op elke letter een accent te zetten. Als er een accent op een i of een j gezet moet worden, dan moet er een ‘puntloze’-i (of -j) gebruikt worden. Een dergelijke ı (of ) wordt met het commando \i (\j) te voorschijn getoverd. 4
Kleine stukken uit de les komen hieruit.
3
6
CREATIE VAN LATEX BESTANDEN input \‘o \^o \=o \u o \H o \c o \b o \oe \ae \aa \o \l \i
output o` oˆ o¯ o˘ o˝ o¸ o ¯ œ æ ˚ a ø l ı
input \’o \~o \.o \v o \"o \d o \t oo \OE \AE \AA \O \L \j
output o´ o˜ o˙ oˇ ¨o o. oo Œ Æ ˚ A Ø L
Tabel 1: Accenten en speciale letters 3.2.2
Afbreken van woorden
LATEX zorgt ervoor dat woorden op het einde van een lijn automatisch gesplitst worden. Als de automatische woordafbreekroutines in enkele gevallen niet het juiste resultaat opleveren, kan men LATEX met de volgende commando’s terechtwijzen. Bij samengestelde of buitenlandse woorden kan dit zelfs noodzakelijk zijn. Het commando \hyphenation{...} zorgt ervoor, dat de daar genoemde woorden alleen maar op de met ‘-’ gemarkeerde plekken afgebroken kunnen worden. Zo’n lijst moet aan het begin van de inputfile staan en mag geen cijfers of speciale tekens bevatten. \hyphenation{speel-tuin,werk-groep}
Het commando \mbox{...} zorgt ervoor dat het woord helemaal niet afgebroken wordt. Bij voorbeeld: Het telefoonnummer is nu \mbox{(0222) 5601-3694}. \\ De parameter \mbox{\tt filename} geeft de file\-naam aan.
3.2.3
Wiskunde
Om wiskundige tekst neer te zetten heb je twee manieren: • met \( en \) (of $) produceer je in-line formules; • met \[ en \] zorg je ervoor dat de wiskunde gecentreerd op een nieuwe regel komt. Bijvoorbeeld: De integraalvoorstelling van \( n! = \int_0^{+\infty} t^n e^{-t}\, dt \), en een toevalsvector $(X_1,X_2)$ bezit een bivariate normale distributie $N(\mu_1,\mu_2,\sigma_1^2, \sigma_2^2,\rho)$ met parameters $\mu_1,\mu_2,\sigma_1^2, \sigma_2^2$ en $\rho$,$(\sigma_1 >0, \sigma_2 >0, -1 < \rho < + 1)$, indien de probabiliteitsdichtheidsfunctie gegeven is door~: \[ f_{X_1,X_2}(x_1,x_2) = { 1 \over 2\pi\sigma_1 \sigma_2 \sqrt{1 \rho^2}} e^{-{1 \over 2(1-\rho^2)}\left\{ \left({x_1-\mu_1 \over
4
7
HET BASISRECEPT \sigma_1}\right)^2 - 2 \rho \left({x_1-\mu_1 \over \sigma_1} \right)\left({x_2-\mu_2 \over \sigma_2} \right)+ \left({x_2-\mu_2 \over \sigma_2} \right)^2 \right\}}\,.
\]
wordt: R +∞ De integraalvoorstelling van de n! = 0 tn e−t dt, en een toevalsvector (X1 , X2 ) bezit een bivariate normale distributie N (µ1 , µ2 , σ12 , σ22 , ρ) met parameters µ1 , µ2 , σ12 , σ22 en ρ, (σ1 > 0, σ2 > 0, −1 < ρ < +1), indien de probabiliteitsdichtheidsfunctie gegeven is door : 1 − 1 2 p e 2(1−ρ ) fX1 ,X2 (x1 , x2 ) = 2πσ1 σ2 1 − ρ2
3.3
“
x1 −µ1 σ1
”2
−2ρ
“
x1 −µ1 σ1
”“
x2 −µ2 σ2
” “ ”2 ff x −µ + 2σ 2 2
.
Editors
Er bestaan verschillende programma’s die gebruikt kunnen worden om LATEX bestanden te schrijven en bewerken. Voor Windows heb je b.v. Winedt (systems/win32/winedt), voor Linux kun je b.v. Vim of Emacs gebruiken. Eender welke editor volstaat, tenzij je syntax highlighting wilt hebben. In deze lessen zullen we Vim gebruiken.
4
Het basisrecept
Volgend recept geeft de werkwijze om tot een afgewerkt document te komen. 1. bestand.tex aanmaken 2. LaTeX\ bestand.tex 3. xdvi bestand.dvi 4. dvips -o bestand.ps bestand.dvi 5. bestand.ps afprinten
5
Documentstructuren
LATEX’s basis layout is gebasseerd op de onderverdeling in parts, chapters, sections, subsections, subsubsections, . . .
5.1
Initialisatie van documentclass
Om aan te geven welk soort document LATEX moet typesetten zet je het volgende commando op de eerste lijn van je bestand: \documentclass{report}
Er zijn vier standaard klassen: report voor zakelijke, technische documenten, . . . article voor artikelen, besprekingen, . . . book voor boeken and thesisen letter voor brieven Daarnaast zijn er nog veel beschikbaar op CTAN.
5
DOCUMENTSTRUCTUREN
5.1.1
8
Opmaakopties
De standaard papiergrootte is ‘Letter’, maar dat wordt alleen gebruikt in de US, dus geven we met het volgende aan dat we A4-papier moeten gebruiken als we bijvoorbeeld een report willen maken: \documentclass[a4paper]{report}
Volgende opties bestaan ook: 11pt lettertype met 11pt’s grootte. 12pt lettertype met 12pt’s grootte. twoside recto-verso oneside alleen aan 1 kant titlepage om artikels te verplichten een titelpagina te gebruiken We kunnen de cumuleerbare opties ook combineren, bv. [twoside,11pt] Tevens zijn er honderden add-on packages voor aangepaste layouts, hoe je zo’n package installeert leggen we uit in les 2.
5.2 5.2.1
Een eerste LATEX document Het document omgeving
Achter de documentclass declaratie, wordt de eigenlijke tekst (aangegeven door . . . hieronder) van je document omsloten door twee commando’s. \documentclass[a4paper]{report} \begin{document} ... \end{document}
Dit is ook een voorbeeld van een veelgebruikte LATEX techniek, environment genoemd. Environments omsluiten tekst die behandeld moet worden op een speciale manier. Ze starten allemaal met \begin{...} en eindigen met \end{...} (met de naam van de environment op de plaats van de . . . ). 5.2.2
Titels
De eerste lijnen in een LATEX document worden altijd gebruikt om de titel van het document, de auteurs naam en de datum vast te leggen. \documentclass[a4paper]{report} \begin{document} \title{Introductie tot Typesetting} \author{Rudy Gevaert \\ ZeusWPI} \date{Maart 2002} \maketitle \end{document}
De \title, \author en \date commando’s zijn niet verplicht, maar de enigste vereiste is dat je (als je ze gebruikt) dit stuk moet afsluiten met het \maketitle commando. Dit commando vertelt LATEX dat hier de titelpagina wordt be¨eindigd en dat hij aangemaakt moet worden. De dubbele backslash in het \author commando zorgt ervoor dat een nieuwe lijn wordt genomen.
6
OMGEVINGEN
5.2.3
9
Abstracs
In reports en article’s is het normaal dat de auteur een korte samenvatting opgeeft, dit doe je met het abstract environment. \documentclass[a4paper]{report} \begin{document} \title{Introductie tot Typesetting} \author{Rudy Gevaert \\ ZeusWPI} \date{Maart 2002} \maketitle \begin{abstract} \LaTeX\ is een programma, dat bijzonder geschikt is voor het vervaardigen van ‘drukrijpe’ technische documentatie; vooral di\’e documentatie die mathematische formules bevat... \end{abstract} \end{document}
Hoe een abstract eruit ziet, zie je in het begin van deze nota’s. 5.2.4
Onderverdelingen
Voor de rest van het document voorziet LATEX zeven manieren voor het onderverdelen van een document. Diepte Onderverdeling Commando Opmerking -1 Part \part Alleen in book en report 0 Chapter \chapter Alleen in book en report 1 Section \section 2 Subsection \subsection 3 Subsubsection \subsubsection 4 Paragraph \paragraph 5 Subparagraph \subparagraph Met \subsection*{Titel} verkrijg je een ongenummerde titel die tevens niet wordt opgenomen in de inhoudstafel. 5.2.5
Inhoudstafel
Alle automatisch genummerde titels worden automatisch opgenomen in de inhoudstafel (ToC: Table of Contents). De ToC voeg je automatisch toe met het commando \tableofcontents op de plaats waar het ingevoegd moet worden. Je moet wel je document 2 keer LATEX’en voordat alle verwijzingen in orde zijn. Met \listoffigures en \listoftables voeg je op dezelfde manier automatisch een lijst met tabbellen en figuren in. 5.2.6
Een voorbeelddocument
De broncode van deze les kunnen je vinden op de Zeus website 5 .
6
Omgevingen
In dit hoofdstuk bespreken de meest gebruikte omgevingen die het typesetten van tekst eenvoudiger maken. 5
http://www.zeus.rug.ac.be/latex/
6
OMGEVINGEN
6.1
Lijsten
Er zijn drie soorten lijsten: • itemize • enumerate • description Hieroder vind je van elks een voorbeeld. De itemize omgeving wordt gebruikt voor ongenummerde opsommingen. \begin{itemize} \item zeus.rug.ac.be \item hermes.rug.ac.be \end{itemize}
• zeus.rug.ac.be • hermes.rug.ac.be De enumerate omgeving wordt gebruikt voor genummerde opsommingen. \begin{enumerate} \item zeus.rug.ac.be \item hermes.rug.ac.be \end{enumerate}
1. zeus.rug.ac.be 2. hermes.rug.ac.be De description omgeving wordt gebruikt voor verklarende opsommingen. \begin{description} \item [zeus] .rug.ac.be \item [hermes] .rug.ac.be \end{description}
zeus .rug.ac.be hermes .rug.ac.be Het is ook mogelijk lijsten te nesten in elkaar \begin{description} \item [zeus.rug.ac.be] is onze hoofdserver, waar we o.a een webserver en mailserver draaiende hebben. \begin{description} \item [Webserver] hiervoor gebruiken we Apache. \item [Mailserver] hiervoor gebruiken we Sendmail \end{description} \item [hermes.rug.ac.be] is onze mirror, we mirroren o.a. \begin{enumerate} \item CTAN \item Debian
10
6
11
OMGEVINGEN
\item Suse \item Redhat \item \ldots \end{enumerate} \end{description}
zeus.rug.ac.be is onze hoofdserver, waar we o.a een webserver en mailserver draaiende hebben. Webserver hiervoor gebruiken we Apache. Mailserver hiervoor gebruiken we Sendmail hermes.rug.ac.be is onze mirror, we mirroren o.a. 1. CTAN 2. Debian 3. Suse 4. Redhat 5. . . .
6.2
Tabellen
Tabellen zijn meestal de moeilijkste onderdelen van een document. Op een typemachine of tekstverwerker worden tabellen meestal gemaakt met z.g. tabstops waarnaar men kan springen met de TAB-toets. De plaatsen van de tabstops moeten dan experimenteel vastgesteld worden. LATEX heeft iets soortgelijks met de tabbing omgeving. Hiermee kunnen meestal alleen eenvoudige tabellen gemaakt worden. Als er in een kolom delen moeten voorkomen die meer dan ´e´en regel beslaan dan kan dit bij de meeste tekstverwerkers niet, en bij LATEX moeilijk. Ook tabellen binnen andere tabellen zijn op deze manier niet of moeilijk te doen. LATEX heeft hiervoor een andere omgeving, tabular, waarmee dit wel kan. 6.2.1
Tabulatoren (tabbing)
In de tabbing-environment kan men tabulatorstops net als op de typemachine instellen en gebruiken. Het commando \= zet een tabulator-positie. Dit gebeurt meestal in de eerste regel van de tabel, maar kan ook in volgende regels gebeuren, o.a. wanneer de tab-stops onderweg veranderd moeten worden. Soms komt het voor dat de tabstops bepaald worden door tekst die niet in de eerste regel voorkomt. In dat geval kunnen de tabstops gezet worden in een voorbeeldregel die dan met het commando \kill weer teniet gedaan wordt (dus niet afgedrukt). Extra ruimte kan gegenereerd worden met het \hspace commando met de lengte als parameter, bijv. \hspace{3cm}. Aan het begin van de regel wordt ruimte door \hspace gegenereerd weggegooid, dan moet men het commando \hspace* gebruiken. In tabel 2 staan de eenheden die gebruikt kunnen worden. Het commando \quad is een afkorting van \hspace{1em}. Het commando \> springt naar de volgende tabulator-positie en \\ breekt de regel af. Een verschil tussen \> in LATEX en een tabstop op een typemachine, is dat LATEX altijd naar de volgende tabstop springt m.b.t. het nummer ervan, en niet afhankelijk van de plaats waar de vorige tekst eindigt. Dit heeft het voordeel dat de tekst niet per ongeluk in de verkeerde kolom terecht komt als een kolom te smal is, maar kan tot gevolg hebben dat tekst over elkaar heen afgedrukt wordt. links Er
middenstuk
rechts
6
12
OMGEVINGEN
Tabel 2: Eenheden voor lengtes pt pc in bp cm mm dd cc sp ex em
was eens een,
maar nu
point pica inch big point centimeter millimeter didot point cicero scaled point x-hoogte M-breedte
(1 in = 72.27 pt) (1 pc = 12 pt) (1 in = 25.4 mm) (1 in = 72 bp) (1 cm = 10 mm) (1 mm = 0.01 m) (1157 dd = 1238 pt) (1 cc = 12 dd) (65536 sp = 1 pt) hoogte van letter x breedte van letter M
niet meer, gerepareerde teddybeer
\begin{tabbing} was eens\quad \= middenstuk\quad \= \kill links \> middenstuk \> rechts\\ Er \\ was eens \> maar nu \> niet meer\\ een \> \> gerepareerde\\ \> \> teddybeer \end{tabbing}
Minder gebruikte commando’s in de tabbing omgeving zijn: \+ zorgt ervoor dat alle volgende regels ´e´en extra tabstop inspringen (er hoeft dan dus ´e´en \> minder gegeven te worden). \- doet het effect van ´e´en \+ weer teniet voor de volgende regels. \< annuleert het effect van ´e´en \+ alleen voor de regel waar het in staat. Dit kan alleen aan het begin van een regel (regel betekent hier een regel van de tabel, niet van de invoer). \’ zorgt ervoor dat de voorafgaande tekst in de vorige kolom rechts aangeschoven wordt (met tussenruimte die bepaald wordt door de waarde van \tabbingsep) \‘ schuift de rest van de regel naar de rechterkantlijn; de tekst moet afgesloten worden met \\. Omdat de accentcommando’s \=, \’ en \‘ in de tabbing omgeving een bijzondere betekenis hebben kunnen ze dus niet als accenten gebruikt worden. Je moet in plaats daarvan dan \a=, \a’ en \a‘ gebruiken. Als het vriest en het regent dan hebben we ijzel en we glijden uit of het sneeuwt
6
13
OMGEVINGEN
dan wordt alles wit anders is alles gewoon \begin{tabbing} Als \= het vriest \+\\ en \= het regent \+\\ dan hebben we ijzel \\ en \’ we glijden uit \\ \< of \> het sneeuwt \\ dan wordt alles wit\-\-\\ anders is alles gewoon \end{tabbing}
De tabbing omgeving kan binnen verschillende omgevingen niet gebruikt worden, i.h.b. niet binnen een andere tabbing, tenzij de binnenste in een minipage omgeving staat. 6.2.2
Automatische tabellen (tabular)
De tabular-environment is voor het zetten van tabellen, waarbij LATEX automatisch de benodigde kolombreedtes berekent en waarin ook uitvullen en hulplijnen toepasbaar zijn. In de parameterlijst van het commando \begin{tabular}{...} wordt het formaat van de tabel opgegeven. Een l duidt een kolom aan met links uitgevulde tekst, een r een kolom met rechtsuitgevulde tekst een c een kolom met gecentreerde tekst, met p{breedte} wordt een kolom aangeduid van de aangegeven breedte waarin meerregelige tekst kan staan (in feite wordt dan een \parbox gemaakt), een | betekent een verticale lijn. Als een bepaalde kolomspecificatie een aantal keer achter elkaar voorkomt dan kan dat afgekort worden met *{aantal}{spec}. Binnen de tabel betekent & spring naar de volgende kolom, \\ breek de regel af, \hline (op een alleenstaande regel) trekt een horizontale lijn. De laatste regel moet geen \\ hebben behalve als er nog een horizontale lijn achter komt. 7C0
3700 11111000000 1984
hex
octaal binair decimaal
Zo kan tekst toegevoegd worden
OK
\begin{tabular}[t]{|rl|p{1.5cm}|} \hline 7C0 & hex & Zo kan tekst toegevoegd worden\\ 3700 & octaal & \\ 11111000000 & binair & \\ \hline 1984 & decimaal & OK \\ \hline \end{tabular}
Het is ook mogelijk horizontale lijnen op te nemen die niet over de hele breedte gaan met het \cline commando: \cline{1-1} geeft een lijn in kolom 1, \cline{2-4} geeft een lijn in kolom 2 t/m 4, Voor koppen is het soms nodig de standaard layout tijdelijk overboord te zetten. Dit kan met het
6
14
OMGEVINGEN
commando \multicolumn met als eerste argument hoeveel kolommen tot ´e´en cel samengenomen worden, als tweede de layout van deze cel (l, r of c met eventueel |) en als derde de inhoud van de cel. Een tabular omgeving geldt als een eenheid die temidden van andere tekst geplaatst kan worden. Deze kan dus in een regel tekst opgenomen worden zoals
dit mini
tab . Er is een optionele parameter je
die aangeeft welke regel van de tabular als referentie genomen wordt: [t] voor de top regel, [b] voor de onderste regel, en als niets opgegeven wordt dan wordt het midden van de tabular op dezelfde hoogte als de rest van de regel gezet. Deze extra parameters zijn ook handig als twee tabular’s naast elkaar gezet worden. Een tabular die op zichzelf moet staan kan het beste omgeven worden door alineascheiders (lege regels), eventueel met het commando \noindent ervoor. Ook een goede methode is er een quote of center omgeving omheen te zetten. Item gnat (dozijn) gnoe (per stuk)
Prijs 3.24 24,985.47
\begin{tabular}[t]{llr} \hline \multicolumn{2}{c|}{\em Item} & \multicolumn{1}{c}{\em Prijs} \\ \hline gnat & (dozijn) & 3.24 \\ gnoe & (per stuk) & 24,985.47 \\ \hline \end{tabular}
Hier volgt een overzicht van de belangrijkste verschillen tussen tabbing en tabular • In een tabbing omgeving kan een pagina overgang plaatsvinden, in een tabular omgeving niet6 . • Een tabbing omgeving levert complete regels af, een tabular omgeving levert een “box” die ergens anders ingezet kan worden. • tabular kan binnen een iedere andere omgeving gebruikt worden, in het bijzonder kan binnen een tabular weer een andere tabular gebruikt worden. Een tabbing omgeving is in dit opzicht beperkt. • Bij een tabbing omgeving moet je zelf de kolomposities bepalen en kunnen deze onderweg veranderd worden, bij een tabular omgeving bepaalt LATEX de posities en zijn ze voor de hele tabel hetzelfde. 6.2.3
Drijvende tabellen (table)
Tabellen worden meestal als eenheid in een document opgenomen, d.w.z. dat het ongewenst is om de tabel te laten onderbreken door een pagina overgang. Dat kan tot gevolg hebben dat een tabel niet meer op de pagina past en in zijn geheel naar de volgende pagina moet verhuizen. Er blijft dan een lege ruimte op de vorige pagina over, wat niet zo fraai is. Daarvoor heeft LATEX “drijvende tabellen” waarbij LATEX zelf uitzoekt waar een geschikte plaats is voor de tabel en de pagina verder met de rest van de tekst opvult. Bovendien kan een onderschrift gegeven worden, wordt de tabel genummerd, en kan deze in een lijst van tabellen opgenomen worden. 6
Als dit wel gewenst is dan kan het pakket longtable of supertab gebruikt worden.
6
15
OMGEVINGEN
Drijvende Tabellen worden tussen \begin{table} en \end{table} gezet. Voor het samenstellen van een tabel wordt meestal de tabbing- of de tabular-environment gebruikt, maar men kan ook andere strukturen (B.v. enumerate of description) gebruiken of een willekeurige andere tekst. Fig. 1 laat een skelet zien van een dergelijk gebruik. De table omgeving heeft een optionele parameter waarmee de plaatsing gestuurd kan worden. Dit kan een rijtje letters zijn, die aangeven waar LATEX mag proberen de tabel te plaatsen: h voor hier, t voor de top van een pagina, b voor de benedenkant van een pagina, en p voor een aparte pagina met alleen tabellen en figuren. LATEX heeft een verzameling parameters die het aantal tabellen op een pagina etc. beperken, zie hiervoor manual. Als in de positieparameter een ! opgenomen wordt dan trekt LATEX zich hier niets van aan. Wanneer de positieparameter niet opgegeven wordt dan neemt LATEX [tbp]. In tweekoloms uitvoer kan met de table* omgeving een tabel over de hele breedte van de pagina opgenomen worden. De titel van een tabel wordt met het \caption commando gegeven, dit commando kan zowel boven de tabel als onder de tabel gegeven worden. LATEX genereert automatisch een nummer voor de tabel. Dit nummer kan met het \label commando een naam gegeven worden, waarnaar met het \ref commando gerefereerd wordt. Het \label commando moet na of in het \caption commando gegeven worden. In de tekst van het caption commando mogen bepaalde commando’s zoals \ref en \sqrt niet gebruikt worden. Een lijst van tabellen kan verkregen worden met het \listoftables commando, analoog aan het \tableofcontents commando. Als in de lijst een andere tekst opgegeven moet worden dan in de tabel dan kan deze als (eerste) optioneel argument aan het \caption commando gegeven worden, net als bij de section commando’s. Het is mogelijk in een table omgeving meer tabellen op te nemen, bijv. door een aantal tabular omgevingen naast elkaar te zetten. Als hierbij elke tabel een eigen caption moet hebben dan kan dit door elke tabel met het bijbehorende \caption commando in een minipage omgeving op te nemen.
\begin{table}[!btp] \caption{...} \label{...} \begin{center} \begin{tabular}{...} ... \end{tabular} \end{center} \end{table}
Figuur 1: Opbouw van een table-omgeving
6.3
Verbatim tekst
Soms kan het nodig zijn om tekst af te drukken zoals hij ingetikt werd. Broncode’s van computerprogramma’s zijn hiervan een voorbeeld. Om het volgende te bekomen: public void setPlayer (int player) { if (this.player != player) { this.player = player; fireStateChanged (); } } maakt men gebruik van:
7
NUTTIGE COMMANDO’S
16
\begin{verbatim} public void setPlayer (int player) { if (this.player != player) { this.player = player; fireStateChanged (); } } \end{verbatim}
Het is ook mogelijk om letterlijke tekst inline op te nemen. Hiervoor gebruikt men \verb|...foobar...| waarmee men ...foobar... bekomt. De | mogen vervangen door eender welk teken dat niet voorkomt in de te in te voegen tekst.
6.4
Citaten
De quote-environment wordt gebruikt voor korte citaten, benadrukte zinnen en voorbeelden, de tekst springt links en rechts in. Bij de quote omgeving geeft een lege regel een nieuw citaat aan, er wordt dan witruimte gereserveerd. Een typografische vuistregel voor de regellengte luidt: \begin{quote} Geen enkele regel mag meer dan 75~letters bevatten. \end{quote} Daarom worden in kranten meerdere kolommen naast elkaar gebruikt.
wordt: Een typografische vuistregel voor de regellengte luidt: Geen enkele regel mag meer dan 75 letters bevatten. Daarom worden in kranten meerdere kolommen naast elkaar gebruikt. De quotation-environment wordt gebruikt voor citaten die uit meerdere alinea’s bestaan. De verseenvironment wordt gebruikt voor gedichten en voorbeelden waarbij de regelopbouw belangrijk is. De regels worden door \\ gescheiden, strofen door lege regels. Regels die te lang zijn worden afgebroken en de vervolgregels worden ingesprongen zoals bij gedichten gebruikelijk is.
7
Nuttige commando’s
In dit stuk zullen we een aantal veel voorkomende en handige commando’s bespreken.
7.1
Voetnoten
Voetnoten7 neem je op met: Voetnoten\footnote{Dit is dus een voetnoot.}
Met \setcounter{footnote}{0}
7
NUTTIGE COMMANDO’S
17
in te voegen voor iedere of achter iedere \section commando zorg je ervoor dat in de article klasse iedere section met een nummering vanaf 1 begint. Het is ook mogelijk om voetnoten in de marge van een tekst in te voegen. Dit is een voetnoot in Het\marginpar{Dit is een voetnoot in \\de marge.} is ook ... de marge.
7.2
Verwijzingen
Met \label en \ref kunnen we refereren naar diverse nummers. Het is soms ook nuttig om een pagina nummer te kunnen gebruiken als referentie. Hiervoor is het commando \pageref, dat als argument dezelfde naam heeft als \ref, maar dan het pagina nummer oplevert. Het is mogelijk om voor hetzelfde label zowel \ref als \pageref te gebruiken. Als je ‘intelligente’ paginaverwijzingen wilt, waarbij, de tekst “op pagina x” weggelaten wordt op die pagina zelf, dan kan hiervoor het pakket varioref gebruikt worden.
7.3
Bibliografie
Een bibliografie neem je op met volgende omgeving \begin{thebibliography}{sample_label} entries \end{thebibliography}
Individuele entries in de bibliografie beginnen met het commando \bibitem[label]{key} entry_text
Zonder het optionele label argument produceert \bibitem een cijfer als referentie, anders geef je zelf het label op. Het key argument is verplicht en is een sleutelwoord die niet in de bibliografie wordt gezet maar wordt vervangen in de tekst door het label. De eigenlijke informatie van een bibitem wordt opgegeven door het entry text argument zoals ’auteur, titel, uitgever, jaar, editie, paginanummers’. Meestal wordt sample label vervangen door een “dummy nummer”, die aangeeft hoe groot de het ’label’ argument kan worden. In de tekst zelf wordt \cite{key} gebruikt om het citaat aan te roepen. Bijvoorbeeld: \begin{thebibliography}{99} \bibitem{lamport} Leslie Lamport. \textsl{\LaTeX\ -- A Document Prepartion System}. Addison--Wesley Co., Inc., Reading, MA, 1985 \bibitem{knuth} Donald E. Knuth. \textsl{Computers and Typesetting Vol.\ A--E}. Addison--Wesley Co., Inc., Reading, MA, 1984-1986 \bibitem[2a]{knuth:a} Vol A: \textsl{The \TeX book}, 1984 \bibitem[2b]{knuth:b} Vol B: \textsl{\TeX: the program}, 1984 \end{thebibliography}
als bibliografie omgeving en door: Voor verder informatie verwijzen we u naar \cite{lamport} en \cite{knuth,knuth:a}
te gebruiken in de tekst krijgen we: Voor verder informatie verwijzen we u naar [1] en [2, 2a] 7
Dit is dus een voetnoot.
8
18
WISKUNDE
7.4
Index en glossaries
Een index kan gemaakt worden met het makeindex programma. Op de plaats waar het woord of begrip staat dat in de index moet worden opgenomen geeft je het commando \index{woord}. Het woord zelf moet ook gewoon in de tekst opgenomen worden. Om de index te krijgen moet in de preamble opgenomen worden: \usepackage{makeidx} \makeindex
en op de plaats waar de index moet komen: \printindex Nadat het document door LATEX verwerkt is wordt de index gesorteerd door het commando makeindex file, waarna de gesorteerde index opgenomen kan worden door weer LATEX aan te roepen.
7.5
Gebruik van lettertypes
7.5.1
Tekst benadrukken
Met \emph{...} en {\em ...} kan met tekst benadrukken. Een bijkomend voordeel van \emph{...} en {\em ...} is dat als de tekst standaard schuin staat, het benadrukte woord recht wordt gezet. Bijvoorbeeld: Jantje {\em zag} eens {\em pruimen} hangen. Jantje {\em zag {\em eens {\em pruimen} hangen}}.
produceren beiden: Jantje zag eens pruimen hangen. Jantje zag eens pruimen hangen. 7.5.2
De font grootte veranderen
Met onderstaande commando’s kun je de grootte van het lettertype tijdelijk veranderen, bijvoorbeeld {\small dit is in small gezet} geeft dit is in small gezet. \tiny \scriptsize \footnotesize \small \normalsize \large \Large \LARGE
vreselijk klein schrift
heel klein schrift (indices)
klein schrift (voetnoten)
klein schrift
normaal schrift
groot schrift
groter schrift
heel groot schrift
\huge
reuzegroot
\Huge
gigantisch groot
Met de commando’s in tabel 3 verkrijg je nog meer lettertypes.
8 8.1
Wiskunde Introductie
Zoals we reeds vermeldden kun je op twee manieren wiskundige tekst invoegen: in-line en . . . niet in-line :). Daarnaast kun je ook
8
19
WISKUNDE
\begin{math} forumles \end{math}
gebruiken. De kortste manier om wiskunde in te voegen is met $ formule $. We kunnen ook omgevingen gebruiken om wiskundige tekst in te voegen: \begin{displaymath} formule \end{displaymath} \begin{equation} formule \end{equation}
Het verschil tussen deze twee is dat de equation omgeving automatisch de formule nummert. De displaymath omgeving kan vervangen worden door \[...\] of door $$...$$. Standaard worden de weergegeven formules horizontaal gecentreerd en indien genummerd wordt de nummering rechts uitgelijnd. Ten laatste worden formules gespreid over meerdere lijnen bekomen met: \begin{eqnarray} forumule \end{eqnarray} \begin{eqnarray*} formule \end{eqnarray*}
waar de eerste vorm een nummer toevoegt aan de formule en de tweede vorm geen nummer toevoegt.
8.2 8.2.1
Basiselementen Constanten en variabelen
Constanten worden voorgesteld door cijfers en variabelen door letters respectievelijk gedrukt in “Roman typeface” en cursief. LATEX neemt deze conventie over en zorgt hier automatisch voor, tevens worden spaties genegeerd en worden spaties ingevoegd waar nodig. Bijvoorbeeld $z=2a+3y$, $ z = 2 a + 3 y $ geven allebei z = 2a + 3y, z = 2a + 3y. Aangezien gekrulde haken gebruikt worden in LATEX commando’s moeten we ze voorstellen door \{ en \}. Bijvoorbeeld: $M(s)<M(t)<|M| = m$ \newline $y’’=c\{f[y’],y(x)] + g(x)\}$
wordt: M (s) < M (t) < |M | = m y 00 = c{f [y 0 ], y(x)] + g(x)}
Tabel 3: Lettertypes \textrm \textsf \texttt \textbf \textup \textit \textsl \textsc
\rmfamily \sffamily \ttfamily \bfseries \upshape \itshape \slshape \scshape
normaal schrift (roman) ‘sans serif’ schrift schrijfmachineschrift (typewriter) vet schrift (boldface) rechtopstaand schrift cursief schrift (italic) schuin schrift (slanted) ‘Caps and Small Caps’ Schrift
8
20
WISKUNDE
8.2.2
Exponenten en indexen
Kort en krachtig: x^2
x2
a_n
an
8.2.3
xni
x^n_i
x2n
x^{2n}
x2y
x_{2y} A^{-n!2}_{i,j,k}
−n!2 Ai,j,k
Breuken
Voor moeilijker breuken kan men \frac{teller}{noemer} gebruiken. \[
\frac{a^2 - b^2}{a+b} = a-b \]
a2 − b 2 =a−b a+b Ze kunnen ook genest worden: \[
\frac{ \frac{a+\theta}{\gamma} + \frac{x}{y} }{a+b} = a-b \]
a+θ γ
x y
+
a+b 8.2.4
=a−b
Wortels
Wortels worden gezet met het commando \sqrt[n]{arg}, bijvoorbeeld: $ \sqrt[3]{8} $ geeft √ 3 8 De grootte en lengte van het wortelteken worden automatisch aangepast, zoals het volgend voorbeeld aantoont: \[
\sqrt[3]{-q + \sqrt{q^2 + p^3}} \]
q p 3 −q + q 2 + p3 8.2.5
Sommaties, integralen en limieten
Sommaties worden gezet met \sum en integralen met \int, tevens verschijnen ze in verschillende groottes afhankelijk of ze in-line zijn of niet. P In-line formules met sommatie’s zoals $\sum_{i=1}^n$ en $\int_a^b$ worden respectievelijk ni=1 Rb en a in tegenstelling tot $$\sum_{i=1}^n$$ en $$\int_a^b$$ die n X i=1
en
Z
b
a
geven. Soms wil men dat integratiegrenzen boven en onder het integratieteken staan, daarom wordt het commando \limits vlak na het integratiecommando geplaatst. Volgend voorbeeld toont dit en nog enkele bijzonderheden:
8
21
WISKUNDE
\[ 2\sum_{i=1}^n a_i \int\limits_{x=0}^{x=z} f_i(x)g_i(x)\,\mathrm{d}x \]
2
n X i=1
x=z Z fi (x)gi (x) dx ai x=0
\, zorgt voor een kleine witruimte en \mathrm{...} zorgt ervoor dat ... recht wordt afgedrukt. De limx→∞ bekomt men door $\lim_{x\to\infty}$ en lim
x→∞
bekomt men door $$\lim_{x\to\infty}$$. 8.2.6
Varia
\[ a + b + \cdots + z = A \cdot B \cdot \cdots \cdot Z
\]
a + b + ··· + z = A · B · Z
8.3
Lijst van mathematische symbolen
De volgende tabellen laten alle symbolen zien, die standaard in de mathematische mode beschikbaar zijn. Tabel 4: Mathematische accenten \hat a a ˆ \tilde a a ˜ \grave a a ` \ddot a a ¨ \bar a a ¯
\check a a ˇ \acute a a ´ \dot a a˙ \breve a a ˘ \vec a ~a
Tabel 5: Kleine griekse letters α β γ δ ε ζ η θ ϑ
\alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta \theta \vartheta
ι κ λ µ ν ξ o π $ ρ
\iota \kappa \lambda \mu \nu \xi o \pi \varpi \rho
% σ ς τ υ φ ϕ χ ψ ω
\varrho \sigma \varsigma \tau \upsilon \phi \varphi \chi \psi \omega
8
22
WISKUNDE
Tabel 6: Griekse hoofdletters Γ ∆ Θ Λ
\Gamma \Delta \Theta \Lambda
Ξ Π Σ Υ
\Xi \Pi \Sigma \Upsilon
Φ Ψ Ω
\Phi \Psi \Omega
Tabel 7: Andere symbolen ℵ ~ ı ` ℘ < = ∂ ∞
\aleph \hbar \imath \jmath \ell \wp \Re \Im \partial \infty
0 ∅ ∇ √ > ⊥ k ∠ 4 \
\prime \emptyset \nabla \surd \top \bot \| \angle \triangle \backslash
∀ ∃ ¬ [ \ ] ♣ ♦ ♥ ♠
\forall \exists \neg \flat \natural \sharp \clubsuit \diamondsuit \heartsuit \spadesuit
Tabel 8: Verzamelingsoperatoren P Q ` R H
\sum \prod \coprod \int \oint
T S F W V
\bigcap \bigcup \bigsqcup \bigvee \bigwedge
J N L U
\bigodot \bigotimes \bigoplus \biguplus
Tabel 9: Binaire operatoren + ± ∓ \ · × ∗ ? ◦ • ÷
∗
+ \pm \mp \setminus \cdot \times \ast \star \diamond \circ \bullet \div \rhd∗
− ∩ ∪ ] u t / . o
4 5
\cap \cup \uplus \sqcap \sqcup \triangleleft \triangleright \wr \bigcirc \bigtriangleup \bigtriangledown \unlhd∗
alleen bij gebruik van een van het pakket latexsym.
∨ ∧ ⊕ ⊗ † ‡ q
\vee \wedge \oplus \ominus \otimes \oslash \odot \dagger \ddagger \amalg \lhd∗ \unrhd∗
8
23
WISKUNDE
Tabel 10: Relationele operatoren < ≤ ≺ ⊂ ⊆ v ∈ ` ^ _ 1
∗
< \leq \prec \preceq \ll \subset \subseteq \sqsubseteq∗ \in \vdash \smile \frown \Join∗
> ≥ ⊃ ⊇ w 3 a | k
> \geq \succ \succeq \gg \supset \supseteq \sqsupseteq∗ \ni \dashv \mid \parallel
= ≡ ∼ ' ≈ ∼ = ./ ∝ |= . = ⊥
= \equiv \sim \simeq \asymp \approx \cong \bowtie \propto \models \doteq \perp
alleen bij gebruik van het pakket latexsym.
Tabel 11: Negaties 6< 6≤ 6 ≺ 6 6⊂ 6⊆ 6v
\not< \not\leq \not\prec \not\preceq \not\subset \not\subseteq \not\sqsubseteq
6> 6 ≥ 6 6 6⊃ 6 ⊇ 6 w
\not> \not\geq \not\succ \not\succeq \not\supset \not\supseteq \not\sqsupseteq
6= 6 ≡ 6∼ 6 ' 6≈ 6∼ = 6
\not= \not\equiv \not\sim \not\simeq \not\approx \not\cong \not\asymp
Tabel 12: Pijlen ← ⇐ → ⇒ ↔ ⇔ 7 → ←( )
∗
\leftarrow \Leftarrow \rightarrow \Rightarrow \leftrightarrow \Leftrightarrow \mapsto \hookleftarrow \leftharpoonup \leftharpoondown \rightleftharpoons
←− ⇐= −→ =⇒ ←→ ⇐⇒ 7−→ ,→ * + ;
\longleftarrow \Longleftarrow \longrightarrow \Longrightarrow \longleft... \Longleft... \longmapsto \hookrightarrow \rightharpoonup \rightharpoondown \leadsto∗
alleen bij gebruik van een van het pakket latexsym.
↑ ⇑ ↓ ⇓ l m % & . -
\uparrow \Uparrow \downarrow \Downarrow \updownarrow \Updownarrow \nearrow \searrow \swarrow \nwarrow
8
24
WISKUNDE
Tabel 13: Linker haakjes ( [ {
( \lbrack \lbrace
[ b h
{ d
[ \lfloor \langle
\{ \lceil
Tabel 14: Rechter haakjes ) ] }
) \rbrack \rbrace
] c i
} e
] \rfloor \rangle
\} \rceil
Tabel 15: Bijzondere constructies f abc ←− abc abc z}|{ abc √ abc f0
\widetilde{abc} \overleftarrow{abc} \overline{abc}
c abc −→ abc abc
\widehat{abc} \overrightarrow{abc} \underline{abc}
\overbrace{abc}
\underbrace{abc}
\sqrt{abc}
abc |{z} √ n abc
\sqrt[n]{abc}
f’
abc xyz
\frac{abc}{xyz}
Tabel 16: Synonymen Voor vele symbolen zijn er meerdere commando’s beschikbaar. 6= ≤ ≥ { } → ← 3 ∧ ∨ ¬ | k
\ne or \neq \le \ge \{ \} \to \gets \owns \land \lor \lnot \vert \Vert
\not= \leq \geq \lbrace \rbrace \rightarrow \leftarrow \ni \wedge \vee \neg | \|
8
25
WISKUNDE
Tabel 17: Lettertypes in formules Stukken tekst binnen math-mode kunnen in een ander lettertype gezet worden met de volgende commando’s: ABCdef ABCdef ABCdef ABC ABC
ABCdef \mathit{ABCdef} ABCdef \mathbf{ABCdef} ABCdef \mathtt{ABCdef} alleen hoofdletters met pakket amsfonts of amssymb
\mathrm{ABCdef} \mathnormal{ABCdef} \mathsf{ABCdef} \mathcal{ABC} \mathbb{ABC}
Het commando \boldmath gegeven buiten math-mode zet alle volgende formules vet, het commando \unboldmath doet dit weer teniet.
Tabel 18: Formule stijlen Met de volgende commando’s kan de grootte van formules be¨ınvloed worden. Standaard worden formules in een tekst in \textstyle en losstaande formules in \displaystyle gezet. Deze commando’s zijn declaraties en gelden alleen binnen het deel van de formule waarin ze staan. n X
\displaystyle
xi
i=1
Pn
\textstyle
i=1
xi
\scriptstyle
Pn
\scriptscriptstyle
Pn i i=1 x
i=1
xi
Tabel 19: Niet-mathematische symbolen De volgende symbolen zijn ook in tekstmode beschikbaar. § † ∗
\S \dag alleen in text mode.
¶ ‡
\P \ddag
c
£
\copyright∗ \pounds
9
9
GROTE DOCUMENTEN
26
Grote documenten
Wanneer je een groot document aan het maken bent is het eenvoudiger om je document op te splitsen in kleinere delen. LATEX voorziet hierin met twee verschillende commando’s: \input{...} en \include{...}. De inhoud van een document.tex kan ingevoegd worden door bijvoorbeeld volgende syntax te gebruiken. \documentclass{article} \begin{document} Hier wat tekst... \input{document} Nog wat tekst... \end{document}
document.tex wordt dan gewoon ingevoegd alsof de inhoud van dat bestand daar stond. Een LATEX bestand kan bestaan uit gewoon \input{...} commando’s, want je kunt \input{...} bezigen in de preamble. Een nadeel van \input{...} is dat telkens je je document verwerkt met LATEX gans het document wordt ingelezen en verwerkt, zelfs als heb je aan dat document niets veranderd. \include{...} verhelpt hieraan tesamen met \includeonly{...}. Een voorbeeld licht dit beter toe: \documentclass{article} \includeonly{document1,document4} \begin{document} Hier wat tekst... \input{document1} Nog wat tekst... \input{document2} \input{document3} \input{document4} \end{document}
\includeonly{document1,document4} geeft aan dat alleen document1.tex en document4.tex opnieuw verwerkt moeten worden. Na het verwerking krijg je een bestand met alleen de inhoud van document1.tex en document4.tex. In the long run. . . moet je nog steeds gans het document verwerken, dit kun je doen door \includeonly{...} te becomentari¨eren.
10
Figuren
LATEX kan alleen .eps figuren invoegen, daarom behandelen we eerst hoe je deze figuren moet invoegen, waarna we kort bespreken hoe je een .eps bestand aanmaakt.
10
27
FIGUREN
F bij een afstand van 100,00m 0.00143995
0.00143995
F (N)
0.00143994
0.00143994
0.00143993
0.00143993
0.00143992
0
5
10
15 puntladingen
20
25
30
Figuur 2: Gewoon
10.1
Figuren invoegen
Met de volgende code voeg je een .eps figuur in. Vergeet echt niet de extensie weg te laten! In de preamble zet je \usepackage[dvips]{graphicx}
en om de figuur in te voegen gebruik je: \begin{figure} \centering \includegraphics{bestandnaam van de figuur zonder .eps} \caption{Titelke} \end{figure}
Hiermee werd figuur 2 ingevoegd: \begin{figure} \centering \includegraphics{c100} \caption{Gewoon} \label{fig1} \end{figure}
10.2
De schaal van de figuur aanpassen
Als je van een figuur de grootte moet aanpassen kun je onderstaande code gebruiken. Merkop: het is beter de grootte aan te passen in het originele tekenprogramma. Je kunt ook width, height combineren.
10
28
FIGUREN F bij een afstand van 100,00m 0.00143995
0.00143995
F (N)
0.00143994
0.00143994
0.00143993
0.00143993
0.00143992
0
5
10
15
20
25
30
puntladingen
Figuur 3: Verkleind
\begin{figure} \centering \includegraphics[Voeg width en/of height in]{bestandnaam van de figuur zonder .eps} \caption{Titelke} \end{figure}
Hiermee werd figuur 3 ingevoegd: \begin{figure} \centering \includegraphics[width=5cm]{c100} \caption{Verkleind} \label{fig2} \end{figure}
10.3
Figuren roteren
Om een figuur te roteren gebruik je onderstaande LATEX code. Voeg de graad in tussen de vierkante haken (bijvoorbeeld [angle=90]) \begin{figure} \centering \includegraphics[hoek]{bestandnaam van de figuur zonder .eps} \caption{Titelke} \end{figure}
Code figuur 4: \begin{figure} \centering \includegraphics[angle=45]{c100} \caption{Geroteerd over 45 graden} \label{fig3} \end{figure}
10.4
Een figuur op een enkele pagina
\clearpage \begin{figure} \centering
0
14 39 92
00
0.
0. 00 14 39 93
5
)
10
94
39
00 14
0.
93
(N
39
14
00
0.
F
Figuur 4: Geroteerd over 45 graden en
ng
di
15 la
nt
pu
94
39
14
00
0.
20
95
39
14
00
0.
95
39
14
00
0.
25
30
F en
je
bi
d
af st an n
va m
0, 00
10
10 FIGUREN 29
10
FIGUREN
\includegraphics{bestandnaam van de figuur zonder .eps} \caption{Titelke} \end{figure} \clearpage
30
31
FIGUREN
F bij een afstand van 100,00m 0.00143995
0.00143995
0.00143994
F (N)
10
0.00143994
0.00143993
0.00143993
0.00143992
0
5
10
15 puntladingen
Figuur 5: Op een blad
20
25
30
10
FIGUREN
10.5
32
Hoe bekom je nu een .eps bestand?
Wanneer je een figuur moet maken van nul dan heb je het gemakkelijk. . . als je geluk hebt. De meeste tekenprogramma’s voorzien erin dat je een tekening kunt opslaan als .eps. Voorziet je tekenprogramma hier niet in kun je het opslaan in een formaat die kan gelezen worden door een ander programma die dan wel weer kan opslaan in .eps of anders zul je gebruik moeten maken van een conversieprogramma. Aan de andere kant als je grafieken moet invoegen in een bestand, dan kun je het best gnuplot gebruiken. Beschik je daarintegen over Maple of Matlab dan is het nog eenvoudiger, daar kun je de figuur opslaan als .eps. Heb je de bovenstaande opties niet. . . dan zul je een ’converter’ moeten gebruiken. Dit is een programma die een figuur met extensie a kan omzetten naar een figuur met extensie b. Als je ImageMagick8 installeert (draait op GNU/Linux, Windows en Macintosh) kun je over de 68 bestandsformaten converteren naar eps. Onder GNU/Linux heb je daarbij ook het programma convert. Hiermee kun je vanop console de conversie doorvoeren. Daarnaast bestaan er nog programma’s zoals jpeg2ps en gif2ps. Die gebruik je met jpeg2ps -h file.jpg > file.eps en gif2ps -b file.gif.
10.6
Weetjes
10.6.1
Hoe het invoegen eigenlijk werkt
Om te weten waarom het invoegen van een figuur niet lukt moet je eerst weten hoe het importeren eigenlijk werkt. LATEX heeft geen idee hoe groot een in te voegen figuur is, voor LATEX is een figuur een vierkant met een gegeven hoogte en breedte. Deze informatie wordt gehaald uit de figuur, door de %%BoundingBox lijn te lezen in de figuur, of uit een ander bestand, of via argumenten in het \includegraphics[bb= llx lly urx ury]{bestand} commando. Wat er dan geschreven wordt naar de .dvi file is de naam van de figuur en de gegevens hoe het getransformeerd (geroteerd, geschaald) moet worden. Hoe deze informatie doorgegeven wordt hangt af van de driver. Wanneer de printerdriver het .dvi bestand transformeert interpreteert het deze speciale instructies, leest het de figuur in, doet de transformatie en plaatst tenslotte het resultaat waar LATEX dit wilt. Als de BoundingBox informatie verkeerd is zal de figuur verkeerd geplaatst worden. De meeste .eps bestanden hebben zo’n %%BoundingBox lijn die er als volgt uitziet: %%BoundingBox: llx lly urx ury die de co¨ordinaten van de linker beneden- en rechter bovenhoek. De eenheden worden nooit vermeld, het zijn altijd points. Het meest voorkomende probleem bij het importen van encapsulated PostScript bestanden is dat er geen BoundingBox in de figuur te vinden is. Wanneer er geen BoundingBox aanwezig is, dan geeft LATEX volgende error: ! LaTeX Error: Cannont determine size of graphic in .... (no BoundingBox). De oplossing is om de co¨ordinaten van de BoundingBox te weten te komen en ze in te voegen als argument ofwel in een extra bestand of in de figuur zelf. 8
http://www.imagemagick.org
11
KLEUREN
10.6.2
33
Path
Het is mogelijk LATEX te vertellen waar het moet zoeken naar figuren. Dit doet men met: \graphicspath{dir_lijst Waar dir lijst een lijst is van namen van directory’s, gescheiden door komma’s. De syntax van het besturingssysteem moet gebruikt worden. Zonder dit commando zoekt LATEX in de huidige directory. 10.6.3
Standaard extensies
Een lijst met de standaard extensies voor de figuren kan opgegeven worden met het volgende commando: \DeclareGraphicsExtensions{ext_lijst}. 10.6.4
Figuur types
Het opgeven van de extensie is slechts de helft van het werk, we moeten nog een bestandstype associeren met de extensie zodat LATEX weet hoe het te verwerken. PostScript herkent alleen ´e´en type, .eps, maar er bestaan andere types zoals .bmp en .pcx voor andere drivers. Met: \DeclareGraphicsRule{ext}{type}{read-file}{cmd}
stel je dit in. Dit mag ook meerdere keren voorkomen als je verschillende bestandstypes gebruikt. De argumenten worden hieronder uitgelegd: ext De extensie van het bestand. type Het type bestand. Alle bestanden van hezelfde type moeten ge¨ımporteerd worden met hetzelfde commando. Bijvoorbeeld de extensies .ps,.eps,.ps.gz zouden allemaal aanzien moeten worden als bestanden van het type .eps. read-file De extensie van het bestand dat gelezen moet worden om de grootte te bepalen. Het kan dezelfde zijn als ext of in geval van gecomprimeerde bestanden of binaire bestanden, die niet kunnen ge¨ınterpreteerd worden door LATEX wordt de grootte (BoundingBox) opgevraagd aan een afzonderlijk bestand. Als dit argument leeg is zoekt LATEX niet naar een afzonderlijk bestand, maar moet de grootte zelf worden opgegeven in het \includegraphics commando. cmd Het commando dat uitgevoerd moet worden bij het lezen van de bestanden, dit is vooral handig bij gecomprimeerde bestanden. Bijvoorbeeld bij de dvips driver zou je het volgende kunnen gebruiken: \DeclareGraphicsRule{.ps.gz}{eps}{.ps.bb}{‘gunzip #1}
waar het #1 argument uitleg geeft over de volledige bestandnaam. In dit geval wordt gunzip gebruikt om het bestand te decomprimeren alvoor het ingevoegd wordt in het PostScript bestand.
11
Kleuren
Om tekst in kleur te bekomen gebruiken we de color package waaraan je meegeeft welke driver we gebruiken (in ons geval dvips): \usepackage[dvips]{color} \definecolor{name}{model}{specs}
¨ ZELF COMMANDO’S DEFINIEREN
12
34
Tabel 20: Kleuren gebruiken \pagecolor col spec \color col spec \textcolor col spec{text} \colorbox col spec{text} \normalcolor
verander de kleur van de pagina en volgende pagina’s. verandert de kleur van de instelde declaratie. Zet test in het ingestelde kleur. Zet test in een kader met de ingestelde achtergrond. Verander terug naar de originele kleur die op het einde van de preamble gedeclareerd was.
Vervolgens (nog steeds in de preamble) defini¨eren we onze kleuren. Ofwel kun je de voorgedeclareerde kleuren gebruiken (die je dan niet moet defini¨eren): red, green, blue, yellow, cyan, magenta, black, white. Of je declareert zelf een kleur zoals in bovenstaand voorbeeld. name vervang je door een naam waarmee je de kleur later wilt oproepen, model staat voor het kleurenmodel (rgb, cmyk, gray) en specs staat voor de kleur of bij gray een cijfer tussen 0 en 1. Bijvoorbeeld [rgb]{1,0,0} staat voor rood en [cmyk]{0,0,1,0} staat voor geel en [gray]{0.5} voor donkergrijs. Er rest ons nog alleen om aan te geven waar de kleur moet gebruikt worden. In tabel 20 staat col spec voor de naam van de voorgedefinieerde kleur, bv. {blue}, of [model]{spec}, zoals [rgb]{1,0,0}. Bijvoorbeeld: \color{white} \colorbox[gray]{O.5}{Dit is een test}
wordt: Dit is een test
12
Zelf commando’s defini¨ eren
Met de commando’s \newcommand en \renewcommand is het mogelijk zelf commando’s te defini¨eren of aan te passen. \newcommand{\ul}{\underline}
Het vorige commando laat ons toe \ul{iets} te schrijven en iets te onderlijnen. Aangezien LATEX niet toelaat dat een naam te gebruiken die reeds gebruikt is. Bijvoorbeeld, als men \newcommand{\fbox}... zou doen dan krijgt men een hoop errors omdat er reeds een \fbox commando bestaat. Sommige commando’s zijn speciaal gemaakt om gebruikt te worden in math mode, maar we kunnen ervoor zorgen dat ze gebruikt kunnen worden in elke andere mode op volgende manier: \ensuremath{wiskundige fo Bijvoorbeeld, beschouw het commando: \newcommand{\Gs}[1]{\ensuremath{G_{#1}}}
Als we reeds in math mode zijn, \Gs{i+j} wordt dan vervangen door G\_{i+j} om G i+j te bekomen; anderzijds, als \Gs{i+j} gebruikt wordt in tekst mode, wordt het vervangen door $\G_{i+j}$ om het eerst in math mode te zetten. M.a.w. we kunnen gelijk waar \Gs{i+j} gebruiken. We kunnen ook onze eigen omgevingen declareren met \newenvironment en \renewenvironment. Ze hebben volgende syntax: newenvironment{name}[n]{begin}{end} renewenvironment{name}[n]{begin}{end}
13
BRIEVEN
35
waar name de naam van de omgeving is, n het aantal argumenten is (negeer [0] voor n = 0), begin geeft aan wat uitgevoerd moet worden bij het ingaan van de omgeving en end geeft aan wat er op het einde van de omgeving uitgevoerd moet worden. Bijvoorbeeld, het volgende cre¨eert een bewijs omgeving. \newenvironment{bewijs} {\begin{flushright} \begin{description} \item \textit{\textbf{Bewijs:}}~ } % begin bewijs {\hfill\rule{2.1mm}{2.mm} \end{description}\end{flushright} } % einde bewijs
Zodat: \begin{bewijs} Veronderstel $A \in \Omega$, \ldots Zodat, het bewijs \ldots \end{bewijs}
wordt: Bewijs: Veronderstel A ∈ Ω, . . . Zodat, het bewijs . . .
13
Brieven
Brieven kun je gemakkelijk maken in LATEX. Volgend voorbeeld geeft alle mogelijke commando’s: \documentclass[a4paper,11pt]{letter} \usepackage[dutch]{babel} \name{Rudy Gevaert} \address{afzenders \\ zijn adres} \signature{afzenders zijn naam} \date{7 maart} \location{lokaal} \telephone{telefoonnummer} \begin{document} \begin{letter}{Geadresseerde zijn naam \\ adres \\ enz.} \opening{Geachte} Tekst van een brief... \closing{Hoogachtend} \cc{Naam1 \\ Naam2} \end{letter} \end{document}
14
14
BABEL
36
Babel
Babel is een pakket dat ervoor zorgt dat LATEX meerdere talen kan ondersteunen. Voordelen hiervan zijn: specifieke Engelse termen worden vertaald naar de opgegeven taal, speciale commando’s die bepaalde aspecten van de opgegeven taal vereenvoudigen en het selecteren van de juiste afbrekingsmethodes. Naast het Nederlands en het Frans ondersteunt Babel nog verschillende andere talen, hiervoor verwijzen we naar de Babel manual op CTAN. Om Babel op te roepen gebruik je: \usepackage[dutch,french]{babel}
De laatste opgesomde taal is de die, die actief is in het begin van het document. Door: \selectlanguage{taal}
op te geven in je document wordt de opgegeven taal gebruikt vanaf die plaats in het document.
15
Slides
Slides zijn ingebouwd in LATEX, om ze aan te maken zet je het volgende in de preamble: \documentclass[a4paper]{slides}
De slides zelf worden gegenereerd door de \begin{slide} ... \end{slide} omgeving. Bijvoorbeeld: \begin{slide} \begin{center}Slides in Latex\end{center} \begin{itemize} \item Ze zijn groot \item En leesbaar \item Wiskunde: $E=mc^2$ kun je ook invoegen \end{itemize} \end{slide}
16
Package’s installeren
De eerste stap in het installeren van nieuwe packages voor uw LATEX systeem is te weten waar ze zich bevinden. De uitgelezen bron voor al uw LATEX noden is CTAN. Uitzonderlijk is het nodig om een ganse distributie te downloaden; de enige gelegenheid dat dit niet nodig is is wanneer je een package uit de LATEX contrib/misc directory op CTAN. Deze directory bezit alleen packages die bestaan uit ´e´en bestand. Een kleine package (kleinpackage) kan bestaan uit ´e´en .sty bestand (meestal kleinpackage.sty) met de nodige instructies ingevoegd als commentaar in het begin van het bestand of als een afzonderlijke handleiding (README bestand). Meestal bestaat een package pack uit een paar bestanden, pack.ins en pack.dtx, geschreven om gebruikt te worden met het LATEX doc systeem. Als er een README bestand is . . . read it! In het doc systeem zijn de handleiding en documentie gebundeld in het .dtx bestand, en het .ins bestand bevat LATEX instructies over welke code uit het .dtx bestand getransformeerd moet worden. Om een doc package (pack) uit te pakken doe je het volgende:
16
PACKAGE’S INSTALLEREN
37
• LATEX pack.ins. Hiermee genereer je ´e´en of meer bestanden. • LATEX pack.dtx om de handleiding te bekomen (en soms een becommentari¨eerde versie van de LATEX code). • LATEX pack.dtx opnieuw om fouten en referenties te verhelpen. • LATEX kan “No file pack.ind” als error gegeven hebben; dit is de code voor het index commando; als je de index wenst; bekom je die met makeindex -s gind.ist pack en laat LATEX nog eens lopen over pack.dtx. • lees pack.dvi Soms wordt er een manual meegegeven afzonderlijk van het .dtx bestand. LATEX dit bestand nadat je het hierboven vermeldde algoritme hebt afgewerkt; dit voor het geval dat de manual de klasse zelf gebruikt. De voorlaatste stap in het installatieproces is het plaatsen van de package bestanden waar LATEX ze kan vinden. Dit is afhankelijk van het gebruikte LATEX systeem. Het opzetten is ook afhankelijk van het systeem. De laatste stap houdt in dat je LATEX vertelt dat er een nieuw(e) bestand(en) is/zijn. Dit gebeurt door de database van opnieuw aan te maken die alle gegevens over de verschillende LATEX bestanden bevat. Omdat het teveel werk is om de verschillende systemen te bespreken verwijs ik hier naar de UK TEX FAQ vragen 97 en 98.
REFERENTIES
38
Referenties [1] Leslie Lamport. LATEX – A Document Prepartion System. Addison–Wesley Co., Inc., Reading, MA, 1985 [2] Donald E. Knuth. Computers and Typesetting Vol. A–E. Addison–Wesley Co., Inc., Reading, MA, 1984-1986 [2a] Vol A: The TEXbook, 1984 [2b] Vol B: TEX: the program, 1984
A
GNU FREE DOCUMENTATION LICENSE
A
39
GNU Free Documentation License
Version 1.1, March 2000 c 2000 Free Software Foundation, Inc. Copyright 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
Preamble The purpose of this License is to make a manual, textbook, or other written document “free” in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. This License is a kind of “copyleft”, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
A.1
Applicability and Definitions
This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The “Document”, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as “you”. A “Modified Version” of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A “Secondary Section” is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document’s overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The “Invariant Sections” are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. The “Cover Texts” are certain short passages of text that are listed, as Front-Cover Texts or BackCover Texts, in the notice that says that the Document is released under this License. A “Transparent” copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not “Transparent” is called “Opaque”.
A
GNU FREE DOCUMENTATION LICENSE
40
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LATEX input format, SGML or XML using a publicly available DTD, and standardconforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machinegenerated HTML produced by some word processors for output purposes only. The “Title Page” means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, “Title Page” means the text near the most prominent appearance of the work’s title, preceding the beginning of the body of the text.
A.2
Verbatim Copying
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies.
A.3
Copying in Quantity
If you publish printed copies of the Document numbering more than 100, and the Document’s license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
A.4
Aggregation With Independent Works
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an “aggregate”, and this License does not apply to the other self-contained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document’s Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate.
A
GNU FREE DOCUMENTATION LICENSE
A.5
41
Translation
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail.
A.6
Termination
You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
A.7
Future Revisions of This License
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/. Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License “or any later version” applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.
ADDENDUM: How to use this License for your documents To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page: c YEAR YOUR NAME. Permission is granted to copy, distribute and/or Copyright modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. A copy of the license is included in the section entitled “GNU Free Documentation License”. If you have no Invariant Sections, write “with no Invariant Sections” instead of saying which ones are invariant. If you have no Front-Cover Texts, write “no Front-Cover Texts” instead of “Front-Cover Texts being LIST”; likewise for Back-Cover Texts. If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.