Cvičení 7: Vytváření bibliografické databáze pomocí programu BibTeX (biblatex, biber), ukázka literate programming
Cílem dnešního cvičení je seznámení se se základními principy práce s bibliografickou databází a možnostmi nástrojů pro práci s bibliografickými daty. Dále, pokud čas dovolí, si vyzkoušíte ukázku literárního programování.
Citační normy a pravidla
Citování zdrojů má svá pravidla a zvyklosti, které by autoři měli znát, a nástroje měly podporovat. Na MU vznikla publikace o citování, která zvyklosti shrnuje, přečtěte si ji!
Program BibTeX
Vedení bibliografické databáze je možné v různých formátech a pomocí různého software. Pro práci s TeXem byl vyvinut Orenem Patashnikem na Stanfordu program BibTeX a formát bibliografických záznamů BIB.
Formát bibliografického záznamu
Ve formátu BibTeXu dokáže bibliografické záznamy ukládat např. správce citačních záznamů JabRef.
Způsob formátování záznamů z bibliografické databáze
Formát citačního záznamu určují normy ČSN 690 a ČSN 690-2 Bibliografické citace, část 2: elektronické dokumenty nebo jejich části. Český server Citace.com poskytuje nástroje pro generování citačních záznamů v tomto formátu. Po registraci je možné záznamy uchovávat na serveru. (Export uložených záznamů je možný i ve formátu BibTeX.) Záznamy ve formátu BibTeXu poskytuje také Google Scholar (pozor, export je třeba si vyžádat v dolní části stránky s nastavením služby!)
Formátování záznamů z bibliografické databáze je určeno v bibliografických stylech (soubory s příponou BST; Bibliography-style hacking). Ukázky výstupu různých BibTeX stylů jsou k dispozici na stránce BibTeX style examples.
Příklady BibTeXových databází
- Příklad BIB souboru.
- Bibliografie sborníků TSD 1998, TSD 2000, TSD 2002, TSD 2004.
- Bibliografie sborníků SLT 2001, SLT 2002.
- Kolekce bibliografií Computer Science, Nelsona Beebeho.
Generování seznamu literatury z bibliografické databáze
V LaTeXovém souboru:
% V hlavičce dokumentu: \bibliographystyle{styl} % styl= plain | abbrv | ... ... ...~\cite{klic1} ...~\cite{klic2,klic3} % Klíče citovaných bibl. záznamů. ... \bibliography{bib1,bib2} % Seznam bibtexových souborů. % Zde se objeví vygenerovaný seznam citací.
Překlad:
pdflatex foo.tex && bibtex foo.aux && pdflatex foo.tex
Rozšíření Makefile
Makefile a svůj zápočtový dokument rozšiřte o práci s BibTeXem.
Další možnosti a bibliografické manažery
BibTeXové záznamy umí poskytovat i Google Scholar, repozitář IS MU nebo bibliografie Computer Science v Trieru DBLP. BibTeX není jediný manažer citačních záznamů -- popularitu získává Mendeley. I ten umí spolupracovat s LaTeXem-BibTeXem.
Poměrně nedávnou možností jsou balík biblatex a možná náhrada bibtexu Biber psaný v Perlu.
Literate programming
Vyzkoušejte si příklad na psaní dobře dokumentovaných programů. Stáhněte si příklad s prvočísly ve formátu Web a vygenerujte z něj dle pokynů cvičícího přeložitelný program a jeho dokumentaci.
weave prvocisl.web pdftex prvocisl.tex acroread prvocisl.pdf tangle prvocisl.web cat prvocisl.p
Principů literate programming se často používá také pro dokumentaci a distribuci LaTeXových balíčků (soubory s příponou DTX) – DTX tutorial.
Soubor s příponou INS slouží k automatizovanému vygenerování zdrojových textů z dokumentovaného distribučního souboru s příponou DTX. Soubory jsou vygenerovány při překladu INS souboru LaTeXem.
pdflatex skeleton.ins
Následně je možné překladem DTX souboru vygenerovat z distribučního souboru dokumentaci.
pdflatex skeleton.dtx acroread skeleton.pdf