Rejstřík (osob, pojmů, míst, …) pomáhá orientaci v rozsáhlejších dokumentech. Vysvětlíme si základní principy vytváření rejstříků a předvedeme si, jak rejstříky sázet TeXem.
Přejít: navigace | na začátek stránky | na konec stránky
Výběr slov do rejstříku
Výběr slov do rejstříku je autorská záležitost a odvíjí se od typu rejstříku, který sestavujeme. Např. v případě rejstříku autorů je volba přímočará – rejstřík by měl obsahovat odkazy na všechny autory v publikaci. V případě rejstříku pojmů můžeme odkazovat primárně na místo s definicí pojmů, sekundárně pak na místa v textu, kde se s daným pojmem významně pracuje (přičemž autor textu musí určit, co je u daného pojmu jeho významné použití).
Přejít: navigace | na začátek stránky | na konec stránky
Postup při vytváření rejstříku
Problematika vytváření rejstříku TeXem je rozebrána např. v článku Zdeňka Wagnera ve Zpravodaji CSTUG 4/1992. V textu článku je předvedena tvorba rejstříků pomocí nástrojů makeindex. Ty mají některá nepříjemná omezení a dnes jsou již překonané (pro tvorbu rejstříku je vhodnější využít nástroje texindy). Zvýšenou pozornost věnujte především informacím o správném českém/slovenském řazení slov.
Proces tvorby rejstříku v TeXovém dokumentu je možné rozdělit do dvou fází: označkování pojmů, které se mají stát součástí rejstříku, a samotné vytvoření seřazeného rejstříku při překladu dokumentu.
Přejít: navigace | na začátek stránky | na konec stránky
Značkování v TeXovém zdrojovém textu
Způsob značkování pojmů vkládaných do rejstříku je popsán v komentovaném ukázkovém dokumentu rejstrik.tex (dostupném také na službě Overleaf).
Dokument rejstrik.tex
přeložte pdfTeXem
pdflatex rejstrik.tex
a přečtěte si vysázený text.
Přejít: navigace | na začátek stránky | na konec stránky
Tvorba rejstříku při překladu
Všimněte si, že dokument rejstrik.tex po jednoduchém přeložení TeXem (mimo službu Overleaf) neobsahuje vysázený rejstřík. Ten je totiž třeba vytvořit v dalším kroku externím programem, a pak opakovat překlad TeXového dokumentu (proces překladu je tedy vhodné automatizovat):
-
pdflatex rejstrik.tex
- Dokument je vysázený bez rejstříku, ovšem při překladu vznikne soubor rejstrik.idx, který obsahuje informace nutné pro vytvoření rejstříku.
-
# Pokud pracujete na unixovém serveru FI, přidejte perlový modul: module add perl
texindy -I latex --language czech --codepage utf8 rejstrik.idx # Pro dokument v češtině
texindy -I latex --language slovak-large --codepage utf8 rejstrik.idx # Pro dokument ve slovenštině
- Informace ze souboru rejstrik.idx zpracuje program texindy (varianta programu xindy přizpůsobená pro použití s TeXem; texindy je standardní součástí instalace TeX Live). Výsledkem překladu je soubor rejstrik.ind s vygenerovaným rejstříkem v LaTeXovém značkování.
- Pokud používáme TeXový kompilátor, který pracuje nativně s kódováním Unicode (např. XeTeX nebo LuaTeX), můžeme namísto parametrů -I latex --codepage utf8 použít parametr -I xelatex, který texindy přepne do odpovídajícího režimu.
-
Při práci s anglickým textem můžeme namísto programu texindy
rovněž využít program makeindex:
makeindex rejstrik.idx
- Pokud vám nevyhovuje žádné zmíněné řešení, můžete rejstřík vytvářet i třídit v TeXu samotném, jak popsáno v článku Petra Březiny ve Zpravodaji CSTUG 1/2007.
-
pdflatex rejstrik.tex
- Soubor rejstrik.ind je při překladu načtený do rejstrik.tex a rejstřík se tedy objeví ve výsledném PDF dokumentu.
Tip:
Balíček imakeidx nám umožňuje snadno upravit formátování rejstříku a využívá schopnosti moderních TeXových strojů spouštět externí programy pro automatické spuštění programu texindy. Tato schopnost ale interferuje s nástrojem latexmk pro automatizaci sazby, který využívá služba Overleaf.
Při využití balíčku imakeidx na službě Overleaf uveďte volbu noautomatic a spuštění programu texindy si vyžádejte pomocí konfiguračního souboru latexmkrc, vizte ukázkový dokument na službě Overleaf.
Přejít: navigace | na začátek stránky | na konec stránky
Praktické úkoly k procvičení
- Pokud jste si jako svůj první zápočtový dokument vybrali životopis, přidejte do něj rejstřík podle pokynů v zadání.
- Pokud jste si jako svůj první zápočtový dokument vybrali referát do Zpravodaje CSTUGu, upravte ukázkový dokument rejstrik.tex (dostupný také na službě Overleaf), nebo imakeidx.tex (dostupný také na službě Overleaf) tak, aby se rejstřík nesázel na samostatné straně.
-
Pomocí balíčků index,
varindex,
imakeidx,
anebo jiných dostupných v katalogu
CTAN rozšiřte ukázkový
dokument o druhý rejstřík.
- Pozor, pokud nepoužijeme např. balík imakeidx, který program texindy spustí automaticky, je nutné připravit každý rejstřík zvlášť! Pokud si tedy vytvoříme rejstřík autorů pomocí příkazu \newindex{aut}{adx}{and}{Rejstřík autorů} balíčku index, pak z vygenerovaného .adx souboru musíme vygenerovat soubor .and pomocí voleb -o rejstrik.and rejstrik.adx programu texindy.