cpl <nn>[<konwersja>] [<wejscie.txt>] [<wyjscie.txt>]



Podobne dokumenty
Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Powłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.

Wstęp do systemów wielozadaniowych laboratorium 14 Środowisko i aliasy

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Narzędzia informatyczne w językoznawstwie

Utworzenie pliku. Dowiesz się:

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

Komunikacja człowiek-komputer

Programowanie w języku C++ Grażyna Koba

Programy użytkowe (utilities)

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Mirror Tool.

Ćwiczenie 1. Ćwiczenie 2. Ćwiczenie 3. Opisz działanie następujących komend systemowych : COPY EDIT FDISK FIND FORMAT XCOPY

Kodowanie informacji. Przygotował: Ryszard Kijanka

Windows XP Wiersz polecenia

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

INSTRUKCJA INSTALACJI I URUCHOMIENIA PROGRAMÓW FINKA DOS W SYSTEMACH 64 bit

Delphi podstawy programowania. Środowisko Delphi

Struktura pliku wejściowego ipko biznes przelewy zagraniczne (MT103 / CSV)

Zadanie nr 3: Sprawdzanie testu z arytmetyki

utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM

Systemy operacyjne II Laboratorium. Część 1: Pliki wsadowe Windows

Technologia znaku wodnego dla plików dźwiękowych: Legimi Audio Watermark

Powłoka, redyrekcja, potok

Wybór urządzenia/ Scanner Selection Screen: Skrócony Opis Programu MetroSet 2

Budowa i oprogramowanie komputerowych systemów sterowania. Laboratorium 4. Metody wymiany danych w systemach automatyki DDE

Make jest programem komputerowym automatyzującym proces kompilacji programów, na które składa się wiele zależnych od siebie plików.

Trochę o plikach wsadowych (Windows)

PAMIĘĆ OPERACYJNA...107

Instrukcja obsługi. Generatora CSV

KASK by CTI. Instrukcja

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA

IBM SPSS Statistics dla systemu Windows Instrukcje dotyczące instalacji (jeden użytkownik)

Windows 10 - Jak uruchomić system w trybie

DOS Podstawowe komendy Przygotowanie dyskietki do pracy Praca z katalogami w systemie DOS Operacje kopiowania

Praca w środowisku Visual Studio 2008, Visual C

IBM SPSS Statistics dla systemu Windows Instrukcje dotyczące instalacji (jeden użytkownik)

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Przetwarzanie tekstu 2. Operacje na plikach tekstowych w systemie Linux

tutaj Poniższe makro nie zadziała dla pakietu Open lub Libre Office! O co chodzi?

OPIS PROGRAMU USTAWIANIA NADAJNIKA TA105

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

O2Symfonia by CTI. Instrukcja i opis programu

IBM SPSS Statistics dla systemu Windows Instrukcje dotyczące instalacji (licencja lokalna)

1 Przygotował: mgr inż. Maciej Lasota

Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe. stderr

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 12. Karol Tarnowski A-1 p.

Instalacja oprogramowania Rigel Med-eBase dla systemów Windows XP, 7 oraz 8.

Sieci i systemy operacyjne I Ćwiczenie 1. Podstawowe polecenia systemu Unix

Zakład Systemów Rozproszonych

FUNKCJE TEKSTOWE W MS EXCEL

pobieramy pierwszą literę komunikatu i wypełniamy nią (wszystkie pozycje tą samą literą) bufor słownikowy.

Urządzenia Techniki. Klasa I TI. System dwójkowy (binarny) -> BIN. Przykład zamiany liczby dziesiętnej na binarną (DEC -> BIN):

29. Poprawność składniowa i strukturalna dokumentu XML

Spis treści. 1 Moduł Modbus TCP 4

Biblioteka standardowa - operacje wejścia/wyjścia

Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6

Kurier DPD dla Subiekt GT

PWI Instrukcja użytkownika

Najczęściej występujące problemy z instalacją i konfiguracją i ich rozwiązania.

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Moduł 1 Pliki i foldery

Technologie informacyjne lab. 4

TABULATORY - DOKUMENTY BIUROWE

Aneks do Instrukcji obsługi wagi Basic Label 300 z dnia

Techniki multimedialne

Struktura pliku wejściowego ipko biznes ELIXIR - O

Konfiguracja INWENT 5

Zespól Szkół Ponadgimnazjalnych Nr 17 im. Jana Nowaka - Jeziorańskiego Al. Politechniki 37 Windows Serwer 2003 Instalacja

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

