Polacy nie gęsi, czyli:
Polski, wielojęzyczny układ klawiatury
Wstęp i motywacja
W dobie globalizacji, normalnym jest, że na bieżąco używa się wielu języków jednocześnie. Piszemy po polsku, za chwilę po niemiecku, zaraz po tym po francusku, żeby potem przełączyć się znów na polski. Nikogo to nie dziwi. Ale wszyscy mają ten sam problem: jak wstawić te znaczki z innych języków?
W czasach, kiedy komputery się rozwijały, polskie wersje oprogramowania powstawały jako proste tłumaczenia ich anglojęzycznych pierwowzorów. Nikt nie przejmował się takimi sprawami, że język polski rządzi się swoimi prawami: jest wyposażony w fleksję, posiada szereg niepowtarzalnych znaków, że inaczej wyglądają cudzysłowy, że są inne zasady interpunkcyjne.
Spuścizną tamtych czasów jest przyjęcie za standardowy układu klawiatury, który określa się jako „polski programisty”. W czasach kiedy został stworzony, był jedynym słusznym układem klawiatury, który pozwalał utworzyć polskie znaki diakrytyczne przy pomocy kombinacji z klawiszem prawy Alt.
Niestety, ten układ klawiatury ma jeszcze wiele braków. Przede wszystkim, nie można na nim znaleźć:
- prawidłowych znaków interpunkcyjnych, takich jak:
- prawidłowe polskie „cudzysłowy” (w zamian jest znak ")
- pauzy (—) i półpauzy (–)
- wielokropka (…)
- i innych prawidłowych znaków interpunkcyjnych
- innych przydatnych na co dzień znaków: ×, ÷, €, ºC, m², m³
Jak widać, nie jest to wymarzony układ klawiatury dla Polaka. A co w przypadku, kiedy ten biedny Polak, chce napisać „à propos”, albo „Voilà!”?
Co jest celem tej akcji?
Trzeba koniecznie stworzyć polski układ klawiatury z prawdziwego zdarzenia.
Mądrzejsze programy, takie jak np. OpenOffice, potrafią automatycznie zamieniać cudzysłowy na prawidłowe. Ale w momencie wpisywania komentarza na blogu, tworzenia stron internetowych itp. użytkownik z układem „polski programisty” jest bezradny.
Sprawa jest o tyle istotna, że wyraźnie widać dążenie do tego, aby „jedynym słusznym” kodowaniem dla języka polskiego było UTF-8, wypierając przestarzałe ISO-8859-2.
Należy przy tym pamiętać, że rozwiązanie musi być kompleksowo opracowane, tak aby mogło trafić na wszystkie systemy operacyjne.
Wielojęzyczny układ klawiatury dla Windows
Dla Windows, jest już prawie gotowiec. Wprowadziłem małe modyfikacje do układu, który stworzył Grzegorz Jagodziński. Tym sposobem powstała wersja wielojęzycznego układu klawiatury, który pozwala na wpisywanie wszystkich znaków do których użytkownicy przyzwyczajeni z układu „polski programisty” oferując dodatkowo znaki rozszerzone, takie jak prawidłowe znaki interpunkcyjne, znaki matematyczne oraz wszystkie znaki z akcentami.
- Do pobrania:
- Instalator dla Windows
- Układ w formacie .klc (Microsoft Keyboard Layout Creator). (Plik można podejrzeć w edytorze tekstowym. Zawiera przypisania odpowiednich kodów Unicode).
- Wstępna wersja dokumentacji (mapa kodów)
- Dokumentacja do oryginalnej wersji
- Oryginalna wersja
Wielojęzyczny układ klawiatury dla Linuksa
Ta część roboty pozostała jeszcze do zrobienia. Liczę na pomoc ludzi, którzy mają ten system w jednym palcu.
Najlepszym rozwiązaniem była by bezpośrednia konwersja pliku .klc, (który można pobrać powyżej) do formatu, który połknie Linuks. Do tej pory próbowałem następujących rozwiązań:
- Konwerter klc na xmodmap. Mizerny skutek.
- Próbowałem stworzyć swój plik xmodmap (póki co, nie doszukałem się zależności pomiędzy kodami klawiszy, keysymami i kodami znaków Unicode)
- Znalazłem opis Michała Kosmulskiego jak zmodyfikować xbd:
http://hektor.umcs.lublin.pl/~mikosmul/computing/articles/custom-keyboard-layouts-xkb.html, co wydaje się jak na razie być najlepszym rozwązaniem. Jeszcze nie próbowałem. Stanąłem na zależnościach pomiędzy kodami Unicode i keysymdef.h
Ciekawą modyfikację układu klawiatury pod Linuksa (w tym patche dla Ubuntu) proponuje Marcin Woliński, w artykule Racjonalna polska klawiatura dla programisty i typografa.
Wielojęzyczny układ klawiatury dla Mac OS
Sprawa otwarta. Nie mam dostępu do Mac OS. Będę wdzęczny za wszelkie uwagi.
Kontakt
Jeśli ktoś ma jakieś uwagi lub jest w stanie pomóc, proszę o kontakt na tomek@taat.pl lub odzew pl.comp.os.linux