dokument

Transkript

dokument
Začínáme s LATEXem
Petr Aubrecht
24. 2. 2001, update 4. 11. 2005
Abstrakt
1
LATEX je textový procesor pro lidi, kterým nevadí se nejdřív něco naučit,
aby pak mohli dělat práci lépe. Kteří raději obětují na začátku něco času,
aby věděli, co vlastně dělají a jak se to má dělat správně. Je pro lidi, kteří
chtějí vědět něco o typografii.
Rozhodně není pro lenochy. Není pro lidi, kteří se nechtějí obtěžovat pohledem čtenáře, který to musí číst. Není pro lidi, kteří mentálně porozuměli
psacímu stroji a u toho zůstali (a s radostí dál používají podtrhávání a lomítek místo závorek). Není ani pro sekretářky, které moc netrápí, že dopis není
typograficky správný.
Zkrátka LATEX není Word. Dovolte mi přirovnání – Word je jako mikrovlnná trouba, ve které se nejlépe ohřejete mražené jídlo koupené v supermarketu. Ale pořádné jídlo tam neuvaříte.
Text, který se chystáte číst, je taková „kuchařkaÿ pro „ohřívače mraženek,ÿ který by se chtěl naučit aspoň trošku vařit, ale má z toho trošku strach.
1
Vše, co je dále popsáno, je pouze můj názor. Pokud máte připomínky, můžete je
adresovat na [email protected].
Obsah
1 První kroky
1.1 Prázdný dokument . . . . . . . . .
1.1.1 Kam psát text . . . . . . . .
1.1.2 Slovo LATEX – makra . . . .
1.2 Čeština . . . . . . . . . . . . . . . .
1.3 Kapitoly, odstavce . . . . . . . . .
1.3.1 Odstavec . . . . . . . . . . .
1.3.2 Kapitoly a spol. . . . . . . .
1.4 Drobky z typografie . . . . . . . . .
1.4.1 Pomlčka, rozdělovník, minus
1.4.2 Předložky na konci řádky .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 Know How
2.1 Obsah . .
2.2 Literatura
2.3 Obrázky .
2.4 Odkazy .
2.5 Drobnosti
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
. 9
. 9
. 10
. 11
. 11
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
3
4
4
5
6
6
7
7
8
8
Důvody
Když jsem v létě roku 2000 nastupoval do školy jako zaměstnanec, stál jsem
najednou před rozhodnutím, v jakém editoru budu psát zprávy. Jsem hodně
zaujatý proti Microsoftu (a vím proč), takže jsem si na počítač Word nenainstaloval. Ke čtení souborů DOC používám Text602, který na základní věci
stačí.2
Stál jsem tedy před zásadním rozhodnutím. Jedna možnost byla pokorně
se sklonit před monopolním suverénem, přijmout potupnou porážku ducha
bezduchým programem.
Druhá možnost byla vzpomenout si na základy LATEXu, který jsem se
v rámci několika předmětů na škole naučil používat. Tato varianta vyžadovala náročnější instalaci, sehnání počeštění, rozhodnout se mezi různými
instalacemi ap. Ne nepodobná situace jako u Linuxu.
Porovnával jsem možnosti, které oba programy nabízí. Word je používán
naší skupinou a v kraji je zvykem dostávat dokumenty v tomto formátu.
Potíž je v nutnosti mít poslední verzi, protože jinak si nepřečtete nic. To
zpětně nutí lidi kolem vás si ji koupit taky. Zkrátka roztočený kolotoč, ve
kterém všichni cpou peníze Microsoftu jako smyslů zbavení.
LATEX znamená nikomu nic neplatit (pokud vyloženě nechcete). Naproti
tomu vyžaduje hlubší studium, které se ovšem mnohokrát vrátí v pochopení
podstaty problému počítačové sazby dokumentů. Jako když kupujete nový
sporák, který má spoustu funkcí – když umíte vařit, spíš si vyberete ten
nejlepší.
Jako obrovskou výhodu jsem nakonec odhalil možnost z LATEXu dostat
výsledek ve formátu PDF, Postscript nebo HTML, bylo rozhodnuto. Také
podpora komunity (každý oslovený člověk mi vždy ochotně pomohl). A když
se mi podařilo najít cestu, jak dostat alespoň text do Wordu (pro kolegy),
bylo rozhodnuto. LATEX.
2
pozn. z roku 2005: Mezitím jsem stačil dokonvergovat do Linuxu, takže
Text602⇒OpenOffice.org, MikTeX⇒tetex ap. Ale TEX bývá součástí systému společně
s CSLATEXem.
2
Kapitola 1
První kroky
V celém následujícím textu si nekladu nároky na úplnost informací. Píšu pro
lidi, kteří nechtějí vědět hned všechno (pečlivky odkazuji na literaturu na
konci – začněte od Knutha nebo knihou The LATEX Companion). Většinou
se dá dosáhnout cíle více cestami, ale nám nyní postačí jenom jedna.
Nainstalování LATEXu dnes snad už není problém. Existuje instalace ve
stylu Windows – MikTeX, ale čeština je tu trochu problém, (viz kapitola 1.2).
Protože mám s tímto softem jistou zkušenost, budu se (bez újmy na obecnosti) odkazovat pouze na něj. Další možností je CD s TeXLive, tedy TEXem
spouštěným přímo z CD.
Máme tedy fungující instalaci. A vy máte první myšlenku, co byste chtěli
napsat. Nebudeme se tedy zdržovat přílišnou teorií a vrhneme se do psaní.
Jediné, co musíme vědět dopředu, je, že LATEX je kompilátor. Tedy v jednom souboru něco napíšeme, spustíme kompilátor a ten vygeneruje jiný soubor (XX.dvi), který si zase jiným programem prohlížíme. Schéma je na obrázku 1.1.
XX.tex ⇒ LATEX⇒ XX.dvi ⇒ prohlížeč
Obrázek 1.1: Zpracování LATEXového dokumentu
1.1
Prázdný dokument
Jak jsem slíbil, tak plním. Prázdný dokument bude obsahovat pouze slovo
„Ahojÿ, ale při kompilaci aspoň nebude hlásit chybu. Bude vypadat následovně:
Vytvořte textový soubor (pozor, musí být opravdu textový, tj. pokud si
ho budete prohlížet Notepadem, musí se zobrazit dobře).
3
Vstupní soubor
\documentclass{report}
\begin{document}
%tady budeme něco psát
Ahoj
\end{document}
Ahoj
Obrázek 1.2: Úplně první dokument
Celý text opište, uložte pod názvem pokus1.tex a spusťte LATEX.
Na disku by se vám měl vytvořit mimo jiné soubor pokus1.dvi. S ním je
v MikTeXu svázán prohlížeč Yap, který jej dokáže zobrazit. Spusťte jej (např.
dvojitým kliknutím na pokus1.dvi). Měla by se objevit prázdná stránka
s jediným slovem vlevo nahoře (viz obr. 1.2).
Gratuluji, toto je váš první dokument v LATEXu. Co která řádka v tomto
dokumentu znamená, si vysvětlíme v následujících kapitolách. Tady jenom
poznamenám, že znak procento začíná komentář, který se nebude zobrazovat.
Lze tam napsat např. poznámky k textu a já tak budu popisovat některé rysy
LATEXu.
1.1.1
Kam psát text
Když se dobře zadíváte na strukturu dokumentu, zjistíte, že na začátku je
uvedena definice documentclass. Ta udává, jakým stylem bude dokument
sázen. Hlavní možnosti jsou article – krátká zpráva, report – delší zpráva,
book – kniha.
Za documentclass lze uvést různé volitelné doplňky. Některé zásadní si
ukážeme v kapitole o češtině, některé „fajnovéÿ v posledních kapitolách.
Text, který chceme psát, musí být umístěn mezi \begin{document} a
\end{document}. Nikdy nelze psát jinam.
1.1.2
Slovo LATEX – makra
Systém LATEX je postaven na makrech. Makra se vyznačují tím, že začínají
znakem zpětné lomítko (\) a pokračují nějakým textem.1 Pokud vás zajímá,
1
Upozornění: LATEX rozlišuje malá a velká písmena!
4
jak se dá napsat taková věc, jako „LATEXÿ, pak stačí vědět, že existuje makro
\LaTeX, které jej vypíše.
Druhým příkladem bude tedy trošku zajímavější text:
Vstupní soubor
Výsledek
\documentclass{report}
\begin{document}
Toto je LATEX.
%tady budeme něco psát
Toto je \LaTeX.
\end{document}
Všechna makra tedy začínají znakem \. Ovšem mohou mít také argument.
Příkladem je makro \documentclass, které má jako argument seznam balíčků. Všechny povinné argumenty se zapisují do složených závorek. Makro
také může mít nepovinné parametry. Ty se pak zapisují do hranatých závorek:
\usepackage[cp1250]{inputenc}.
Kromě maker disponuje LATEX také prostředími. Tato prostředí umožňují různé chování, jako například umístění obrázku (viz kapitola 2.3).
1.2
Čeština
Možná jste si všimli, že jsem se doposud pečlivě vyhýbal všem českým znakům. Ty nám sice dovolují téměř fonologický zápis řeči, ale v počítačích dělají
stále problémy.
Pro řešení češtiny existují dvě cesty. První bude podpora češtiny přímo
z MikTeXu (babel). Její zápis je:
\documentclass{report}
% píšeme ve Windows, kódová stránka 1250
\usepackage[cp1250]{inputenc}
% fonty v kódování T1, aby se správně dělily slova
\usepackage[T1]{fonenc}
% Zapne češtinu (nadpisy)
\usepackage[czech]{babel}
\begin{document}
...
Babel ma několik poměrně zásadních omezení. Jednak nepohodlné psaní
českých uvozovek, horší je, že babel nepodporuje dělení slov s diakritikou.
Jde to spatlat dohromady, ale nevím jak a ani to nehodlám podstupovat.
Problém je neochota spolupráce vývojářů babelu s národními skupinami (v
našem případě s CSTUGem).
5
Druhá cesta je použití CSLATEXu, který byl vyvinut tuzemskými silami
a pravděpodobně (netroufám si rozhodovat) bude vytvářet dokumenty lépe
odpovídajícím místním zvyklostem. Rozdíl je také v tom, že nekompilujete
příkazem latex, ale cslatex.
\documentclass{report}
% píšeme ve Windows, kódová stránka 1250
\usepackage[cp1250]{inputenc}
% Zapne češtinu (nadpisy, dělení slov)
\usepackage{czech}
\begin{document}
...
Záleží na Vás, případně odborníkovi v okolí. Pakliže jsem ten odborník
já, doporučuji CSLATEX, protože funguje dobře za všech okolností. Kdyby se
náhodou objevila chyba, že se nemá používat \usepackage{czech}, tak to
znamená, že se tam vloudil babel. Najděte adresář babel a celý ho smažte.
1.3
1.3.1
Kapitoly, odstavce
Odstavec
Když už umíte vytvořit dokument s několika slovy, můžeme pokračovat. Písmena se skládají do slov oddělených mezerou, slova se skládají do odstavců.
A odstavce se oddělují prázdným řádkem.
LATEX ignoruje více mezer za sebou, stejně jako více prázdných řádků.
O tom, jak bude výsledný text vypadat (jak bude vysázen), rozhoduje LATEX.
Následující obrázek ukazuje dva odstavce za sebou:
První odstavec. text text text text text
text text
Druhý odstavec.
Tyto odstavce je možné zapsat se stejnými výsledky mj. následujícími
způsoby:
6
První odstavec. text
text text text text text
text
První odstavec.
text text
text
text text
text text
Druhý odstavec.
Druhý odstavec.
1.3.2
Kapitoly a spol.
Teď, když jsem od slov postoupili k odstavcům, budeme pokračovat definováním kapitol. LATEX definuje makra pro kapitoly (uvádím jen ty, které nás
zajímají):
• chapter
• section
• subsection
• subsubsection
Způsob vysázení nadpisů kapitol se řídí stylem, definovaným v záhlaví
(viz kapitola 1.1.1). Struktura tohoto článku je na následujícím obrázku:
\documentclass[a4paper,12pt,twoside,titlepage]{report}
...
\chapter{První kroky}
...
\section{Prázdný dokument}
...
\subsection{Kam psát text}
...
1.4
Drobky z typografie
Autoři píšící v LATEXu se liší od pisatelů ve Wordu minimálně několika znalostmi z typografie. Především nebudeme měnit velikost stránky. Od Guttenbergova vynálezu uplynula nějaká doba a vyvinula se metodika pro velikosti stránek. LATEX tuto metodiku obsahuje, takže ho necháme dělat jeho
práci.
7
Velmi oblíbeným nešvarem autorů, kteří chtějí využít možnosti techniky
až na dno, je používání velkého množství fontů. Myslí si, že dokument bude
vypadat lépe. Naopak, bude vypadat jako vývěsní štít kolotočářů. Na jednu
stranu by se měly použít maximálně tři fonty, a to ještě spíše výjimečně,
řekněme pro titulní stránku. Jako rozdílné fonty se počítají i různé styly
(bold, italic) i velikosti.
Při psaní se oprostěte od zvyků z psacího stroje! Používání podtrhávání tehdy mělo smysl, protože nebyla jiná cesta. Dnes, kdy můžete využít nejrůznějších možností zvýraznění textu, kdy můžeme sázet tučně –
\textbf{text} nebo zvýrazněně – \emph{text}, nemá podtržení opodstatnění a ruší plynulost textu.
1.4.1
Pomlčka, rozdělovník, minus
Doba psacích strojů také setřela rozdíl mezi pomlčkou, rozdělovníkem a minusem, protože na stroji na to všechno byl jeden znak. Hrubé rozdělení je
následující:
minus Minus je nejjasnější, používá se v matematice. Proto se v LATEXu
musí používat „matematický mód,ÿ tedy $-1$ ⇒ „−1ÿ
rozdělovník Rozdělovník je nejkratší. Používá se u spojky -li nebo při spojování slov (Rakousko-Uherský) a zapisuje se jednoduše znakem - ⇒
„-ÿ
pomlčka Pomlčka je v sazbě ve Wordu Popelka. Až novější verze ji samy
rozpoznávají a nahrazují správným znakem. V LATEXu -- ⇒ „–ÿ. Kolem
pomlčky se píší mezery. V Americe se používá dlouhá pomlčka (—) a
mezery kolem se nepíší.
1.4.2
Předložky na konci řádky
Nehezkou chybou by bylo nechávat na konci řádky neslabičné předložky (k,
v, s, z) a neměly by tam být ani jednohláskové předložky (o, u), ani spojky
(a, i).
Je problematické výskyt takových znaků hlídat. Proto LATEX umožňuje zadávat tzv. „tvrdouÿ mezeru. Je to znak ~. Takže můžeme psát: „ruka v rukávu
a vrabec v hrsti.ÿ Tvrdá mezera se chová jako znak ve slově, takže nemůže
zůstat na konci řádky.
A jelikož je i toto zadávání nám, líným to tvorům, dodává se s českou
distribucí program vlnka nebo v novější verzi vlna, který tuto práci zvládne
za nás.
8
Kapitola 2
Know How
2.1
Obsah
Obsah lze vygenerovat příkazem \tableofcontents. Ovšem je zde jeden
zádrhel. Protože zpracování je pouze jednoprůchodové, zapisuje se do zvláštního souboru obsah až při procházení jednotlivými kapitolami. Teprve při
druhém průchodu se tyto informace mohou použít.
LATEX na tento problém upozorňuje hláškou:
LaTeX Warning: Label(s) may have changed. Rerun to get
cross-...
Tak jste varováni, že máte překlad spustit ještě jednou.
2.2
Literatura
LATEX pochází z akademického prostředí, kde je otázka referencí velmi důležitá. Proto byla jistá pozornost věnována i literatuře.
Odkazy na literaturu se vždy provádí pomocí \cite{klíč}. Klíč je určen
k označení dané publikace.
Teď je ještě potřeba sepsat seznam literatury. Jednodušší, ale jednorázová
je možnost na konci uvést prostředí \thebibliography. Ovšem tak budete
muset definice vždy mezi dokumenty kopírovat.
\begin{thebibliography}{nejširší-klíč}
\bibitem[label]{klíč} Popis publikace
\end{thebibliography}
9
Druhá, trošku delší cesta, je sepsat seznam literatury do zvláštního souboru (databázi *.bib), který se potom k dokumentu připojí. LATEX potom při
první kompilaci uloží seznam citací (příkazů \cite). Potom musíte spustit
bibtex, který seznam zpracuje, projde databázi a vypíše odpovídající definice. Při druhém průchodu LATEX zařadí tento seznam na místo příkazu
bibliography.
...
\bibliographystyle{plain}
\begin{document}
...\cite{LatCompanion}
\bibliography{books}
\end{document}
Výhoda tohoto způsobu je v tom, že není třeba nic kopírovat a zápis
se provádí pouze do databáze (v tomto případě books.bib). Při zpracování
bude před koncem dokumentu uvedena literatura s klíčem LatCompanion.
Příkladem tohoto způsobu je i tento dokument.
Pokud budete potřebovat, aby byl v literatuře odkaz i na publikaci, která
není citována, můžete použít makro \nocite{klíč}.
2.3
Obrázky
Protože LATEX pracuje s vektorovým popisem stránky, je lepší používat také
vektorové obrázky. Takovým formátem, navíc široce používaným, je encapsulated postscript (EPS). Do dokumentu jej uložíte takto:
\begin{figure}[h]
\epsfig{file=soubor.eps, width=0.9\textwidth}
\caption{Popis obrázku}
\label{klíč}
\end{figure}
Vloží se soubor soubor.eps, šířka obrázku bude 90% šířky stránky. Pod
obrázkem bude popis a na číslo obrázku pomocí \ref{klíč}.
Další formáty lze vložit pomocí \includegraphics, viz jeho dokumentace.
Vřele doporučuji přečíst si dokument epslatex.ps. Obsahuje dlouhou řadu
tipů, jak s obrázky nakládat, včetně vychytávek jako několik obrázků vedle
sebe, otočení ap.
10
2.4
Odkazy
Velmi mocným nástrojem jsou odkazy. Na místech, na která se chcete odkazovat, umístíte příkaz \label{klíč}. Odkazovat se na něj budete příkazy
\pageref{klíč}, který uvede číslo stránky, a \ref{klíč}, který uvede číslo
kapitoly nebo obrázku ap. podle umístění \label{klíč} (v textu, v obrázku,
jinde).
Bonbónkem je balíček varioref, který umožňuje vkládat do textu odkazy
typu: „viz obrázek 8 na následující straně.ÿ Detaily viz jeho dokumentace.
2.5
Drobnosti
Mezi drobnosti zařadím poznámku pod čarou. Užitečná pomůcka – stačí
zadat \footnote{Poznámka pod čarou}1 .
Co když chcete použít makro LATEXnebo podobné pro vygenerování textu
a následující text se k němu „přilepíÿ jako na začátku tohoto odstavce? LATEX
totiž za makrem ignoruje mezery. Proto mu musíte mezeru vnutit pomocí
“\ ”. Správně je to – \LaTeX\ je dokonalý. Jiná možnost je použít prázdných složených závorek – \LaTeX{} je dokonalý.
Pokud jste došli až sem a všechno tohle umíte, je čas pustit se do nějaké
opravdové literatury. Určitě zjistíte, že možnosti jsou nekonečné (například
The LATEX Companion je ohromný zdroj informací a inspirace). Hodně zdaru.
1
Poznámka pod čarou
11

