LaTeX/Bibliografiemanagement
In ieder wetenschappelijk artikel wordt verwezen naar bronnen. Het verwijzen naar bronnen is enorm eenvoudig in LaTeX. Je kunt per LaTeX-document een eigen lijst van bronnen aanleggen of je kunt een bibliotheek van alle bronnen die je ooit bekeken hebt aanmaken en in bepaalde teksten naar bepaalde bronnen verwijzen.
Per document
Als je slechts een paar documenten wilt maken over een bepaald onderwerp, wil je misschien geen centrale bibliotheek aanleggen. Als je met dit systeem werkt moet je per document een volgende omgeving aanbrengen:
\begin{thebibliography}{9}
\bibitem{lamport94}
Leslie Lamport,
\emph{\LaTeX: A Document Preparation System}.
Addison Wesley, Massachusetts,
2nd Edition,
1994.
\end{thebibliography}
Of zonder ingevulde waarden:
\begin{thebibliography}{maximum aantal items}
\bibitem{referentiesleutel van het item}
Informatie over het werk zoals auteur, titel, uitgever ...
\end{thebibliography}
Het maximum aantal items is een getal waarmee je opgeeft hoeveel items er zullen komen, dit wordt door LaTeX gebruikt om te berekenen hoeveel plaats hij moet voorzien om ze te nummeren. Als je bijvoorbeeld een 9 invult en je zet tien items, dan is de kans groot dat er tekst niet mooi uitgevuld staat. Een referentiesleutel moet uniek zijn, zoals een label in een LaTeX-document. Het eenvoudigste is een algemene vorm van sleutel te bedenken zoals in het voorbeeld: de familienaam en het jaartal van publicatie. Als er meer publicaties per jaar van dezelfde auteur zijn kun je ze alfabetisch nummeren door er een a, b, ... achter te plaatsen.
Hoe je de referentiesleutel moet gebruiken leggen we in de sectie over bronnen citeren uit.
Werken met een centrale bibliotheek
Het voordeel van werken met een centrale bibliotheek is dat je alle bronnen maar een keer moet ingeven. De bronnen worden enkel in je LaTeX-document vermeld als ze geciteerd worden binnen dat document. Op die manier zorg je er ook voor dat alle bronnen op dezelfde manier geciteerd worden. Als je werkt met een centrale bibliotheek, dan zal je ook geen eigen opmaak meer moeten verzinnen zoals in het bovenstaande voorbeeld. LaTeX zal alle opmaak op zich nemen, uiteraard is dit weer configureerbaar maar daar houden we ons niet mee bezig. Let op: LaTeX zal je bron enkel opnemen in je document als je er naar verwijst zoals zal uitgelegd worden in de sectie over bronnen citeren. Zolang LaTeX geen verwijzing naar een bron vindt in je document zal er dus ook geen referentie geplaatst worden en zal er geen output zijn.
Het .bib-bestand
Wat je bij een centrale bibliotheek natuurlijk nodig hebt is een bestand waarin je de informatie opslaat. Deze informatie moet niet in de map van je document staan maar in een onafhankelijke map. Zo'n bibliotheek is een .bib-bestand. Als je meer bibliotheken wilt maken kun je dat gerust doen door meer .bib-bestanden aan te maken. Zo kun je je bronnen ordenen volgens onderwerp of publicatievorm.
.bib-bestanden bewerken met externe programma's
Er zijn programma's die .bib-bestanden kunnen lezen en aanmaken en waarmee je gewoon kunt werken zoals je met een database zou werken. Hieronder staat een lijst met dergelijke programma's. Wij zullen echter zien hoe je een .bib-bestand zelf kunt schrijven. Dit is niet veel werk en zorgt er voor dat je de achterliggende structuur beter begrijpt.
- JabRef, een eenvoudige tool om rechtstreeks bibTeX-bestanden te lezen en inhoud te wijzigen, het is snel aan te leren en zelfs via het web uitvoerbaar als een java applet.
- KbibTeX, een kde-applicatie. Enkel voor Linux dus hoewel er ook een KDE project voor Windows op komst is. Heeft ongeveer dezelfde interface als JabRef maar je moet meer werken via contextuele menu's (rechts klikken).
- Als je nog een goede bibTeX-manager vindt kun je deze gerust aan de lijst toevoegen.
Structuur van een .bib-bestand
Een .bib-bestand is een gewoon tekstbestand met een opsomming van al je bronnen. Een bron in een .bib-bestand zetten doe je in de volgende vorm:
@article{greenwade93,
author = "D. Greenwade, George",
title = "The {C}omprehensive {T}ex {A}rchive {N}etwork ({CTAN})",
year = "1993",
journal = "TUGBoat",
volume = "14",
number = "3",
pages = "342--351"
}
Een bron begin je altijd met het @publicatievorm-commando. De mogelijke publicatievormen worden hieronder weergegeven. Daarna volgt een referentiesleutel. Zoals in de vorige sectie aangegeven, moet die sleutel uniek zijn en het is dus interessant een algemene vorm van die sleutel te bedenken. Na die sleutel volgen de attributen van de bron. De attributen verschillen ook per publicatievorm en zijn hieronder opgesomd:
Auteurs
BibTeX kan goed overweg met auteurs. BibTeX zal zelf proberen uit te vissen welk deel van de naam familienaam is en welk deel voornaam. Om dat te kunnen moet er enige vorm van structuur in zitten. De manier waarop bibTeX altijd juist is is het schrijven als familienaam, voornaam. Om auteurs te splitsen zet je er het woord "and" tussen.
Standaard publicatievormen
- @article
- Een artikel van een magazine of krant
- Verplichte attributen: author, title, journal, year.
- Optionele attributen: volume, number, pages, month, note.
- @book
- Een gepubliceerd boek
- Verplichte attributen: author/editor, title, publisher, year.
- Optionele attributen: volume/number, series, address, edition, month, note.
- @booklet
- Een boek met een onbekende auteur
- Verplichte attributen: title.
- Optionele attributen: author, howpublished, address, month, year, note.
- @conference
- Zie inproceedings
- Verplichte attributen: author, title, booktitle, year.
- Optionele attributen: editor, volume/number, series, pages, address, month, organization, publisher, note.
- @inbook
- Een hoofdstuk van een boek
- Verplichte attributen: author/editor, title, chapter and/or pages, publisher, year.
- Optionele attributen: volume/number, series, type, address, edition, month, note.
- @incollection
- Een hoofdstuk van een boek met een eigen titel
- Verplichte attributen: author, title, booktitle, publisher, year.
- Optionele attributen: editor, volume/number, series, type, chapter, pages, address, edition, month, note.
- @inproceedings
- Een artikel van een conference proceedings.
- Verplichte attributen: author, title, booktitle, year.
- Optionele attributen: editor, volume/number, series, pages, address, month, organization, publisher, note.
- @manual
- Een technische gebruiksaanwijzing
- Verplichte attributen: title.
- Optionele attributen: author, organization, address, edition, month, year, note.
- @mastersthesis
- Masterthesis
- Verplichte attributen: author, title, school, year.
- Optionele attributen: type, address, month, note.
- @misc
- Gebruikt voor andere publicatievormen
- Verplichte attributen: none
- Optionele attributen: author, title, howpublished, month, year, note.
- @phdthesis
- Doctoraatsthesis
- Verplichte attributen: author, title, year, school.
- Optionele attributen: address, month, keywords, note.
- @proceedings
- Proceedings van een conferentie
- Verplichte attributen: title, year.
- Optionele attributen: editor, volume/number, series, address, month, organization, publisher, note.
- @techreport
- Technisch rapport van een onderwijs of commerciële instelling
- Verplichte attributen: author, title, institution, year.
- Optionele attributen: type, number, address, month, note.
- @unpublished
- Een ongepubliceerd boek, artikel, thesis ...
- Verplichte attributen: author, title, note.
- Optionele attributen: month, year.
Niet-standaard publicatievormen
Er zijn ook enkele publicatievormen die niet standaard zijn. Deze worden niet door alle bibTeX-versies ondersteund maar met de meeste moderne versies wel. Deze publicatievormen zijn:
- @patent
- @collection
- @electronic
Google scholar
Een goede manier om meteen complete informatie over een werk te verkrijgen is met Google scholar. Bij de voorkeuren kun je een bibliografieprogramma selecteren. Als je daar voor bibTeX kiest, zal Google scholar per resultaat de volledige bibTeX-informatie ter beschikking stellen. Het enige dat je nog moet doen is de sleutel aanpassen zodat die aan je systeem voldoet en eventueel een kleine wijziging als het niet goed gezet wordt.
Een referentielijst tonen
Als je wilt dat het .bib-bestand herkend wordt door LaTeX, moet je het nog in je LaTeX-bestand zetten. Dit gebeurt met het commando \bibliography{pad/van/het/bestand} waarbij pad/van/het/bestand de locatie van je pad is, dit kan met relatieve (beter voor uitwisseling naar andere computers) of absolute paden (beter voor bestandsstructuur wijzigingen in je eigen computer) genoteerd worden. Voor het \bibliography-commando moet je ook nog de stijl definiëren met het commando \bibliographystyle{plain}. De plain keuze is voor meeste gebruikers de beste keuze.
Om de lijst echt te tonen moet je naar de sectie bronnen citeren kijken.
Een bron citeren
Een bron citeren doe je door \cite{referentiesleutel} te typen waar je wilt dat er naar die bron verwezen wordt. De referentiesleutel kan deze zijn van een bibliografie die binnen je document staat of de referentiesleutel van een bibTeX-bestand.
Je kan ook naar een bepaalde pagina van je bron refereren met het commando \cite[p. 123]{referentiesleutel}.
Meer citaties binnen één enkel commando is ook mogelijk door ze te scheiden met een komma: \cite{sleutel1,sleutel2,sleutel3}
Als je volledig werk gebaseerd is op een of meer bronnen kan het moeilijk zijn een geschikte plaats te vinden om die bron in de tekst te vermelden. In dat geval kun je op het einde van je LaTeX-document het \nocite-commmando gebruiken. Zo komen de bronnen in je referentielijst maar zonder ze op een bepaalde plaats te vermelden.