1 .\" Copyright (c) 1997 Mariusz Krawczyk
3 .TH CPL 7 "28 Aug 1997" "ConvPL" "Linux Programmer's Manual"
5 cpl \- konwerter standardow polskich znakow v2.05
7 .BI "cpl <nn>" "[konwersja] [-] "[plik1.txt] " [plik2.txt ...]"
11 to dwie cyfry/litery, okreslajace standard
15 (druga) przeprowadzanej konwersji.
18 okresla rodzaj opcjonalnie stosowanej konwersji
19 zakonczenia linii pomiedzy DOSem a Unixem i Amiga.
22 \- plik tex1.txt (Mazovia -> ISO-Latin-2)
25 \- wszystkie pliki z rozszerzeniem .txt
27 .B cpl 14 tex1.txt *.doc
28 \- plik tekst1.txt i wszystkie .doc
29 .SH "OBSLUGIWANE STANDARDY"
30 Dostepne standardy (podajemy dwie cyfry/litery):
33 bez polskich liter (ASCII,CP473)
45 ISO Latin 2 (ISO-8859-2)
69 CP/J (Elwro 800 Junior)
107 Zamiast najczesciej stosowanych konwersji mozna stosowac skroty. Podajemy
108 wowczas tylko jedna litere:
111 Mazovia na IBM Latin 2
114 IBM Latin 2 na Mazovie
123 FidoMazovia na Mazovie
125 Dowolnosc konwersji jest calkowita, z jednym wyjatkiem. Standard ASCII nie
126 moze byc standardem zrodlowym konwersji (przyczyna jest oczywista - zeby nie
127 pokaszanic calego tekstu - ale jest od tej reguly wyjatek! patrz
129 .SH Konwersja zakonczen linii:
131 umozliwia rownolegla konwersje pomiedzy tekstem spod DOSa, a tekstem
132 spod Unixa czy Amigi. Rodzaj docelowej konwersji okreslaja parametry:
135 konwersja do tekstu Unixa (Amigi) -> NL
138 konwersja do tekstu DOSa -> CR+LF
140 Zmienilem wystepujace w poprzednich wersjach oznaczenia tych parametrow
141 (/,\\), poniewaz bekslesz jest znakiem specjalnym pod U*xem. Nowe ustawienia
142 mozna rownie latwo zapamietac: pod U*xem koniec linii to jeden znak (NL),
143 wiec jedna kreska: "-"; pod DOSem sa to dwa znaki (CR+LF), stad dwie
145 .SH "PRACA W TRYBIE FILTRU"
147 moze pracowac rowniez w trybie filtru. Podanie znaku "-" zamiast
148 nazw plikow spowoduje pobranie tekstu z standardowego urzadzenia wejscia
149 - stdin (klawiatura) i zapisanie go do standardowego wyjscia - stdout
150 (monitor, terminal, drukarka). Przyklady:
153 kazda linia wpisywana z klawiatury bedzie
154 pojawiala sie ponizej po wcisnieciu
156 , znaki z kodu Mazovia beda
157 zamieniane na IBM Latin 2
159 .B cpl 13 <joke.txt >prn
160 \- konwersja pliku joke.txt i wyslanie
161 wynikow bezposrednio na drukarke (DOS);
162 czesto sam z tego korzystam, bo na moim PC pod DOSem mam Mazovie, a na drukarce CP852 .
163 Jesli nie chcemy zasmiecac sobie dysku, wydajemy nastepujace polecenia:
165 .B cpl A - <joke.txt >nul
169 Tryb filtru umozliwia rowniez przetwarzanie tekstu w potoku (pipe).
173 .B type joke1.txt | cpl 14- - >joke3.txt
176 zostanie przepuszczony przez konwersje Mazovia -> ISO-Latin-2,
177 a konce linii zostana zamienione na modle unixowa. Wynik zostanie
180 Zwroc uwage na obecnosc dwoch minusow w linii polecen - kazdy pelni inna
181 funkcje. Pierwszy, polaczony z opisem konwersji ("14-"), wlacza konwersje
182 zakonczen linii. Drugi, samodzielny, wlacza tryb filtru.
184 .B cat joke.txt1 joke2.txt | cpl 14- - >joke3.txt (Unix)
190 sa napisane oryginalnie w Mazovii i pod MSDOSem, takie polecenie spowoduje
191 polaczenie obu plikow, konwersje calosci z Mazovii na ISO Latin 2, i przy okazji z CR+LF -> NL,
192 a nastepnie zapis do pliku
196 w tym trybie nalezy uwazac na pomylki takie jak ta:
198 .B cpl A joke.txt >prn
200 Tekst zostanie przekonwertowany zgodnie z regula 13 (skrot "A"), ale na
201 drukarke nie zostanie wyslany, gdyz
203 bedzie go zapisywal do pliku
205 a nie na standardowe wyjscie. W rzeczywistosci powyzsze (bledne)
208 .B konwertuj plik joke.txt, zapisujac wynik pod ta sama nazwa,
209 zas na drukarke wysylaj wyjscie przez program
210 normalnie wyswietlane na ekranie, czyli komunikaty.
212 Polecenie ponizsze spowoduje najprawdopodobniej uszkodzenie oryginalnego pliku,
213 wiec nalezy sie go wystrzegac:
215 .B cpl A - <joke.txt >joke.txt (obie nazwy takie same!)
217 Po prostu, system straci glowe probujac rownoczesnie czytac i pisac
218 do pliku, a ucierpi na tym tenze plik.
221 aby uruchomic ConvPL w trybie filtru, potok danych musi
222 przychodzic ze stdin i wychodzic na stdout (a nie czesciowo z pliku, czesciowo
223 z potoku). Jesli nie wiesz o co chodzi, to poczytaj o potokach, filtrach oraz
224 roli symboli <, |, > itp. w poleceniach DOSa i Unixa.
226 Od wersji 2.01 istnieje mozliwosc wykonywania konwersji zakonczen linii
227 bez zmiany standardu polskich znakow. Wystarczy jako standard zrodlowy
228 podac ASCII - "0" (do tej pory bylo to niedopuszczalne), zas jako drugi
229 parametr opcje konwersji zakonczen linii "-" lub "=". Drugi parametr,
230 podany zgodnie z konwencja i okreslajacy standard docelowy jest w tym
231 wypadku ignorowany. A zatem, kazdy z ponizszych przykladow ma takie samo
240 czyli konwersje zakonczen linii do pojedynczych NL, bez naruszania
243 .B Komentarz do standardow
244 Za definicje Amiga PL dziekuje Marcinowi Kadziolce <2:484/15.16@fidonet>.
246 Definicje dodane w wersji 1.75 udostepnil mi Edwin Wierszelis
247 <2:482/16@fidonet>, autor konwertera KPN.
250 to oczywiscie zwykle literki ASCII, zastepujace odpowiednie
251 polskie znaki. Taki tekst zwie sie zwykle "polskawym", a standard okresla
252 jako CP473 (oryginalna, amerykanska strona kodowa).
255 jest polformalnym (jak cala reszta ;) standardem, przyjetym
256 w srodowisku sieci Fido. Jedyna roznica w stosunku do klasycznej Mazovii
257 to zamiana znaku c' (141) na c-cedilla (135), wynikajaca ze wzgledow
260 .I Standard IBM Latin 2 (CP852)
261 jest lansowany przez Micro$oft wraz z systemem
262 MSDOS. Wraz z kolejnym "systemem" - Windows wyszedl na swiat standard
263 strony kodowej 1250 (CP1250). Znany tez jako Windows-EE, czyli strona
264 kodowa dla Europy Wschodniej.
269 jest standardem rozpowszechnionym
270 zwlaszcza w systemach unixowych i pracujacych pod X-windowsami. Jest rowniez
271 standardem zalecanym przez Polskie Normy oraz uznanym za obowiazujacy
272 w polskojezycznym WWW oraz, ostatnio, w polskim UseNecie.
276 jest jednym z amigowskich dialektow, znalezionym w diskmagu
277 FAT przez Edwina Wierszelisa.
280 jest rozpowszechniony wraz z polskim ChiWriterem.
282 Niektore standardy pochodza z Polskiej Strony Ogonkowej
283 .IR http://www.uci.agh.edu.pl/ogonki/,
284 na ktorej mozna znalezc wiele cennych informacji na temat polskich liter.
286 .B Konwersja tekstu Unix<->DOS:
287 Pod Unixem kazda linijka tekstu konczy sie znakiem NL (new line) o kodzie 0xa,
288 rownoznaczny DOSowemu LF (line feed). Pod DOSem zakonczenie linii stanowi
289 para znakow CR+LF, czyli 0xd,0xa. Parametr "-" wymusza zakonczenie linii
290 znakiem NL, zas "=" - para CR+LF. Brak okreslonego kierunku konwersji
291 nie spowoduje zadnej zmiany koncow linii w pliku wynikowym. Parametry konwersji
292 zakonczen linii dodaje sie "na trzeciego" do parametrow konwersji standardow.
295 Program byl z powodzeniem kompilowany Borlandem 3.1, gcc 2.7.2 pod Linuxem
296 (a.out, ELF), oraz DJGPP pod DOSem (gcc 2.6.3). Prosze o kontakt w razie
297 wystapienia niekompatybilnosci kodu zrodlowego w innych systemach.
298 Wersja 2.04 i wyzsze sa na razie kompilowalne tylko pod Linuxem (i byc moze
302 Typowy "wodotrysk". Zwalnia prace o ok. 30%. Standardowo
303 wylaczony, w celu wlaczenia trzeba przekompilowac zrodla bez opcji NO_LINE_COUNT. Licznik jest
304 zawsze wylaczony podczas pracy w trybie stdin/stdout (czyli zazwyczaj jako
308 Tekst nie moze zawierac znaku ASCII 0 (^@),
309 ktory jest uzywany jako znacznik konca pliku.
313 wyswietlaja liste wszystkich dostepnych parametrow, skladnie linii komend itp.
316 wyswietla (na stdout) numer wersji CPL
319 wyswietlaja licencje uzytkowania programu.
322 wyswietlaja tabelke wszystkich obslugiwanych standardow polskich znakow.
325 .B 'spolszczanie' cyrylicy
332 \- wlasciciel praw autorskich programu
334 .IR kravietz@pipeta.chemia.pk.edu.pl
337 \- tworca pliku manual-a czyli tego .
338 .IR scorpio@astra.mech.pk.edu.pl