TEX-Collection 2005
Příručka TEX Live, CS verze 1.28

Sebastian Rahtz & Karl Berry, editoři
http://tug.org/texlive/

1. listopadu 2005

Překlad 2003 Petra Sojková, 2003, 2004, 2005 Petr Sojka, 2001 Janka Chlebíková, a 2004, 2005 Ján Buša je šířen pod GNU FDL licencí.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.

Obsah

1 Úvodem
 1.1 Základy použití TEX Live
 1.2 Nápověda
2 Struktura TEX Live
 2.1 Několik distribucí: live, inst, protext
 2.2 Popis kořenových adresářů
 2.3 Přehled předdefinovaných stromů texmf
 2.4 Rozšíření TEXu
 2.5 Další za zmínku stojící programy na TEX Live
3 Instalace na Unixu
 3.1 Spouštění TEX Live přímo z média (Unix)
 3.2 Instalace TEX Live na disk
 3.3 Instalace jednotlivých balíků na disk
4 Po instalaci
 4.1 Program texconfig
 4.2 Testování instalace
5 Instalace pod Mac OS X
6 Instalace pod Windows
 6.1 Instalace TEX Live na disk
 6.2 Podpůrné balíky pro Windows
7 Údržba instalace vo Windows
 7.1 Přidání/odebrání balíků
 7.2 Konfigurace a další správcovské úkoly
 7.3 Odinstalování TEX Live
 7.4 Přidání vašich vlastních balíků k instalaci
 7.5 Spuštění programu tlmp.exe z příkazové řádky
 7.6 Síťová instalace
 7.7 Co je pod Windows jiného?
 7.8 Osobní konfigurace
 7.9 Testování
 7.10 Tisk
 7.11 Tipy a triky pro Win32
 7.12 V případě obtíží
8 Používateľská príručka ku systému Web2C
 8.1 Vyhľadávanie ciest knižnicou Kpathsea
 8.2 Súborové databázy
 8.3 Možnosti nastavenia za behu programu
9 Poděkování
10 Trocha historie
 10.1 Minulost
 10.2 Současnost
 10.3 Budoucnost

Seznam tabulek

Podporované systémové architektury.
Volby hlavního menu pro instalaci

1 Úvodem

Tento dokument popisuje základní vlastnosti distribuce TEX Live 2005, což je instalace TEXu a přátel pro GNU/Linux a další unixové systémy, Mac OS X a (32-bitové) systémy Windows. Instalace není určena pro starší Mac a MS-DOS systémy.

TEX Live obsahuje .exe soubory pro TEX, LaTeX2e, ConTEXt, Metafont, METAPOST, BibTeX a mnoho dalších programů včetně obsáhlého seznamu maker, fontů a dokumentace spolu s podporou sazby v mnoha různých světových jazycích. Je částí mnohem větší TEX-kolekce (krátce popsané dále v oddíle 2, na straně 7), spolu jsou výsledkem společného úsilí skupin uživatelů TEXu.

Aktuální verze použitého software je v archívu CTAN na http://www.ctan.org.

Pro krátký seznam hlavních změn v této verzi TEX Live nahlédněte na konec tohoto dokumentu, do oddílu 10 na straně 76.

1.1 Základy použití TEX Live

TEX Live lze použít třemi základními způsoby:

  1. Můžete spustit TEX Live přímo z live DVD (viz 2.1 na straně 7). Pro toto užití nepotřebujete téměř žádný diskový prostor. Dává vám to okamžitý přístup ke všemu na TEX Live. Výkon bude samozřejmě horší než při spouštění z pevného disku, ale může se vám to někdy dobře hodit.
  2. Můžete instalovat části TEX Live na lokální disk z DVD nebo z inst CD. To je nejčastější využití TEX Live. Budete potřebovat (přibližně) 100 megabytů pro nejmenší systém, i a o něco víc než 1.3 gigabytů pro plný systém.
  3. Můžete integrovat příslušný balík nebo kolekci do svého současného systému, nebo dříve instalovaného systému TEX Live, nebo jiného systému.

Každá z těchto možností je popsána detailně v následujících sekcích členěných dle OS, zde jen souhrn:

1.2 Nápověda

TEXovská komunita je aktivní a vstřícná a téměř všechny seriozní otázky jsou obvykle zodpovězeny. Podpora je neformální, je prováděna příležitostnými čtenáři a dobrovolníky, a proto je důležité, abyste svou domácí úlohu udělali předtím, než vznesete dotaz. (Pokud toužíte po garantované komerční podpoře, můžete na TEX Live zapomenout a zakoupit komerční distribuci; viz http://tug.org/interest.html#vendors pro seznam prodejců.)

Níže je uveden seznam informačních zdrojů, přibližně v pořadí, ve kterém ho doporučujeme k použití:

první kroky
Pokud jste TEXovský nováček, na stránce http://tug.org/begin.html najdete krátký úvod do systému.
TEX FAQ
TEX FAQ je obrovská studnice znalostí na všechny druhy otázek, od těch základních až po ty nejobskurnější. Dokument najdete na TEX Live v adresáři texmf-doc/doc/english/FAQ-en nebo na Internetu na http://www.tex.ac.uk/faq. Prosíme, začněte své hledání odpovědi zde.
TEX Catalogue
Pokud hledáte konkrétní balík, font, program ap., TEX Catalogue je místo, kde začít. Je to obsáhlá sbírka TEXových položek. Viz texmf-doc/doc/english/catalogue nebo http://www.ctan.org/tex-archive/help/Catalogue.
TEXové odkazy na Webu
Na http://tug.org/interest.html najdete mnoho relevantních odkazů na různé příručky, knihy, manuály a články o všech aspektech systému TEX.
archívy diskusních skupin

Dvě základní fóra pro hledání řešení problémů jsou newsová skupina news:comp.text.tex a emailová diskusní skupina texhax@tug.org. V archívech těchto zdrojů najdete tisíce předchozích dotazů a odpovědí čekajících na vaše hledání. Nahlédněte na http://groups.google.com/groups?group=comp.text.tex, respektive na http://tug.org/mail-archives/texhax. Dotazem do obecného vyhledávacího stroje jako http://google.com také nic nepokazíte a pro specifika češtiny a slovenštiny najdete další zdroje odkazované na http://www.cstug.cz.

kladení dotazů
Pokud nemůžete najít odpověď na svou otázku, můžete ji položit na news:comp.text.tex přes Google nebo vašeho newsového klienta nebo emailem na texhax@tug.org. Ale dříve, než tak učiníte, prosím, přečtěte si toto doporučení, jak klást otázku tak, že pravděpodobně i dostanete odpověď: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion.
podpora TEX Live
Pokud chcete poslat chybové hlášení, připomínku nebo poznámku k distribuci TEX Live, její instalaci nebo dokumentaci, diskusní skupina k tomu určená je tex-live@tug.org. Pokud však je vaše otázka specifická pro program na TEX Live umístěný, pište raději přímo autorovi nebo do diskusní skupiny určené pro tento program.

Druhou stranou mince je odpovídání dotazů těch, kdo kladou otázky. news:comp.text.tex i list texhax jsou otevřeny pro kohokoliv. Přihlaste se, naslouchejte a začněte odpovídat tam, kde můžete. Vítejte ve světě TEXu!

2 Struktura TEX Live

Tento oddíl popisuje strukturu a obsah TEX Live a TEX-kolekce, které je částí.

2.1 Několik distribucí: live, inst, protext

Počínaje rokem 2003 nás prostorová omezení formátu CD-ROM donutila rozdělit TEX Live na více distribucí:

live
Úplný systém na DVD-ROM (pro CD-ROM je příliš obsáhlý). Může být spouštený přímo nebo nainstalován na disk. DVD také obsahuje kopii archívu CTAN, distribuci protext pro Windows a MacTEX distribuci Mac OS X, které jsou na TEX Live zcela nezávislé, a také sadu dalších balíků v adresáři texmf-extra.

CTAN, protext, MacTEX a texmf-extra se řídí odlišnými podmínkami kopírování než TEX Live, proto při redistribuci nebo modifikaci buďte pozorni.

inst(alovatelný)
Úplný systém na CD. Abychom na něj všechno směstnali, museli jsme zkomprimovat, co jen šlo. Proto nejde TEX spouštět přímo z CD, ale musí se instalovat na disk (odtud jméno distribuce). Postup instalace naleznete v dalších oddílech.
protext
Rozšíření systému MiKTEX pro Windows. ProTEXt přidává k MiKTEXu nové doplňkové nástroje a zjednodušuje instalaci. Je plně nezávislý na TEX Live a má své vlastní příkazy. Může být spouštěný živě, anebo instalován na disku. Domovská stránka ProTEXt je http://tug.org/protext.

ProTEXt je poskytován v kořenovém adresáři live DVD  nebo na svém vlastním CD (pro ty, kteří nemohou použít DVD).

Jakou používáte distribuci, zjistíte náhledem souboru 00type.TL na začátku adresáře TEX Live. Tento soubor obsahuje také informaci o datu vydání TEX Live.

Přirozeně, každá skupina uživatelů se rozhodne, co distribuovat, podle vlastních potřeb. (TUG i CSTUG zasílá všechny tři zmíněné disky všem svým členům.)

2.2 Popis kořenových adresářů

V kořenovém adresáři distribuce TEX Live najdete následující podadresáře. Na live DVD, je celá TEX Live hierarchie v podaresáři texlive2005 a ne v kořenovém adresáři disku.

bin

Binárky, s podadresáři dle platforem.

source

Zdrojové kódy všech programů, včetně distribuce Web2C TEXu a Metafontu. Jsou v bzip2-zkomprimovaných archívech tar.

support

Pomocné balíky a programy. Automaticky nejsou instalovány: některé editory a TEXová vývojová prostředí.

texmf

Strom programů společně s jejich podpůrnými soubory a dokumentací. Nezahrnuje formáty TEXu a balíky. (TEXMFMAIN v následujícím oddíle.)

texmf-dist

Hlavní strom formátů a balíků. (TEXMFDIST v následujícím oddíle.)

texmf-doc

Strom samostatné čisté dokumentace, uspořádán podle jazyků.

texmf-var

Strom pro soubory automaticky generované a uložené. (TEXMFSYSVAR v následujícím oddíle.)

xemtex

Strom pro pomocné programy používané jenom pod Windows. Tyto programy jsou obvykle na unixových systémech nainstalovány nebo jsou alespoň snadno zkompilovatelné.

V kořenovém adresáři distribuce jsou navíc instalační dávky a soubory README (v různých jazycích).

Adresář texmf-doc obsahuje pouze dokumentaci, ale ne úplnou. Dokumentace programů (manuály, man-stránky, info-soubory) jsou v texmf/doc, protože programy jsou v adresáři texmf. Podobně, dokumentace TEXových balíků a formátů je v texmf-dist/doc. K vyhledání veškeré dokumentace na libovolném místě můžete použít programy texdoc nebo texdoctk. Souhrnné odkazy v kořenovém souboru doc.html mohou být také užitečné.

2.3 Přehled předdefinovaných stromů texmf

Tento oddíl uvádí seznam všech předdefinovaných proměnných určujících stromy texmf, používaných systémem a jejich zamýšlený účel. Povel texconfig conf vám ukáže hodnoty těchto proměnných, tedy můžete jednoduše zjistit jak tyto odpovídají názvům adresářů ve vaší instalaci.

TEXMFMAIN
Strom obsahující životně důležité části systému, jako skripty pomocníka (např. web2c/mktexdir), pool-soubory a jiné podporné soubory.
TEXMFDIST
Strom obsahující hlavní sadu balíků maker, fonty, atd., z původní distribuce.
TEXMFLOCAL
Strom, který můžou použít administrátoři na instalaci doplňkových nebo obnovených maker, fontů, atd., pro celý systém.
TEXMFHOME
Strom, který můžou použít uživatelé na svoje osobní instalace doplňkových nebo obnovených maker, fontů, atd. Rozšíření této proměnné závisí implicitně na proměnné $HOME, která dynamicky nastaví zvláštní adresář pro každého uživatele.
TEXMFCONFIG
Strom používán nástroji teTEXu texconfig, updmap a fmtutil na uložení modifikovaných konfiguračních údajů. Implicitně pod $HOME.
TEXMFSYSCONFIG
Strom používán nástroji teTEXu texconfig-sys, updmap-sys a fmtutil-sys na uložení modifikovaných konfiguračních údajů.
TEXMFVAR
Strom používán programy texconfig, updmap a fmtutil na (cache) uložení runtime údajů jako jsou soubory formátů a generované map-soubory. Implicitně pod $HOME.
TEXMFSYSVAR
Strom používán programy texconfig-sys, updmap-sys a fmtutil-sys na (cache) uložení runtime údajů jako jsou soubory formátů a generované map-soubory.

Další rozhovor o příkazu texconfig a příbuzných pomůckách, viz oddíl 4.1, na straně 28.

2.4 Rozšíření TEXu

TEX Live obsahuje několik rozšířených verzí TEXu:

e-TEX
přidává malou, ale mocnou množinu nových příkazů (nazývaných TEXové primitivy). Nové příkazy se například týkají makroexpanze, načítání znaků, tříd značek (marks), a rozšířených ladicích možností, a rozšíření TEX--XE T pro obousměrnou sazbu. Implicitně je e-TEX 100% kompatibilní se standardním TEXem. Viz texmf-dist/doc/etex/base/etex_man.pdf.
pdfTEX
je schopen kromě DVI zapisovat výsledek i ve formátu PDF firmy Adobe. LATEXový balík hyperref má volbu ,pdftex‘, která aktivuje funkcionalitu programu. Viz návod v adresáři texmf/doc/pdftex/manual/ a texmf/doc/pdftex/manual/samplepdf/samplepdf.tex.
pdfeTEX
kombinuje rozšíření pdfTEX a e-TEX. Je to implicitní program pro všechny formáty kromě plain TEXu. Dokumentaci viz výše.
Omega (Omega)
je založena na Unicode. Umožňuje sázet v téměř všech světových jazycích zároveň. Dociluje toho tzv. překladovými procesy (Omega Translation Processes, OTP) pro realizaci složitých transformací na jakémkoliv vstupu. Viz texmf/doc-dist/omega/base/doc-1.8.tex (dokumentace však není zcela aktuální).
Aleph
kombinuje rozšíření Omega a e-TEX. Pro minimální dokumentaci viz texmf-dist/doc/aleph/base.

2.5 Další za zmínku stojící programy na TEX Live

Na TEX Live najdete několik často používaných programů:

bibtex
podpora práce se seznamem literatury.
makeindex
vytváření rejstříku, pro češtinu a slovenštinu ve verzi csindex.
dvips
pro konverzi DVI do PostScript.
xdvi
prohlížeč DVI pro systém X Window.
dvilj
DVI ovladač tiskáren HP LaserJet.
dv2dt, dt2dv
pro konverzi DVI do/z ascii textu.
dviconcat, dviselect
pro kopii a vkládání stránek do/z DVI souborů.
dvipdfmx
konvertor DVI do PDF, alternativní přístup vedle pdfTEXu zmíněného výše. Srovnej balíky ps4pdf a pdftricks pro další alternativy.
psselect, psnup, ...
programy pro práci s PostScriptem.
lacheck
pro kontrolu syntaxe LATEXu.
texexec
wrapper pro ConTEXt a práci s PDF.
tex4ht
konvertor TEXu do HTML.

3 Instalace na Unixu

Jak již bylo zmíněno v oddíle 1.1 na straně 5, TEX Live má tři základní užití:

  1. použití přímo z média,
  2. instalace na disk nebo
  3. integrace konkrétního balíku či kolekce do vaší existující TEXové instalace.

V následujících sekcích popíšeme pro Unix specifické postupy pro každé výše zmíněné užití.


Varování: Kolekce na CD i DVD jsou ve formátu ISO 9660 (High Sierra), včetně rozšíření Rock Ridge (a Joliet pro Windows). Proto váš unixový systém musí být schopen využívat rozšíření Rock Ridge. Ověřte tedy v dokumentaci příkazu mount, jak toho docílit. Pokud máte na své lokální síti několik různých strojů, namontujte média na takovém stroji, který Rock Ridge podporuje, a použijte je na ostatních.

Moderní systémy by měly používat disky bez problémů. V případě problémů nám dejte vědět. V dalším předpokládáme, že jste schopni namontovat Rock Ridge kompatibilní CD.


3.1 Spouštění TEX Live přímo z média (Unix)

TEXový systém můžete spouštět přímo z live DVD, bez instalace distribuce na disk. (Odtud název ,TEX Live ‘.) TEX nejde spouštět přímo z jiných CD (viz oddíl 2.1 na straně 7). Na začátku musíte namontovat CD resp. DVD a povolit rozšíření Rock Ridge. Konkrétní příkaz se liší systém od systému. Níže uvedené funguje pod Linuxem (název zařízení /dev/cdrom se může lišit, stejně tak název souborového systému: Solaris například pro ISO 9660 používá název hsfs – souborový systém High Sierra). Všechny příklady používají > jako prompt shellu, vstup uživatele je podtržený.)

