summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/tex-virtual-academy-pl/poczatki/web2c.html
blob: c4ad820d33fcad1cfb75c0432c7a75228c3bdfbe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
<HTML>
<HEAD>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
<TITLE>Web2c</TITLE>
</HEAD>

<!-- TeX Live 2008 revision, 30.05.2008 -->

<BODY>
<center>
<h2>Web2c</h2>
</center>

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&nbsp;nawet MS DOS.
Dostêpne oprogramowanie to nie tylko TeX i&nbsp;MetaFont, ale tak¿e MetaPost, 
pdfTeX,
eTeX, Omega, szereg sterowników (w&nbsp;tym <code>dvips</code>, <code>xdvi</code> lub <code>windvi</code>), 
³±cza TeX-HTML, programy fontowe (szczególnie dotycz±ce PostScript-u), 
programy do reorganizacji plików DVI i&nbsp;PS a&nbsp;tak¿e wiele innych.<p>

TeX i&nbsp;MetaFont zosta³y napisane w&nbsp;jêzyku WEB, stworzonym specjalnie
do tego celu przez Donalda E.&nbsp;Knutha. WEB pozwala na starann±
modularyzacjê kodu oraz jednocze¶nie szczegó³ow± dokumentacjê programu.
Przeniesienie kodu napisanego w&nbsp;WEB do Pascala i&nbsp;kompilacjê
programów zapewnia program <code>tangle</code>. Z&nbsp;kolei program
<code>weave</code> umo¿liwia utworzenie z&nbsp;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. <i>change files</i>).
Zamianê kodu WEB do obecnie powszechnie stosowanego jêzyka&nbsp;C
zrealizowa³ w&nbsp;1987&nbsp;r. Tomas Rokicki, tworz±c system TeX-to-C.
W&nbsp;roku 1990 systemem zaj±³ siê Karl Berry i&nbsp;wtedy to zmieniono jego
nazwê na Web2c. Ca³y czas udoskonalane i&nbsp;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&nbsp;podobny sposób (i&nbsp;coraz ³atwiej) mo¿na przenie¶æ jednorodne
¶rodowisko TeX-owe. Od 1997&nbsp;r. system jest pielêgnowany przez Olafa
Webera.  W&nbsp;marcu 1999&nbsp;r. udostêpniony zosta³ Web2c w&nbsp;wersji
7.3, która zawiera³a szereg nowo¶ci i&nbsp;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&nbsp;r.,
to kolejny krok w optymalizacji oprogramowania (zmiany w bibliotece kpathsea,
znaczne zmiany w pdftex itp.). Wersja 7.5 z&nbsp;2004&nbsp;r. wprowadza
m.in. obs³ugê nazw plików zawieraj±cych spacje, rozszerzenie encTeX,
uporz±dkowanie wspó³pracy z&nbsp;ró¿nymi terminalami, obs³ugê zmienionego
uk³adu TDS i&nbsp;wiele innych zmian.<p>

Obecnie implementacje oparte na Web2c dzia³aj± na wielu platformach
Unix (w&nbsp;tym oczywi¶cie Linux), Windows, DOS, Amiga i&nbsp;innych.
Wykorzystuj±c jednorodn± strukturê katalogów, zgodn± z&nbsp;TDS (<i>TeX
Directory Structure</i>) pozwalaj± na wspó³dzielenie zasobów przez
ró¿ne systemy.<p>

Programy wchodz±ce w&nbsp;sk³ad Web2c wykorzystuj± zaawansowane metody 
wyszukiwania w&nbsp;rozleg³ej instalacji plików wymaganych przez programy.
Metody te udostêpnia wspólnie u¿ytkowana biblioteka <code>kpathsea</code>
(dokumentacja 
<!-- w&nbsp;<A href="../../../../../texmf/doc/kpathsea/kpathsea.pdf"><code>kpathsea.pdf</code>)</A>. -->
w&nbsp;<A href="http://www.tug.org/texinfohtml/kpathsea.html"><code>kpathsea.html</code>)</A>.
Opis systemu Web2c zawiera dokumentacja zawarta
<!-- w&nbsp;<A href="../../../../../texmf/doc/web2c/web2c.pdf"><code>web2c.pdf</code></A>. -->
w&nbsp;<A href="http://www.tug.org/texinfohtml/web2c.html"><code>web2c.html</code></A>. 
<!-- Obie wymienione dokumentacje dostêpne s± te¿ w&nbsp;formacie <code>HTML</code>. -->

<h2>Sk³adniki systemu Web2c</h2>

System Web2c zawiera nastêpuj±ce podstawowe programy:<p>