IBM SPSS Statistics dla systemu Windows Instrukcje dotyczące instalacji (licencja lokalna)

Terminal ABA-X3 może być wykorzystywany jako terminal znakowy. Funkcja ta może być zrealizowana na kilka sposobów:

IBM SPSS Modeler Social Network Analysis 16 podręcznik instalowania i konfigurowania

Instrukcja redaktora strony

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

Tom 6 Opis oprogramowania

Dokumentacja 2SMS

Pracownia Komputerowa wykład V

INSTRUKCJA obsługi certyfikatów

Niektóre katalogi są standardowymi katalogami zarezerwowanymi do użytku przez system. Znaczenie wybranych katalogów systemowych jest następujące:

Systemy operacyjne. Instrukcja laboratoryjna. Ćwiczenie 1: Polecenia systemu UNIX/LINUX. Opracował: dr inż. Piotr Szpryngier

I. Instalacja programu. Dopasowanie CADprofi do programu CAD

Programowanie w języku Python. Grażyna Koba

Polecenia wewnętrzne:

Kurs systemu Unix wykład wstępny. Kurs systemu Unix 1

Podstawy Kompilatorów

Ćwiczenie nr 3. Wyświetlanie i wczytywanie danych

Python jest interpreterem poleceń. Mamy dwie możliwości wydawania owych poleceń:

Połączenia. Obsługiwane systemy operacyjne. Instalowanie drukarki przy użyciu dysku CD Oprogramowanie i dokumentacja