> mount -t iso9660 /dev/cdrom /mnt/cdrom

Změňte aktuální adresář do právě namontovaného adresáře:

> cd /mnt/cdrom

Pod Mac OS X je adresář typicky pod /Volumes a zařízení bude namontováno automaticky. Spusťte instalační dávku install-tl.sh:

> sh install-tl.sh
Welcome to TeX Live...

Po několika uvítacích zprávách a zobrazení základního menu vás systém žádá o zadání volby. To učiníte stiskem vybraného znaku a zmáčknutím klávesy Enter (bez lomené závorky). Nezáleží, zda používáte malá či velká písmena; v ukázkách jsou použita malá.

Pro spouštění z média bude prvním příkazem d a následně příkaz 1 pro nastavení adresářů. I v tomto případě musíme nastavit adresář na lokálním disku, kam bude TEX zapisovat soubory, které generuje, jako fonty, formátové soubory, a také upravené konfigurační soubory. V tomto příkladě použijeme /opt/texlive2005. Je vhodné přidat k názvu také rok, protože tyto generované soubory nejsou kompatibilní pro různé verze. (Pokud jste spokojeni s implicitní hodnotou /usr/local/texlive/2005 můžete pokračovat dalším krokem.)

Enter command: d
Current directories setup:
<1>  TEXDIR:     /usr/local/texlive/2005
...
Enter command: 1
New value for TEXDIR [/usr/TeX]:  /opt/texlive2005
...
Enter command: r

Zpátky v hlavním menu, naším dalším a posledním příkazem bude r pro nastavení běhu z média bez instalace na disk:

Enter command: r
Preparing destination directories...
...
Welcome to the TeX Live!
>

Jak vidíte, jsme zpět v hlavním menu.

Dalším krokem je nastavení dvou proměnných prostředí: PATH pro adresář programů závislých na architektuře OS (abychom mohli spouštět programy) a TEXMFSYSVAR na hodnoty specifikované výše. V tabulce 1 vidíte seznam jmen architektur pro různé systémy.

Jakmile byla dokončena základní instalace a byly nastaveny proměnné prostředí, posledním krokem je spuštění programu texconfig nebo texconfig-sys pro přizpůsobení instalace specifickým potřebám. To je popsáno v oddíle 4.1 na straně 28.


Tabulka 1: Podporované systémové architektury.
alpha-linux HP Alpha GNU/Linux
i386-darwin Intel x86 Mac OS X
i386-freebsd Intel x86 FreeBSD
i386-linux Intel x86 GNU/Linux
mips-irix SGI IRIX
powerpc-aix IBM RS/6000 AIX
powerpc-darwin PowerPC Mac OS X
sparc-linux Sun Sparc GNU/Linux
sparc-solaris Sun Sparc Solaris
win32 Windows (32-bit)
x86_64-linux Intel x86 64-bit GNU/Linux



Syntax pro nastavení proměnných prostředí a nastavení inicializačního souboru, který je obsahuje, závisí na používaném shellu. Pokud používáte Bourne-kompatibilní shell (sh, bash, ksh, apod.), dejte si do svého souboru $HOME/.profile:

PATH=/mnt/cdrom/bin/archname:$PATH; export PATH
TEXMFSYSVAR=/opt/texlive2005/texmf-var; export TEXMFVAR

Pro C shell-kompatibilní shelly (csh, tcsh) si dejte do $HOME/.cshrc toto:

setenv PATH /mnt/cdrom/bin/archname:$PATH
setenv TEXMFSYSVAR /opt/texlive2005/texmf-var

Pak se odhlaste, přihlaste s novým nastavením a otestujte svou instalaci (viz oddíl 4.2 na straně 29).

Pokud narazíte na problémy, pokuste se je řešit se svým místním systémovým administrátorem: jak namontovat média TEX Live, jaké adresáře používat. Také detaily změn osobních konfiguračních souborů se mohou systém od systému lišit.

3.2 Instalace TEX Live na disk

Dnes je možná, ba i typická, instalace distribuce TEX Live na disk. To je možné provést z distribucí live nebo inst. Popis rozdílů různých distribucí najdete v oddíle 2.1 na straně 7.

V případě, že již máte na disku starší instalaci TEX Live, zaarchivujte si ji. Novou instalaci nelze instalovat přes starou. Pokud jste si ale důsledně svoje rozšíření instalovali do podstromů v $TEXMFLOCAL, po provedení nové instalace si v ní tyto podstromy rozbalte a docílíte tím vysoké míry zpětně kompatibility instalací TEX Live.

Na začátku musíte namontovat CD resp. DVD a povolit rozšíření Rock Ridge. Konkrétní příkaz se liší systém od systému. Níže uvedené funguje pod Linuxem (název zařízení /dev/cdrom se může lišit, stejně tak název souborového systému: Solaris například pro ISO 9660 používá název hsfs – souborový systém High Sierra). Všechny příklady používají > jako prompt shellu, vstup uživatele je podtržený.)

> mount -t iso9660 /dev/cdrom /mnt/cdrom

Změňte aktuální adresář do právě namontovaného adresáře:

> cd /mnt/cdrom

Pod Mac OS X je adresář typicky pod /Volumes a zařízení bude namontováno automaticky. Spusťte instalační dávku install-tl.sh:

> sh install-tl.sh
Welcome to TeX Live...

Po několika uvítacích zprávách a zobrazení základního menu vás systém žádá o zadání volby. To učiníte stiskem vybraného znaku a zmáčknutím klávesy Enter (bez lomené závorky). Nezáleží, zda používáte malá či velká písmena; v ukázkách jsou použita malá.

Tabulka 2 krátce uvádí volby hlavního menu. Pořadí, v kterém vybíráte volby jen lehce ovlivňuje výsledek, jenom volba i musí být poslední. Je rozumné procházet je v pořadí uvedeném zde.


Tabulka 2: Volby hlavního menu pro instalaci
p

Platforma, kterou používáme.

b

Instalované architektury.

s

Základní instalační schéma, které bude použité (minimal, recommended, full, apod.).

c

Prioritní volba jednotlivých kolekcí (nezávislá na schématu).

l

Prioritní volba jazykových kolekcí.

d

Adresáře, do nichž se bude instalovat.

o

Další volby.

i

Vlastní instalace.


Zde je detailní popis jednotlivých voleb.

p – Používaná platforma. Jelikož instalační skript automaticky hádá, na jaké platformě běží, tato volba se většinou nemusí přenastavovat a je potřeba pouze tehdy, když chcete potlačit automatickou detekci.

b – Instalované architektury. Implicitně se instalují binárky pouze pro právě používanou platformu. Je zde ale možnost si vybrat i další podporované platformy (anebo zrušit výběr právě používané platformy). To může být vhodné při sdílení TEXového stromu v heterogenní síti. Přehled podporovaných architektur je v tabulce 1 na straně 17.

s – Základní instalační schéma. Z tohoto menu můžete vybrat některou z předpřipravených množin sbírek balíků (instalačních schémat). Implicitní je full schéma pro instalaci všech balíků dostupných na médiu, ale můžete zvolit také basic schéma pro minimální systém anebo medium schéma pro něco uprostřed. Najdete zde také schémata pro uživatele Omegy a XML.

c – Prioritní volba jednotlivých kolekcí. Z tohoto menu vyberete jednotlivé instalační kolekce, které jsou výjimkami ze zvoleného instalačního schématu. Kolekce jsou o úroveň níž než schémata – kolekce tvoří jeden nebo více balíků, balíčky (nejnižší úroveň seskupování v TEX Live) obsahují aktuální soubory maker TEXu, rodiny fontů atd. V tomto menu hraje při výběru roli volba malých a velkých písmen.

l – Prioritní volba jazykových kolekcí. to override the collection set in the chosen scheme. Toto menu má stejné určení jako c, a to určit výjimky vybraného instalačního schématu, přičemž kolekce jsou utříděny dle podpory sazby různých jazyků. Malá a velká písmena jsou opět při volbách odlišována. Seznam jazykových kolekcí na TEX Live:

(some) African scripts Arabic Armenian Chinese Japanese Korean

Croatian Cyrillic Czech/Slovak Danish

Dutch Finnish French German

Greek Hebrew Hungarian Indic

Italian Latin Manju Mongolian

Norwegian Polish Portuguese Spanish

Swedish Tibetan UK English Vietnamese

Jazykové kolekce typicky obsahují fonty, makra, vzory dělení a další pomocné soubory. (Například frenchle.sty je instalován pokud zvolíte volbu French.) Navíc instalací jazykové kolekce bude změněn obsah konfiguračního souboru language.dat, který určuje, jaké vzory dělení budou vloženy do formátů.

d – Instalační adresáře. Tyto adresáře mohou být změněny takto:

TEXDIR
Kořenový adresář, do kterého bude vše instalováno. Implicitní hodnota je /usr/local/texlive/2005, a je obvykle měněna. Doporučujeme do názvu přidat rok, co vám umožní mít několik různých verzí TEX Live vedle sebe.

(Pak si můžete udělat symbolický odkaz kupříkladu na název /usr/local/texlive nezávislý na verzi, který může být aktualizován po otestování nové verze.)

Pod Mac OS X obvykle TEXové nadstavby hledají TEX/usr/local/teTeX, což je proto na tomto OS doporučený adresář pro instalaci.

TEXMFLOCAL
Do tohoto adresáře bude systém TEX (ne jako část původní instalace, ale spíše jako doplněk) ukládat soubory nezávislé na verzi distribuce, například fonty. Implicitní hodnota je /usr/local/texlive/texmf-local, nezávislá na aktuální verzi TEX Live, protože to je také doporučené umístění na ukládaní všech lokálních balíků a konfiguračních souborů.
TEXMFSYSVAR
Do tohoto podstromu budou instalovány a ukládány soubory, které jsou specifické pro danou verzi distribuce, například formátové soubory, konfigurační soubory modifikované konfiguračním programem texconfig-sys. Implicitní hodnota je TEXDIR/texmf-var a obvykle není důvod ji měnit. texconfig hledá modifikované konfigurační údaje také v adresáři proměnné TEXMFSYSCONFIG. Pro další informace viz oddíl 4.1, strana 28.

o – Další volby. Zde můžete zvolit následující obecné volby:

