Web2c
Web2c
Web2c jest systemem do generowania kompletnego środowiska TeX-owego dla różnorodnych platform, nie tylko Unixowych, ale także Windows 9x/NT/2000/XP, Amiga, a nawet MS DOS. Dostępne oprogramowanie to nie tylko TeX i MetaFont, ale także MetaPost, pdfTeX, eTeX, Omega, szereg sterowników (w tymdvips
, xdvi
lub windvi
),
łącza TeX-HTML, programy fontowe (szczególnie dotyczące PostScript-u),
programy do reorganizacji plików DVI i PS a także wiele innych.
TeX i MetaFont zostały napisane w języku WEB, stworzonym specjalnie
do tego celu przez Donalda E. Knutha. WEB pozwala na staranną
modularyzację kodu oraz jednocześnie szczegółową dokumentację programu.
Przeniesienie kodu napisanego w WEB do Pascala i kompilację
programów zapewnia program tangle
. Z kolei program
weave
umożliwia utworzenie z tych samych źródeł pliku
TeX-owego gotowego do składu eleganckiej dokumentacji programu. Dostosowanie
kodu pascalowego do konkretnej implementacji języka zależne jest jedynie od
starannie przygotowanych tzw. plików wymiany (ang. change files).
Zamianę kodu WEB do obecnie powszechnie stosowanego języka C
zrealizował w 1987 r. Tomas Rokicki, tworząc system TeX-to-C.
W roku 1990 systemem zajął się Karl Berry i wtedy to zmieniono jego
nazwę na Web2c. Cały czas udoskonalane i optymalizowane są metody
kompilacji, znacznie rozszerzyła się gama programów pomocniczych, przede
wszystkim zaś rozszerzyła się liczba platform systemowych, na które
w podobny sposób (i coraz łatwiej) można przenieść jednorodne
środowisko TeX-owe. Od 1997 r. system jest pielęgnowany przez Olafa
Webera. W marcu 1999 r. udostępniony został Web2c w wersji
7.3, która zawierała szereg nowości i udoskonaleń działania programów
(m.in. po raz pierwszy programy Web2c pozwalają na swobodne przekodowanie
znaków narodowych). Wersja 7.4, która powstała pod koniec 2002 r.,
to kolejny krok w optymalizacji oprogramowania (zmiany w bibliotece kpathsea,
znaczne zmiany w pdftex itp.). Wersja 7.5 z 2004 r. wprowadza
m.in. obsługę nazw plików zawierających spacje, rozszerzenie encTeX,
uporządkowanie współpracy z różnymi terminalami, obsługę zmienionego
układu TDS i wiele innych zmian.
Obecnie implementacje oparte na Web2c działają na wielu platformach Unix (w tym oczywiście Linux), Windows, DOS, Amiga i innych. Wykorzystując jednorodną strukturę katalogów, zgodną z TDS (TeX Directory Structure) pozwalają na współdzielenie zasobów przez różne systemy.
Programy wchodzące w skład Web2c wykorzystują zaawansowane metody
wyszukiwania w rozległej instalacji plików wymaganych przez programy.
Metody te udostępnia wspólnie użytkowana biblioteka kpathsea
(dokumentacja
w kpathsea.html
).
Opis systemu Web2c zawiera dokumentacja zawarta
w web2c.html
.
Składniki systemu Web2c
System Web2c zawiera następujące podstawowe programy:
bibtex
– program do tworzenia spisów bibliograficznych;dmp
– konwersjatroff
do.mpx
(postaci MetaPost-owej niskiego poziomu);dvicopy
– program modyfikujący pliki DVI;dvitomp
– konwersja DVI do postaci MetaPost-owej niskiego poziomu (pliku.mpx
);dvitype
– konwersja DVI na plik tekstowy (ASCII);gftodvi
– zamiana fontu GF na plik DVI;gftopk
– zamiana fontów w formacie GF na font spakowany PK;gftype
– zamiana fontu GF na plik tekstowy (ASCII);makempx
– skład materiału tekstowego zawartego w pliku MetaPost-owym i jego konwersja do poleceń niskiego poziomu umieszczanych w pliku.mpx
; program uruchamia kolejnompto
,tex
idvitomp
;mf
– MetaFont, system do generowania fontów bitmapowych w formacie GF;mft
– skład plików źródłowych MetaFont-a;mpost
– MetaPost, program do tworzenia rysunków oraz diagramów technicznych w formacie PostScript, oparty na języku podobnym do wykorzystywanego przez MetaFont;mpto
– ekstrakcja materiału tekstowego zawartego w pliku MetaPost-owym i konwersja do pliku TeX-owego (domyślnie) lub Troff;newer
– pomocniczy program do porównywania czasów modyfikacji plików;patgen
– program do tworzenia wzorców przenoszenia wyrazów (hyphenation patterns);pktogf
– zamiana fontów w formacie PK na fonty GF;pktype
– zamiana fontu PK na plik tekstowy (ASCII);pltotf
– konwersja tekstowej listy właściwości do TFM (metryki fontu TeX-owego);pooltype
– wyświetlanie WEB-owych plikówpool
z numeracją łańcuchów znakowych;tangle
– konwersja kodu WEB do języka Pascal;tex
– program do składu tekstu;tftopl
– konwersja TFM do tekstowej listy właściwości (PL);vftovp
– konwersja fontów wirtualnych do wirtualnej listy właściwości (VPL);vptovf
– konwersja wirtualnej listy właściwości do fontów wirtualnych (.vf
);weave
– konwersja WEB do postaci TeX-owej gotowej do składu.
pdfetex
– pdfeTeX, rozszerzenie TeX-a pozwalające tworzyć bezpośrednio pliki w formaciePDF
, funkcjonalnie jest to połączenie dotychczas używanych programówetex
(czyli TeX rozszerzony o szereg poleceń pierwotnych) ipdftex
;omega
– Omega, rozszerzenie TeX-a pracujące z fontami ze znakami kodowanymi 16-bitowo (Unicode) i pozwalające na skład w różnych, b. egzotycznych językach;aleph
– program łączący cechy eTeX-a i Omegi, próba stabilizacji projektu Omega, który wciąż jest w fazie eksperymentalnej;- XeTeX – intensywnie rozwijana wersja, pracująca w Unikodzie i korzystająca z fontów systemowych, także OpenType.
dvips
– sterownik DVI do PostScript;dvilj
– sterownik DVI dla drukarek zgodnych ze standardem Hewlett-Packard; dla poszczególnych modeli drukarek istnieje kilka odmian programu np.dvilj2
,dvilj4
,dvilj6
;xdvi
– sterownik ekranowy (wyświetlający pliki DVI) dla X Window (systemy Unix);windvi
– sterownik ekranowy dla Windows 9x/NT;
xdvi
, jak i windvi
potrafią obecnie
wyświetlać włączane to tekstu elementy graficzne w formacie
EPS, jak i obsługiwać fonty w formacie Type1.Wymienione wyżej programy wykorzystują wspólne biblioteki i korzystają ze wspólnych plików konfiguracyjnych. Całość oprogramowania tworzy zatem jednorodne środowisko. Ponadto dostępne są skrypty bądź programy, m.in.:
texconfig
– skrypt do konfiguracji całego środowiska (dostępny jedynie dla systemów Unix/Linux);fmtutil
– skrypt do generowania formatów;updmap
– skrypt aktualizujący mapy fontowe dla programówdvips
,pdftex
orazdvipdfm
;mktexmf
– skrypt tworzy, w miarę możliwości, plik MetaFont-owy dla nowego fontu (np. cmr11), dla którego istnieje plik źródłowy o zbliżonym stopniu pisma;mktextfm
– skrypt uruchamia programmf
i generuje potrzebny plik TFM;mktexpk
– skrypt generuje potrzebny font bitmapowy w formacie PK;mktexnam
– skrypt wyświetla nazwy i położenie plików MF, TFM i PK dla danego fontu;mktexupd
– skrypt uzupełnia bazę danych instalacji (ls-R
) o nazwę katalogu i nowo powstałego pliku;mktexlsr
(texhash
) – skrypt tworzy lub aktualizuje bazy danych instalacji (plikils-R
);gsftopk
– skrypt służący do konwersji fontów PostScript-owych (ostatnio także fontów TTF) na pliki PK, zwykle uruchamiany przez sterownikXdvi
lubWindvi
; skrypt steruje wywołaniem programu GhostScript, który dokonuje rasteryzacji fontów obwiedniowych;kpsewhich
– program do przeszukiwania ścieżek w instalacji TeX-owej, używany intensywnie przez skrypty ,,mktex...
''; program może być także wykorzystany do diagnostyki problemów.
--help
.
Wszystkie omówione powyżej programy i skrypty mają dokumentację dostępną
w man
, info
a także
w formacie HTML.
Stanisław Wawrykiewicz (staw at gust.org.pl); modyfikacja: 25.06.2008
Document Actions