]> git.pld-linux.org Git - packages/cpl.git/blame - cpl.7
- added link ConvPL -> cpl
[packages/cpl.git] / cpl.7
CommitLineData
12340078 1.\" Copyright (c) 1997 Mariusz Krawczyk
2.\"
3.TH CPL 7 "28 Aug 1997" "ConvPL" "Linux Programmer's Manual"
4.SH NAME
5cpl \- konwerter standardow polskich znakow v2.05
6.SH SKLADNIA
7.BI "cpl <nn>" "[konwersja] [-] "[plik1.txt] " [plik2.txt ...]"
8.SH OPIS
9Parametr
10.B <nn>
11to dwie cyfry/litery, okreslajace standard
12.IR zrodlowy
13(pierwsza) i
14.IR docelowy
15(druga) przeprowadzanej konwersji.
16Parametr
17.B <konwersja>
18okresla rodzaj opcjonalnie stosowanej konwersji
19zakonczenia linii pomiedzy DOSem a Unixem i Amiga.
20.SH Przyklady:
21.B cpl 14 tex1.txt
22\- plik tex1.txt (Mazovia -> ISO-Latin-2)
23.br
24.B cpl 14 *.txt
25\- wszystkie pliki z rozszerzeniem .txt
26.br
27.B cpl 14 tex1.txt *.doc
28\- plik tekst1.txt i wszystkie .doc
29.SH "OBSLUGIWANE STANDARDY"
30Dostepne standardy (podajemy dwie cyfry/litery):
31.br
32.B 0:
33bez polskich liter (ASCII,CP473)
34.br
35.B 1:
36Mazovia
37.br
38.B 2:
39FidoMazovia
40.br
41.B 3:
42IBM Latin 2 (CP852)
43.br
44.B 4:
45ISO Latin 2 (ISO-8859-2)
46.br
47.B 5:
48DHN
49.br
50.B 6:
51CSK
52.br
53.B 7:
54Cyfromat (IINTE-ISIS)
55.br
56.B 8:
57IEA
58.br
59.B 9:
60LOGIC
61.br
62.B a:
63Microvex
64.br
65.B b:
66Amiga PL
67.br
68.B c:
69CP/J (Elwro 800 Junior)
70.br
71.B d:
72Amiga FAT
73.br
74.B e:
75Windows 3.0 (CP1250)
76.br
77.B f:
78Amiga XJP
79.br
80.B g:
81Ventura
82.br
83.B h:
84Macintosh
85.br
86.B i:
87TeX PL
88.br
89.B j:
90Corel 2.0
91.br
92.B k:
93Atari Calamus
94.br
95.B l:
96FX
97.br
98.B m:
99KWK
100.br
101.B n:
102MS Works
103.br
104.B o:
105ATM
106.SH Skroty:
107Zamiast najczesciej stosowanych konwersji mozna stosowac skroty. Podajemy
108wowczas tylko jedna litere:
109.br
110.B A:
111Mazovia na IBM Latin 2
112.br
113.B B:
114IBM Latin 2 na Mazovie
115.br
116.B C:
117Mazovia na ASCII
118.br
119.B D:
120IBM Latin 2 na ASCII
121.br
122.B F:
123FidoMazovia na Mazovie
124.br
125Dowolnosc konwersji jest calkowita, z jednym wyjatkiem. Standard ASCII nie
126moze byc standardem zrodlowym konwersji (przyczyna jest oczywista - zeby nie
127pokaszanic calego tekstu - ale jest od tej reguly wyjatek! patrz
128.B UWAGI .
129.SH Konwersja zakonczen linii:
130.IR ConvPL
131umozliwia rownolegla konwersje pomiedzy tekstem spod DOSa, a tekstem
132spod Unixa czy Amigi. Rodzaj docelowej konwersji okreslaja parametry:
133.br
134.B \-:
135konwersja do tekstu Unixa (Amigi) -> NL
136.br
137.B \=:
138konwersja do tekstu DOSa -> CR+LF
139.br
140Zmienilem wystepujace w poprzednich wersjach oznaczenia tych parametrow
141(/,\\), poniewaz bekslesz jest znakiem specjalnym pod U*xem. Nowe ustawienia
142mozna rownie latwo zapamietac: pod U*xem koniec linii to jeden znak (NL),
143wiec jedna kreska: "-"; pod DOSem sa to dwa znaki (CR+LF), stad dwie
144kreski: "=". ;)
145.SH "PRACA W TRYBIE FILTRU"
146.IR ConvPL
147moze pracowac rowniez w trybie filtru. Podanie znaku "-" zamiast
148nazw plikow spowoduje pobranie tekstu z standardowego urzadzenia wejscia
149- stdin (klawiatura) i zapisanie go do standardowego wyjscia - stdout
150(monitor, terminal, drukarka). Przyklady:
151.br
152.B cpl A \-
153kazda linia wpisywana z klawiatury bedzie
154pojawiala sie ponizej po wcisnieciu
155.IR <Enter>
156, znaki z kodu Mazovia beda
157zamieniane na IBM Latin 2
158.br
159.B cpl 13 <joke.txt >prn
160\- konwersja pliku joke.txt i wyslanie
161wynikow bezposrednio na drukarke (DOS);
162czesto sam z tego korzystam, bo na moim PC pod DOSem mam Mazovie, a na drukarce CP852 .
163Jesli nie chcemy zasmiecac sobie dysku, wydajemy nastepujace polecenia:
164.br
165.B cpl A - <joke.txt >nul
166(MSDOS) lub
167.B >/dev/null
168(Unix) ;)))
169Tryb filtru umozliwia rowniez przetwarzanie tekstu w potoku (pipe).
170.br
171.IR Przyklad:
172.br
173.B type joke1.txt | cpl 14- - >joke3.txt
174(MSDOS). Plik
175.IR joke1.txt
176zostanie przepuszczony przez konwersje Mazovia -> ISO-Latin-2,
177a konce linii zostana zamienione na modle unixowa. Wynik zostanie
178zapisany do pliku
179.IR joke3.txt
180Zwroc uwage na obecnosc dwoch minusow w linii polecen - kazdy pelni inna
181funkcje. Pierwszy, polaczony z opisem konwersji ("14-"), wlacza konwersje
182zakonczen linii. Drugi, samodzielny, wlacza tryb filtru.
183.br
184.B cat joke.txt1 joke2.txt | cpl 14- - >joke3.txt (Unix)
185.br
186Przyjmujac, ze pliki
187.IR joke.txt
188i
189.IR joke2.txt
190sa napisane oryginalnie w Mazovii i pod MSDOSem, takie polecenie spowoduje
191polaczenie obu plikow, konwersje calosci z Mazovii na ISO Latin 2, i przy okazji z CR+LF -> NL,
192a nastepnie zapis do pliku
193.IR joke3.txt.
194Uruchamiajac
195.IR ConvPL
196w tym trybie nalezy uwazac na pomylki takie jak ta:
197.br
198.B cpl A joke.txt >prn
199.br
200Tekst zostanie przekonwertowany zgodnie z regula 13 (skrot "A"), ale na
201drukarke nie zostanie wyslany, gdyz
202.IR ConvPL
203bedzie go zapisywal do pliku
204.IR joke.txt
205a nie na standardowe wyjscie. W rzeczywistosci powyzsze (bledne)
206polecenie oznacza:
207.br
208.B konwertuj plik joke.txt, zapisujac wynik pod ta sama nazwa,
209zas na drukarke wysylaj wyjscie przez program
210normalnie wyswietlane na ekranie, czyli komunikaty.
211.br
212Polecenie ponizsze spowoduje najprawdopodobniej uszkodzenie oryginalnego pliku,
213wiec nalezy sie go wystrzegac:
214.br
215.B cpl A - <joke.txt >joke.txt (obie nazwy takie same!)
216.br
217Po prostu, system straci glowe probujac rownoczesnie czytac i pisac
218do pliku, a ucierpi na tym tenze plik.
219.br
220.IR Pamietajmy:
221aby uruchomic ConvPL w trybie filtru, potok danych musi
222przychodzic ze stdin i wychodzic na stdout (a nie czesciowo z pliku, czesciowo
223z potoku). Jesli nie wiesz o co chodzi, to poczytaj o potokach, filtrach oraz
224roli symboli <, |, > itp. w poleceniach DOSa i Unixa.
225.SH UWAGI:
226Od wersji 2.01 istnieje mozliwosc wykonywania konwersji zakonczen linii
227bez zmiany standardu polskich znakow. Wystarczy jako standard zrodlowy
228podac ASCII - "0" (do tej pory bylo to niedopuszczalne), zas jako drugi
229parametr opcje konwersji zakonczen linii "-" lub "=". Drugi parametr,
230podany zgodnie z konwencja i okreslajacy standard docelowy jest w tym
231wypadku ignorowany. A zatem, kazdy z ponizszych przykladow ma takie samo
232dzialanie:
233.br
234.B cpl 0- joke.txt
235.br
236.B cpl 00- joke.txt
237.br
238.B cpl 02- joke.txt
239.br
240czyli konwersje zakonczen linii do pojedynczych NL, bez naruszania
241polskich liter.
242.TP
243.B Komentarz do standardow
244Za definicje Amiga PL dziekuje Marcinowi Kadziolce <2:484/15.16@fidonet>.
245.br
246Definicje dodane w wersji 1.75 udostepnil mi Edwin Wierszelis
247<2:482/16@fidonet>, autor konwertera KPN.
248.br
249.I Standard ASCII
250to oczywiscie zwykle literki ASCII, zastepujace odpowiednie
251polskie znaki. Taki tekst zwie sie zwykle "polskawym", a standard okresla
252jako CP473 (oryginalna, amerykanska strona kodowa).
253.br
254.IR FidoMazovia
255jest polformalnym (jak cala reszta ;) standardem, przyjetym
256w srodowisku sieci Fido. Jedyna roznica w stosunku do klasycznej Mazovii
257to zamiana znaku c' (141) na c-cedilla (135), wynikajaca ze wzgledow
258technicznych.
259.br
260.I Standard IBM Latin 2 (CP852)
261jest lansowany przez Micro$oft wraz z systemem
262MSDOS. Wraz z kolejnym "systemem" - Windows wyszedl na swiat standard
263strony kodowej 1250 (CP1250). Znany tez jako Windows-EE, czyli strona
264kodowa dla Europy Wschodniej.
265.br
266.IR ISO-8859-2
267znany tez jako
268.IR ISO Latin 2
269jest standardem rozpowszechnionym
270zwlaszcza w systemach unixowych i pracujacych pod X-windowsami. Jest rowniez
271standardem zalecanym przez Polskie Normy oraz uznanym za obowiazujacy
272w polskojezycznym WWW oraz, ostatnio, w polskim UseNecie.
273.br
274Standard
275.IR FAT
276jest jednym z amigowskich dialektow, znalezionym w diskmagu
277FAT przez Edwina Wierszelisa.
278.br Standard
279.IR DHN
280jest rozpowszechniony wraz z polskim ChiWriterem.
281.br
282Niektore standardy pochodza z Polskiej Strony Ogonkowej
283.IR http://www.uci.agh.edu.pl/ogonki/,
284na ktorej mozna znalezc wiele cennych informacji na temat polskich liter.
285.TP
286.B Konwersja tekstu Unix<->DOS:
287Pod Unixem kazda linijka tekstu konczy sie znakiem NL (new line) o kodzie 0xa,
288rownoznaczny DOSowemu LF (line feed). Pod DOSem zakonczenie linii stanowi
289para znakow CR+LF, czyli 0xd,0xa. Parametr "-" wymusza zakonczenie linii
290znakiem NL, zas "=" - para CR+LF. Brak okreslonego kierunku konwersji
291nie spowoduje zadnej zmiany koncow linii w pliku wynikowym. Parametry konwersji
292zakonczen linii dodaje sie "na trzeciego" do parametrow konwersji standardow.
293.TP
294.B Kod zrodlowy
295Program 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
297wystapienia niekompatybilnosci kodu zrodlowego w innych systemach.
298Wersja 2.04 i wyzsze sa na razie kompilowalne tylko pod Linuxem (i byc moze
299innymi Unixami).
300.TP
301.B Licznik linii:
302Typowy "wodotrysk". Zwalnia prace o ok. 30%. Standardowo
303wylaczony, w celu wlaczenia trzeba przekompilowac zrodla bez opcji NO_LINE_COUNT. Licznik jest
304zawsze wylaczony podczas pracy w trybie stdin/stdout (czyli zazwyczaj jako
305filtr itp.).
306.TP
307.B Znane bledy:
308Tekst nie moze zawierac znaku ASCII 0 (^@),
309ktory jest uzywany jako znacznik konca pliku.
310.SH INNE OPCJE
311.TP
312.B \-?, \-h, --help:
313wyswietlaja liste wszystkich dostepnych parametrow, skladnie linii komend itp.
314.TP
315.B \-V, --version:
316wyswietla (na stdout) numer wersji CPL
317.TP
318.B \-L, --licencja:
319wyswietlaja licencje uzytkowania programu.
320.TP
321.B \-S, --standard:
322wyswietlaja tabelke wszystkich obslugiwanych standardow polskich znakow.
323.SH W PLANACH
324.sp
325.B 'spolszczanie' cyrylicy
326.sp
327.B kody wieloznakowe
328.SH "PATRZ ROWNIEZ"
329.BR qpl (7)
330.SH AUTORZY:
331.B Pawel Krawczyk
332\- wlasciciel praw autorskich programu
333.B cpl
334.IR kravietz@pipeta.chemia.pk.edu.pl
335.br
336.B Mariusz Krawczyk
337\- tworca pliku manual-a czyli tego .
338.IR scorpio@astra.mech.pk.edu.pl
This page took 0.07348 seconds and 4 git commands to generate.