a
Volba alternativního adresáře pro generované fonty. Standardně je použit podstrom TEXMFVAR, zmíněný výše. Nastavení je užitečné, pokud plánujete montovat hlavní strom pouze pro čtení, a proto jiný adresář (například specifický pro daný stroj) potřebujete pro dynamicky generované fonty.
l
Volba vytváření symbolických odkazů pro binárky, manové stránky a/nebo soubory GNU Info v dalších adresářích. Například můžete chtít mít manové stránky v /usr/local/man a Info soubory v /usr/local/info. (Samozřejmě musíte mít oprávnění zápisu do těchto adresářů.)

Neradíme přepsat váš systém TEX s touto volbou. Je zamýšlena v první řadě na vytvoření odkazů v standardních adresářích, které znají uživatelé, například /usr/local/bin, které již neobsahují žádné TEXovské soubory.

d
Volba pro vynechání instalace stromu dokumentace fontů a maker. To je užitečné, pokud jste dokumentaci již instalovali nebo chcete ušetřit místo.
s
Volba pro vynechání instalace hlavního podstromu s makry a fonty. To je užitečné, pokud instalujete na různých architekturách se sdíleným hlavním stromem přes NFS.

i – Vlastní instalace. Pokud jste si ověřili všechna nastavení a možnosti konfigurace, zvolte i, čímž se spustí instalace do vybraných adresářů.

Po ukončení instalace je dalším krokem umístění (na architektuře závislého) podadresáře adresáře TEXDIR/bin do proměnné prostředí PATH, aby se nově instalované programy našly. To nemusí být nezbytné v případě vytvoření symbolických odkazů. Seznam názvů architektur najdete v tabulce 1 na straně 17 nebo si vypište obsah adresáře TEXDIR/bin.

Přesná syntax pro provedení výše popsané změny a použitá startovací dávka uživatele záleží na shellu, který používáte. Pokud je to Bourne-kompatibilní shell (sh, bash, ksh, apod.), přidejte si do svého souboru $HOME/.profile toto:

PATH=/usr/local/texlive/2005/bin/archname:$PATH; export PATH

Pro C shell-kompatibilní shelly (csh, tcsh) si dejte do svého $HOME/.cshrc tohle:

setenv PATH /usr/local/texlive/2005/bin/archname:$PATH

Jakmile byla dokončena základní instalace a byly nastaveny proměnné prostředí, posledním krokem je spuštění programu texconfig nebo texconfig-sys pro přizpůsobení instalace specifickým potřebám. To je popsáno v oddíle 4.1 na straně 28.

Níže uvádíme minimální okomentovaný příklad, který přijímá implicitní adresáře a instaluje binárky pouze pro aktuální OS. Tudíž pro instalaci je potřebný jediný příkaz i. Znak > je pobídka operačního systému jako obvykle.

> sh install-tl.sh
i                         # proveď instalaci
> texconfig ...           # viz oddíl 4.1
# nastavení proměnné PATH, například pro Linux:
> PATH=/usr/local/texlive/2005/bin/i386-linux:$PATH; export PATH

Pokud narazíte na problémy, pokuste se je řešit se svým místním systémovým administrátorem: jak namontovat média TEX Live, jaké adresáře používat. Také detaily změn osobních konfiguračních souborů se mohou systém od systému lišit.

3.3 Instalace jednotlivých balíků na disk

Můžete přidat jednotlivé balíky či kolekce z nové distribuce do existující předchozí instalace TEX Live nebo i jiné instalace TEXu, mající jinou adresářovou strukturu.

Na začátku musíte namontovat CD resp. DVD a povolit rozšíření Rock Ridge. Konkrétní příkaz se liší systém od systému. Níže uvedené funguje pod Linuxem (název zařízení /dev/cdrom se může lišit, stejně tak název souborového systému: Solaris například pro ISO 9660 používá název hsfs – souborový systém High Sierra). Všechny příklady používají > jako prompt shellu, vstup uživatele je podtržený.)

> mount -t iso9660 /dev/cdrom /mnt/cdrom

Změňte aktuální adresář do právě namontovaného adresáře:

> cd /mnt/cdrom

Pod Mac OS X je adresář typicky pod /Volumes a zařízení bude namontováno automaticky.

Spusťte instalační dávku install-pkg.sh (ne install-tl.sh, která je určena pouze pro úplnou instalaci):

> sh install-pkg.sh options

První sada voleb určuje, co se načte:

--package=pkgname
Jednotlivý balík k instalaci.
--collection=colname
Kolekce k instalaci.
--nodoc
Neinstalovat dokumentaci.
--nosrc
Neinstalovat zdrojové soubory.
--cddir=dir
Zdrojový adresář pro čtení; implicitně je to aktuální adresář. Pokud jste postupovali podle výše uvedených instrukcí, bude to distribuční adresář a není potřeba ho měnit.
--listdir=dir
Takzvaný ,lists‘ adresář pod cddir, odkud se čtou informace o balících. Jediný důvod měnit implicitní hodnotu je v případě provádění změn přímo do TEX Live.

Co se provede, je určeno následujícími přepínači. Pokud není žádný specifikován, implicitní akcí je instalace vybraných souborů. Hlavní výstupní adresář je určen expanzí proměnné $TEXMFMAIN pomocí programu kpsewhich. Můžete to změnit nastavením proměnných prostředí TEXMFMAIN nebo TEXMF.

--listonly
Pouze vypíše soubory, které by se instalovaly, ale nic neinstaluje.
--archive=tarfile
Místo instalace souborů do TEXového systému vytváří tar archív.

Další volby:

--config
Po instalaci spusť texconfig init.
--nohash
Po instalaci nespouštěj mktexlsr pro aktualizaci databáze souborů.
--verbose
Detailní výpisy při běhu dávek.

Zde je pár příkladů:

  1. Prohlédnutí souborů v balíku fancyhdr bez jeho instalace:

    > sh install-pkg.sh --package=fancyhdr --listonly

    texmf/doc/latex/fancyhdr/README
    texmf/doc/latex/fancyhdr/fancyhdr.pdf
    ...
  2. Instalace LATEXovského balíku natbib:

    > sh install-pkg.sh --package=natbib
  3. Instalace LATEXovského balíku alg bez zdrojových souborů a dokumentace:

    > sh install-pkg.sh --package=alg --nosrc --nodoc
  4. Instalace všech balíků z kolekce dodatečných maker pro plain TEX:

    > sh install-pkg.sh --collection=tex-plainextra
  5. Zapsání všech souborů balíku pstricks do souboru tar /tmp:

    > sh install-pkg.sh --package=pstricks --archive=/tmp/pstricks.tar

Pokud narazíte na problémy, pokuste se je řešit se svým místním systémovým administrátorem: jak namontovat média TEX Live, jaké adresáře používat. Také detaily změn osobních konfiguračních souborů se mohou systém od systému lišit.

4 Po instalaci

Jakmile je hlavní instalace hotova, pro každý OS je třeba dokonfigurovat systém pro své potřeby a provést základní testy a ověření funkčnosti.

Dalším druhem následné činnosti je instalace balíků, fontů a programů, které nebyly obsaženy na TEX Live. Základní myšlenkou je tato rozšíření instalovat do podstromu TEXMFLOCAL, pokud jste instalovali na disk, a TEXMFSYSVAR, pokud spouštíte systém z CD či DVD. Více viz volbu ,,Instalační adresáře‘‘ na straně 22.

Bohužel detaily se liší balík od balíku, takže zde instalační instrukce neuvádíme. Zde jsou některé externí odkazy pro dobrý popis:

4.1 Program texconfig

Kdykoliv po instalaci lze použít program texconfig pro konfiguraci systému. Program je instalován v podadresáři závislém na architektuře, ležícím v TEXDIR/bin/arch spolu se vším ostatním.

Pokud program spustíte bez argumentů, přejde do celostránkového režimu a budete moci měnit nastavení interaktivně.

Můžete ho také spustit s řadou voleb z příkazové řádky. Zde jsou nejčastěji užívané volby (TEX Live je nakonfigurován implicitně na papír velikosti A4):

texconfig paper letter
nastavení implicitní velikosti papíru US letter pro různé programy a ovladače (pdftex, dvips, dvipdfm, xdvi). Jiná povolená velikost je a4, která je implicitní.
texconfig rehash
Po přidání nebo odebrání souborů aktualizuj všechny TEXové ,,databáze souborů‘‘.
texconfig faq
Ukaž FAQ teTEXu. (Viz také hlavní TEX FAQ v podadresáři texmf-doc/doc/english/FAQ-en na TEX Live.)
texconfig help
Výpis základních informací pro texconfig.

Samozřejmě texconfig může podpořit změnu pouze některých z mnoha parametrů TEXové instalace. Hlavní konfigurační soubor pro programy Web2C se jmenuje texmf.cnf. Jeho umístění najdete příkazem ,kpsewhich texmf.cnf‘. Soubor obsahuje mnohé poznámky vysvětlující základní nastavení a možné alternativy.

V roku 2005 texconfig mění soubory v adresářích uživatele, a sice v $HOME/.texlive2005. Když instalujete TEX jen pro sebe, je nepravděpodobné, že nastene rozdíl. Avšak při instalaci TEXu na více-uživatelském systému, budete chtít pozměnit konfiguraci celého systému. V tom případě spusťte texconfig-sys namísto texconfig.

Podobně byli změneny skripty updmap a fmtutil, na práci v $HOME/.texlive2005. Na změnu systémových adresářů použijte příkazy updmap-sys a fmtutil-sys.

Především, při víceuživatelských systémech, budete pravděpodobně chtít příkazem fmtutil-sys –missing předgenerovat standartní formáty. Jinak každý uživatel skončí při svých vlastních formátech.

Rovněž, když máte vlastní pozměněnou kopii souboru fmtutil.cnf nebo updmap.cfg, namísto použití souborů vytvořených při instalaci, tyto musí být nainstalovány ve stromě, na který odkazuje proměnná TEXMFSYSCONFIG.

Seznam proměnných určujících adresáře pozměnené těmito příkazy je uveden v oddíle section 2.3, strana 8. Nynější adresáře můžete vidět spuštěním povelu texconfig conf a měnit je můžete editací souboru texmf.cnf.

4.2 Testování instalace

Po nainstalování TEX Live přirozeně chcete systém otestovat a začít vytvářet nádherné dokumenty a/nebo fonty.

Tento oddíl popisuje základní postupy testování funkčnosti nového systému pod Unixem. Pod Mac OS X a Windows budete patrně spouštět testy přes uživatelské grafické rozhraní (GUI), ale principy jsou stejné.

  1. Nejprve ověřte, zda se spustí program tex:

    > tex --version
    TeX 3.141592 (Web2C 7.5.5)
    kpathsea version 3.5.5
    ...
    Pokud obdržíte hlášku s ‘command not found’místo výše uvedeného, patrně nemáte nastavený správný podadresář bin v proměnné prostředí PATH. Vraťte se na informace o jejich nastavování na straně 18.
  2. Přeložte ukázkový soubor LATEXu:

    > latex sample2e.tex
    > This is pdfeTeXk, Version 3.141592...
    Output written on sample2e.dvi (3 pages, 7496 bytes).
    Transcript written on sample2e.log.
    Pokud selže nalezení souboru sample2e.tex nebo jiných souborů, patrně máte aktivní stará nastavení proměnných prostředí nebo konfiguračních souborů. Pro hlubší analýzu a dohledání problému můžete kdykoliv požádat TEX o detaily toho, co a kde hledá: viz ,,Ladicí možnosti‘‘ na straně 67.
  3. Prohlédněte si výsledek na obrazovce:

    > xdvi sample2e.dvi
    (Pod Windows je analogický příkaz windvi.) Mělo by se otevřít nové okno s pěkným dokumentem popisujícím základy LATEXu. (Mimochodem, stojí za přečtení, pokud začínáte.) Musíte mít spuštěny X Window, aby xdvi pracovalo. Pokud tomu tak není nebo máte špatně nastavenou proměnnou prostředí DISPLAY, dostanete chybovou hlášku ,Can’t open display‘.
  4. Vytvořte PostScriptový soubor pro tisk nebo prohlížení:

    > dvips sample2e.dvi -o sample2e.ps
  5. Vytvořte PDF soubor místo DVI; tento příkaz ze souboru .tex vytvoří PDF přímo:

    > pdflatex sample2e.tex
  6. Prohlédněte si PDF soubor:

    > gv sample2e.pdf
    nebo:
    > xpdf sample2e.pdf
    Bohužel ani gv ani xpdf nejsou v současné době na TEX Live a musíte je instalovat separátně. Viz http://www.gnu.org/software/gv a http://www.foolabs.com/xpdf.
  7. Další standardní testovací soubory, které mohou být užitečné:

    small2e.tex
    Ukázkový dokument, ještě kratší než sample2e.
    testpage.tex
    Test, jestli vaše tiskárna neposunuje tiskové zrcadlo.
    nfssfont.tex
    Pro tisk tabulek fontů a testů fontů.
    testfont.tex
    Pro totéž, ale pro plain TEX.
    story.tex
    Základní (plain) TEXový testovací soubor. Musíte napsat ,\bye‘ na výzvu * po ,tex story.tex‘.

    Můžete si vyzkoušet přeložit tyto soubory podobně, jak bylo popsáno testování s sample2e.tex.

Pokud jste TEXový začátečník nebo potřebujete pomoc s vytvářením TEXových, respektive LATEXových dokumentů, navštivte http://tug.org/begin.html kvůli úvodním informačním pramenům.

5 Instalace pod Mac OS X

Doporučený způsob instalace TEXu pod Mac OS X je použití distribuce MacTEX novinky roku 2005. Ta je poskytnuta na live DVD v kořenovém adresáři mactex/. Obsahuje vlastní (obvyklý) instalátor pro plnou TEXovou distribuci, založenou na kombinaci teTEXu a TEX Live, společně s mnoha doplňkovými aplikacemi a dokumentací. Domovská stránka projektu je http://tug.org/mactex.

