Jak na LaTeX: výčtové prostředí

28. 3. 2003
Doba čtení: 4 minuty

Sdílet

Po pravděpodobně rekordní odmlce si můžete opět přečíst další díl seriálu o LaTeXu, který je určen převážně začátečníkům. V sazbě (a obzvlášť technické) je potřeba provést výčet. Dnes si představíme prostředí, která takovou sazbu v LaTeXu umožňují.

Obecný úvod

Jednotlivá prostředí lze do sebe nejrůzněji zanořovat. Otázkou, kterou musí už každý posoudit sám, je, jestli takový způsob zůstává ještě přehledný a zda nepoškozuje výslednou kvalitu dokumentu.

Všechny typy výčtových prostředí mají téměř stejný zápis, tudíž se velmi dobře pamatují. Lze je mezi sebou různě kombinovat (samozřejmě pouze způsobem vnoření jednoho prostředí do druhého nebo rekurzivně vnořením sebe sama). Pozor na to, že prostředí se mohou vnořovat, ale nesmí se překrývat, tedy něco takového není možné:

\begin{itemize}
  \item první itemize
  \item druha itemize
\begin{enumerate}
  \item první enumerate
\end{itemize}
  \item položka
\end{enumerate}

V příkladu mělo být napřed ukončeno vnitřnější prostředí enumerate za nímž mohou následovat další položky vnějšího prostředí itemize. Nakonec mělo být ukončeno prostředí itemize.

S odrážkami (výčet)

V LaTeXu se toto prostředí nazývá itemize. Nejnázorněji na příkladu, kde je výčet o dvou úrovních:

\begin{itemize}
  \item první položka první úrovně
  \item druhá položka první úrovně
  \item třetí položka první úrovně
  \begin{itemize}

    \item první zanořená položka
    \item druhá zanořená položka
  \end{itemize}
  \item čtvrtá položka první úrovně
\end{itemize}

[ tex | dvi | ps | jpg ]

Příkaz \item označuje začátek položky ve výčtech. Text za tímto příkazem může být na více řádek včetně příkazů pro formátování textu (tedy bez omezení). Ukončení dané položky je rozpoznáno podle začátku nové položky nebo konce prostředí. Při zanořování do sebe se mění značka odrážky.

Číslované

Prostředí má název enumerate. Od prostředí itemize se liší pouze odpočítávající odrážkou (číselnou nebo znakovou dle úrovně).

\begin{enumerate}
  \item první položka první úrovně
  \item druhá položka první úrovně
  \item třetí položka první úrovně
  \begin{enumerate}

    \item první zanořená položka
    \item druhá zanořená položka
  \end{enumerate}
  \item čtvrtá položka první úrovně
\end{enumerate}

[ tex | dvi | ps | jpg ]

Seznam

Toto prostředí příliš často nepoužívám (čti vůbec), ale pro úplnost se také u něj pozastavíme. Prostředí se nazývá list a jeho užití může být následující (tentokrát to bude trochu složitější):

\newcounter{ListCitac}
\begin{list}{Část-\Roman{ListCitac}:}{\usecounter{ListCitac}}
  \item první položka první úrovně
  \item druhá položka první úrovně
  \item třetí položka první úrovně
  \begin{list}{\textbf{x}}{\setlength{\leftmargin}{4cm}}

    \item první zanořená položka
    \item druhá zanořená položka
    \item třetí zanořená položka
  \end{list}
  \item čtvrtá položka první úrovně
\end{list}

[ tex | dvi | ps | jpg ]

Vysvětlivky k příkladu:
Příkaz \setlength{\lef­tmargin}{4cm} provede uložení hodnoty 4cm do proměnné nastavující velikost pro proměnnou v prvním parametru. Tím se nastaví levý okraj na velikost čtyř centimetrů; vyzkoušejte si nastavení na nulu nebo zápornou hodnotu.
Dále se zde pracuje s příkazy pro práci s čítači. Čítač se jménem ListCitac si napřed musíme vytvořit příkazem \newcounter{\Lis­tCitac}. Jeho hodnotu přečteme příkazem \Roman{ListCitac}, který nám ji zobrazí v římských číslicích (I, II, III, …). Nyní potřebujeme, aby se nám čítač při každém použití příkazu \item zvýšil o jedničku. Toho lze dosáhnout příkazem

\usecounter{\Lis­tCitac}, který nám naváže náš čítač na prostředí list a automaticky jej při příkazu \item také navýší.

Prostředí pro seznam slouží k tomu, abychom si mohli udělat vlastní výčet. Prostředí itemize a enumerate jsou nastavena tak, aby odpovídala typografickým zásadám, jsou jakousi podmnožinou prostředí list.

Prvním parametrem prostředí si zvolíme svoji vlastní odrážku včetně jejího formátování. Druhý parametr slouží pro uložení příkazů pro nastavení velikosti okrajů a jiných formátovacích hodnot nebo pro navázání čítače k tomuto prostředí. Oba parametry mohou být nastaveny na prázdnou hodnotu {}. V takovém případě se pro druhý parametr použije defaultní nastavení mezer pro toto prostředí.

Slovníkového typu

Příkaz \item dovoluje použít nepovinný parametr (zapisuje se do hranatých závorek), do nějž můžeme vložit odrážku, která se má pro výpis dané položky použít. Zatímco v předešlých prostředích to bylo víceméně nevhodné, v prostředí description je to spíše nezbytné.

\begin{description}
  \item[červená] první položka první úrovně
  \item[modrá a fialová] druhá položka první úrovně
  \item[zelená] třetí položka první úrovně
  \begin{description}

    \item[světlá] první zanořená položka
    \item[tmavá a modrozelená] druhá zanořená položka
  \end{description}
  \item[černá] čtvrtá položka první úrovně

\end{description}

[ tex | dvi | ps | jpg ]

Vhodnost zanořování tohoto prostředí sama do sebe je možné, avšak využití této možnosti je nutné zvážit. Důvodem je nižší přehlednost výsledku než třeba při použití vnoření prostředí itemize do description.

Souhrnný příklad

Pro ukázku možností uvedených prostředí je zde příklad, kde je kombinováno více prostředí. Hodnota tohoto příkladu je také schována v obsahové stránce, experimentátorům přeji dobrou chuť a malou opici.

bitcoin_skoleni

[ tex | dvi | ps | jpg ]

Závěr

Tato čtyři prostředí nám dávají dostatečný prostor pro zápis seznamů a výčtů. Jejich jednoduchost také poskytuje možnost snadného přechodu od jednoho způsobu zápisu k jinému, zároveň neztrácí na kvalitě ani možnosti vlastního zásahu pro dosažení kýženého formátování. Nespornou výhodou jednoduchosti a podobnosti zápisu jednotlivých prostředí je snadná zapamatovatelnost syntaxe.

Seriál: Jak na LaTeX