Ogonki mądre po fakcie

Kolega bloger z portalu CW napisał1 "U zarania informatyki zabrakło dwóch rzeczy: dobrej teorii oraz wyobraźni". Chodziło mu o bałagan w kodowaniu tzw. ogonków, czyli polskich znaków diakrytycznych. Jako osoba, która otarła się o proces powstawania standardów kodowania glifów, mogę z pewnością oświadczyć, że u zarania były zarówno dobre teorie, jak i mnóstwo wyobraźni.

Kolega bloger z portalu CW napisał<sup>1</sup> "U zarania informatyki zabrakło dwóch rzeczy: dobrej teorii oraz wyobraźni". Chodziło mu o bałagan w kodowaniu tzw. ogonków, czyli polskich znaków diakrytycznych. Jako osoba, która otarła się o proces powstawania standardów kodowania glifów, mogę z pewnością oświadczyć, że u zarania były zarówno dobre teorie, jak i mnóstwo wyobraźni.

Osobiście pamiętam jeszcze czasy, gdy jedynym komputerem w okolicy był tzw. mainframe, wyposażony w drukarkę liniową. Z oczywistych powodów drukarka taka miała ograniczony zestaw znaków. W efekcie jeszcze całkiem do niedawna polskie rachunki za prąd i gaz drukowane były bez żadnych znaków diakrytycznych, bo ZETO nie mogło inaczej. I jakoś te rachunki funkcjonowały. Zresztą stare, dobre maszyny do pisania, nawet te produkowane w Polsce, też nie miały na klawiaturze, czyli i na młoteczkach, wszystkich polskich znaków. Duże litery z ogonkiem pisało się przez użycie martwego klawisza, na którym właśnie umieszczono tzw. swobodny ogonek. Też jakoś dało się z tym żyć, bo niewiele słów, poza pseudonimem pewnego polityka, zaczyna się po polsku od Ą lub Ę. Jedynym znanym mi miejscem, gdzie polska litera akcentowana została od razu zdefiniowana, był TeX Donalda Knutha. Podobno Knuth chciał poprawnie napisać nazwisko Jana Łukasiewicza i dlatego wprowadził tag \L.

Nic dziwnego, że programy do pisania po polsku, które powstały w latach osiemdziesiątych XX w. stosowały takąż metodologię - tagowanie. Przecież początkowo wiele komputerów używało tylko siedmiobitowego kodowania znaków. Ba, oryginalnie internet został zbudowany na takim właśnie systemie transmisji danych. Jestem przekonany, że wszyscy, którzy w tamtych czasach interesowali się sposobami kodowania dodatkowych znaków, dobrze wiedzieli co to jest słowo dwubajtowe oraz widzieli problemy narodowe. Mieli też dość wyobraźni, aby zrozumieć, że producenci oprogramowania nie zdecydują się na dwukrotne zwiększenie pamięci potrzebnej dokumentom. Przypomnę, że oryginalny pecet miał standardowo 64 k RAM, zaś Mac, który nb. mógł łatwo stosować dwubajtowe kodowanie ze względu na 32-bitowe słowo procesora, został wprowadzony na rynek z 128 k pamięci.

A potem zaczęły się schody. Cóż z tego, że stosunkowo wcześnie opracowano standard UNICODE (rok publikacji 1991), skoro żaden z popularnych OS nie był wówczas przystosowany do jego zastosowania. Nie było także fontów w odpowiednim kodowaniu. Gdy w tym samym czasie pomagałem robić dla Apple stronę kodową CE, to kwestia polskiego opóźnienia o kilka tygodni spowodowała, że Czesi już wstawili swoje akcenty, jednocześnie zachowując akcenty francuskie oraz niemieckie. Dlatego też powstała, wielokrotnie krytykowana, tablica PL Euro, czyli odpowiedź na potrzebę klienta (w tym przypadku Gazety Wyborczej), który chciał mieć w jednym foncie (z 256 kodami) polskie znaki akcentowane wraz z akcentami naszych zachodnich sąsiadów. Taka była praktyczna, polska droga do Europy.

Dziś wszystkie popularne systemy operacyjne stosują UNICODE<sup>2</sup>, zaś polskie strony kodowe<sup>3</sup>, podobnie jak i wszystkie strony kodowe<sup>4</sup>, są przestarzałe i odchodzą do historii. Można oczywiście powiedzieć, że mnisi, którzy dawno temu pomagali wprowadzać polskie ogonki, też pozbawieni byli wyobraźni oraz dobrej teorii. Mogli przecież zakodować dźwięki typowe dla naszego języka bez żadnych znaków specjalnych, co starałem się opisać 10+ lat temu<sup>5</sup>. Po fakcie każdy jest mądry...

<sup>1</sup>http://rewers.computerworld.pl/news/123916.html

<sup>2</sup>http://http://www.cs.tut.fi/%7Ejkorpela/chars.html

<sup>3</sup>http://en.wikipedia.org/wiki/Polish_code_pages

<sup>4</sup>http://aspell.net/charsets/codepages.html

<sup>5</sup>http://https://www.computerworld.pl/artykuly/artykul.asp?id=32223

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200