Když chcete, instalce TEXu pod Mac OS X může být provedena přímo z TEX Live použitím skriptů install* následujícím zpusobem.

Abyste spustili instalační dávky pod Mac OS X, musíte mít nainstalovaný shell bash. Pokud máte Mac OS X 10.2 a vyšší, bash již máte a můžete pokračovat. Pokud máte starší verzi, implicitní shell je zsh, a ten nebude fungovat; budete muset získat bash z Internetu, anebo spíš aktualizovat svůj systém.

Jakmile máte bash, lze pokračovat dle dokumentace k unixové instalaci popsané v předchozích sekcích: viz oddíl 3 na straně 11; Mac OS X-specifické poznámky jsou přiloženy v místech, kde je to třeba.

6 Instalace pod Windows

V tomto vydání TEX Live, Bohu dík, má distribuce znovu obvyklý windowsový instalátor, jmenovitě tlpmgui.exe. (Na vysvětlení jiných distribucí viz stránku 7 sekce 2.1.)

tlpmgui má v podstatě stejné volby jako unixový instalátor, jen jsou udělány pomocí GUI interface: schémata voleb, individuální sbírky, instalační adresáře, atd. Sekce 3.2 na stránce 18 popisuje základní prvky. Jsou umožněny též některé poinstalační aktivity, jako například přidání/odebrání balíků nebo aktualizace databázy názvů souborů a generování formátů. Navíc, tlpmgui může nastavit systém pro spouštění programů přímo z DVD.

Pro ty, kteří se rádi dívají pod pokličku, tlpmgui používá jako svůj ,,stroj‘‘ windowsovký interpret příkazových řádků nazvaný tlpm.

Windowsovský systém TEX obsažený v TEX Live je založen na nových binárkách vypůjčených z projektu XEmTEX, známém dříve jako fpTEX (viz http://www.metz.supelec.fr/~popineau/xemtex-1.html). Obsahuje také některé starší (ale stále funkční) nástroje, především dvi prohlížeč, Windvi, který je při používání podobný na zavedený unixovský xdvi. Dokumentace je k nalezení na texmf/doc/html/windvi/windvi.html.

TEX Live může být instalován na systémech Windows 98, ME, NT, 2K nebo XP. Starší verze Windows (3.1x) a MS-DOS nejsou podporovány.

Varování: uživatelé Win9x si musí před instalací ověřit, zda mají dost místa pro uložení hodnot proměnných prostředí. Program tlpmgui.exe jim velikost tohoto prostoru nezvýší. V průběhu instalace bude nastaveno několik proměnných prostředí a je možné, že implicitní velikost překročíte. Přidejte si řádek SHELL=<path>COMMAND.COM /E:4096 /P pro zvýšení prostoru pro proměnné do svého souboru config.sys.

6.1 Instalace TEX Live na disk

Po vložení CD TEX Live do CD mechaniky, by měl autorun aktivovat program tlpmgui. Pokud tomu tak není, klikněte na StartSpustit, a napište <drive letter>:\setup-win32\tplmgui.exe, (nebo
<drive letter>:\texlive\setup-win32\tplmgui.exe když instalujete z TeX Collection DVD), kde <cdrom drive letter> je písmeno CD mechaniky s CD TeX Live (nebo TeX Collection DVD), pak klikněte na OK.

Otevře se instalační okno s názvem TeX Live installation and maintenance utility. Obsahuje následující oddíly: Main customization, Install, Select a scheme, Select systems, Directories a Options.

V oddíle Directories by měla být vyznačena instalační mechanika (adresář) za tlačítkem CD/DVD (např., F:/ nebo F:/texlive/ pro DVD), ale pokud tomu tak není, tak klikněte na tlačítko CD/DVD a zvolte mechaniku CD/DVD s CD TEX Live (nebo TeX Collection DVD).

Adresář, do kterého chcete instalovat softvér, může být nastaven kliknutím na tlačítko TLroot. Tento adresář bude nastaven pro pozdější použití jako proměnná prostředí TLroot. Proměnné prostředí TEXMFTEMP a TEXMFCNF zobrazené za tlačítky TEXMFTEMP a TEXMFCNF budou opraveny automaticky a nastaveny po dobu instalace, avšak mohou být nastaveny také ručně když je nutné přizpůsobit je zvláštním potřebám.

V oddíle Select a scheme je potřebné zvolit požadované instalační schéma TEX Live kliknutím na výběrové okénko obsahující instalační schéma (např., scheme-gust). Každé schéma má připojené tlačítko Info, které po kliknutí zobrazí stručný popis odpovídajíciho schématu.

Schéma je rozsáhlá sada souborů odpovídající určitému způsobu použití. Jsou tam základní (generic) schémata pro instalace minimální, střední a ůplnou (basic, medium a full). Další jsou určena typickým potřebám jednotlivých skupin uživatelů (co polské sdružení GUST nebo francouzský GUTenberg doporučuje svým členům) nebo aplikačnímu zaměření (XML a TEX).

Předdefinované schéma může být modifikováno. To se vykoná v oddíle Main customization volbou doplňkových sbírek z kolekcí ,,Standard‘‘ nebo ,,Language‘‘. Například kliknutím na tlačítko Select označené Standard collections, můžou být zvoleny pro instalaci doplňkové sbírky, jako např. METAPOST, Omega nebo dokumentace v různých jazycích.

Poznámka: Sady Ghostscript, Perl a Wintools jsou předvoleny a měly by být nainstalovány, ledaže byste je měli už nainstalované a opravdu víte, co děláte. Je to proto, že tyto jsou požadovány mnoha důležitými nástroji. Proměnné prostředí PERL5LIB a GS_LIB budou nastaveny také.

Dále, kliknutím na tlačítko Select označené Language Collections v oddíleMain customization se otevře okno Language collections v kterém může být zvolen instalační jazyk zaškrtnutím políčka vedle jazyka.

Dále, pro spuštění odpovídajícího instalačního procesu klikněte na tlačítko Install v oddíle Install.

Systém TEX Live vyžaduje některé poinstalační kroky (generování formátů, ls-R databází, nastavení proměnných prostředí, atd.). Všechny tyto operace se vykonají, některé můžou trvat déle. Počkejte, prosím, dokud neuvidíte oznámení o úspěšném ukončení instalace.

Odkaz na tlpmgui bude přidán k menu StartProgramyTeXLive2005.

V případě potřeby (Win9x/WinME) budete požádáni restartovat váš počítač.

6.2 Podpůrné balíky pro Windows

Pro úplnost, instalace TEX Live potřebuje další balíky a programy, které na stroji s Windows obvykle nenajdete. Mnoho skriptů je napsáno v jazyce Perl. Některé důležité nástroje používají interpret PostScriptu GhostScript pro rastrování či konverzi souborů. Mnohdy jsou třeba programy pro práci s grafikou. V neposlední řadě, speciální editor usnadňuje psaní vašich TEXových souborů.

Všechny tyto nástroje se dají lehce pro OS Windows najít, ale abychom vám usnadnili život, dali jsme sadu těchto programů přímo na TEX Live:

Tyto balíky jsou vypůjčeny z distribuce XEmTEX (nástupce fpTEXu).

Perl a GhostScript jsou instalovány implicitně; můžete je odznačit během instalace když už je máte nainstalovány.

Pokud tuto kolekci instalovat nechcete, nainstalujte si dodatečné nástroje k zúplnění systému TEX Live sami. Zde je seznam míst, odkud si tyto nástroje můžete stáhnout:

GhostScript
http://www.cs.wisc.edu/~ghost/
Perl
http://www.activestate.com/ (ale je možné, že budete potřebovat stáhnout pomocné balíky z CPANu: http://www.cpan.org/)
ImageMagick
http://www.imagemagick.com/
NetPBM
(místo ImageMagicku pro konverzi grafiky). Domovská stránka NetPBM je http://netpbm.sourceforge.net/
TEXové editory
Máte široký výběr a je to individuální volba. Možnosti jsou například tyto:

Můžete potřebovat také instalovat další nástroje, které nejsou volné1, a tedy nejsou vloženy na TEX Live, jako například GSView, nadstavba GhostScript pro komfortní prohlížení souborů v PostScript a v PDF. GSView je dostupný z http://www.cs.wisc.edu/~ghost/gsview/ nebo jakéhokoliv zrcadla CTAN.

7 Údržba instalace vo Windows

Když máte TeX Live nainstalován, můžete použít program tlpmgui znova na změnu a udržování vaší instalace.

7.1 Přidání/odebrání balíků

Protože odkaz na tlpmgui je v menu StartProgramyTeXLive2005, spustěte jej zde. Ukáže se okno údržby s názvem TeX Live installation and maintenance utility. Obsahuje několik položek: Add Packages, Remove packages, Manage installation, Remove installation.

Klikněte na tlačítko Add packages nebo Remove packages na otevření odpovídající funkce a pak:

7.2 Konfigurace a další správcovské úkoly

Funkce dostupné v položce označené Manage the installation jsou užitečné na vykonání činností potřebných pro přidání podpory jazyka, který nebyl vybraný během instalace nebo pro přidání/znovu vygenerování formátu, který nebyl zvolen během instalace, nebo byl modifikován po instalaci.

Je možné vykonat následující kroky:

Poznámka: můžete zavřít okno Edit... kliknutím na tlačítko Cancel nebo Done; druhá volba odstartuje obnovu formátů (nebo souborů ,,fontmap‘‘ když jste editovali soubor updmap.cfg) s následným obnovením databázy souborů ls-R.

Pro další informace o konfiguraci viz oddíl 7.8, strana 40.

7.3 Odinstalování TEX Live

Položka označena Remove the TeX Live installation otvírá okno obsahující funkci, kterou nemá smysl popisovat a my ani nevíme, kdo by ji mohl potřebovat a čemu slouží ...:-)

V každém případě, jestliže pro své lokální dodatky používáte adresář texmf-local, odstraňovací procedura jej neodstraní ani nesmaže věci uvnitř něho. Adresář setup-win32 obsahuje tlpmgui a odpovídající soubory nebudou vymazány. Na jejich úplné odstranění budete muset něco vyčistit ručně.

7.4 Přidání vašich vlastních balíků k instalaci

Především, nezávisle na změnách, které děláte, nezapomeňte přebudovat databázové soubory ls-R. Jinak vaše nové soubory nebudou nalezeny. Můžete to vykonat buď spuštěním programu tlpmgui a zvolením odpovídající činnosti v položce Manage the installation, nebo ručně zadáním příkazu mktexlsr.

Jestliže chcete přidat soubory, které nejsou poskytnuty distribucí TEX Live, doporučujeme je umístit do adresáře $TEXMFLOCAL. Touto cestou se ochráníte před novými verzemi softvéru TEX Live.

Adresář definovaný proměnnou $TEXMFLOCAL je na zpočátku prázdný. Jestliže, například, chcete přidat podporný soubor pro program symbolických výpočtů Maple, měli byste stylový soubor umístit do:
c:\TeXLive2005\texmf-local\tex\latex\maple\
a soubory s dokumentací do:
c:\TeXLive2005\texmf-local\doc\latex\maple\

7.5 Spuštění programu tlmp.exe z příkazové řádky

Program tlpm.exe, který je používán jako nástroj programem tlpmgui má množství dalších užitečných voleb. Jejich seznam dostanete příkazem:

  tlpm --help

Další informace a příklady najdete v tlpm.readme.

7.6 Síťová instalace

Kpathsea ví o jménech UNC, a proto je můžete používat na dosažení vašeho stromu TEXMF ze sítě. Ale jsou lepší možnosti. Všechny podpůrné a konfigurační soubory, všechno kromě souborů v adresáři bin/win32 je možné sdílet s TEX Live instalacemi teTEXu nebo unixovskou. To znamená, že můžete používat Sambu buď na namontování (mount) NT serveru k unixovské pracovní stanici, nebo na konverzi. Možných je několik strategií:

7.7 Co je pod Windows jiného?

Verze Web2C pod Windows má některá specifika, která stojí za zmínku.

Kpathsea
Hašovací tabulky, které si Kpathsea vytváří, jsou pro TEX Live obrovské. Aby se urychlilo spuštění jakéhokoliv programu používajícího Kpathsea, tyto tabulky jsou ukládány do sdílené paměti. Tímto způsobem, pokud spouštíte po sobě několik programů jako například tex volající mpost volající tex, režie při startu dalšího programu je minimalizována. Tato změna je před uživatelem skryta s výjimkou nastavení ladicího módu Kpathsea na hodnotu -1: pak trasujete přístup do sdílené paměti, což je to, co patrně nechcete (je tam přistupováno velmi často!). Co je užitečné v logu přístupů do sdílené paměti, bude ještě definováno, takže situace se v budoucnu může změnit.
kpsecheck
Tento příkaz umožňuje některé volby, které nenašly své místo v programu kpsewhich. Umožňuje vypsat všechny soubory, které se vyskytují ve vašich texmf stromech vícekrát. To může být užitečné, ale většinou získáme nežádaný výstup (jako tucty souborů README). Je dobré zmínit, že tyto všechny soubory způsobují kolize v hašovacím mechanismu Kpathsea; naštěstí Kpathsea nikdy tyto soubory nehledá (s výjimkou nešťastných czech.sty a slovak.sty, kde je to ošetřeno jinými vyhledávacími cestami pro cslatex a latex). Z tohoto důvodu můžete kombinovat přepínač -multiple-occurences se dvěma dalšími přepínači pro vkládání či vynechávání souborů dle daného vzoru (vzorů může být několik). Program kpsecheck také hlásí stav sdílené paměti: zda je, či není používána. To je vhodné vědět, protože pokud je stav ,in use‘, znamená to, že jeden či několik procesů pracuje a efekt příkazu mktexlsr bude pozdržen až do chvíle, kdy nebude běžet žádný z programů používajících Kpathsea.

