dvips
, xdvi
lub dviout
),
łą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
.
bibtex
-- program do tworzenia spisów bibliograficznych;
dmp
-- konwersja troff
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 kolejno
mpto
, tex
i dvitomp
;
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ów pool
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.
etex
-- eTeX czyli TeX rozszerzony o szereg poleceń pierwotnych;
pdftex
-- pdfTeX, rozszerzenie TeX-a pozwalające tworzyć
bezpośrednio pliki w formacie PDF
,
łączy też rozszerzenia etex
;
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);
dviout
-- sterownik ekranowy dla Windows;
xdvi
, jak i dviout
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ów
dvips
, pdftex
oraz dvipdfm
;
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 program mf
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 (pliki ls-R
);
gsftopk
-- skrypt służący do konwersji fontów
PostScript-owych (ostatnio
także fontów TTF) na pliki PK, zwykle uruchamiany przez
sterownik Xdvi
lub dviout
; 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.