/*W tym miejscu funkcja system wywołuje systemową komendę PAUSE tj.czeka tak długo, aż zostanie wciśnięty dowolny znak z

Cash Flow System Instrukcja

Projekty zaliczeniowe Podstawy Programowania 2012/2013

Systemy liczenia. 333= 3*100+3*10+3*1

Transkrypt:

ConvPL 2.3 Uniwersalny konwerter polskich znaków ConvPL jest programem freeware, rozprowadzanym wraz z kodem źródłowym. To co go wyróżnia od innych tego typu programów, to liczba obsługiwanych standardów, dowolność kierunków konwersji i maksymalnie uproszczona - choć dająca wiele możliwości - linia poleceń. SKŁADNIA cpl <nn>[<konwersja>] [<wejscie.txt>] [<wyjscie.txt>] Parametr <nn> to dwie cyfry/litery, określające standard źródłowy (pierwsza) i docelowy (druga) przeprowadzanej konwersji. Parametr <konwersja> określa rodzaj opcjonalnie stosowanej konwersji zakończenia linii pomiędzy DOSem a Unixem i Amigą. Parametry wejscie.txt i wyjscie.txt to nazwy plików odpowiednio źródłowego i docelowego. Podanie tylko jednej nazwy - pliku wejściowego - spowoduje zapisanie tekstu po konwersji pod tą samą nazwą. OBSŁUGIWANE STANDARDY Dostępne standardy (podajemy dwie cyfry/litery): 0: bez polskich liter (ASCII,CP473) 1: Mazovia 2: FidoMazovia 3: IBM-Latin/2 (CP852) 4: ISO-Latin/2 (ISO-8859/2) 5: DHN 6: CSK 7: Cyfromat 8: IEA 9: LOGIC a: Microvex b: <Amiga> Amiga PL c: CP/J (Elwro 800 Junior) d: <Amiga> FAT e: Windows 3.0 (CP1250) f: <Amiga> XJP g: Ventura

h: Macintosh i: TeX PL j: Corel 2.0 Skróty Zamiast najczęściej stosowanych konwersji można stosować skróty. Podajemy wówczas tylko jedną literę: l: Mazovia na IBM-Latin/2 m: IBM-Latin/2 na Mazovię x: Mazovia na ASCII y: IBM-Latin/2 na ASCII z: Fido-Mazovia na Mazovię Dowolność konwersji jest całkowita, z jednym wyjątkiem. Standard ASCII nie może być standardem źródłowym konwersji (przyczyna jest oczywista - żeby nie pokaszanić całego tekstu - ale jest od tej reguły wyjątek! patrz UWAGI). Konwersja zakończeń linii ConvPL umożliwia równoległą konwersję pomiędzy tekstem spod DOSa, a tekstem spod Unixa czy Amigi. Rodzaj docelowej konwersji określają parametry: -: konwersja do tekstu Unixa (Amigi) -> NL =: konwersja do tekstu DOSa -> CR+LF Zmieniłem występujące w poprzednich wersjach oznaczenia tych parametrów (/,\), ponieważ bekslesz jest znakiem specjalnym pod U*xem. Nowe ustawienia można równie łatwo zapamiętać: pod U*xem koniec linii to jeden znak (NL), więc jedna kreska: - ; pod DOSem są to dwa znaki (CR+LF), stąd dwie kreski: =. ;) Patrz również rozdział Uwagi, akapit Konwersja Unix<->DOS. PRACA W TRYBIE FILTRU ConvPL może pracować również w trybie filtru. Brak nazw plików we/wy spowoduje pobranie tekstu z standardowego urządzenia wejścia - stdin (klawiatura) i zapisanie go do standardowego wyjścia - stdout (monitor, terminal, drukarka). Przykłady: cpl l każda linia wpisywana z klawiatury będzie pojawiała się poniżej po wciśnięciu <Enter>, znaki z kodu Mazovia będą zamieniane na IBM Latin 2 cpl l <joke.txt >prn

konwersja pliku joke.txt i wysłanie wyników bezpośrednio na drukarkę (DOS); cpl l <joke.txt >joke2.txt równoznaczne poleceniu cpl l joke.txt Jeśli nie chcemy zaśmiecać sobie dysku, wydajemy następujące polecenia: cpl l <joke.txt >nul (MSDOS) lub >/dev/null (Unix) Tryb filtru umożliwia również przetwarzanie tekstu w potoku (pipe). Przykład: type joke1.txt cpl 14- >joke3.txt (MSDOS) cat joke.txt1 joke2.txt cpl14- >joke3.txt (Unix) Przyjmując, że pliki joke.txt i joke2.txt są napisane oryginalnie w Mazovii i pod MSDOSem, takie polecenie spowoduje połączenie obu plików, konwersję z Mazovii na ISO-Latin-2, i przy okazji z CR+LF -> NL, a następnie zapis do pliku joke3.txt. Uruchamiając ConvPL w tym trybie należy uważać na pomyłki takie jak ta: cpl l joke.txt >prn Tekst zostanie przekonwertowany zgodnie z regułą 13 (skrót l ), ale na drukarkę nie zostanie wysłany, gdyż ConvPL będzie go zapisywał do pliku joke.txt a nie na standardowe wyjście. W rzeczywistości powyższe (błędne) polecenie oznacza: konwertuj plik joke.txt, zapisując wynik pod tą samą nazwą, zaś na drukarkę wysyłaj wyjście przez program normalnie wyświetlane na ekranie, czyli komunikaty. Polecenie poniższe spowoduje najprawdopodobniej uszkodzenie oryginalnego pliku, więc należy się go wystrzegać: cpl l <joke.txt >joke.txt (obie nazwy takie same!) Po prostu, system straci głowę próbując równocześnie czytać i pisać do pliku, a ucierpi na tym tenże plik. Pamiętajmy: aby uruchomić ConvPL w trybie filtru, potok danych musi przychodzić ze stdin i wychodzić na stdout (a nie częściowo z pliku, częściowo z potoku). Jeśli nie wiesz o co chodzi, to poczytaj o potokach, filtrach oraz roli symboli <,, > itp. w poleceniach DOSa i Unixa. UWAGI Komentarz do standardów Za definicję Amiga PL dziękuję Marcinowi Kądziołce <2:484/15.16@fidonet>. Definicje dodane w wersji 1.75 udostępnił mi Edwin Wierszelis <2:482/16@fidonet>, autor konwertera KPN.

Standard ASCII to oczywiście zwykłe literki ASCII, zastępujące odpowiednie polskie znaki. Taki tekst zwie się zwykle polskawym, a standard określa jako CP473 (podstawowa, amerykańska strona kodowa). Fido-Mazovia jest półformalnym standardem, przyjętym w środowisku sieci Fido. Jedyna różnica w stosunku do klasycznej Mazovii to zamiana znaku c (141) na c-cedilla (135), wynikająca ze względow technicznych. Standard IBM-Latin/2 (CP852), rozpowszechniony głównie w środowisku DOSa, jest lansowany m.in. przez MicroSoft. ISO-8859/2, znany też jako ISO-Latin/2 jest standardem rozpowszechnionym zwłaszcza w systemach unixowych, pracujacych pod X-windowsami. Jest również standardem zalecanym przez Polskie Normy oraz uznanym za obowiązujący w polskojęzycznym WWW. Standard FAT jest jednym z amigowskich dialektów, znalezionym w diskmagu FAT przez Edwina Wierszelisa. Standard Windows 3.0 jest uproszczoną, 8-bitową wersją UniCode, zdefiniowaną jako strona kodowa 1250 (CP1250). Znany też jako Windows-EE, czyli strona kodowa dla Europy Wschodniej. Standard DHN jest rozpowszechniony wraz z polskim ChiWriterem. Konwersja tekstu Unix<->DOS Pod Unixem każda linijka tekstu kończy się znakiem NL (new line) o kodzie 0xa, równoznaczny DOSowemu LF (line feed). Pod DOSem zakończenie linii stanowi para znaków CR+LF, czyli 0x0d,0x0a. Parametr - wymusza zakończenie linii znakiem NL, zaś = - parą CR+LF. Brak określonego kierunku konwersji nie spowoduje żadnej zmiany końców linii w pliku wynikowym. Parametry konwersji zakończeń linii dodaje się na trzeciego do parametrów konwersji standardów. UWAGA: od wersji 2.01 istnieje możliwość wykonywania konwersji zakończeń linii bez zmiany standardu polskich znaków. Wystarczy jako standard źródłowy podać ASCII - 0 (do tej pory było to niedopuszczalne), zaś jako drugi parametr opcję konwersji zakończeń linii - lub =. Drugi parametr, podany zgodnie z konwencją i określający standard docelowy jest w tym wypadku ignorowany. A zatem, każdy z poniższych przykładów ma takie samo działanie: cpl 0- joke.txt cpl 00- joke.txt cpl 02- joke.txt ( 2 jest tu ignorowane) czyli konwersję zakończeń linii do pojedyńczych NL, bez naruszania polskich liter. Kod źródłowy Program w wersji 2.02b był z powodzeniem kompilowany Borlandem 3.1, gcc 2.7.0 pod Linuxem (a.out) oraz DJGPP pod DOSem (gcc 2.6.3).W wersji 2.3 kompiluje się poprawnie pod Linuxem oraz Visual Studio 2005.

Licznik linii Typowy wodotrysk. Zwalnia pracę o ok. 30%. Standardowo wyłączony, w celu włączenia trzeba przekompilować źródła bez opcji NO_LINE_COUNT. Licznik jest zawsze wyłączony podczas pracy w trybie stdin/stdout (czyli zazwyczaj jako filtr, CGI itp.). CGI Począwszy od wersji 2.02 można CPL skompilować jako CGI, czyli program współpracujący z serwerem WWW. W tej wersji CPL traci niepotrzebne opcje oraz modyfikacji ulega sposób wywoływania. Składnia CPL-CGI jest następująca: cpl <nn><t H><nazwa.pliku> (bez odstępów!) Gdzie nn to standard źródłowy i docelowy (bez zmian) a T/H określa typ tekstu wg standardu MIME: H: text/html (tekst źródłowy HTML) T: text/plain (każdy inny tekst) Przykład: cpl 4eHplik.html = konwersja ISO-Latin do Windows, plik typu HTML cpl 41Tplik.txt = ISO-Latin do Mazovii, zwykły plik tekstowy Wywołanie z dokumentów HTML (w formacie URLa) powinno wyglądać np. tak: http://host.domena.pl/cgi-bin/cpl?3ehplik.html Inne opcje -?, -h,/?, --help: wyświetlają listę wszystkich dostępnych parametrów, składnię linii komend itp. -V, --version: wyświetla (na stdout) numer wersji CPL -L, --licencja: wyświetlaną licencję użytkowania programu. -S, --standard: wyświetlają tabelkę wszystkich obsługiwanych standardów polskich znaków. HISTORIA 1.0 pierwsza wersja (quick fix dla pakietu PGP-pl); 1.2 definicje standardów przeniesione do polish.c; parę nowych definicji; 1.3 Amiga PL; nowy układ polish.c; 1.5 nieco przyspieszona praca; nowy kod źródłowy, makefile; 1.6 skróty dla najczęściej używanych konwersji; tryb stdin/stdout (filtr) 1.7 konwersja między tekstem unixowym (amigowym) i DOSowym 1.72 licznik linii

1.75 nowe definicje (Win 3.0, FAT, XJP, CP/J); 1.76 nowe definicje (Ventura, Macintosh, TeX PL i Corel); 1.90 dodana konwersja wielu plikow, pare innych zmian; 2.00 napisany w 90% od nowa, usunięte stare pluskwy, wprowadzone nowe ;) dodane rozpoznawanie standardow 2.01 kilka dodatków, zmiany w interpretacji niektórych poleceń (patrz Uwagi) 2.02 możliwość skompilowania jako CGI; umożliwia to wywoływanie CPL przez serwer WWW i konwersję tekstów dokonywaną on-line (patrz Uwagi) _ta wersja nie była przeze mnie jeszcze dostatecznie przetestowana, używaj raczej 2.01 jeśli nie potrzebujesz nowych funkcji_ 2.3 wersja odkurzona po 12 latach QueryPL 2.3 Narzędzie do rozpoznawania standardów polskich znaków QueryPL jest programem freeware, rozprowadzanym wraz z kodem źródłowym. Służy do rozpoznawania standardu kodowania polskich znaków w plikach tekstowych, jeśli standard ten jest nieznany lub niepewny. SKŁADNIA qpl <plik> [-s -v -b] Jako pierwszy argument podaje się zawsze plik który ma być sprawdzony. Po nazwie pliku mogą następować dwa opcjonalne argumenty: -s użycie metody statystycznej, generalnie pewniejszej i koniecznej w niektórych wypadkach; patrz rozdział ALGORYTM i UWAGI nr 3. -v wyświetlenie szczegółowych informacji o pracy programu, tabeli zgodności itp. -b podanie wyniku analizy w postaci parametru dla programu ConvPL - cyfry lub litery; opcji tej można użyć do automatycznego konwertowania plików o nieznanym standardzie, podstawiajac uzyskany znak do linii poleceń CPL jako

standard źródłowy; patrz dokumentacja ConvPL; opcja -b automatycznie wyłącza opcję -v ALGORYTM Zasada działania jest następująca: zliczane są wszystkie wystąpienia wszystkich polskich znaków narodowych. Ponieważ znaki powtarzają się w różnych standardach, każde wystąpienie jest zliczane oddzielnie dla każdego ze standardów. Następnie wystąpienia wszystkich znaków są sumowane w obrębie standardów. Wygrywa standard, w którym zmieściło się więcej znaków znalezionych w tekście. Może się zdarzyć że w tekście będą występować znaki nie mające funkcji znaków diakrytycznych (np. jako elementy tabelki), ale należące do któregoś z licznych standardów. W pewnych przypadkach mogą one zmienić wynik analizy zwykłych zliczeń, prowadząc do złego wyboru standardu. Dla zapobieżenia temu QPL może dodatkowo wykorzystać wiedzę o tym, jak często każdy z znaków diakrytycznych występuje w normalnym, polskim tekście. Metodę statystyczną, wykorzystującą tę funkcję, włącza się opcją -s. W tym wypadku, przed zsumowaniem zliczeń każde z nich zostanie pomnożone przez odpowiedni współczynnik, wskazujący z jaką częstotliwością dana litera zwykle występuje. Tabelę zliczeń znaków dla obu metod wyświetla opcja -v. Opcji -s należy używać do tekstów, w których poza normalnymi polskimi znakami występują inne znaki, mogące być znakami diakrytycznymi w jakimś innym standardzie. Warto też jej spróbować, gdy metoda standardowa daje w wyniku jakiś rzadki i niespotykany standard. UWAGI Winietka programu i wszystkie informacje są wyświetlane na stderr, dzięki czemu są niewidzialne przy zrzucaniu wyjścia do pliku, filtrowaniu itp. Tabela zgodności (-v) i wynik - parametr dla ConvPL (-b) są natomiast wyświetlane na stdout (nigdy razem, bo jedno wyklucza drugie). QPL jest rozprowadzany razem z konwerterem ConvPL. Zdecydowałem się na rozprowadzanie go w postaci odrębnego programu z powodów praktycznych. Jako taki, może on mieć większe możliwości, więcej zastosowań i bogatszą linię poleceń. Współpracę między obydwoma programami - w celu np. automatyzacji konwersji można dość łatwo zapewnić sobie za pomocą skryptów (U*x) lub baczów (MSDOS/4DOS). Rozróżnienie standardów DHN i Logic jest trudne, bo składają się one z tych samych znaków, a różnica między nimi polega na tym, że cztery są zamienione kolejnością. QPL zazwyczaj trafnie rozpoznaje różnicę przy użyciu metody statystycznej (-s), jednak w wyniku podaje na wszelki wypadek obie możliwości. Druga z nich jest mniej prawdopodobna, ale teoretycznie jest możliwa.

Historia 1.0 pierwsza wersja QueryPL jest rozprowadzany na tych samych warunkach co ConvPL. Są one wyświetlane po wydaniu polecenia: cpl licencja. Autor Pawel Krawczyk <pawel.krawczyk@hush.com> Najnowsza wersja : http://ipsec.pl/cpl