Tentýž příkaz vypíše umístění programu GhostScript. Pod Win32 je pro mnoho programů snazší použít GhostScript jako dll a nalézt ho přes klíč GhostScript v registrech, než měnit PATH, která má stejně limitovanou délku.

Web2C
Programy mají o několik voleb více než v unixovém Web2C a jednu volbu s odlišným chováním:

7.8 Osobní konfigurace

7.8.1 Dvips

Konfigurační soubor pro dvips lze najít v
C:\TeXLive2005\texmf-var\dvips\config\config.ps
Můžete ho otevřít jakýmkoli editorem a změnit některé parametry.

fonts
Můžete změnit implicitní mód Metafont pro tiskárnu a jeho rozlišení, které je použito, když dvips potřebuje generovat fonty PK. Implicitní konfigurace je pro užití Type 1 verzí CM fontů, a dávka mktexpk by tedy neměla být volána příliš často.
printer
Můžete říct dvipsu, kam implicitně tisknout. Pokud za volbou o není název tiskárny, pak je výstupní soubor .ps zapsán do souboru. Můžete dvipsu a tiskárně dát název, například:
  o lpt1:
  % o | lpr -S server -P myprinter
  % o \\server\myprinter

paper
Dále můžete chtít změnit velikost papíru z evropské A4 na ‘US letter’tím, že ‘US letter’bude první volba v souboru. Najděte skupinu řádek začínajících zavináčem @. Přesuňte odpovídající řádky tak, že oddíl začíná řádky:
  @ letterSize 8.5in 11in
  @ letter 8.5in 11in
  @+ %%BeginPaperSize: Letter
  @+ letter
  @+ %%EndPaperSize

Současná distribuce TEX Live implementuje proceduru pro generování vždy aktualizovaných mapovacích souborů pro dvips a pdftex. To provádí program updmap během instalace a také po přidání jakéhokoliv balíku s fonty. Pokud přidáte balíky ručně, editujte soubor updmap.cfg$TEXMFVAR/web2c.

7.8.2 Pdftex

Pokud používáte program pdflatex pro vytvoření PDF souborů přímo a používáte papír velikosti US letter, editujte soubor
C:\TeXLive2005\texmf-var\tex\generic\config\pdftexconfig.tex a
změňte ,\pdfpagewidth‘ a ,\pageheight‘. Tyto položky by měly vypadat takto:

\pdfpagewidth=8.5 true in \pdfpageheight=11 true in
Uložte soubor a ukončete editaci.

7.8.3 GSView

GSView je nyní distribuován pod Aladdin licencí, a proto již není vkládán na TEX Live.

Pokud chcete změnit velikost stránky na velikost ‘US letter’, otevřete GSView z menu Start a vyberte MediaLetter.

Také jsou zde nastavení, která vám umožní mít co nejčitelnější renderované obrázky. V menu MediaDisplay Settings, nastavte jak Text Alpha, tak Graphics Alpha na 4 bity.

Instalační proces asociuje jak .ps, tak .eps soubory pro otevírání pomocí GSView.

Pro návod, jak tisknout, přejděte na oddíl 7.10.

7.8.4 WinDvi

Program tlpmgui.exe nastaví program Windvi jako program, který bude asociován s .dvi soubory, ale nepřidá jeho ikonku na pracovní plochu – to si již udělejte sami, prosím.

Otevřete program windvi kliknutím na ikonku nebo z příkazové řádky.

Můžete program zkonfigurovat pro velikost papíru ‘US letter’pomocí ViewOptionsPapertype a výběrem US (8.5′′× 11′′) a pak OK. Pak windvi ukončete.

Můžete změnit další parametry systému, jako například schopnost spouštět další programy specifikované v dokumentu (standardně z bezpečnostních důvodů zakázáno). Dále, když si poprvé prohlédnete .dvi soubor, může se vám zdát zvětšení příliš veliké. Velikost zmenšete, dokud nezískáte vyhovující.

Všechna nastavení programu Windvi jsou uložena v souboru windvi.cnf. Můžete ho najít pokud na příkazovém řádku zadáte:

  c:\>kpsewhich --expand-var $HOME/windvi.cnf

Pokud s Windvi narazíte na problémy, smažte konfigurační soubor a testujte problém na standardní konfiguraci.

7.9 Testování

Pro obecné kontroly viz oddíl 4.2 na straně 29. Tento oddíl popisuje testy specifické pro Windows.

Otevřete soubor sample2e.tex ve svém editoru (Xemacs, WinShell); najdete ho v C:\TeXLive2005\texmf-dist\tex\latex\base. Objevit by se měl zdrojový soubor LATEXu. Pokračujte kliknutím na menu CommandLaTeX (XEmacs) nebo na ikonu LATEX v liště nástrojů (WinShell), a pak si výsledek prohlédněte poklepáním na menu CommandView DVI (XEmacs) nebo Preview (Windvi) ikonu (WinShell).

Pokud prohlížíte soubory s Windvi, budou se nejprve generovat fonty, neboť obrazovkové fonty nebyly instalovány. Po nějaké době, kdy jste již vytvořili většinu fontů, které používáte, již okno s generováním fontů budete vidět jen zřídka.

Doporučení: Pokud LATEX zastaví, protože nemůže najít soubor, můžete stisknout Ctrl-z pro ukončení.

7.10 Tisk

Tisknout můžete přímo z Windvi. V tom případě bude tisk proveden přes unifikovaný tiskový ovladač Windows. Z definice je kompatibilní se všemi tiskárnami. Ale je tu háček: může generovat obrovské tiskové soubory a v některých (starších) verzích Windows jsou problémy. Výhodou je využití možností jako vkládání obrázků BMP nebo WMF. Také se ujistěte, že parametry tiskárny jsou dobře nastaveny (oddíl 7.8.4), jinak dostanete jinou velikost tisku (tisk nastavený na 600dpi poslaný na tiskárnu 300dpi způsobí, že dostanete pouze jeden kvadrant stránky).

Tisk je rychlejší a spolehlivější, pokud používáte dvips na vytvoření .ps souboru a pak tisknete z GSView volbou FilePrint ... (objeví se okno Print).

Pokud používáte PostScriptovou tiskárnu, ujistěte se, že jste vybrali PostScript Printer. To uděláte výběrem tlačítka Print Method na spodním levém okraji okna Print. Můžete vybrat jakoukoliv tiskárnu, kterou jste dříve instalovali. Pokud se vám volbu PostScript Printer nepodaří zaškrtnout, tisk se nezdaří.

Pokud používáte svou ne-PostScriptovou tiskárnu, vyberte Ghostscript device v položce Print Method a klikněte na tlačítko vpravo označené djet500 a vyberte svou tiskárnu ze seznamu, který se objeví. Ve starších verzích GSView ověřte, že volba PostScript Printer není vybrána, a pak vyberte svou tiskárnu ze seznamu Device.

7.11 Tipy a triky pro Win32

7.11.1 Různé verze Win32

Co nazýváme Win32, není operační systém sám o sobě. Je to velká množina funkcí (kolem 12 000 dle hlavičkových souborů Microsoft SDK), pomocí kterých můžete psát aplikace pro různé operační systémy rodiny Windows.

Windows má tyto verze:

Win9x jsou schopny spouštět 32-bitové programy a 16-bitové programy naráz. Ale operační systém jako takový není celý napsán v 32-bitovém módu a nepodporuje ochranu paměti: 16-bitové aplikace mohou přepsat část paměti operačního systému! Některé části jako GDI (Graphical Device Interface) spravují omezené zdroje jako bitmapy, fonty, pera atd. pro množinu programů, jež běží současně. Všechny bitmapové hlavičky dostupné v jeden okamžik nemohou zabírat více než 64 KiB. To vysvětluje výkon a skutečnost, že systém často zkolabuje, když například začnete intenzivně používat grafické objekty.

NT, 2K a XP tyto nedostatky nemají, stejně tak jako další omezení Win9x. Jsou to opravdová multitasková prostředí, s ochranou paměti. Jsou mnohem operativnější než Win9x kvůli lepší správě paměti, lepšímu systému souborů atp.

7.11.2 Příkazový řádek

Můžete si klást otázku ,,proč potřebuji příkazovou řádku, když mám Windows?‘‘

Dobrá otázka. Problém je velmi obecný. Ne všechny operace se dají lehce udělat v grafickém prostředí (GUI). Příkazový řádek dává možnosti programování.

Problém je zásadní: TEX je dávkový nástroj, není interaktivní. TEX potřebuje spočítat nejlepší rozvržení stránky, vyřešit křížové reference a tak dále. To může být provedeno jen globální optimalizací dokumentu. To (zatím) není úloha, která by se dala dělat interaktivně.

To znamená, že TEX by se měl používat z příkazové řádky. Situace není tak špatná – lze zde s výhodou psát nástroje pro složité zpracování: dají se lépe ladit, protože jsou nezávislé na GUI, a GUI nástroje mohou být navrženy s rozhraními pro dávkové neinteraktivní programy. To je případ TEXu, se kterým většinou pracujete přes grafický textový editor.

Příkazovou řádku budete potřebovat v několika situacích. Jednou z nich je ladění v případě problémů.

Win9x
Příkazovou řádku získáte buď vyhledáním ikony MS-DOSu v menu StartPrograms, nebo výběrem menu StartRun a napsáním jména programu command.com.
NT, 2K, XP
Najděte položku Command Prompt v menu StartAccessories nebo vyberte StartRun a zadejte cmd.exe, což je název nového příkazového interpretu pro NT (tedy není správné ho nazývat DOSové okno!).

Tato umístění se na různých systémech mohou lišit.

7.11.3 Oddělovače cest

Win32 API rozumí v cestách oběma znakům / i \, ale příkazové interprety ne! Tedy kdykoliv je cesta použitá programově, můžete používat oba oddělovače, nebo je dokonce míchat v jedné cestě. Na příkazové řádce však musíte používat pouze \. Důvodem je kompatibilita: interpret dříve používal lomítko jako oddělovač přepínačů programů.

Nebuďte překvapeni, když uvidíte cesty psané unixovými konvencemi: fpTEX je portace Web2C a prioritou je kompatibilita mezi platformami. Z těchto důvodů všechny konfigurační soubory používají unixové konvence.

7.11.4 Souborové systémy

Nejhorším rysem Win9x vzhledem k TEXu je pravděpodobně takzvaný souborový systém FAT. TEX používá velmi mnoho malých souborů s velikostí okolo 1–3 KiB. FAT systém je starý, vznikl před desítkami let a nepočítá s pevnými disky majícími desítky gigabajtů. Důsledkem je, že uložení desítek tisíc TEXových souborů na TEX Live není efektivní. FAT systém alokuje minimálně 32 KiB pro jakýkoliv soubor na velkém diskovém oddíle. To znamená, že TEX bude potřebovat mnohem více diskového prostoru než ve skutečnosti zabírá.

Na novějších souborových systémech FAT32 a NTFS tento nedostatek již není. Nejmenší adresovatelné části souborů mohou být veliké pouze 4 KiB a na NTFS můžete tuto velikost snížit na 512 bajtů.

7.11.5 Jak přidat některý adresář do PATH

Hodnoty proměnných prostředí se ve vašich programech chovají jako globální proměnné. Množina těchto nastavení se nazývá prostředí (environment). Každý program je spuštěn s kopií tohoto prostředí. Může číst a měnit hodnoty proměnných prostředí. Změny se dějí v kopii prostředí a nejsou rozkopírovávány do všech současně běžících programů.

Proměnná PATH je speciální proměnná prostředí, která se používá pro seznam adresářů, ve kterých jsou spustitelné programy. Způsob, jak ji změnit, se liší pro Win9x, WinME a NT/2K/XP:

Windows 95/98
Editujte svůj autoexec.bat. V tomto souboru byste měli najít řádek začínající s PATH= a následovaný seznamem adresářů oddělených ;. Sem přidejte adresář s binárkami. Potom by tento řádek měl vypadat takto:
  PATH=c:\windows;c:\windows\system;c:\TeXLive2005\bin\win32

Windows ME
Potřebujete speciální program c:\windows\system\msconfig.exe pro změnu proměnné prostředí. Z programu vyberte položku ‘Environment’, a pak změňte a modifikujte proměnné, které chcete. Po jakékoliv změně budete požádání o restart.
Windows NT/2K/XP
Klikněte na StartSettingsControl Panel. Otevře se okno s ikonami konfiguračních programů systému. Po dvojkliku na ikonu ‘System’se objeví okno ‘System Properties’. Klikněte na položku Environment nebo mezi dialogovými boxy hledejte tlačítko s názvem Environment Variables. Tím provedete změnu prostředí pro svůj účet. Poznámka: Jsou zde také zobrazena prostředí celého systému. Pokud nejste administrátor systému, tak nemáte oprávnění je měnit. Pokud chcete změnit PATH pro všechny uživatele, budete muset zkontaktovat svého systémového administrátora nebo se jím stát – v tom případě byste ale měli vědět, co děláte.

Pokud je proměnná PATH již pro váš účet nastavená, klikněte na ni levým tlačítkem. V políčku Variable se objeví PATH, zatímco pole Value ukazuje současné nastavení PATH jako seznam adresářů oddělených středníkem. Přidejte adresář s binárkami (například c:\TeXLive2005\bin\win32). Pokud zde pro váš účet proměnná PATH ještě není nastavena, klikněte na políčko ‘Variable’a napište PATH, klikněte na políčko Value a napište adresář s binárkami. Důležité: klikněte na tlačítko Apply před stiskutím Ok, jinak se změny PATH neprovedou! Při nastavování proměnných prostředí buďte opatrní.