<ul>
<li><code>bibtex</code> 
  -- program do tworzenia spisów bibliograficznych;
<li><code>dmp</code> 
  -- konwersja <code>troff</code> do <code>.mpx</code> (postaci MetaPost-owej 
  niskiego poziomu);
<li><code>dvicopy</code> 
 -- program modyfikuj±cy pliki DVI;
<li><code>dvitomp</code> 
 -- konwersja DVI do postaci MetaPost-owej niskiego 
  poziomu (pliku <code>.mpx</code>);
<li><code>dvitype</code> 
 -- konwersja DVI na plik tekstowy (ASCII);
<li><code>gftodvi</code> 
 -- zamiana fontu GF na plik DVI;
<li><code>gftopk</code> 
 -- zamiana fontów w&nbsp;formacie GF na font spakowany PK;
<li><code>gftype</code> 
 -- zamiana fontu GF na plik tekstowy (ASCII);
<li><code>makempx</code> 
 -- sk³ad materia³u tekstowego zawartego w&nbsp;pliku MetaPost-owym
  i&nbsp;jego konwersja do poleceñ niskiego poziomu umieszczanych 
  w&nbsp;pliku <code>.mpx</code>; program uruchamia kolejno 
  <code>mpto</code>, <code>tex</code> i&nbsp;<code>dvitomp</code>;
<li><code>mf</code> 
 -- MetaFont, system do generowania fontów bitmapowych
  w&nbsp;formacie&nbsp;GF;
<li><code>mft</code> -- sk³ad plików ¼ród³owych MetaFont-a;
<li><code>mpost</code> -- MetaPost, program do tworzenia rysunków oraz diagramów 
  technicznych w&nbsp;formacie PostScript, oparty na jêzyku podobnym do 
  wykorzystywanego przez MetaFont;
<li><code>mpto</code> -- ekstrakcja materia³u tekstowego zawartego w&nbsp;pliku 
  MetaPost-owym i&nbsp;konwersja do pliku TeX-owego (domy¶lnie) lub Troff;
<li><code>newer</code> -- pomocniczy program do porównywania czasów modyfikacji plików;
<li><code>patgen</code> -- program do tworzenia wzorców przenoszenia wyrazów
  (<i>hyphenation patterns</i>);
<li><code>pktogf</code> -- zamiana fontów w&nbsp;formacie PK na fonty GF;
<li><code>pktype</code> -- zamiana fontu PK na plik tekstowy (ASCII);
<li><code>pltotf</code> -- konwersja tekstowej listy w³a¶ciwo¶ci do TFM
  (metryki fontu TeX-owego);
<li><code>pooltype</code> -- wy¶wietlanie WEB-owych plików <code>pool</code> z&nbsp;numeracj± 
  ³añcuchów znakowych;
<li><code>tangle</code> -- konwersja kodu WEB do jêzyka Pascal;
<li><code>tex</code> -- program do sk³adu tekstu;
<li><code>tftopl</code> -- konwersja TFM do tekstowej listy w³a¶ciwo¶ci
 (PL);
<li><code>vftovp</code> -- konwersja fontów wirtualnych do wirtualnej listy
 w³a¶ciwo¶ci (VPL);
<li><code>vptovf</code> -- konwersja wirtualnej listy w³a¶ciwo¶ci do fontów 
  wirtualnych (<code>.vf</code>);
<li><code>weave</code> -- konwersja WEB do postaci TeX-owej gotowej do sk³adu.
</ul>

Instalacje oparte na Web2c zawieraj± ponadto programy:

<ul>
<!-- <li><code>etex</code> -- eTeX czyli TeX rozszerzony o&nbsp;szereg poleceñ pierwotnych; -->
<li><code>pdfetex</code> -- pdfeTeX, rozszerzenie TeX-a pozwalaj±ce tworzyæ 
   bezpo¶rednio pliki w&nbsp;formacie <code>PDF</code>, funkcjonalnie jest
   to po³±czenie dotychczas u¿ywanych programów <code>etex</code> 
   (czyli TeX rozszerzony o&nbsp;szereg poleceñ pierwotnych) 
   i&nbsp;<code>pdftex</code>;
<li><code>omega</code> -- Omega, rozszerzenie TeX-a pracuj±ce z&nbsp;fontami ze znakami
   kodowanymi 16-bitowo (Unicode) i&nbsp;pozwalaj±ce na sk³ad w&nbsp;ró¿nych,
   b.&nbsp;egzotycznych jêzykach;
<li><code>aleph</code> -- program ³±cz±cy cechy eTeX-a i&nbsp;Omegi, próba
 stabilizacji projektu Omega, który wci±¿ jest w&nbsp;fazie eksperymentalnej;
