7 Údržba pod Windows po instalaci

7.1 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ékokoliv 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, overhead při startu dalšího programu je minimalizován. 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)2. Z tohoto důvodu můžete kombinovat přepínač -multiple-occurences s 2 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é reportuje status sdílené paměti: zda je či není v použití. To je vhodné vědět, protože pokud je status ‘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ů slinkovaných s 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.2 Přidávání balíků do vaší instalace

V menu TeXLive najdete volbu pro spuštění TeXSetup.exe v módu údržby (nebo běžte do Start-->Programs-->TeXLive-->Add TeX package menu). Postup je skoro stejný jako při instalaci.

Rozdíly popíšeme níže, ale nejprve: jakékoli změny uděláte, nezapomeňte přegenerovat databázi ls-R instalovaných souborů, jinak souboy nebudou nalezeny. Můžete tak učinit přes grafické rozhraní (Start-->Programs-->TeXLive-->Maintenance-->Rebuild ls-R), nebo ručně spuštěním programu mktexlsr.

Hlavní rozdíl je ve stránce výběru balíků. V módu údržby je seznam instalovaných balíků porovnán se seznamem balíků dostupných ve zdrojových adresářích. Balíky, které nejsou instalované jsou zobrazeny zeleně, zastaralé balíky budou zobrazeny zeleně, a instalované balíky černě.

Tímto způsobem si můžete vybrat zda přidat či aktualizovat komponenty, buď z TeX Live nebo z Internetu, kde budou patrně k nalezení novější verze balíků.

Záleží na vás, které balíky si vyberete k instalaci. Zbytek instalačního procesu je podobný první instalaci.

Pokud chcete přidat soubory, které nejsou součástí TeX Live (nebo fpTeXu), je vhodné je umístit do adresáře $TEXMFLOCAL. Tímto způsobem se vyhnete problémům při aktualizaci software TeX Live.

Adresář odkazovaný proměnnou $TEXMFLOCAL je zpočátku prázdný. Pokud například chcete přidat podporu pro program Maple, musíte dát soubory do:
c:\Program Files\TeXLive\texmf-local\tex\latex\maple\
a dokumentaci do:
c:\Program Files\TeXLive\texmf-local\doc\latex\maple\

7.3 Odinstalování TeX Live

Odinstalační procedura je dostupná buď z programu TeXLive.exe, z menu TeXLive nebo z GUI (Start-->Control Panel, Add/Remove Programs). Tímto postupem smažete ze svého pevného disku většinu souborů TeX Live. Nicméně, TeX je systém, který vytváří soubory a není zde mechanismus, který by je všechny evidoval. Navíc, podpůrné Win32 balíky mají svoje odinstalační procedury, které budete muset spustit odděleně (pokud se jich chcete zbavit). Konečně, soubory, které byly uloženy v $TEXMFLOCAL nebudou odstraněny. Tedy, i když drtivá většina souborů bude automaticky odstraněna, část práce budete muset udělat ručně.

7.4 Spouštění TeXSetup.exe z příkazového řádku

Program TeXSetup.exe má několik dalších užitečných voleb. Seznam získáte takto:


  c:\>TeXSetup --help

A zde je popis:

--automatic-reboot
reboot bez uživatelova potvrzování po dokončení instalace;
--dry-run
nedělej nic, ale do logu piš co by se jinak udělalo, nebýt tohoto přepínače;
--quick
použij doporučenou instalaci a implicitní adresáře, a neptej se na nic až do rebootu;
--with-xemtex
vybere kolekci XEmTeX;
--net-method (=ie5/direct)
povol stažení komponent s omezujícími licencemi z Internetu (přímým použitím spojení přes DLL Internet Exploreru 5): musíte mít dostupné síťové připojení a některé balíky jsou obrovské;
--remote-source-directory <url>
toto je základní url pro vzdálené balíky;
--local-source-directory <dir>
implicitně TeXSetup.exe bude hádat kořenový adresář se vstupy. Když svůj TeXSetup.exe aktualizujete, a nebudete mít možnost aktualizovat svoje CD, budete tuto volbu potřebovat pro určení kořenového adresáře CD;
--installation-directory <dir>
specifikuje kořenový adresář instalace, kam budou všechny soubory kopírovány. Implicitní hodnota je c:\Program Files\TeXLive;
--texmfmain-directory <dir>
--texmflocal-directory <dir>
--texmfextra-directory <dir>
--texmfhome-directory <dir>
--vartexmf-directory <dir>
--vartexfonts-directory <dir>
tyto adresáře jsou použity ke konfiguraci umístění vašich souborů. Odpovídají přímo proměnným v souboru texmf.cnf.
--with-source-files(=yes/no)
kopíruj zdrojové soubory TeXových balíků, implicitní hodnota je no;
--with-documentation-files(=yes/no)
kopíruj dokumentaci TeXových balíků. Implicitní hodnota je yes. Pozor: jde o documentaci instalovaných balíků, základní dokumentace bude instalována tak jako tak;
--program-folder <folder>
název složky kde najdete menu;
--add-package <pkg>
pro přidání nebo aktualizaci konkrétního balíku po první korektní instalaci;
--scheme <pkg>
instaluj dle uvedeného instalačního schématu místo implicitního schématu texlive-recommended;
--maintenance
téměř totéž jako --add-package bez specifikace balíku k přidání;
--uninstall
tato volba odstraní cokoliv TeXu relevantního co se instalovalo z CD. Znamená to že zůstanou například přidané styly či nagenerované formátové soubory, a také dodatečně instalované nástroje nebudou odstraněny. Možnosti této volby jsou v tomto vydání omezené;
--help
tato volba způsobí výpis seznamu voleb.

7.5 Síťová instalace