Nejlepší způsob, jak ověřit nastavení proměnných prostředí, je na příkazové řádce napsat:

  set VARIABLE

což by mělo vrátit odpovídající hodnoty.

7.11.6 Verze sázecích programů

Pokud se podíváte na dokumentaci Web2C, dočtete se, že různé programy odvozené od TEXu používají totéž základní jádro. Například tex.exe a latex.exe jsou přesné kopie téhož programu, ale každá z nich používá jiný formátový soubor v závislosti na jménu spuštěného programu.

Pod Unixem je tato vlastnost implementována přes symbolické odkazy. Ušetří to diskový prostor, protože tentýž program je použit pro mnoho různých formátových souborů.

Win32 API nemá koncept symbolických odkazů, a tak abychom ušetřili místo, všechny TEXové sázecí programy byly zkompilovány jako DLLs (Dynamic Linked Library). To znamená, že to dopadne následovně:

18/09/2005  14:19                3 584 latex.exe
18/09/2005  14:19                3 584 pdfetex.exe
18/09/2005  14:19              524 288 tl90pdfetex.dll
a soubor latex.exe není nic jiného než přesná kopie pdfetex.exe používající tutéž základní knihovnu tl90pdfetex.dll. Stejný trik byl použit pro rodinu programů mktex*.exe, které spouští knihovnu mktex.dll.

Obecný nástroj s názvem irun.exe je k dispozici jako ekvivalent unixových pevných odkazů pro soubory pod Win32.

7.12 V případě obtíží

7.12.1 Co dělat když latex nenalezne vaše soubory?

7.12.2 Co když pořád vše nefunguje, jak si představujete?

Položte si následující otázky:

  1. Je tex.exe v mé cestě (proměnné PATH)?
  2. Je proměnná prostředí TEXMFCNF korektně nastavená na
    c:/TeXLive2005/texmf-var/web2c (implicitní hodnota)?
  3. Jsou k nalezení některá chybová hlášení v log souboru generovaném programem tlmpgui.exe? tlmpgui.log najdete ve vašem adresáři TEMP. Můžete je najít hledáním řetězce ,Error‘. Nápověda: log soubor může ukázat některé chyby po vygenerování všech formátů. Prosím, nepropadejte panice: možná některé formáty ještě nebyly instalovány.
  4. Jsou na http://tug.org/texlive/ k dispozici nějaké záplaty? (Je to nepravděpodobné, ale nic tím nepokazíte.)

TEX Live sestává ze stovek programů a desetitisíců souborů z různých zdrojů. Je proto obzvláště obtížné predikovat všechny potenciální zdroje problémů. Nicméně, uděláme, co je v našich silách, abychom vám pomohli (viz oddíl 1.2 na straně 5.)

8 Používateľská príručka ku systému Web2C

Web2C obsahuje množinu TEX-príbuzných programov, t.j. samotný TEX, Metafont, METAPOST, BibTeX, atď. Originálna implementácia pochádza od Thomasa Rokického, ktorý v roku 1987 vyvinul prvý TEX-to-C systém založený na zmenových súboroch systému pre Unix, ktoré boli v prvom rade pôvodnou prácou Howarda Trickeya a Pavla Curtisa. Tim Morgan sa stal spravovateľom systému a počas jeho obdobia sa meno zmenilo na Web-to-C. V roku 1990 Karl Berry prebral túto prácu, asistoval pri tuctoch dodatočných príspevkov a v roku 1997 podal taktovku Olafovi Weberovi.

Web2C systém beží pod Unixom, 32-bitovými Windows, MacOSX a inými operačnými systémami. Používa originálne TEX zdrojové súbory od Knutha a ostatné základné programy napísané v jazyku web, ktoré sú preložené do C zdrojového kódu. Navyše, systém ponúka veľkú množinu makier a funkcií vyvinutých na rozšírenie originálneho TEX software. Základné komponenty rodiny TEXu sú:

bibtex
Spravovanie bibliografií.
dmp
Konverzia troff do MPX (METAPOST obrázky).
dvicopy
Vytváranie modifikovanej kópie DVI súboru.
dvitomp
Konverzia DVI do MPX (METAPOST obrázky).
dvitype
Konverzia DVI do ľudsky-čitateľného textu.
gftodvi
Generovanie fontov pre náhľad.
gftopk
Konverzia gf formátu fontov do pakovaných fontov.
gftype
Konverzia gf formátu fontov do ľudsky čitateľného textu.
makempx
METAPOST značkové sádzanie.
mf
Metafont – vytváranie rodín fontov.
mft
Preddefinované Metafontové zdrojové súbory.
mpost
METAPOST – tvorba technických diagramov.
mpto
METAPOST – značkový výber.
newer
Porovnanie modifikačných časov.
patgen
Vytvaránie vzorov rozdeľovania slov.
pktogf
Konverzia pakovaných formátov fontov do gf formátov.
pktype
Konverzia pakovaných písiem do ľudsky-čitateľného textu.
pltotf
Konverzia ‘Property list’do TFM.
pooltype
Zobrazovanie ,web pool‘ súborov.
tangle
Konverzia web súborov do Pascalu.
tex
TEX – sadzba.
tftopl
Konverzia TFM do ‘property list’.
vftovp
Konverzia virtuálneho fontu do virtuálneho ,property list‘.
vptovf
Konverzia virtuálneho ‘property list’do virtuálneho fontu.
weave
Konverzia web súborov do TEXu.

Presné funkcie a syntax týchto programov sú popísané v dokumentáciách jednotlivých balíkov alebo v dokumentácii Web2C. Napriek tomu, poznanie niekoľkých princípov, ktoré platia pre celý balík programov, vám pomôže vyťažiť čo najviac z vašej Web2C inštalácie.

Všetky programy dodržiavajú štandardné GNU voľby:

–help
Vypisuje prehľad základného používania.
–verbose
Vypisuje detailnú správu spracovania.
–version
Vypisuje informáciu o verzii, potom skončí.

Na vyhľadávanie súborov používajú Web2C programy prehľadávaciu knižnicu Kpathsea. Táto knižnica používa kombináciu premenných prostredia a niekoľkých konfiguračných súborov na optimalizáciu prehľadávania adresárového stromu TEXu. Web2C zvládne prácu s viacerými adresárovými stromami súčasne, čo je užitočné, ak niekto chce udržiavať štandardnú distribúciu TEXu a jeho lokálne rozšírenia v dvoch rozličných stromoch. Na urýchlenie vyhľadávania súborov, koreň každého stromu obsahuje súbor ls-R so záznamom obsahujúcim meno a relatívnu cestu ku všetkým súborom umiestneným pod týmto koreňom.

8.1 Vyhľadávanie ciest knižnicou Kpathsea

Najprv popíšeme všeobecný mechanizmus vyhľadávania ciest knižnicou Kpathsea.

Vyhľadávacou cestou nazveme zoznam elementov cesty, ktorými sú v prvom rade mená adresárov oddelené dvojbodkou alebo bodkočiarkou. Vyhľadávacia cesta môže pochádzať z viacerých zdrojov. Pri vyhľadávaní súboru ,my-file‘ podľa cesty ,.:/dir‘, Kpathsea skontroluje každý element cesty: najprv ./my-file, potom /dir/my-file, vracajúc prvý zodpovedajúci nájdený prvok (alebo prípadne všetky zodpovedajúce prvky).

Aby bolo dosiahnuté prispôsobenie sa konvenciám čo možno najviac operačných systémov, na neunixových systémoch Kpathsea môže používať oddeľovače názvov súborov rôzne od dvojbodky (,:‘) a lomítka (,/‘).

Pri kontrolovaní určitého elementu cesty p Kpathsea najprv overí, či sa na naň nevzťahuje vopred vybudovaná databáza (pozri ,Databáza názvov súborov‘ na strane 62), t. j., či sa databáza nachádza v adresári, ktorý je prefixom p. Ak to tak je, špecifikácia cesty sa porovnáva s obsahom databázy.

Ak databáza neexistuje, alebo sa nevzťahuje na tento element cesty, alebo sa v nej hľadaný súbor nevyskytuje, celý systém súborov je prehľadaný (pokiaľ to nebolo zakázané špecifikáciou začínajúcou ,!!‘ a hľadaný súbor musí existovať). Kpathsea zostrojí zoznam adresárov zodpovedajúcich tomuto elementu cesty a potom skontroluje každý z nich, či sa v ňom nenachádza hľadaný súbor.

Podmienka ,súbor musí existovať‘ sa týka napr. súborov typu ,.vf‘ a vstupných súborov čítaných príkazom TEXu \openin. Takéto súbory nemusia existovať (napr. cmr10.vf) a nebolo by dobré prehľadávať kvôli nim celý disk. Preto, ak zabudnete aktualizovať ls-R pri inštalácii nového ,.vf‘ súboru, súbor nebude nikdy nájdený. Každý element cesty sa prekontroluje: najprv databáza, potom disk. Keď je súbor nájdený, vyhľadávanie sa zastaví a výsledok je vrátený.

Hoci najjednoduchší a najbežnejší element cesty je meno adresáru, Kpathsea podporuje aj iné zdroje vo vyhľadávacích cestách: dedičné (layered) štandardné hodnoty, mená premenných prostredia, hodnoty súboru config, domáce adresáre používateľov a rekurzívne prehľadávanie podadresárov. Preto, ak hovoríme, že Kpathsea rozbalí element cesty, znamená to, že pretransformuje všetky špecifikácie do základného mena alebo mien adresárov. Toto je popísané v nasledujúcich odsekoch.

Všimnite si, že keď je meno hľadaného súboru vyjadrené absolútne alebo explicitne relatívne, t. j. začína ,/‘ alebo ,./‘ alebo ,../‘, Kpathsea jednoducho skontroluje, či taký súbor existuje.

8.1.1 Zdroje cesty

Vyhľadávacia cesta môže byť vytvorená z rôznych zdrojov. Kpathsea ich používa v tomto poradí:

  1. Používateľom nastavená premenná prostredia, napríklad TEXINPUTS. Premenné prostredia s pridanou bodkou a menom programu majú prednosť pred premennými rovnakého mena, ale bez prípony. Napríklad, keď ,latex‘ je meno práve bežiaceho programu, potom premenná TEXINPUTS.latex prepíše TEXINPUTS.
  2. Programovo-špecifický konfiguračný súbor, napríklad riadok ,S /a:/b‘ v súbore config.ps dvips.
  3. Konfiguračný súbor Kpathsea – texmf.cnf, obsahujúci riadok ako ,TEXINPUTS=/c:/d‘ (pozri ďalej).
  4. Predvolené hodnoty počas kompilácie.

Všetky tieto hodnoty vyhľadávacej cesty môžete prezerať použitím ladiacích možností (pozri ,Ladenie‘ na strane 67).

8.1.2 Konfiguračné súbory

Kpathsea číta počas behu z konfiguračných súborov s menom texmf.cnf vyhľadávaciu cestu a ďalšie definície. Vyhľadávacia cesta používaná na hľadanie týchto súborov sa volá TEXMFCNF (v predvolenom nastavení sa tento súbor nachádza v podadresári texmf/web2c). Všetky súbory texmf.cnf vo vyhľadávacej ceste budú prečítané a definície v posledných načítaných súborov majú prednosť pred definíciami čítanými predtým. Preto pri vyhľadávacej ceste .:$TEXMF, hodnoty z ./texmf.cnf prepíšu hodnoty z $TEXMF/texmf.cnf.

Ukážkový úsek konfiguračného súboru, ilustrujúci väčšinu týchto bodov:

  TEXMF              = {$TEXMFLOCAL,!!$TEXMFMAIN}
  TEXINPUTS.latex    = .;$TEXMF/tex/{latex,generic;}//
  TEXINPUTS.fontinst = .;$TEXMF/tex//;$TEXMF/fonts/afm//
  % e-TeX related files
  TEXINPUTS.elatex   = .;$TEXMF/{etex,tex}/{latex,generic;}//
  TEXINPUTS.etex     = .;$TEXMF/{etex,tex}/{eplain,plain,generic;}//

8.1.3 Expanzia cesty

Kpathsea rozpoznáva určité zvláštne znaky a konštrukcie vo vyhľadávacích cestách podobné tým, čo existujú v prostrediach unixovských interprétov príkazového riadku (shells). Ako všeobecný príklad uvedieme komplexnú cestu ~$USER/{foo,bar}//baz, ktorá sa expanduje do všetkých podadresárov pod adresármi foo a bar v domovskom adresári používateľa $USER, ktorý obsahuje adresár alebo súbor baz. Tieto konštrukcie sú popísané v ďalších odsekoch.

8.1.4 Predvolená expanzia

Ak vyhľadávacia cesta s najväčšou prioritou (pozri ,Zdroje cesty‘ na strane 56) obsahuje dvojbodku navyše (t.j. začiatočnú, koncovú, alebo zdvojenú), Kpathsea vloží na toto miesto vyhľadávaciu cestu s druhou najvyššou prioritou, ktorá je definovaná. Ak táto vložená cesta obsahuje dvojbodku navyše, to isté sa stane s ďalšou najvýznamnejšou cestou. Keby sme mali napríklad dané takéto nastavenie premennej prostredia

>> setenv TEXINPUTS /home/karl:
a hodnotu TEXINPUTS v súbore texmf.cnf

  .:$TEXMF//tex
potom konečná hodnota použitá na vyhľadávanie by bola:

  /home/karl:.:$TEXMF//tex
