LaTeX

O návodu

Poslední aktualisace 15. 10. 2020

Účelem tohoto návodu je vysvětlit základy $\LaTeX$u uživateli s nulovou předchozí zkušeností s TeXem nebo jiným složitějším softwarem. Návod se snaží být takový, aby ho pochopil opravdu každý, snad není zbytečně obsáhlý. Ze začátku jsou čtenáři představeny nutné všeobecné základy psaní s $\LaTeX$em, později je nastíněno použití pro specifičtější účely, jako je psaní matematických textů.

Očekávám, že při čtení tohoto návodu vezmete do ruky myš a klávesnici, sami si $\LaTeX$ nainstalujete a budete zkoušet tvořit ukázkové dokumenty společně s návodem. Nejlépe se jej totiž člověk naučí používáním.

Jiné návody v angličtině lze najít zde, seznam symbolů v $\LaTeX$u lze najít zde, či pomůže vyhledávání symbolů na Detexify. Ukázky toho, co všechno lze pomocí TeXu udělat, lze najít zde, ale také zde.

Proč se vyplatí se naučit $\LaTeX$?

Instalace

X v názvu TeX znamená řecké písmeno chí a čte se jako české ch.

Začněmě tím nejtěžším pro začínajícího uživatele TeXu – jeho instalací. Věřím, že jakmile si TeX nainstalujete, budete se s ním už moci hravě seznámit, načež už jej můžete jen využívat ke své službě.

Technické detaily

V instalace počítám s tím, že používáte operační systém Windows 10, a že máte na disku volných cca 3GB místa (proč tolik, je vysvětleno níže).

V tomto návodu ukazuji základní workflow pro práci s TeXem. Power-useři nechť se uchýlí k používání vimu.

Používáte-li Linux, lze instalační kroky nahradit jediným řádkem do terminálu. Pro Ubuntu:

	sudo apt-get install texlive-full && sudo apt-get install texmaker
	

Pro Arch Linux:

	sudo pacman -S texlive-most texmaker
	

Potřebné programy

Místo Texlive je možné nainstalovat si tzv. MikTeX a místo Texmakeru zase např. TeXworks. Texlive a Texmaker jsou však dle mne nejsolidnější (Miktex obsahuje chyby a Texmaker je přehledný a má hodně funkcionalit.) Musím nicméně přiznat, že MikTeX instaluje balíčky on-the-fly, pročež zabírá méně místa na počítači.

$\LaTeX$ je ve zkratce program na vytváření pdf souborů. Pdf soubor $\LaTeX$ vytvoří podle textového souboru, který mu podáme, tento textový soubor má charakteristickou příponu .tex. Práce v TeXu následně probíhá tak, že v nějakém textovém editoru (mohli bychom použít i např. microsoftí poznámkový blok) napíšeme zdrojový kód našeho dokumentu, ten následně tzv. přeložíme programem $\LaTeX$u a obdržíme požadované pdf.

Pro práci tedy potřebujeme dvě věci: program na překlad souborů .tex a textový editor na tvoření souborů .tex. Na překlad si nainstalujte Texlive, jako editor zase texmaker.

Texlive zabírá cca 3GB, neboť obsahuje všechna možná rozšíření $\LaTeX$u zvaná balíčky, které mnohdy obsahují svá vlastní písma nebo glyfy. Po instalaci tento program zůstane na vašem disku a vy s ním již nebudete muset nikdy viditelně interagovat. Texmaker je program, ve kterém se budete pohybovat při sázení dokumentů.

První TeXový dokument

Příprava souboru

Přejděte na plochu nebo do vaší oblíbené složky. Vytvořte si zde složku s libovolným názvem, řekněme třeba Prvni_dokument. Pro jeden pdf soubor musíte v $\LaTeX$u mít minimálně jeden .tex soubor, ale ještě i jiné, které se automaticky vytvoří při kompilaci (třeba .log soubor, kde se uchovává zápis o tom, jak kompilace proběhla), proto se vyplatí mít všechny soubory týkající se jednoho dokumentu v jedné složce, a k tomuto slouží práve složka Prvni_dokument.

Přejděte do složky Prvni_dokument (v Průzkumníku souborů) a vytvořte zde soubor .tex, třeba prvni.tex. Na Windows to uděláte tak, že si nejprve nastavíte zobrazování přípon souborů, načež kliknete pravým tlačítkem, dále nový, dále textový dokument. Následně pomocí tlačítka F2 nebo menu vzniklého z kliknutí pravého tlačítka myši můžete právě vytvořený soubor přejmenovat.