Podobné dokumenty

Package of programmes

Package of programmes O programu Graph_d jsem se již zmínil. Program slouží k vytváření grafů a histogramů hlavně ze souborů typu *.dbf. Umí ale vytvářet grafy i z textových souborů, které někde v sobě obsahují nějaké s...

Více

OPmac-bib – bibliografické odkazy jednoduše

OPmac-bib – bibliografické odkazy jednoduše formulované citace také připouštíme, ale nejsou obsahem našeho dalšího technického zkoumání. Nás bude především zajímat způsob odkazování na publikaci, odkud byla myšlenka převzata. Dokument, ze kt...

Více

Jak neutratit za hudbu na počítači

Jak neutratit za hudbu na počítači Aby mě to nemátlo, co je freeware a co mám v počítači nainstalováno z dřívější doby, vrátil jsem se k čisté instalaci systému (Windows XP), kde jsem kromě kancelářského balíku 602 (mimochodem též v...

Více

TR4W a CUC

TR4W a CUC 2) Dvě etapy po 15minutách. První etapa nám skončila a nyní nastává dilema jak program donutit, aby zrušil seznam už udělaných značek. Pokud by jsme pokračovali beze změn, tak by nám v módu S&P pr...

Více

09-2010 openMagazin 9/2010

09-2010 openMagazin 9/2010 neinformuje komunitu. I  proto už se nechtějí vázat k  další společnosti a  přiWebOS je další operační systém pro chytré telefony postavený na Linuxu. Vy- pravovaná Mageia bude čistě komunitním pro...

Více