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
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
|
**********************************************************************
* *
* Pakiet Polski czyli LaTeX2e po polsku *
* *
* *
* *
* Copyright (C) 1994 by Mariusz Olko. *
* Copyright (C) 1997 by Mariusz Olko and Marcin Woli\'nski. *
* Copyright (C) 2000,2002,2003,2007,2017,2021 by Marcin Woli\'nski. *
* *
**********************************************************************
——— Informacje ogólne
Pakiet ‹Polski› dostarcza narzędzi potrzebnych do składu dokumentów
w języku polskim LaTeXem 2e. Główne cechy pakietu
• umożliwia skład „czcionkami PL” pochodzącymi z pakietu MeX
• umożliwia skład czcionkami w ukladzie T1 (europejskim)
• umożliwia skład czcionkami w ukladzie QX, w szczególności krojami
TeX Gyre (dawniej Quasi) tworzonymi przez JNS Team
• umożliwia skompilowanie dokumentu nawet wtedy, gdy dostępne są
jedynie oryginalne czcionki Computer Modern
• wykorzystuje polskie wzorce przenoszenia
• działa z _formatem_ Babel z polskimi wzorcami przenoszenia
• wspomaga prace z różnymi wejściowymi stronami kodowymi
• wspomaga „notację ciachową” polskich znaków
• posiada tryb 99.99% zgodności z LaMeXem (polską adaptacją LaTeXa 2.09)
Dodatkowo dołączone są dwa pakiety, które pozwolą posłużyć się
LaTeXem 2e w najbardziej nawet nieprzyjaznym otoczeniu:
• pakiet plprefix pozwala na uzyskanie polskich liter przy pomocy
notacji prefiksowej z dowolnie wybranym prefiksem (pomocny
np. do robienia wydrukow z CWEBa).
• pakiet OT1patch dorabia ogonki wg najlepszych znanych standardów do
oryginalnych czcionek CM (kod Leszka Holenderskiego).
Nie zachęcamy do stosowania tych pakietow, poza szczególnymi
przypadkami. Sądzimy, że powody do ich stosowania znikły w
większości systemów komputerowych co najmniej 10 lat temu.
Obecnie nie ma powodów ze strony samego TeXa żeby nie używać dla
polskich znaków naturalnej notacji ośmiobitowej. Notacja prefiksowa
jest w dzisiejszych czasach nienaturalnym dziwactwem. Wyjątek
stanowią jeszcze pewne nieprzyjazne środowiska obliczeniowe, w których
nie sposób wyświetlić polskich znaków. Na tę okoliczność polski.sty
oferuje notację ciachową (polecenie \prefixing).
Polskie znaki obecne w fontach zawsze będą dawać lepsze efekty niż
stosowanie protez zawartych w OT1patch. Poza tym używanie OT1patch
nie pozwala na pełne zastosowanie polskich wzorców przenoszenia.
——— Licencja
‹Polski› stanowi oprogramowanie swobodne, może być dystrybuowany w
zgodzie z licencją LaTeX Project Public License (zob. plik lppl.txt w
dystrybucji LaTeXa; CTAN:macros/latex/base/lppl.txt).
——— Pliki wchodzace w skład pakietu
W skład pakietu wchodzi kilka plików zawierających udokumentowane
(w większosci :-) źródła makr.
• polski.dtx — zawiera źródła pakietu polski
• polski.ins — główny skrypt instalacyjny
• strony.dtx — plik z wejściowymi stronami kodowymi dla LaTeXa oraz
definicją układu czcionek OT4
• plfonts.fdd — definicje czcionek PL do wykorzystania w LaTeXu
• plprefix.dtx — zawiera źródła pakietu pozwalającego na uzyskiwanie
polskich liter za pomocą „notacji prefiksowej”
• plprefix.ins — skrypt instalacyjny dla plprefix.sty
• ot1patch.dtx — zawiera źródła pakietu dorabiającego ogonki
do oryginalnych czcionek Computer Modern
• ot1patch.ins — skrypt instalacyjny dla ot1patch.sty
• czytaj.txt — ten plik
• readme.txt — opis instalacji po angielsku
• conowego.txt — lista zmian w pakiecie
• sample-polski.tex — przykładowy dokument
• sample-rysunek{.mp,1.mps} — rysunek do przykładowego dokumentu
——— Instalacja pakietu
Po rozpakowaniu archiwum należy wygenerować wszystkie potrzebne pliki
uruchamiając skrypt polski.ins
tex polski.ins
Skrypt wygeneruje na początek podstawowe pliki, tzn. pakiet polski.sty
oraz opisy wejsciowych stron kodowych. Następnie generowane są pliki
opisujące fonty Computer Modern w polskim układzie OT4 (tzw. „fonty
PL”). Na zakończenie należy skopiować pliki *.fd *.sty *.def *.cfg do
katalogu czytanego przez TeXa.
Do poprawnego składu po polsku konieczna jest obecność polskich
wzorców przenoszenia wyrazów w tzw. formacie LaTeXa. Zestaw wzorców
przenoszenia wbudowany w format zależy od zawartości pliku
language.dat (zob. dokumentację LaTeXa). Współczesne implementacje
TeXa zawierają pomocnicze narzędzia automatyzujące generowanie
formatów. Zwykle więc wystarczy w narzędziu konfiguracyjnym wybrać
część zatytułowaną „Języki” i zaznaczyć odpowiednie wzorce
przenoszenia.
W systemie emTeX (pod MS DOS-em) do generowania formatu należało użyć
polecenia:
tex386 /i/o/r/8 /mt13000 latex.ltx
——— Dokumentacja
Pliki dtx zawierają teksty makr wraz z dokumentacją. Są one gotowe
do wydruku po przetworzeniu przez LaTeXa. Instrukcję posługiwania się
pakietem polski można uzyskać uruchamiając
latex polski.dtx
a dalej używając swojego ulubionego programu do podglądu.
——— Osmiobitowe wprowadzanie polskich liter
Aby złożyć w TeXu dokument zapisany w tzw. stronie kodowej trzeba
wskazać TeXowi, w jakiej stronie dokument jest zapisany. Możliwe są
dwa sposoby:
• Posłużenie się mechanizmem przekodowywania znaków na postać
wewnętrzną przez samego TeXa. W chwili obecnej stosowne wsparcie jest
obecne co najmniej w web2c, teTeXu, TeXlive, fpTeXu, mikTeXu i emTeXu.
• Zastosowanie standardowego pakietu inputenc.
Przekodowywanie nie pozwala na pracę z kilkoma wejściowymi stronami
kodowymi w jednym dokumencie ani fontami o różnych układach polskich
znaków. Jest za to bardziej bezpieczne ze wzgledu na współpracę z
programami zewnętrznymi (np. MakeIndex). Należy również zwrócić
uwagę, że przekodowanie na poziomie implementacji jest zależne od
układu stosowanych fontów. Definicje przekodowania przygotowane dla
fontów PL z konieczności mapują tylko „polskie znaki”. Dla
kontrastu definicje stron kodowych pakietu inputenc (np. cp1250 czy
cp852) obejmują wszystkie znaki strony kodowej (włącznie ze znakami
nieliterowymi). Pakiet inputenc pozwala również przetwarzać dokumenty
zakodowane w Unikodzie zapisanym w formie UTF-8 (opcja utf8).
Oto szczegóły specyficzne dla implementacji:
—————— web2c, teTeX, TeXlive, fpTeX, mikTeX
W tych implementacjach kodowanie dokumentu zadaje się za pomocą opcji
--translate-file wskazującej plik definiujący przekodowanie. Na
przykład
latex --translate-file=il2-pl dokument.tex
przetwarza dokument z polskimi znakami zapisanymi w kodzie ISO
Latin-2. Można również, i jest to rozwiązanie zalecane, zadać kod w
pierwszej linii dokumentu za pomocą następującego „magicznego”
komentarza:
%&latex --translate-file=il2-pl
W tym przypadku do przetwarzania dokumentu wystarczy
latex dokument.tex
W standardowej dystrybucji zawarta jest spora garść plików
definiujących przekodowanie. Pliki te mają rozszerzenie .tcx i
rezydują w podkatalogu texmf/web2c korzenia instalacji. Są to pliki
tekstowe, o realizowanym przekodowaniu można dowiedzieć się z
komentarza w pierwszych liniach pliku.
—————— emTeX
W przypadku pracy z emTeXem przekodowanie musi zostać „zaszyte” w plik
formatu. Jeżeli ma się do czynienia z dokumentami w różnych stronach
kodowych, konieczny jest oddzielny plik formatu dla każdej strony.
Pliki przekodowań dla polskich znaków dla emTeXa dostarczane są z
MeXem. Na przykład poniższe polecenie generuje format LaTeX z
kodowaniem Mazovii:
tex386 /i/o/r /cmaz2pl /mt13000 latex.ltx
—————— implementacje nie zapewniające przekodowania
W przypadku korzystania z takiej implementacji (lub chęci użycia w
jednym dokumencie różnie zakodowanych fragmentów) należy do preambuły
dokumentu dodać wywołanie pakietu inputenc z opcją wskazującą stronę
kodową, np.
\documentclass{article}
\usepackage{polski}
\usepackage[mazovia]{inputenc}
Podczas instalacji pakietu Polski tworzone sa pliki ze stronami kodowymi:
mazovia — dla popularnej (kiedyś) strony kodowej na PCetach.
amigapl — dla polskiej strony kodowej używanej na Amidze
Ponadto w dystrybucji LaTeXa zawarte są następujące strony
interesujące dla polskiego użytkownika:
cp1250 — dla Windowsowej strony centralnoeuropejskiej CP1250
latin2 — kodowanie ISO 8859-2 (Latin-2)
cp852 — dla DOS-owej strony CP852 (tzw. IBM Latin-2)
macce — dla strony centralnoeuropejskiej na komputerach Macintosh
utf8 — kodowanie UTF-8 (Unikod; to w zasadzie nie jest strona
kodowa, ale zasada użycia jest ta sama)
Większość instalacji TeXowych czyta osmiobitowe znaki zawarte w
dokumentach. Niektóre starsze implementacje wymagają użycia do tego
specjalnej opcji podczas generowania formatu.
——— Podziękowania
• Marek Ryćko i Bogusław Jackowski stworzyli MeXa i LaMeXa
• Robert Ramiega przysłał tablicę kodową używaną na Amidze
• Staszek Wawrykiewicz napisał dokument przykładowy i, co ważniejsze,
zanurzył całość w kontekst TeXlive
**********************************************************************
Marcin Woli\'nski mailto:wolinski@gust.org.pl
**********************************************************************
|