Soubor otevřte pomocí Texmakeru. Pravé kliknutí, otevřít v programu, vybrat jiný program, zaškrtnutí použít jako výchozí program, výběr Texmakeru a ok se postará o tuto práci, alternativě lze otevřít Texmaker a soubor do něj přetáhnout.

Něco o tom, jak funguje TeX

Nyní byste měli mít otevřený Texmaker s prázdným souborem podle obrázku.

Lze nastavit, aby okna pro výstup a vstup byla opravdu oddělená okna. To se hodí zejména pro malé displeje.

prázdný dokument otevřený v programu Texmaker

Texlive je tzv. backendový program, zatímco Texmaker je tzv. frontendový program.

Levá část programu tedy slouží na psaní již zmiňovaného kódu, který se následně přeloží na pdf. Výsledné pdf se zobrazí na pravé straně programu. Ježto však zatím žádný kód nemáme, zkusme napsat toliko jednoduchou větu, třeba:

		Ahoj světe!
		

Větu můžeme zkusit přeložit pomocí tlačítka Quick build či Rychlý překlad, pro které je v programu klávesová zkratka F1.
Jak jste možná očekávali, dokument se nepřeložil úspěšně. Psaní dokumentů v $\LaTeX$u vyžaduje dodržovat určitá pravidla, stejně jako když píšeme kód např. v html nebo v c++. Možná vám přijde poněkud zdrcující začínat s $\LaTeX$em chybovou hláškou, nicméně sledování těchto hlášek tvoří důležitou součást správné práce s TeXem. Můžete si povšimnout, že hláška se vám snaží napovědět, kde jste udělali chybu – na řádku č.1. Dále se dočteme, že chybí formule \begin{document}, kterou můžeme vzápětí doplnit.



chybová hláška v Texmakeru

Než však doplním potřebné formality, všimněte si, že v naší složce Prvni_dokument se vygeneroval soubor prvni.log. V tomto souboru je uložené vše, co Texlive při překladu považoval za důležité. Čtení tohoto souboru může někdy pomoci odhalit chyby, když ho však smažeme, nic se nestane. Při dalším postupu se vytvoří podobně ještě další soubory. Ty pomáhají $\LaTeX$u s kompilací, můžete je poklidně smazat, ale je to zbytečné.

Nahraďme tedy Ahoj světě! správnou verzí kódu. K tomu kliněte na Wizard, Quick sTart a následně na ok. V české verzi na Průvodce, Pomocník pro dokumentok. Objeví se vám následující kód, který již po doplnění Ahoj světe! na správné místo můžete přeložit.

	\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry}

\begin{document}
Ahoj světe!
\end{document}
	

Výhoda $\LaTeX$u oproti ostatním programům na psaní dokumentů je, že v něm lze tvořit dokumenty přehledně, neboť nabízí separaci obsahu od formy. Tato přehlednost je nedocenitelná, nicméně vyžaduje, aby si ji uživatel uvědomoval a aktivně o ní pečoval, např. správným odsazováním bloků kódu.

Trochu vysvětlivek. Podobně jako html dokument, .tex dokument je členěn na hlavičku, kde se nastavují obecné vlastnosti jako velikost fontu či velikost okrajů a na samotné tělo dokumentu, kde může uživatel vkládat svůj text. Toto členění má za cíl dokument zpřehlednit. V hlavičce se načítají balíčky pomocí příkazu \usepackage{balíček}, což jsou kusy kódu, které napsal někdo jiný, a jsou uložené někde na vašem počítači, a které rozšiřují funkčnosti programu. Třeba balíček inputenc zajišťuje, že TeX ví, že používáte kódování souboru UTF8, balíček geometry zajišťuje okraje stránek.

Tělo dokumentu je (narozdíl od hlavičky) ohraničené \begin{document}\end{document}. Kód, který se píše mezi tyto dva řádky, znamená obsah dokumentu.

$\LaTeX$ obsahuje dva druhy příkazů, neboli sekvencí znaků, které můžete použít, abyste mohli dosáhnout nějakého speciálního efektu. První druh je ve tvaru \příkaz[nepovinný_argument]{povinný_argument}, přičemž každý příkaz může a nemusí mít povinný i nepovinný argument – musíte ten příkaz znát. Druhý zase v následujícím tvaru:

	\begin{$p$rostředí}
Text
\end{prostředí}
	