Keďže by bolo zbytočné vkladať predvolenú hodnotu na viac ako jedno miesto, Kpathsea mení iba nadbytočnú ,:‘ a všetko ostatné ponecháva na mieste. Najprv kontroluje začiatočnú ,:‘, potom koncovú ,:‘ a potom zdvojenú ,:‘.

8.1.5 Expanzia zátvoriek

Užitočná črta je expanzia zátvoriek, ktorá funguje tak, že napríklad v{a,b}w sa expanduje na vaw:vbw. Vnáranie je povolené. Toto sa používa na implementáciu viacnásobných TEXovských hierarchií, priradením hodnoty $TEXMF s použitím zátvoriek. Napríklad v súbore texmf.cnf nájdete nasledujúcu definíciu (približne, v skutočnosti je tam ešte viac stromov):

    TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN}

Keď potom napíšete niečo podobné ako

    TEXINPUTS = .;$TEXMF/tex//

bude to znamenať, že po hľadaní v aktuálnom adresári sa najprv prehľadá celý strom $HOMETEXMF/tex, $TEXMFLOCAL/tex, $TEXMFVAR/tex a $TEXMFMAIN/tex (posledné dva s použitím databázových súborov ls-R). Je to vhodný spôsob ako spúšťať dve paralelné TEX štruktúry, jednu nemennú (napríklad na CD) a druhú neustále aktualizovanú novými verziami, akonáhle sú dostupné. Použitím premennej $TEXMF vo všetkých definíciách máme istotu, že sa vždy ako prvý prehľadá aktuálny strom.

8.1.6 Expanzia podadresárov

Dva alebo viac za sebou nasledujúcich znakov ,/‘ v elemente cesty nasledujúcom za adresárom d je nahradených všetkými podadresármi d: najprv podadresármi priamo pod d, potom podadresármi pod nimi, atď. Poradie, v akom sú prehľadávané podadresáre na každej úrovni, nie je špecifikované.

Ak po ,//‘ špecifikujete akékoľvek komponenty mena súboru, pridajú sa iba podadresáre so zodpovedajúcimi komponentami. Napríklad, ,/a//b‘ sa expanduje do adresárov /a/1/b, /a/2/b, /a/1/1/b, atď, ale nie do /a/b/c alebo /a/1.

Viacnásobné konštrukcie ,//‘ v ceste sú možné, ale použitie ,//‘ na začiatku cesty je ignorované.

8.1.7 Typy špeciálnych znakov a ich význam: zhrnutie

Nasledujúci zoznam zahŕňa zvláštne znaky v konfiguračných súboroch Kpathsea.

:
Oddeľovač v špecifikácii cesty; na začiatku alebo na konci cesty nahrádza predvolenú expanziu cesty.
;
Oddeľovač v neunixových systémoch (správa sa ako ,:‘).
$
Expanzia premennej.
~
Reprezentuje domovský adresár používateľa.
{...}
Expanzia zátvoriek, napr. z a{1,2}b sa stane a1b:a2b.
//
Expanzia podadresárov. (Môže sa vyskytnúť kdekoľvek v ceste, okrem jej začiatku).
%
Začiatok komentáru.
\
Znak pokračovania riadku (umožňuje viacriadkové vstupy).
!!
Povel na hľadanie súboru iba v databáze, neprehľadáva disk.

8.2 Súborové databázy

Kpathsea minimalizuje prístupy na disk pri vyhľadávaní. Predsa však pri inštaláciách s dostatočným množstvom adresárov hľadanie súboru v každom možnom adresári môže zabrať prehnane veľa času (toto platí zvlášť vtedy, keď musia byť prejdené stovky adresárov s fontami). Kpathsea preto používa externe vytvorený ,databázový‘ súbor nazývaný ls-R, ktorý mapuje súbory v adresároch a pomáha tak vyhnúť sa vyčerpávajúcemu prehľadávaniu disku.

Skratky mien (aliases) v druhom databázovom súbore vám umožňujú dať dodatočné mená súborom nachádzajúcim sa v zozname ls-R. Toto môže byť užitočné pri prispôsobovaní sa 8.3-súborovým konvenciám DOSu v zdrojových súboroch.

8.2.1 Súborová databáza

Ako bolo vysvetlené hore, meno hlavnej databázy súborov musí byť ls-R. Môžete umiestniť jednu do koreňa každej hierarchie TEXu vo svojej inštalácii, ktorú chcete, aby bola prehľadávaná (predvolená je $TEXMF); väčšinou sa jedná iba o jednu hierarchiu. Kpathsea hľadá ls-R súbory podľa cesty v TEXMFDBS.

Odporúčaný spôsob ako vytvoriť a udržiavať ,ls-R‘ je spustiť skript mktexlsr zahrnutý v distribúcii. Je vyvolávaný rôznymi ,mktex‘... skriptami. Tento skript v princípe iba spúšťa príkaz

cd /your/texmf/root && \ls -1LAR ./ >ls-R
predpokladajúc, že ls vášho systému vytvára správny výstup (výstup GNU ls je v poriadku). Aby ste sa ubezpečili, že databáza bude vždy aktuálna, najjednoduchšie je pravidelne ju prebudovávať cez cron, takže po zmenách v inštalovaných súboroch –  napríklad pri inštalácii alebo aktualizácii balíka LATEXu –  bude súbor ls-R automaticky aktualizovaný.

Ak súbor nie je v databáze nájdený, podľa predvoleného nastavenia Kpathsea začne vyhľadávať na disku. Ak však určitý element cesty začína ,!!‘, bude prehľadávaná iba databáza, nikdy nie disk.

8.2.2 kpsewhich: Samostatné prehľadávanie cesty

Program kpsewhich vykonáva prehľadávanie cesty nezávislé od každej aplikácie. Môže byť užitočný ako vyhľadávací find program na nájdenie súborov v hierarchiách TEXu (veľmi sa využíva v distribuovaných ,mktex‘... skriptoch).

>> kpsewhich option... filename...
Voľby špecifikované v ,option ‘ môžu začínať buď ,-‘ alebo ,--‘ a každá skratka, ktorá nie je viacznačná, je akceptovaná.

Kpathsea považuje každý element vstupného riadku, ktorý nie je argumentom nejakej voľby, za meno súboru, ktorý hľadá a vracia prvý súbor, ktorý nájde. Neexistuje voľba umožňujúca vrátiť všetky súbory s určitým menom (na to môžete použiť nástroj Unixu ,find‘).

Ďalšie dôležitejšie voľby sú popísané nižšie.

–dpi=num
Nastav rozlíšenie na ,num ‘; toto má vplyv iba na ,gf‘ a ,pk‘ vyhľadávanie. ,-D‘ je synonymom, kvôli kompatibilite s dvips. Predvolená hodnota je 600.
–format=name
Nastav formát na vyhľadávanie na ,name ‘. Podľa predvoleného nastavenia je formát uhádnutý z mena súboru. Pre formáty, ktoré nemajú asociovanú jednoznačnú príponu, ako napríklad podporné súbory METAPOSTu a konfiguračné súbory dvips, musíte špecifikovať meno ako známe pre Kpathsea, také ako tex alebo enc files. Zoznam získate spustením kpsewhich --help.
–mode=string

Nastav meno módu na ,string ‘; toto má vplyv iba na ,gf‘ a ,pk‘ vyhľadávanie. Žiadna predvolená hodnota: každý mód bude nájdený.
–must-exist

Urob všetko preto, aby si našiel súbory. Ak je to potrebné, vrátane hľadania na disku. Normálne je v záujme efektívnosti prehľadávaná iba databáza ls-R.
–path=string

Vyhľadávaj podľa cesty ,string ‘ (oddeľovaná dvojbodkou ako zvyčajne) namiesto hádania vyhľadávacej cesty z mena súboru. Podporované sú ,//‘ a všetky bežné expanzie. Voľby ,–path‘ a ,–format‘ sa vzájomne vylučujú.
–progname=name

Nastav meno programu na ,name ‘. Toto nastavenie ovplyvňuje použitie vyhľadávacej cesty cez nastavenie ,.progname ‘ v konfiguračných súboroch. Predvolená hodnota je ,kpsewhich‘.
–show-path=name

Zobrazí cestu použitú na vyhľadávanie súboru s typom ,name ‘. Môže byť použitá buď súborová prípona (,.pk‘, ,.vf‘ a pod.) alebo meno, podobne ako vo voľbe ,–format‘.
–debug=num

Nastaví masku výberu ladiacích možností na ,num ‘.

8.2.3 Príklady použitia

Pozrime sa na Kpathsea v akcii. Za podčiarknutým príkazom nasleduje výsledok vyhľadávania v nasledujúcich riadkoch.

> kpsewhich article.cls
/usr/local/texmf-dist/tex/latex/base/article.cls
Hľadáme súbor article.cls. Keďže prípona ,.cls‘ je jednoznačná, nemusíme špecifikovať, že hľadáme súbor typu ,tex‘ (zdrojový súbor TEX). Nájdeme ho v podadresári tex/latex/base pod koreňovým adresárom ,TEXMF-dist‘. Podobne, všetky nasledujúce súbory budú nájdené bez problémov vďaka ich jednoznačnej prípone.

> kpsewhich array.sty
   /usr/local/texmf-dist/tex/latex/tools/array.sty
> kpsewhich latin1.def
   /usr/local/texmf-dist/tex/latex/base/latin1.def
> kpsewhich size10.clo
   /usr/local/texmf-dist/tex/latex/base/size10.clo
> kpsewhich small2e.tex
   /usr/local/texmf-dist/tex/latex/base/small2e.tex
> kpsewhich tugboat.bib
   /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib

Posledným súborom je bibliografická databáza BibTeXu pre články TUGBoatu.

> kpsewhich cmr10.pk
Bitmapové súbory fontov typu .pk sa používajú zobrazovacími programami ako dvips a xdvi. V tomto prípade je vrátený prázdny výsledok, keďže neexistujú žiadne vopred generované Computer Modern ,.pk‘ súbory v našom systéme (vzhľadom na to, že v TEX Live implicitne používame verzie Type1 ).

> kpsewhich wsuipa10.pk
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk

Pre tieto fonty (fonetickú abecedu z University of Washington) sme museli vygenerovať ,.pk‘ súbory. Keďže predvolený mód Metafontu v našej inštalácii je ljfour so základným rozlíšením 600 dpi (dots per inch), je vrátená táto inštancia.

> kpsewhich -dpi=300 wsuipa10.pk
V tomto prípade po špecifikovaní, že nás zaujíma rozlíšenie 300dpi (-dpi=300), vidíme, že taký font nie je v systéme k dispozícii. Programy ako dvips alebo xdvi by v tomto prípade vytvorili požadované .pk súbory, použijúc skript mktexpk.

Teraz obráťme našu pozornosť na hlavičkové a konfiguračné súbory dvips. Najprv sa pozrieme na jeden z bežne používaných súborov, všeobecný prológový tex.pro na podporu TEXu, potom pohľadáme konfiguračný súbor (config.ps) a PostScriptovú mapu fontov psfonts.map – mapové a kódové súbory majú svoje vlastné cesty na vyhľadávanie a nové umiestnenie v stromoch texmf.

Keďže prípona ,.ps‘ je nejednoznačná, musíme pre súbor config.ps špecifikovať explicitne, o ktorý typ sa zaujímame (dvips config).

> kpsewhich tex.pro
  /usr/local/texmf/dvips/base/tex.pro
> kpsewhich --format=‘dvips config’ config.ps
   /usr/local/texmf/dvips/config/config.ps
> kpsewhich psfonts.map
   /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map

Teraz sa pozrieme na podporné súbory URW Times PostScript. V Berryho schéme meno pre tieto pomenovania fontov je ,,utm‘‘. Prvý súbor, ktorý hľadáme, je konfiguračný súbor, ktorý obsahuje meno mapového súboru:

> kpsewhich --format="dvips config" config.utm
   /usr/local/texmf-dist/dvips/psnfss/config.utm
Obsah tohoto súboru je

  p +utm.map
čo odkazuje na súbor utm.map, ktorý ideme ďalej hľadať.

> kpsewhich utm.map
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map
Tento mapový súbor definuje mená súborov fontov typu Type1 PostScript v kolekcii URW. Jeho obsah vyzerá takto (zobrazili sme iba jeho časť):

  utmb8r  NimbusRomNo9L-Medi    ... <utmb8a.pfb
  utmbi8r NimbusRomNo9L-MediItal... <utmbi8a.pfb
  utmr8r  NimbusRomNo9L-Regu    ... <utmr8a.pfb
  utmri8r NimbusRomNo9L-ReguItal... <utmri8a.pfb
  utmbo8r NimbusRomNo9L-Medi    ... <utmb8a.pfb
  utmro8r NimbusRomNo9L-Regu    ... <utmr8a.pfb
Zoberme napríklad inštanciu Times Regular utmr8a.pfb a nájdime jej pozíciu v adresárovom strome texmf použitím vyhľadávania fontových súborov Type1:

> kpsewhich utmr8a.pfb
   /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb

Z týchto príkladov by malo byť zrejmé, ako ľahko môžete nájsť umiestnenie daného súboru. Toto je zvlášť dôležité, keď máte podozrenie, že ste narazili na zlú verziu súboru, pretože kpsewhich emuluje vyhľadávanie úplne rovnakým spôsobom ako skutočný program (TEX, dvips a pod).

8.2.4 Ladenie vyhľadávania

Niekedy je potrebné vyšetriť, ako program rozpoznáva referencie na súbory. Aby toto bolo možné vhodne uskutočniť, Kpathsea ponúka rôzne stupne ladenia:

Hodnota -1 nastaví všetky horeuvedené voľby, v praxi pravdepodobne vždy použijete tieto úrovne, ak budete potrebovať akékoľvek ladenie.

