Web2C działający w systemach Win32 posiada szczególne cechy, o których warto wspomnieć.
kpsecheck raportuje także stan pamięci współdzielonej: używanej i nieużywanej. Warto czasem o tym wiedzieć, gdyż pokazywany status „pamięć w użyciu” może oznaczać, że działa kilka procesów i efekt wykonania polecenia mktexlsr zostanie każdorazowo opóźniony do czasu, aż nie będzie pracował żaden program korzystający z Kpathsea.
kpsecheck pozwala także określić położenie programu Ghostscript. W systemach Win32 łatwiej jest wielu programom skorzystać z biblioteki DLL programu Ghostscript i znaleźć ją na podstawie rejestrów systemowych, niż na podstawie zmodyfikowanej przez użytkownika zmiennej PATH (ponadto zmienne środowiskowe, szczególnie w starszych wersjach systemu Windows, mają dość ograniczoną pojemność).
Po głównej instalacji istnieje możliwość doinstalowania dowolnych pakietów. Z menu systemowego: Start -> Programy -> TeX Live -> Maintenance należy wybrać -> Add TeX Package, co uruchomi program TeXSetup z odpowiednimi parametrami (uruchomienie TeXSetup --help wyświetli dostępne opcje programu). Po wczytaniu plików definiujących pakiety (.tpm) wyświetlony zostanie od razu ekran wyboru zestawów/pakietów (podobnie jak podczas instalacji początkowej). W trybie doistalowania lista pakietów już zainstalowanych jest porównywana z listą pakietów dostępnych z katalogu źródłowego. Pakiety niezainstalowane wyświetlane są zielonym kolorem, zdezaktualizowane kolorem czerwonym, zaś aktualne, zainstalowane – kolorem czarnym. Dzięki temu można nie tylko dodać nowe komponenty z CD-ROM-u lub z Sieci, ale i zaktualizować posiadane pakiety o dostępne w Sieci nowsze wersje.
Gdy zamierzamy dodać pakiety, których brak w dystrybucji TeX Live (lub fpTeX), warto instalować je w katalogu specyfikowanym przez zmienną $TEXMFLOCAL. W ten sposób zabezpieczymy te pakiety podczas aktualizacji/wymiany oprogramowania TeX Live.
Katalog wskazywany przez $TEXMFLOCAL jest początkowo pusty. Przykładowo: dodajemy pakiet dla Maple (przetwarzanie symboliczne); pliki stylów należy skopiować do katalogu ...\TeXlive\texmf-local\tex\latex\maple\ zaś pliki dokumentacji do katalogu ...\TeXlive\texmf-local\doc\latex\maple\
Na zakończenie należy koniecznie zaktualizować bazę danych instalacji ls-R: albo poprzez wybór menu Start -> Programy -> TeXLive -> Maintenance, albo przez uruchomienie z linii poleceń mktexlsr.
Procedura deinstalacji oprogramowania dostępna jest z programu TeXLive.exe, z menu systemowego TeXLive bądź z Panelu sterowania (Dodaj/usuń programy). Procedura ta usuwa z dysku większość plików TeX Live. Ponieważ TeX jest systemem, który sam tworzy wiele plików, niełatwo śledzić wszystkie z nich. Dodatkowe programy posiadają swoje własne procedury deinstalacyjne, wobec tego należy je uruchomić odrębnie. Pliki umieszczone w katalogu wskazywanym przez zmienną $TEXMFLOCAL nie będą oczywiście usuwane, a więc jeśli zachodzi taka potrzeba, należy je usunąć samodzielnie.
Program TeXSetup.exe posiada szereg interesujących opcji, które mogą być wyświetlone po uruchomieniu z linii poleceń (okno DOS):
Oto opis dostępnych opcji programu:
Biblioteka Kpathsea rozpoznaje nazwy UNC, wobec tego możemy ich użyć dla specyfikacji drzew katalogów TEXMF udostępnianych w sieci komputerowej. Wszystkie pliki z wyjątkiem zawartych w katalogu bin/win32 mogą być współdzielone z instalacjami teTeX lub TeX Live systemów Unix/Linux. Oznacza to, że można użyć Samby do zamontowania serwera NT dla stacji roboczej Unix lub odwrotnie: serwer np. Linux może udostępniać zasoby dla stacji Windows. Dostępne są możliwości:
Plik konfiguracyjny config.ps programu Dvips znajduje się w katalogu ...\TeXlive\texmf-var\dvips\config\. Plik ten można otworzyć w dowolnym edytorze (np. w WinShell) po to, aby zmienić niektóre parametry działania Dvips. Najważniejsze z nich zgrupowano w blokach deklaracji:
Uwaga: Obecna dystrybucja TeX Live posiada zaimplementowaną po raz pierwszy procedurę automatycznej aktualizacji map fontowych dla Dvips i Pdftex, wykonywaną przez program updmap podczas instalacji, a także podczas dodawania pakietów z fontami. Jeśli fonty dodawane są „ręcznie”, należy zmodyfikować plik updmap.cfg w katalogu $VARTEXMF/web2c i następnie uruchomić program updmap.
Konfiguracja programu pdf(la)tex wymaga modyfikacji pliku
...\TeXlive\texmf-var\pdftex\config\pdftex.cfg
W pliku tym możemy deklarować dodatkowe mapy fontowe wczytywane przez program, choć obecnie
tworzone są one automatycznie przez program updmap (patrz „Uwaga” zamieszczona powyżej).
Ponadto można ustawić inne parametry pracy programu pdftex (rozmiar papieru, stopień kompresji
itp.). Parametr output_format z wartością 1 oznacza, że pdftex będzie tworzył domyślnie pliki
od razu w formacie pdf (wartość 0 oznacza tworzenie plików .dvi, identycznie jak programem
tex).
Począwszy od wersji zgodnej z Ghostscript 6.50, GSView jest niestety programem shareware, wobec tego nie mógł znaleźć się na CD-ROM-ie.
Parametry pracy programu są ustawiane m.in. w menu Media. W podmenu Display Settings można poprawić (kosztem szybkości pracy) sposób wyświetlania: parametry Text Alpha i Graphics Alpha należy ustawić na 4 bity. W menu Media można też określić rozmiar papieru i jego orientację.
Uwagi dotyczące drukowania zawarto poniżej, w podrozdziale 6.8.
Podczas instalacji TeXSetup.exe ustawia skojarzenie plików .dvi z uruchamianiem programu Windvi.
W menu View ->Options można ustawić niektóre parametry pracy Windvi, np. możliwość uruchamiania programów zewnętrznych (Allow shell), automatyczne odświeżanie zmienionego pliku .dvi (Autoscan), tryb pracy metafont-a i rozdzielczość generowanych fontów (MF mode i Pixels per inch), współpracę z Ghostscriptem (Postscript) itp. Po zakończeniu pracy programu parametry zapisywane są w pliku $HOME/windvi.cnf (lub Moje dokumenty/windvi.cnf). Położenie tego pliku można ustalić po uruchomieniu z wiersza poleceń:
W wypadku błędnego ustawienia parametrów pracy Windvi plik konfiguracyjny wystarczy skasować.
Ogólne wskazówki dotyczące weryfikacji instalacji zawarto w części 3.5 na str. 29. Tu omówimy jedynie kwestie specyficzne dla Windows.
Dla szybkiej kontroli poprawności instalacji należy uruchomić edytor i otworzyć plik sample2e.tex (znajduje się on w katalogu C:\Program Files\TeXlive\texmf\tex\latex\base\). Na belce z narzędziami wybrać z menu Command!LaTeX (XEmacs), lub wcisnąć ikonę uruchamiania programu latex (WinShell). Następnie wybrać z menu Command!View DVI (XEmacs), lub wcisnąć ikonę podglądu DVI (WinShell). Pierwsze uruchomienie windvi zazwyczaj automatycznie generuje wymagane fonty ekranowe. Po kilku sesjach komunikaty dotyczące generowania fontów staną się rzadsze.
Uwaga: jeśli program latex nie może znaleźć pliku do przetwarzania, naciśnięcie Ctrl-z spowoduje natychmiastowe zakończenie pracy.
Drukowanie bezpośrednio z programu Windvi odbywa się z wykorzystaniem uniwersalnego sterownika druku systemu Windows. Z definicji powinien być on zgodny z większością drukarek, jednakże ma on tendencję do tworzenia olbrzymich plików kolejek (spool) i niektóre (starsze) wersje Windows po prostu tego nie akceptują. Zaletą sterownika jest jedynie możliwość obsługi grafik BMP i WFM. Stosując metodę druku via sterownik Windows należy prawidłowo ustawić parametry rozdzielczości (patrz podrozdział 6.6.4), w przeciwnym wypadku otrzymany wydruk może być przeskalowany (np. drukując w rozdzielczości 600dpi na drukarce 300dpi otrzymamy niespodziewanie 1/4 zamierzonego rozmiaru wydruku).
Drukowanie znacznie szybsze i bardziej niezawodne zapewni konwersja pliku .dvi do .ps programem Dvips i wykorzystanie GSView. Z menu Plik należy wybrać Drukuj, co wyświetli okno dialogowe z szeregiem opcji. Gdy mamy drukarkę PostScriptową, należy wybrać PostScript printer. Drukowanie na drukarkach bez interpretera PostScript wymaga zaznaczenia opcji Ghostscript device (w sekcji „Print Method” okna) i wybrania przyciskiem po prawej stronie odpowiedniego urządzenia.
Jeśli nie decydujemy się na rozbudowany (ale i bardzo silny) edytor XEmacs, możemy samodzielnie zainstalować prosty i łatwy w obsłudze edytor WinShell. Znajdziemy go na płytkach w katalogu support/WinShell. Wystarczy dwukrotnie kliknąć klawiszem myszy na znajdującym się tam pliku .exe. Program uruchamiamy z menu Start bądź z ikony/skrótu na pulpicie. Dostosowanie do polskiej wersji Windows wymaga, prócz określenia języka dla menu i komunikatów, użycia menu Opcje (Options) -> Font -> Zmień i wyboru w wyświetlonym oknie Skrypt napisu Europa Środkowa. Dzięki temu wpisywane za pomocą prawego klawisza Alt polskie znaki diakrytyczne będą prawidłowo wyświetlane.
Aby skonfigurować uruchamianie programów otwieramy menu Options -> Program Calls.
Wciskając przycisk OK zatwierdza się zmiany.
Instalacja programu ustawia w Windows skojarzenie plików .tex z uruchamianiem WinShell. Dopóki nie zamierzamy korzystać z innego edytora (jak WinEdt lub Emacs) jest to poprawne.
WinShell posiada pomoc, dostępną po naciśnięciu symbolu ? na belce z narzędziami.
Ingo de Boer, autor WinShell, udostępnia od czasu do czasu kolejne wersje beta programu. Można je pobrać z http://www.winshell.de. Zwykle są to pliki .zip, które należy rozpakować w katalogu, w którym już zainstalowano WinShell (najczęściej w c:\Program Files\WinShell), zezwalając na nadpisanie dotychczasowej zawartości. Program rozpakowujący unzip.exe można znaleźć na CD w katalogu support/.
Wielokrotnie mamy do czynienia z dokumentami składającymi się z wielu części. Najwygodniej gdy są one zapisane w odrębnych plikach. WinShell umożliwia utworzenie pliku projektu (Project file), w którym deklarujemy poszczególne części większego dokumentu. Nazwy pliku projektu, traktowanego jako główny edytowany plik (Main file), oraz plików części są wyświetlane w lewym oknie edytora. Dwukrotne kliknięcie myszą na nazwie pliku pozwala na szybki wybór i wyświetlenie potrzebnego pliku w głównym oknie edytora. Naciśnięcie ikony LaTeX na belce narzędziowej uruchamia zawsze przetwarzanie głównego pliku, bez względu na to który plik jest aktualnie wyświetlany.
Na belce narzędziowej mamy dodatkowe przyciski pozwalające wyłączyć lub włączyć wyświetlanie okna projektu (po lewej stronie) i okna zapisu sesji (log) – na dole. Gdy plik projektu nie jest używany, lewą część okna można zamknąć, wykorzystując całą szerokość ekranu dla edytowanego pliku.
Ikona Dvips belki narzędziowej uruchamia program, który wynik pracy zapisuje zwykle w pliku .ps. Oglądanie i/lub drukowanie takiego pliku wymaga uruchomienia GSView. WinShell pozwala zdefiniować wygodne wywołanie polecenia dvips, które wynik przetwarzania wyśle od razu do drukarki posiadającej interpreter PostScript. Przykładowo, dla drukarki o nazwie vclw, postępowanie będzie następujące:
Name: Drukuj
exe file: dvips
cmd-line: -D600 %c.dvi -o vclw
skasować zaznaczenie okienka „najpierw DVIPS”
Uruchamianie polecenia zostało zdefiniowane. Aby drukować bezpośrednio na drukarce wystarczy teraz nacisnąć guzik z napisem „Drukuj”.
To, co nazywamy Win32 nie jest właściwie systemem operacyjnym a jedynie zbiorem funkcji, z których wiele (ok. 12000) można użyć do pisania programów dla różnych systemów operacyjnych rodziny Windows. Spotykamy różne wersje Windows:
Win9x mają możliwość uruchamiania jednocześnie programów 16- i 32-bitowych, ale ponieważ sam system nie jest w całości napisany dla trybu 32-bitowego i nie posiada ochrony pamięci, programy 16-bitowe mogą nadpisywać część pamięci wykorzystywanej przez system! Niektóre elementy systemu, jak GDI (Graphical Device Interface) zarządzają w sposób ograniczony zasobami (bitmapy, fonty itp.) gdy wszystkie uruchomione programy jednocześnie korzystają z tych zasobów. Wszystkie nagłówki bitmap dostępnych w tym samym czasie nie mogą przekroczyć granicy 64KB. Jest to przyczyna spotykanego często gwałtownego spadku wydajności systemu i jego zawieszania.
NT i W2K i XP nie posiadają takich ograniczeń. Są to systemy w pełni wielozadaniowe i z ochroną pamięci. Wydają się bardziej stabilne ponieważ lepiej zarządzają pamięcią, posiadają lepszy system plików itp.
Wielu użytkowników może zadać pytanie: „po co używać wiersza poleceń w systemie Windows?”. Dobre pytanie! Problem ma naturę bardziej ogólną. Otóż nie wszystkie zadania daje się wykonać jedynie przy użyciu interfejsu graficznego (GUI). Wiersz poleceń dostarcza wielu możliwości rasowego programowania (zakładając posiadanie przyzwoitego interpretera poleceń).
TeX jest programem działającym wsadowo (batch), a nie interakcyjnie: wylicza najlepszy wygląd każdej strony, rozwiązuje odesłania itp. Taki charakter pracy możliwy jest jedynie podczas globalnego przetwarzania dokumentu, nie ma tu możliwości interakcji. Oznacza to, że program TeX powinien być używany z linii poleceń. W istocie nie jest to takie złe. Programy działające wsadowo, przeznaczone do skomplikowanych zadań, są zwykle lepiej opracowane i pozbawione błędów, ponieważ nie są związane z graficznym interfejsem. Do uruchamiania takich programów można zawsze opracować graficzny interfejs przekazujący zadanie do wykonania i inne parametry. Przykładem takiego właśnie działania może być graficzny edytor (patrz 6.9).
Niemniej jednak częste są sytuacje, gdy przydaje się możliwość uruchamiania programów bezpośrednio z linii poleceń, np. diagnostyka błędów w wypadku wystąpienia problemów (patrz 7.2.4).
API Win32 obsługuje zarówno /, jak i \ jako separatory ścieżek. Niestety interpretery poleceń obsługują wyłącznie \, a więc odwołując się do programu w linii poleceń możemy użyć tylko tego znaku (wynika to z potrzeby kompatybilności: znak / używany jest często jako prefiks dodatkowego parametru). Gdy nazwa ścieżki jest używana przez program oba separatory mogą być stosowane wymiennie, a nawet mieszane.
Nie należy się dziwić gdy często spotkamy ścieżki pisane w konwencji Unix (a więc separowane znakiem /). fpTeX jest implementacją Web2C i z zasady musi być zgodny między różnymi platformami. Dlatego właśnie np. wszystkie pliki konfiguracyjne stosują konwencję uniksową notacji ścieżek.
Najgorszą cechą Win9x z punktu widzenia systemu TeX jest prawdopodobnie system plików zwany FAT. TeX używa bardzo wielu niewielkich plików (1–3KB) i na współczesnych dyskach wielkiej pojemności każdy taki plik potrafi zająć nawet 32KB. Wykorzystanie dysku jest więc bardzo nieefektywne zaś instalacja wszystkich plików z CD-ROM-u może zająć wielokrotnie więcej miejsca niż łączna objętość plików.
Bardziej nowoczesne systemy plików, takie jak NTFS, dostępne są w nowszych wersjach Windows i są one pozbawione ujemnych cech FAT: minimalna jednostka alokacji dla pliku to zwykle 4KB, choć w systemie NTFS można ją zredukować nawet do 512 bajtów.
Większość programów korzysta ze zmiennych, którym można przypisać pewne wartości. Zestaw takich przypisań (par zmienna-wartość) nazywamy środowiskiem. Każdy uruchomiony program korzysta z kopii środowiska i może w ramach tej kopii zmieniać przypisania niektórych zmiennych (nie są one dostępne dla innych uruchomionych równolegle programów). Instalator systemu TeX dla Win32 konieczną konfigurację środowiska przeprowadza automatycznie. Warto jednak wiedzieć, jak konfigurować środowisko ręcznie.
PATH jest specjalną zmienną wykorzystywaną do lokalizowania programów w systemie. Poszczególne wersje Windows mają różne procedury deklarowania PATH:
Proszę zauważyć, że ścieżki zawierające spację wymagają ujęcia w parę znaków ”. Poczynione zmiany aktywne będą po restarcie systemu.
Uwaga: przed zamknięciem okna dialogowego należy zatwierdzić zmiany przyciskiem „Zastosuj”.
Dokonane zmiany można sprawdzić otwierając konsolę i uruchamiając polecenie:
co wyświetli aktualnie aktywne wartości dla danej zmiennej.
Z dokumentacji Web2C można wyczytać, że różnie nazwane programy wykorzystują tę samą „maszynę”, np. tex.exe i latex.exe są dokładnymi kopiami tego samego programu, ale uruchamiają się z różnymi plikami formatu, zgodnie z nazwą podaną w wywołaniu.
W systemach Unix cecha ta jest zaimplementowana poprzez tzw. dowiązanie symboliczne, co pozwala na zaoszczędzenie wiele miejsca na dysku: ten sam program uruchamiany jest z wieloma formatami.
Interfejs aplikacji systemów Windows (API) nie zna pojęcia dowiązania. Aby niepotrzebnie nie zajmować miejsca na dysku, zastosowano tu pomysł umieszczenia głównej „maszyny” TeX w pliku dynamicznie wiązanej biblioteki (DLL). Z kolei programy uruchomieniowe (.exe) umieszczono w niewielkich plikach przekazujących przez nazwę parametr wywołania (nazwę formatu). Na dysku znajdziemy zatem:
Należy użyć programu kpsewhich, który jest narzędziem do diagnostyki wszelkich problemów związanych ze znajdywaniem plików (patrz 7.2.4 na str. 80.
Należy odpowiedzieć sobie na szereg pytań:
Oprogramowanie zawarte na TeX Live jest bardzo złożone i składa się z ponad 250 programów i około 40000 plików różnego źródła. Niesłychanie trudno przewidzieć wszystkie możliwe przyczyny problemów, niemniej jednak dołożymy wszelkich starań aby pomóc je rozwiązać.
Wszystkie pliki źródłowe programów zawarte są w skompresowanym archiwum source/source.tar.bz2 na CD-ROM-ie. Kompilacja w środowisku Windows wymaga:
Uczynienie tego procesu łatwiejszym i bardziej klarownym wymaga jeszcze sporo pracy.