V minulé kapitole jsem se zmínil, že ruční vytváření seznamu literatury v LaTeXu je zbytečně pracné a málo pružné. BibTeX je program, který umí množství práce udělat za nás. Výměnou bibtexových stylů můžeme měnit vzhled seznamu i množství informací, které v něm budou obsaženy. Není se tedy třeba starat o to, jak jednotlivé reference vysázet. BibTeX navíc umí do výsledného seznamu zahrnout pouze ty reference, na které je v textu odkazováno, takže můžeme bez obav udržovat seznam všech referencí na literaturu, kterou jsme kdy přečetli, na jednom místě. Používání BibTeXu výrazně šetří práci.
Předpokladem je správně nainstalovaný program bibtex. Je součástí většiny distribucí LaTeXu, takže by neměl být problém s jeho zprovozněním. Dále je potřeba mít soubor s BibTeXovou databází ve stejném adresáři, jako zdrojový text LaTeXového dokumentu. Nazveme jej například citace.bib. BibTeXovou databázi je třeba vložit do LaTeXového zdrojáku pomocí příkazu bibliography přesně ve stejném místě, kde bychom jinak použili prostředí thebibliography.
\bibliographystyle{alpha} \bibliography{citace}
Příkazem bibliographystyle se volí buďto jeden ze základních stylů formátování (alpha, plain, unsrt, abbrv, czechiso) nebo vlastní styly. Pro většinu případů bohatě postačí styly alpha a plain.
Stejně jako při zpracovávání ostatních referencí je potřeba překládat víceprůchodově. LaTeX v prvním průchodu vygeneruje požadavky na odkazy, ty se pak zpracují pomocí BibTeXu a výsledek je potřeba podruhé zkompilovat LaTeXem. Předpokládejme, že v aktuálním adresáři máme dva soubory pojmenované citace.tex a citace.bib, pak bude překlad vypadat takto:
cslatex citace bibtex citace cslatex citace cslatex citace
Seznam referencí pro BibTeX má tvar textového souboru (s koncovkou .bib), který obsahuje strukturované údaje o přečtených knihách, článcích, místech na internetu nebo jiných zdrojích. Až na výjimky se zde nezaznamenává způsob formátování jednotlivých položek, ale pouze čisté informace (jméno autora, název, rok vydání, atd.). O formátování se postará až BibTeX. Databáze obsahující stejné údaje, jako ukázka z minulé kapitoly, uložená jako soubor citace.bib, by mohla vypadat takto:
@BOOK{Češka1994, title = {Petriho {S}ítě}, publisher = {Akademické nakladatelství CERM Brno}, year = {1994}, author = {Milan ČEŠKA}, abstract = {Učebnice Petriho sítí. Obsahuje definici PS, rozebírá základní problémy analýzy PS, invarianty, jazyky PS. Nezabývá se stochastickými, barvenými PS, ani dalšími rozšířeními. Končí u PT Petriho sítí s inhibitory.}, isbn = {80-85867-35-4}, owner = {David Martinek}, } @MISC{simlib, author = {Petr PERINGER}, title = {{SIMLIB/C++}}, howpublished = {[online]}, year = {Naposledy navštíveno 31. 3. 2005}, url = {http://www.fit.vutbr.cz/~peringer/SIMLIB/}, }
Všimněte si, že záznamy mohou obsahovat i informace, které se ve výsledném dokumentu nezobrazují. Nyní si vysvětlíme, co znamenají jednotlivé elementy:
Tyto databáze se dají vytvářet pomocí libovolného textového editoru. Vyžaduje to však znalost všech povinných položek jednotlivých typů záznamů. Jednodušším způsobem, jak vytvořit a spravovat BibTeXovou databázi je použít některý ze specializovaných editorů. Já jsem poslední dobou spokojeným uživatelem programu JabRef, který je napsaný v Javě, takže jej lze používat pod libovolným operačním systémem. Jeho ovládání je velmi intuitivní a s jeho pomocí do tvorby BibTeXových databází proniknete velice rychle.
BibTeXové styly jsou uloženy v souborech s koncovkou .bst a najdete je v adresáři, kde je nainstalován LaTeX, resp. BibTeX (na unixech to bývá adresář /usr/share/texmf/bibtex/bst). Další možností je umístit soubor se stylem přímo do adresáře, se zdrojovými texty. V některých situacích vám nemusí standardní styly vyhovovat. V tom případě si můžete stáhnout styl z internetu (lze jich najít opravdu hodně) nebo si můžete vytvořit vlastní. Jde o textové soubory, takže lze použít některý ze standardních stylů a textovým editorem v něm provést úpravu. Pokud chcete vytvořit vlastní styl od nuly, lze jej vytvořit příkazem
latex makebst
Program se vás pak bude ptát na nejrůznější apekty nového stylu, na které budete odpovídat výběrem z nabídek. Pro jednoduché modifikace základních stylů to stačí. Mně například nevyhovovalo, že základní styly neumí zpracovávat položky s názvem isbn, tak jsem si tímto způsobem vytvořil vlastní styl, který to umí.
Někdy se stane, že ani pomocí vlastního stylu nevypadá výstup podle našich představ. Také se může stát, že je v BibTeXu chyba nebo můžeme narazit na skutečnost, že BibTeX neumí česky. Do potíží se můžeme dostat například v situacích, kdy jméno nebo příjmení autora začíná písmenem s diakritikou. Standardní BibTeX nezná pravidla pro české řazení a zdá se, že mu činí potíže rozeznat, co je jméno a co je příjmení, právě když tato slova začínají písmenem s diakritikou. Tyto problémy by měl zřejmě řešit program csbibtex, ale vypadá to (začátek roku 2008), že tento projekt je už několik let mrtev.
Pro menší opravy, které nelze řešit vlastním stylem lze využít znalosti toho, jak BibTeX ve skutečnosti funguje. Program bibtex zpracovává zdrojový text a soubor s koncovkou .bib a generuje soubor s koncovkou .bbl. Obsah tohoto souboru se pak při překladu programem latex použije v místě použití příkazu \bibliography{}. Když se podíváme na obsah souboru .bbl, zjistíme, že jde vlastně o LaTeXový zdrojový soubor obsahující výčet citací vytvořený pomocí prostředí thebibliography. Nic nám tedy nebrání v tomto souboru udělat jakoukoli opravu.
Pokud je skutečně potřeba udělat v seznamu použité literatury nějakou opravu, kterou nejde udělat standardními prostředky BibTeXu, můžete postupovat tímto způsobem:
Tento postup doporučuji provádět až při generování finálního dokumentu, kdy už jsou použity všechny zamýšlené citace, protože každé další zavolání programu bibtex přepíše ručně provedené úpravy v souboru .bbl.
Autor: David Martinek. Poslední modifikace: 24. February 2008. Pokud v tomto dokumentu narazíte na chybu, dejte mi prosím vědět.