Kpathsea ví o síťových jménech (UNC), a tedy je můžete používat ve svém TEXMF stromu ze sítě. Ale je tu ještě něco lepšího. Všechny soubory instalace s výjimkou binárek v bin/win32 se dají sdílet s teTeXem nebo unixovou TeX Live instalací. To znamená že můžete použít Samba pro montování ze serveru NT na Unix nebo naopak. Je možných několik strategií:

7.6 Osobní konfigurace

7.6.1 Dvips

Konfigurační soubor pro dvips lze najít v
C:\Program Files\TeXLive\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 jako 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. Odrolujte na 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$VARTEXMF/web2c.

7.6.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:\Program Files\TeXLive\texmf-var\pdftex\config\pdftex.cfg a změňte ‘page_width’ a ‘page_height’. Tyto položky by měly vypadat takto:


page_width 8.5 true in
page_height 11 true in
Uložte soubor a opusťte editor.

7.6.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 Media-->Letter.

Také jsou zde nastavení, která vám umožní mít co nejčitelnější renderované obrázky. V menu Media-->Display 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.8.

7.6.4 WinDvi

Program TeXSetup.exe nastaví jako program, který bude asociován s .dvi soubory, program Windvi.

Spustí se pomocí Start-->Programs-->TeXLive-->DVI Viewer.

Můžete program zkonfigurovat pro velikost papíru ‘US letter’ pomocí View-->Options-->Papertype 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.7 Testování

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

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

Nejprve, pokud prohlížíte soubory s Windvi, budou se 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.8 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 možnost 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.6.4), jinak dostanete jinou velikost tisku (tisk nastavený na 600 dpi poslaný na tiskárnu 300 dpi 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 File-->Print. . . (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 volba 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.9 Tipy a triky pro Win32

7.9.1 Různé verze Win32

Co nazýváme Win32 není opeč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 kB. 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.9.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 Start-->Programs, nebo výběrem menu Start-->Run a napsáním jména programu command.com.
NT, 2K, XP
Najděte položku Command Prompt v menu Start-->Accessories nebo vyberte Start-->Run 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.9.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.9.4 Souborové systémy

Nejhorším rysem Win9x vzhledem k TeXu je pravděpodobně takzvaný souborový systém FAT. TeX používá mnoho malých souborů s velikostí okolo 1–3 kB. FAT systém je starý, a vznikl před desítkami let a nepočítá s pevnými disky majícími desítky gigabajtů. Jako důsledek, uložení desítek tisíc TeXových souborů jako na TeX Live není efektivní. FAT systém alokuje minimálně 32 kB 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í. Klastry mohou být veliké pouze 4 kB, a na NTFS můžete tuto velikost snížit na 512 bajtů.

7.9.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
Edituj 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:"Program Files"\TeXLive\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 reboot.
Windows NT/2K/XP
Klikněte na Start-->Settings-->Control 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ěl 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 v pole Value ukazuje současné nastavení PATH jako seznamu adresářů oddělených středníkem. Přidejte adresář s binárkami (například c:\Program Files\TeXLive\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.9.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, tato vlastnost je implementována přes symbolické odkazy. Ušetří to diskový prostor, protože tentýž program je použit pro mnoho růyný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 zkopilovány jako DLLs (Dynamic Linked Library). To znamená, že to dopadne následovně:


13/05/2002  17:06                3 584 latex.exe
13/05/2002  17:06              266 240 tex.dll
13/05/2002  17:06                3 584 tex.exe
a soubor latex.exe není nic jiného než přesná kopie tex.exe používající tutéž základní knihovnu tex.dll. Stejný trik byl použit pro rodinu programů mktex*.exe které spouští knihovnu mktex.dll.

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

7.10 V případě obtíží

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

7.10.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:/Program Files/ TeXLive/texmf-var/web2c (implicitní hodnota)?
  3. Jsou k nalezení některá chybová hlášení v log souboru generovaném programem TeXSetup.exe? Můžete je najít hledáním řetězce ‘Error’.
  4. Jsou na http://tug.org/texlive/ k dispozici nějaké záplaty? (Je to nepravděpodobné, ale nic tím nepokazíte.)
  5. Nahlédněte webové stránky na http://www.fptex.org/, nebo se přihlašte do diskusní skupiny fpTeXu přes http://tug.org/mailman/listinfo/fptex.

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 vám pomoci (viz oddíl 1.2 na straně 8.)

7.11 Kompilace ze zdrojových souborů

V archívu source/source.tar.bz2 máte zabalené úplné zdroje distribuce včetně změnových souborů pro Win32. Na rekompilaci celé distribuce budete potřebovat:

Dá ještě hodně práce tento proces udělat jednodušší a snazší.

7.12 Kde získat více informací

TeXový systém vložený na TeX Live je znám také jako fpTeX. Zabalení se liší, ale fpTeX je víceméně totéž co část TeX Live pro Windows.

Domovská stránka fpTeXu je http://www.fptex.org.

Aktuální vydání fpTeXu je k nalezení na každém zrcadle CTAN v htp://www.ctan.org/tex-archive/systems/win32/fptex.

Hlavní distribuční adresář pro fpTeX  je ftp://ftp.dante.de/pub/fptex/ odkud jsou dostupné beta verze fpTeXu spolu s dalšími nástroji. Primární zdroj je (částečně) zrcadlem denně všemi zrcadly CTAN z systems/win32/fptex.

Skupina uživatelů TeXu TUG hostuje diskusní skupinu dedikovanou fpTeXu. je používána pro oznámení, chybové zprávy, požadavky na vylepšení, a obecnou diskusi o fpTeXu. Pro přihlášení navštivte http://tug.org/mailman/listinfo/fptex. Adresa diskusní skupiny je fptex@tug.org.