TeX

Z Wikipedie, otevřené encyklopedie
TeX
Logo
VývojářDonald Knuth
První vydání1978
Aktuální verze3.14159265 (březen 2014)
Operační systémMultiplatformní
Vyvíjeno vWEB, Pascal a Stanford Artificial Intelligence Language
Typ softwaruDTP
Licencevolně modifikovatelný, ale výsledný program se nesmí jmenovat TeX
Webhttp://www-cs-faculty.stanford.edu/~knuth
Některá data mohou pocházet z datové položky.

TeX (formátováno ) je program pro počítačovou sazbu. Vytvořil jej profesor Donald Ervin Knuth, který v 70. letech 20. století nebyl spokojen s tím, jak školní nakladatelství sázelo jeho skripta určená studentům (ve skriptech se objevovalo mnoho chyb, především v matematických vzorcích, a ani typografie za mnoho nestála).

TeX je velmi populární zejména v akademických kruzích, zvláště v oborech jako je matematika, fyzikainformatika. Uplatnění ale může najít i v jiných oborech, např. humanitních – sazba je kvalitní nejen v případě matematiky, ale také v případě znaků různých abeced. Tímto programem byl z větší části vytlačen troff, formátovací systém preferovaný na mnoha Unixech. K dispozici je mnoho rozšiřujících balíků od velmi početných komunit uživatelů. Například existují balíky pro sazbu textu v podobě čárového kódu nebo vysázení obrázku situace šachové partie pomocí jediného příkazu. Taktéž existují komerční programové balíky.

(Poznámka k výslovnosti: TeX se vyslovuje „tech“ (v angličtině též „tek“), protože jeho název není psán latinkou, ale řecky, takže poslední písmeno v názvu je řecký znak chí. Název je inspirován starořeckým slovem τέχνη, znamenajícím „umění“, „dovednost“).

TeX je obecně považován za nejlepší nástroj pro sazbu složitých matematických vzorců. Je však hojně používán i v běžné sazbě, stejně tak jako jeho odvozeniny a nadstavby, zvláště pak balík maker LaTeX. I Wikipedie používá na svých stránkách tento systém pro matematické výrazy.

Zajímavostí je způsob označování verzí programu: místo tradičního zvyšování čísla verze se označení verze TeXu prodlužuje o další číslici desetinného rozvoje Ludolfova čísla. Za nalezení chyby v programu nabízí Donald Knuth odměnu, která v současné době činí $327,68. Další zajímavostí je skutečnost, že Donald Knuth vyjádřil přání, ať bezprostředně po jeho smrti přestane být TeX dále vyvíjen a verze aktuální v toto datum se stane verzí finální, označenou právě číslem pí.

TeX umí rozpoznat ve zdrojovém textu přibližně 300 základních povelů („primitivní funkce“), které umožňují nejen přímo ovlivňovat tvorbu stránky, ale také ovlivňovat chování TeXu při zpracování vstupního textu a tím dosahovat různých efektů, jenž často zjednodušují přípravu vstupního textu. Všechny povely pro TeX se zapisují do zdrojového textu, typicky jako sekvence znaků uvozené zpětným lomítkem.

Primitivní funkce je možné rozdělit do několika skupin:

  • Primitivní funkce ovlivňující načítání vstupního textu.
  • Primitivní funkce umožňující zadávání nových symbolických názvů pro různé objekty.
  • Primitivní funkce definující nová makra.
  • Primitivní funkce nastavující různé číselné parametry.
  • Primitivní funkce umožňující specifické formátování výstupu – zejména vytváření boxů a tabulek.
  • Primitivní funkce ovlivňující zlom odstavců (včetně dělení slov).

V České republice TeX propaguje zejména Petr Olšák, který o něm napsal množství článků a podrobnou referenční knihu TeXbook naruby.

Formáty

Samotný program TeX rozumí pouze sadě elementárních příkazů (primitivních funkcí), které pokrývají základní sázecí operace a programovací funkce. Umožňují však, aby byly na jejich základě definovány komplexnější příkazy na vyšší úrovni (makra). Tímto způsobem lze z nízkoúrovňových stavebních bloků sestavit uživatelsky přívětivější prostředí.

Vytváření nových formátů (označovaných též jako balíky maker) je záležitost především pro velmi zběhlé programátory. Definice se zapisují do zdrojového souboru, který se následně zpracuje speciální verzí programu TeX s názvem iniTeX, jenž uloží definice v kompaktní podobě tak, aby ho běžný program TeX mohl rychle načíst.

