Seminář o TeXu
V zimním semestru 2020/2021 vedeme s Vladanem Majerechem Seminář o TeXu. Spíš než uživatelskému pohledu na TeX se věnujeme tomu, jak TeX funguje uvnitř, jaké algoritmy používá a jak ho přiohnout pro různé méně obvyklé účely. Také se chceme zabývat různými rozšířeními TeXu, jako je pdfTeX a LuaTeX. Seminář se koná jednou za dva roky.
Seminář se koná online v pondělky od 14:00.
Zápočet si vysloužíte za vyřešení alespoň 7 domacích úkolů. Odkaz na Zoom a na odevzdávací systém jste obdrželi mailem.
Dotazy a připomínky prosím posílejte e-mailem na tex@ucw.cz.
| datum | co jsme dělali |
|---|---|
| 5. 10. | Jak TeX interaguje s okolím. První představení algoritmu na odstavcový zlom. Výpočet demerits a odstavcový zlom jako nejkratší cesta v grafu. |
| 12. 10. | Anatomie horizontálnich seznamů. Algoritmus pro sestavení boxu a výpočet badness. Jak vzniká horizontální seznam: kerning, ligatury, mezislovní mezery, automatické dělení slov. |
| 19. 10. | Šest módů a přechody mezi nimi. Automatické mezery v řádkových boxech: indent, left/right-skip, parfillskip. Tvarování odstavců: hangindent, parshape a looseness. Jak vzniká vertikální seznam: penalty, meziřádkové mezery, topskip. |
| 26. 10. | Resty z minula: parskip. Různé druhy registrů a aritmetika s nimi. Boxové registry. Základní algoritmus plnění a zlomu stránek. |
| 2. 11. |
\vsplit.
Zlom stránek s inserty. Output routiny a jejich úskalí.
Plainová output routina. Jak funguje \raggedbottom.
|
| 9. 11. | Práce s marky. Input procesor, token procesor, expand procesor. |
| 16. 11. |
Expand procesor: edef a spol., \the, \csname,
\string, \noexpand a \expandafter.
|
| 23. 11. |
Podmínky, idiomy pro cykly, \loop...\repeat.
Jak se liší \begingroup, \bgroup a {.
Token-listové registry.
Konstrukce \every*, \after* a \futurelet.
Výroba znaku s libovolnou kategorií pomocí \uppercase.
|
| 30. 11. |
Sazba tabulek pomocí \halign a \valign.
Leaders.
Práce se soubory, whatsity \write a \special.
|
| 7. 12. | Tajemství expanze v tabulkách. Základy matematického módu. |
| 14. 12. |
Dodatky k matematickému módu: mezery kolem atomů, displayed math a čísla rovnic,
\eqalign a \eqalignno.
Fonty a jejich metriky, primitiva pro přepínání fontů.
Sazba postscriptovými a TrueType fonty.
|
| 21. 12. |
Program dvips a jeho speciality.
Rozšíření TeXu: TeX-XeT, mlTeX, encTeX, ε-TeX, pdfTeX, XeTeX, LuaTeX, LuaHBTeX
a další příbuzní.
Podrobněji o encTeXu a ε-TeXu.
|
| 4. 1. | Engine pdfTeX. Mikrotypografická rozšíření. UNIXová instalace TeXu a TeXlive, jak se používá kpathsea. |
Literatura
- Minulý ročník semináře
- Donald Knuth: The TeXbook. (Addison-Wesley Professional, 1984, ISBN 0201134489)
- Donald Knuth: TeX: The Program. (Addison-Wesley Professional, 1986, ISBN 0201134373)
- Petr Olšák: TeXbook naruby. (2. vydání, Konvoj, 2001, ISBN 8073020076)