Hlavní navigace

ConTeXt: jak to všechno rozchodit

Jakub Šťastný

V dnešním díle našeho seriálu se podíváme na instalaci, stručně se seznámíme s různými distribucemi TeXu, a naší pozornosti rozhodně neuniknou ani výstupní formáty nebo správné nastavení kódování dokumentu. A samozřejmě protože máme rozhled, podíváme se na to hezky v širším ConTeXtu.

Instalace v Linuxu

Jediné, co potřebujete, je nějaká distribuce TeXu. Linuxovou klasikou se postupem času stal teTeX. V Debianu, Ubuntu a podobných distribucích hledejte balíčky tetex-bin, tetex-base a tetex-extra, v ArchLinuxu a Gentoo je to jediný balíček tetex. Nicméně máte-li to Gentoo, nainstalujte si raději cstetex (pro ConTeXt to význam nemá, rozdíl poznáte, budete-li chtít zkusit konkurenční LaTeX nebo plain, potažmo jeho české varianty CSLaTeX a CSplain).

Poslední dobou proniká do mnohých distribucí balíček texlive, který je mnohem obsáhlejší a najdete tam velkou spoustu TeXovského software. Ovšem nic není zadarmo, a tak předem varuji, že texlive má kolem 700 MB (teTeX zhruba okolo 50 MB). Momentálně vím, že je třeba v Debianu, Ubuntu a Gentoo (ale tam je momentálně „masked”). Zda se vyplatí vybrat teTeX či TeXlive záleží na tom, nakolik chcete jít do hloubky, na začátek úplně v pohodě stačí teTeX.

Instalace pod Windows

V emailové konferenci CSTUGu jsem byl požádán, abych se zabýval i ConTeXtem pod Windows. Bohužel mi nebylo přáno se TeXem pod Windows nějak podrobněji zabývat, neboť jednak sám Windows nevlastním (není třeba posílat soustrastné příspěvky na mou adresu, já už se bez nich nějak obejdu) a za druhé když jsem se k nějakým konečně dostal, štěstí mě zrovna dvakrát neprovázelo. Ledacos jsem sice zjistil, ale není to moc spolehlivě podloženo zkušeností jako spíše Googlem, takže pokud máte k tomu co říci, určitě neváhejte psát do diskuse.

MikTeX

MikTeX je nejspíše nejčastěji používaná TeXová distribuce pro Windows. Roste na www.miktex.org.

Mimochodem MPM (MikTeX package manager) je k dispozici i pro Linux, ale do distribucí se zatím moc nerozšířil. Jak se instaluje MikTeX je popsáno v tomto step by step návodu, popřípadě také v tomto ještě podrobnějším návodu.

TeX-live

Jednoznačná výhoda TeX-live je, že jej není vůbec třeba instalovat. Tedy alespoň pokud použijete DVD edici, edice na CD je určena výhradně k instalaci. Mimochodem tento postup lze uplatnit i u PC s Linuxem, což se hodí, pokud zrovna nemáte superuživatelská oprávnění.

K Tex-live lze najít poměrně hodně dokumentace. Užitečná je zejména oficiální příručka (je přeložena do naší mateřštiny), k dispozici je i velmi krok za krokem instalační příručka (bohužel není úplně aktuálního data, ale i tak pomůže). Další podobnou, ale novější jsem nalezl jako soubor PDF.

Další nezbytnosti

Nezbytné je nainstalovat GhostScript a GSView a samozřejmě potřebovat budete také PDF prohlížeč.

Editory a IDE

Pokud se rozhodnete TeXovat ve Windows, mohu vás potěšit informací, že jak Vim, tak Emacs jsou na tento operační systém portovány. Pokud hledáte něco méně hardcorového, použijte třeba editor Scite.

Preferujete-li kompletní vývojové prostředí, budete mít situaci výrazně horší – shareware WinEdt nebo nekomerční WinShell či TeXnicCenter editor jsou určeny pro LaTeX. V současné době tedy nevím o žádném vývojovém prostředí pro ConTeXt.

Základní nastavení

Kódování

V době, kdy Knuth programoval TeX, chodilo unicode ještě po houbách. Za interní kódování TeXu bylo zvoleno ASCII a všechno ostatní se na úrovni input procesoru do ASCII konvertuje.

V ConTeXtu se to ošetřuje jednoduše:

\setupencoding[kódování]

Nejčastější volby budou patrně utf pro UTF-8 a latin2 pro ISO-8859–2.

Výstupní formát

\setupoutput[výstupní formát]

ConTeXt defaultně sází do formátu dvi. To je formát vyvinutý Knuthem právě kvůli TeXové sazbě. Jakkoliv byl navržen velmi moudře – pokud nemusíte, raději tento formát nepoužívejte. Do značné míry si tím zkomplikujete použití barev, o obrázcích ani nemluvě. Ani jedno z toho tento formát sám o sobě neumí, lze je tam sice dostat příkazem \special, ale proč, když tu máme elegantnější možnosti. A to raději ani nemluvím o tom, co se stane, když dokument v DVI pošlete svému nepříliš počítačově znalému kamarádovi.

Osobně za nejvhodnější považuji výstup do pdf skrze PDFTeX příkazem \setupoutput[pdftex]. PDFTeX je stoprocentně kompatibilní s původním Knuthovým TeXem, ale umí sázet do PDF a přidává nová primitiva (například pro práci s barvou). Jen tak pro zajímavost – jeho vývoj byl započat Hanem The Thanhem v Brně na fakultě informatiky. Šířen je pod GNU GPL.

Další volbou je použití výstupu do postscriptu skrze \setupoutput[dvips]. Sám jsem tento způsob nikdy nevyužil, nicméně když jsem jej zkoušel teď, tak mi dvips neustále házelo chybu, ať při přímém použití nebo při volání z ConTeXtu. Komu se povede přesvědčit dvips ke spolupráci, může napsat do diskuse.

ConTeXt se snaží dávat možnost mnohé parametry zpřístupnit i z příkazové řádky. Nejinak je tomu i v tomto případě:

texexec --pdf file            # skrze PDFTeX
texexec --output=dvips file   # skrze DVIPS

Zdá se vám to jako dobrý nápad? To ovšem zdaleka není všechno. ConTeXt umožňuje definovat v dokumentu, jak se má který úsek TeXtu chovat za předpokladu, že bude sázet v sazbě do konkrétního typu souboru. Třeba že při sazbě do DVI nemá smysl řešit hypertextové odkazy a podobně. Jen podotýkám, že ConTeXt podporuje daleko více možností výstupu, ale protože málokdo jinou volbu použije, tak je nezmiňuji.

Závěr

Toto je poslední z těch vyloženě teoretických dílů. Možná to bylo pro vás trochu vysilující (pro mne taky), vydržte – teď už bude následovat převážně praxe. V příštím díle nás čeká cesta řezy písem a možná zbyde čas i na hierarchickou strukturu dokumentu.

Odkazy

Našli jste v článku chybu?
11. 11. 2008 17:10
uživatel si přál zůstat v anonymitě
Lidi probuďte se, doba se posunula. Je potřeba zapomenout na půldení boje s kompilací csTeXu, stačí použít (ehm) nové LM fonty. Takže \usepackage{cmap} \usepackage[T1]{fontenc} \usepackake{lmodern} \usepackage[czech]{babel} je ta pravda, která by se měla šířit dnes
2. 10. 2007 17:43
ourada (neregistrovaný)
Zdravim. Nebylo by mozne Vami vytvoreny navod zaslat emailem? ( ourada(at)email.cz ) Na odkazovane adrese jiz neni bohuzel k dispozici. :-( Dekuji