Prvním jednoduchým příkazem dosáhnete jednorázové věci jako např. načtení balíčku. Druhému příkazu se také někdy říká prostředí (environment) a funguje tak, že cokoliv se vyskytne v prostředí, tak je různým způsobem pozměněno.

Základní formátování

V předchozích částech návodu jste se snad naučili, jak si vytvořit vlastní texový dokument. Nyní si ukážeme, jak do dokumentu zakomponovat stylistické prvky. Bude to stručný výčet, protože to asi jinak podat nejde. Abyste si tedy ty příkazy zapamatovali, tak experimentujte a zkoušejte, co dělají sami.

Nejprve praktické věci: do kódu lze vkládat komentáře, které neovlivní výsledek, tak, že před komentovaným segmentem je znak %. Samotný znak % se vloží pomocí \%. Dále jedno zalomení řádku se chová jako mezera. Pro tvoření odstavců musí člověk zmáčknout enter dvakrát, nebo dát na konec odstavce příkaz \\. Oba způsoby odstavce se liší tím, že \\ dělá odstavec bez odsazení. Pro rušení odsazení nebo jeho zavedení jsou příkazy \indent\noindent.

Styl textu

Tip: lze vytvořit prázdné prostředí pomocí { }. Tedy {\itshape kurzíva} vyprodukuje to samé jako \textit{kurzíva}, nicméně oba příkazy fungují jinak.

Obrázky

Stalo se vám někdy, že jste do Wordu vložili obrázek a jeho změna zničila celý dokument? V $\LaTeX$u by se toto mělo stávat méně často. Je sice pravda, že je těžké zacházet s obrázky bez grafického rozhraní, nicméně $\LaTeX$ má rozumné defaultní nastavení, které můžete používat.

Pro všechnu manipulaci s obrázky musíte mít obrázek ve stejné složce jako zdrojový .tex soubor. Nechť se jmenuje obr.png.

Příkaz \textwidth znamená šířku řádku. Např. půlka řádku je 0.5\textwidth.

Matematika

$\LaTeX$ je vyhlášený tím, jak lehce se v něm píše matematika. Abyste napsali nějakou matematickou rovnici, musíte všechnu matematiku obklopit znakem dolaru takto: $x=2+3x$ → $x=2+3$. Pokud je vaše rovnice významná a chcete, aby zabírala řádek sama pro sebe, tak ji obklopte ve dvou dolarech:

	$$E=mc^2$$
	

Nedoporučuji používat \frac v řádkové matematice, neboť je tam moc málo prostoru. Stačí použít lomeno → a/b.

	\begin{align}
x + 1 &= 0 \\ %Ampersand & říká, podle kterého symbolu se mají rovnice zarovnat.
x &= -1
\end{align}
	

Formátování

Jak dál?

V tomto návodu jsem toho stihl popsat mnoho, nicméně jsem neměl místo popsat věci jako různé balíčky jako je memoir, varwidth nebo fancyhdr, ani jsem nemohl vysvětlit, jak si vytvořit svá vlastní makra, což pomůže, když pracujete na velkém projektu.

Soubor, ve kterém je shrnuto několik začátečnických funkcí $\LaTeX$u naleznete zde. Vypadá-li soubor divně, tak si změňte kódování prohlížeče, což např. v Chromu zajišťuje rozšíření Charset. Zkuste si jej zkompilovat a přesvědčte se, že již všemu opravdu rozumíte. Jestli ano, tak máte za sebou základy psaní v $\LaTeX$u a s pomocí internetu můžete dokázat téměř cokoliv!

Jiné tutoriály naleznete na Learn X in Y minutes (to je podobný texový soubor jako můj, jen rozsáhlejší) nebo na platformě pro psaní Cloudových texových dokumentů Overleaf.

Nejlépe však uděláte, pokud se v TeXu rovnou rozhodnete něco vytvořit. Třeba leták na oslavu, pravidla mariáše, aby se nikdo nehádal, plkát pro ztracenou kočku, možnosti jsou nekonečné. Já jsem například tvořil zpěvník. Když si s něčím nebudete vědět rady, pomůže vyhledání v DuckDuckGoGo a následně Stack Overflow nebo Detexify pro neznámé symboly.





Pomohl Vám článek o LaTeXu? Třeba Vám pomůže i moje návody na Gnuplot a na Asymptote nebo si můžete přečíst některý z mých článků např. o učení se cizích jazyků či diferenciálním počtu.