<li>XeTeX</b> -- intensywnie rozwijana wersja, pracuj±ca w Unikodzie
 i&nbsp;korzystaj±ca z&nbsp;fontów systemowych, tak¿e OpenType. 
<li><code>dvips</code> -- sterownik DVI do PostScript;
<li><code>dvilj</code> -- sterownik DVI dla drukarek zgodnych ze standardem 
 Hewlett-Packard;
 dla poszczególnych modeli drukarek istnieje kilka odmian programu np.
 <code>dvilj2</code>, <code>dvilj4</code>, <code>dvilj6</code>;
<li><code>xdvi</code> -- sterownik ekranowy (wy¶wietlaj±cy pliki DVI) 
   dla X Window (systemy Unix);
<li><code>windvi</code> -- sterownik ekranowy dla Windows 9x/NT;
</ul>

Zarówno <code>xdvi</code>, jak i&nbsp;<code>windvi</code> potrafi± obecnie 
wy¶wietlaæ w³±czane to tekstu elementy graficzne w&nbsp;formacie
EPS, jak i&nbsp;obs³ugiwaæ fonty w&nbsp;formacie Type1.<p>

Wymienione wy¿ej programy wykorzystuj± wspólne biblioteki i&nbsp;korzystaj±
ze wspólnych plików konfiguracyjnych. Ca³o¶æ oprogramowania tworzy zatem
jednorodne ¶rodowisko. Ponadto dostêpne s± skrypty b±d¼ programy, m.in.:<p>

<ul>
<li><code>texconfig</code> -- skrypt do konfiguracji ca³ego ¶rodowiska (dostêpny
 jedynie dla systemów Unix/Linux);
<li><code>fmtutil</code> -- skrypt do generowania formatów;
<li><code>updmap</code> -- skrypt aktualizuj±cy mapy fontowe dla programów
<code>dvips</code>, <code>pdftex</code> oraz <code>dvipdfm</code>;
<li><code>mktexmf</code> -- skrypt tworzy, w&nbsp;miarê mo¿liwo¶ci, plik MetaFont-owy dla nowego
 fontu (np. cmr11), dla którego istnieje plik ¼ród³owy o&nbsp;zbli¿onym stopniu
 pisma;
<li><code>mktextfm</code> -- skrypt uruchamia program <code>mf</code> i&nbsp;generuje potrzebny
 plik TFM;
<li><code>mktexpk</code> -- skrypt generuje potrzebny font bitmapowy w&nbsp;formacie PK;
<li><code>mktexnam</code> -- skrypt wy¶wietla nazwy i&nbsp;po³o¿enie plików MF,
 TFM i&nbsp;PK dla danego fontu;
<li><code>mktexupd</code> -- skrypt uzupe³nia bazê danych instalacji (<code>ls-R</code>)
 o&nbsp;nazwê katalogu i&nbsp;nowo powsta³ego pliku;
<li><code>mktexlsr</code> (<code>texhash</code>) -- skrypt tworzy lub aktualizuje bazy danych 
 instalacji (pliki <code>ls-R</code>);
<li><code>gsftopk</code> -- skrypt s³u¿±cy do konwersji fontów 
  PostScript-owych (ostatnio
  tak¿e fontów TTF) na pliki PK, zwykle uruchamiany przez 
  sterownik <code>Xdvi</code> lub <code>Windvi</code>; skrypt steruje wywo³aniem programu
  GhostScript, który dokonuje rasteryzacji fontów obwiedniowych;
<li><code>kpsewhich</code> -- program do przeszukiwania ¶cie¿ek w&nbsp;instalacji TeX-owej,
 u¿ywany intensywnie przez skrypty ,,<code>mktex...</code>''; program mo¿e byæ
 tak¿e wykorzystany do diagnostyki problemów.
</ul>

Wiêkszo¶æ powy¿szych skryptów uruchamiana jest automatycznie. Wymienione
dotychczas programy i&nbsp;skrypty maj± wspóln± cechê, polegaj±c± na
wy¶wietlaniu tekstu pomocniczego po uruchomieniu ich z&nbsp;parametrem
<code>--help</code>.

Wszystkie omówione powy¿ej programy i&nbsp;skrypty maj± dokumentacjê dostêpn±
w&nbsp;<code>man</code>, <code>info</code> a&nbsp;tak¿e
w&nbsp;formacie HTML.

<hr>
<i>Stanis³aw Wawrykiewicz</i> (<tt>staw at gust.org.pl</tt>); 
<i>modyfikacja: 30.05.2008</i>

</BODY>
</HTML>