Podobne s programom dvips nastavením kombinácie ladiacích prepínačov môžete detailne sledovať, odkiaľ sa berú používané súbory. Aktuálny popis parametrov je možné nájsť v ../texmf/doc/html/dvips/dvips_2.html. Alternatívne, keď súbor nie je nájdený, ladiaca cesta ukazuje, v ktorých adresároch program daný súbor hľadal, čo môže naznačovať, v čom sa asi vyskytol problém.

Všeobecne povedané, keďže väčšina programov volá knižnicu Kpathsea vnútorne, ladiace voľby je možné nastaviť pomocou premennej prostredia KPATHSEA_DEBUG na potrebnú kombináciu, ako je to popísané v horeuvedenom zozname.

(Poznámka pre používateľov Windows: nie je jednoduché presmerovať všetky hlášky v tomto systéme do súboru. Na diagnostikovacie účely môžete dočasne priradiť
SET KPATHSEA_DEBUG_OUTPUT=err.log).

Uvažujme ako príklad malý zdrojový súbor LATEXu, hello-world.tex, ktorý obsahuje nasledujúci vstup.

    \documentclass{article}
    \begin{document}
    Hello World!
    \end{document}

Tento malý súbor používa iba font cmr10, takže pozrime sa, ako dvips pripravuje PostScriptový súbor (chceme použiť Type1 verziu písiem Computer Modern, preto je nastavená voľba -Pcms2.

> dvips -d4100 hello-world -Pcms -o
V tomto prípade sme skombinovali dvips ladiacu triedu 4 (cesty k fontom) s expanziou elementu cesty Kpathsea (pozri Referenčný Manuál dvips,texmf/doc/html/dvips/dvips_toc.html). Výstup, trochu preusporiadaný, je zobrazený na obrázku 1.


debug:start search(file=texmf.cnf, must_exist=1, find_all=1,
  path=.:/usr/local/bin/texlive:/usr/local/bin:
       /usr/local/bin/texmf/web2c:/usr/local:
       /usr/local/texmf/web2c:/.:/./teTeX/TeX/texmf/web2c:).
kdebug:start search(file=ls-R, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(ls-R) =>/usr/local/texmf/ls-R
kdebug:start search(file=aliases, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(aliases) => /usr/local/texmf/aliases
kdebug:start search(file=config.ps, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
kdebug:search(config.ps) => /usr/local/texmf/dvips/config/config.ps
kdebug:start search(file=/root/.dvipsrc, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
search(file=/home/goossens/.dvipsrc, must_exist=1, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search($HOME/.dvipsrc) =>
kdebug:start search(file=config.cms, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search(config.cms)
=>/usr/local/texmf/dvips/cms/config.cms
Obrázok 1: Hľadanie konfiguračných súborov
kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro
Obrázok 2: Hľadanie ,prolog‘ súboru
kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]
Obrázok 3: Hľadanie súboru fontu

dvips začne lokáciou svojich pracovných súborov. Najprv je nájdený texmf.cnf, ktorý obsahuje definície vyhľadávacích ciest ostatných súborov, potom databáza súborov ls-R (na optimalizáciu vyhľadávania súborov) a skratky mien súborov (aliases), čo robí možným deklarovať viacero mien (napr. krátke meno typu ,8.3‘ ako v DOSe a dlhšiu prirodzenejšiu verziu) pre ten istý súbor. Potom dvips pokračuje v hľadaní všeobecného konfiguračného súboru config.ps skôr, ako začne hľadať súbor nastavení .dvipsrc (ktorý, v tomto prípade, nie je nájdený). Nakoniec, dvips nájde konfiguračný súbor pre font Computer Modern PostScript, config.cms (toto bolo iniciované voľbou-Pcms v príkaze dvips). Tento súbor obsahuje zoznam ,,mapových‘‘ súborov, ktoré definujú vzťah medzi menami fontov v TEXu, PostScripte a systéme súborov.

> more /usr/local/texmf/dvips/cms/config.cms
   p +ams.map
   p +cms.map
   p +cmbkm.map
   p +amsbkm.map
dvips preto pokračuje v hľadaní všetkých týchto súborov plus všeobecného mapového súboru psfonts.map, ktorý sa načítava vždy (obsahuje deklarácie bežne používaných PostScriptových fontov; pozri poslednú časť sekcie 8.2.3, kde sa nachádza viac detailov o narábaní s mapovými súbormi PostScriptu).

V tomto bode sa dvips identifikuje používateľovi ...


This is dvips 5.78 Copyright 1998 Radical Eye Software
  (www.radicaleye.com)

...potom pokračuje v hľadaní prológového súboru texc.pro:


kdebug:start search(file=texc.pro, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro
Po nájdení tohoto súboru, dvips napíše na výstup dátum a čas a informuje nás, že vygeneruje súbor hello-world.ps, že potrebuje súbor s fontom cmr10, ktorý bude deklarovaný ako ,,rezidentný‘‘:


TeX output 1998.02.26:1204’ -> hello-world.ps
Defining font () cmr10 at 10.0pt
Font cmr10 <CMR10> is resident.
Teraz sa rozbehne hľadanie súboru cmr10.tfm, ktorý je nájdený, potom je referencovaných ešte niekoľko prológových súborov (nezobrazené) a nakoniec je nájdená inštancia fontu Type1, cmr10.pfb, ktorá je pridaná do výstupného súboru (pozri posledný riadok).


kdebug:start search(file=cmr10.tfm, must_exist=1, find_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must_exist=0, find_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]

8.3 Možnosti nastavenia za behu programu

Ďalšou z pekných čŕt distribúcie Web2C je možnosť kontroly množstva pamäťových parametrov (najmä veľkosti polí) za behu prostredníctvom súboru texmf.cnf, ktorý číta knižnica Kpathsea. Nastavenia všetkých parametrov môžete nájsť v časti 3 tohto súboru. Najdôležitejšie riadiace premenné (čísla riadkov sa vzťahujú na súbor texmf.cnf):

main_memory
Celkový počet dostupných slov v pamäti pre TEX, Metafont a METAPOST. Musíte vytvoriť nový formátový súbor pre každé odlišné nastavenie. Napríklad môžete vygenerovať ,,obrovskú‘‘ verziu TEXu a zavolať súbor s formátom hugetex.fmt. S použítím štandardnej špecifikácie mena programu používaného knižnicou Kpathsea, konkrétna hodnota premennej main_memory sa načíta zo súboru texmf.cnf.
extra_mem_bot
Dodatočný priestor pre ,,veľké‘‘ dátové štruktúry TEXu: ,,boxy‘‘, ,,glue‘‘, ,,breakpoint(y)‘‘ a podobne. Je to užitočné hlavne ak používate PI CTEX.
font_mem_size
Počet dostupných slov pre informáciu o fontoch v TEXu. Toto je viac-menej celková veľkosť všetkých prečítaných TFM súborov.
hash_extra
Dodatočný priestor pre hašovaciu tabuľku mien riadiacej sekvencie. Približne 10 000 riadiacich sekvencií môže byť uložených v hlavnej hašovacej tabuľke; ak máte veľkú knihu s mnohými krížovými odkazmi, toto nemusí stačiť. Implicitná hodnota hash_extra je 50000.

Samozrejme, tento prvok nemôže nahradiť naozajstné dynamické polia a alokácie pamäte, ale keďže tieto sa veľmi ťažko implementujú v súčasnej verzii TEXu, tieto parametre počas behu programu poskytujú praktický kompromis, ktorý dovoľuje aspoň nejakú flexibilitu.

9 Poděkování

TEX Live je výsledkem společného úsilí téměř všech skupin uživatelů TEXu. Tato vydání editovali TEX Live Sebastian Rahtz a Karl Berry. Seznam ostatních hlavních přispěvatelů následuje. Děkujeme:

Tvůrci binárek: Tigran Aivazian (x86_64-linux), Manfred Lotz (i386-freebsd), Fabrice Popineau (win32), Norbert Preining (alpha-linux), Vladimir Volovich (powerpc-aix, sparc64-linux, sparc-solaris), Staszek Wawrykiewicz (i386-linux), Olaf Weber (mips-irix), Gerben Wierda (i386-darwin, powerpc-darwin).

Obnova dokumentace a překladů: Karl Berry (English), Daniel Flipo & Fabrice Popineau (French), Günter Partosch & Hartmut Henkel (German), Petr Sojka & Jan Buša (Czech/Slovak), Boris Veytsman (Russian), Staszek Wawrykiewicz (Polish). 3

Samozřejmě, nejdůležitejší poděkování patří Donaldu Knuthovi, především za vymyšlení TEXu a také za to, že ho věnoval světu.

10 Trocha historie

10.1 Minulost

Diskuse začala koncem roku 1993, kdy holandská skupina uživatelů TEXu NTG začala práci na CD 4AllTEX pro uživatele MS-DOSu, doufajíc, že doba nazrála pro vydání jednoho CD pro všechny systémy. Byl to na svou dobu příliš ambiciózní cíl, ale nenastartoval jen velmi úspěšné 4AllTEX CD, ale také pracovní skupinu TUGu o TEX Directory Structure (http://tug.org/tds), která specifikovala, jak vytvořit konzistentní a spravovatelnou kolekci TEXových souborů. Kompletní draft TDS byl publikován v prosincovém čísle časopisu TUGboat v roce 1995 a hned ze začátku bylo jasné, že jedním z žádaných produktů bude vzorová struktura CD. Distribuce, kterou nyní máte, je přímým výstupem práce této pracovní skupiny. Evidentní úspěch 4AllTEX CD ukázal, že i unixoví uživatelé by toužili po podobně jednoduchém systému, a to je také jedno z hlavních aktiv TEX Live.

Nejprve jsme vytvořili unixové TDS CD na podzim 1995 a rychle identifikovali teTEX Thomase Essera jako ideální systém, jelikož již měl multi-platformní podporu a byl koncipován s perspektivou portability. Thomas souhlasil s pomocí, a seriózní práce započala začátkem roku 1996. První vydání se uskutečnilo v květnu 1996. Začátkem 1997 Karl Berry dokončil nové hlavní vydání Web2C, které obsahovalo téměř všechny vlastnosti, které Thomas Esser přidal do teTEXu, a tak jsme se rozhodli druhé vydání CD postavit na standardním Web2C, s přidáním skriptu texconfig z teTEXu. Třetí vydání CD bylo založeno na další revizi Web2C, 7.2, provedené Olafem Weberem; a jelikož zároveň byla hotova nová verze teTEXu, TEX Live obsahoval téměř všechna její vylepšení. Podobně čtvrté vydání používalo novou verzi teTEXu a nové vydání Web2C (7.3). Systém nyní obsahuje i kompletní systém pro Windows.

Pro páté vydání (březen 2000) bylo mnoho částí CD revidováno a zkontrolováno a byly aktualizovány stovky balíků. Detaily o balících byly uloženy v souborech XML. Ale hlavní změnou pro TEX Live 5 bylo vynětí softwaru, na kterém byla jakákoliv omezení na šíření (non-free software). Vše uložené na TEX Live je nyní slučitelné s tzv. ‘Debian Free Software Guidelines’(http://www.debian.org/intro/free); udělali jsme vše možné, abychom zkontrolovali licenční podmínky všech balíků, ale budeme vděčni za upozornění na jakékoli chyby.

Šesté vydání (červenec 2001) mělo aktualizovaného materiálu ještě více. Hlavní změnou byl nový instalační přístup: uživatel může volit instalační kolekce. Byly kompletně reorganizovány jazykové kolekce, takže jejich výběrem se instalují nejen makra, fonty, ale je také připraven odpovídající soubor language.dat.

Sedmé vydání v roce 2002 mělo podstatné rozšíření v přidání podpory Mac OS X, kromě množství aktualizací balíků a programů. Důležitým cílem byla opětná integrace s teTEXem a korekce odchylek z pátého a šestého vydání.

10.1.1 2003

V roce 2003 se neustálou smrští oprav a rozšíření stalo to, že velikost TEX Live již neumožnila jeho směstnání na jedno CD, a tak došlo k rozdělení na tři různé distribuce (viz oddíl 2.1 na straně 7). Navíc:

10.1.2 2004

Rok 2004 přinesl mnoho změn:

10.2 Současnost

Rok 2005 přinesl jako obvykle množství modernizací balíčků a programů. Infrastruktura zůstala relativně stabilní z roku 2004, ale nutně také nastaly nějaké změny:

10.3 Budoucnost

TEX Live není dokonalý! A nikdy nebude. Máme v úmyslu pokračovat v pravidelných ročních vydáních a rádi bychom poskytovali více podpůrných materiálů, programů, včetně instalačních a jistěže aktualizovaný a zkontrolovaný strom maker a fontů. Tato práce je prováděna dobrovolníky v jejich limitovaném volném čase a mnoho potřebného ještě zbývá udělat. Pokud můžete přiložit ruku k dílu, neváhejte zvednout ruku!

Prosíme, pošlete opravy, návrhy, náměty a nabídky pomoci na:

Sebastian Rahtz  /  7 Stratfield Road  /  Oxford OX2 7BG  /  UK
tex-live@tug.org
http://tug.org/texlive

Šťastné TEXování!

1Ve smyslu volnosti modifikace a šíření, dle přístupu volného softvéru. To však neztotožňujte s možností je získat za peníze.

2Od verzie TEX Live 7 nie je nutné túto voľbu nastavovať, pretože Type 1 fonty sú načítané implicitne.

3Ke korektuře českého a slovenského překladu přispěli v letech 2003–2004 kromě autorů Jaromír Kuben, Milan Matlák, Tomáš Obšívač, Tomáš Polešovský, Libor Škarvada, Zdeněk Wagner a další.