PlainTeX

Sám o sobě je TeX uživatelsky velmi nepřívětivý. Proto Donald E. Knuth napsal balík maker pro použití s TeXem, který nazval PlainTeX. Tento poměrně jednoduchý formát je někdy zaměňován se skutečným programem TeX, čemuž napomáhá také fakt, že PlainTeX tvoří základ některých dalších formátů.

LaTeX

Podrobnější informace naleznete v článku LaTeX.

Z důvodu programátorské náročnosti roku 1985 sestavil americký počítačový specialista Leslie Lamport formát LaTeX, který poskytuje sadu maker (příkazů vyšší úrovně) pro vytváření komplexních dokumentů. Pomocí tohoto formátu může dokonce i uživatel bez znalostí sazby nebo programování využívat rozsáhlých výhod nabízených programem TeX a je schopný za několik dní vytvořit rozmanité textové výstupy v knižní kvalitě. To platí především pro vytváření tabulek a psaní matematických textů.

LaTeX je mnohem více značkovací jazyk než původní PlainTeX, na němž je založen. Integruje podporu pro členění textu, živá záhlaví, obsah, křížové odkazy, číslování rovnic, citace, plovoucí tabulky a obrázky, aniž by autor musel vědět, jak se má všechno formátovat. Informace o souboru jsou uloženy v souborech tříd, na které vstupní text odkazuje, ale které v něm nejsou zahrnuty. Díky tomu lze přímo použít předdefinovaný design bez dalších úprav.

LaTeX byl od svého uvedení v polovině osmdesátých let pravidelně aktualizován a revidován. Po mnoha letech bylo číslo verze ustáleno na 2.09 a revize byly označeny pouze datem svého vzniku. Poslední významnější aktualizace proběhla 1. prosince 1991 a drobnými opravami 25. března 1992 a od této doby se LaTeX 2.09 již nezměnil.

LaTeX 2ε

Díky velmi vysoké popularitě, kterou si formát LaTeX získal, a také zásluhou pokroku v oblasti počítačové technologie, vzniklo velké množství variací tohoto formátu nesoucích označení LaTeX. Ve snaze obnovit opravdový, vylepšený standard spustili pánové Leslie Lamport, Frank Mittelbach, Chris Rowley a Rainer Shöpf v roce 1989 Projekt LaTeX 3. Cílem tohoto projektu je sestavit optimalizovanou a výkonnou sadu základních příkazů doplněnou různými balíčky, které podle potřeby doplní specifické funkce.

Jak naznačuje již samotný název projektu, jeho snahou je dosáhnout verze 3 formátu LaTeX. Nicméně protože se jedná o cíl dlouhodobý, prvním krokem k jeho dosažení bylo vydání verze LaTeX 2ε v polovině roku 1994, společně s publikací druhé edice Lamportovy základní příručky a doplňkově knihy (Goossens et al., 1994) popisující celou řadu dostupných rozšiřujících balíčků a LaTeXové programování v novém systému. Nejaktuálnější, třetí kniha (Goossens et al., 1997) pojednává o začlenění grafiky a barev do textu, což byly dvě počáteční slabiny LaTeXu. V současné době se verze LaTeX 2ε stala standardem až do vydání slíbené verze LaTeX 3 někdy v budoucnu.

XeTeX

Podrobnější informace naleznete v článku XeTeX.

XeTeX je formát TeXu, který v roce 2004 vytvořil Jonathan Kew. Na rozdíl od plain TeXu interně pracuje v Unicode a umožňuje přístup k fontům instalovaným v operačním systému.

LuaTeX

LuaTeX spojuje TeX a programovací jazyk Lua.

ConTeXt

Oproti ostatním je to poměrně mladý balík maker. Oproti nejvíce používanému LaTeXu má pár výhod, které ho přímo charakterizují.

ConTeXt je velice provázaný s ostatním softwarem jako MetaPost, MetaDVIPS a pdfTeX, což markantně zjednodušuje práci s dokumenty a kompletní nastavení jejich vzhledu a samotných stránek. Vše ale není tak krásné jak to zprvu vypadá a i ConTeXt má své stinné stránky.

Jeho podpora mezi uživateli není tak rozsáhlá jako u LaTeXu, což se podepsalo na jeho dokumentaci, která není tak všeobecně rozsáhlá a je víceméně pouze v angličtině, nicméně je velmi detailní.

Související články

Externí odkazy