Un program "neaos", si nu doar pentru "românii verzi"... Prezentat de însusi autorul lui, Adi Pop

KeyMap-pentru o tastatură flexibilă

Adi Pop

Încă de la primele versiuni de PC specificatiile IBM mentionau diferite caracteristici care ar trebui adaptate specificului local al diferitelor piete. Vă amintiti, nu, de pagina de cod, de driverul de tastatură, de fonturile specifice diferitelor limbi. Toate aceste caracteristici s-au concretizat în timp în diferite tehnici si tehnologii de "internationalizare" sau "localizare" a diferitelor produse de tehnică de calcul începînd fireste cu PC-urile si terminînd cu sumedenia de aplicatii software scrise pentru acestea.

Desi drumul parcurs de aceste tehnologii este lung, practic doar în ultima perioadă - mai precis de cînd Windows-ul a început să cucerească teren - eforturile de standardizare au devenit mai evidente, dar si piedicile si reactiile s-au făcut simtite mai profund.

Frustrări

Să urmărim cîteva din problemele ridicate de acest efort de internationalizare si în paralel unele dintre posibilele solutii.

Marea problemă a calculatoarelor americane care s-au trezit în Europa a fost că nu stiau să producă ciudatele litere cu diacritice de toate soiurile ale numeroaselor limbi europene. În mare problemele sînt de două feluri: unele tin de tastatură iar celelalte de afisare, respectiv de imprimarea caracterelor.

IBM a încercat să impună cîteva consideratii hard relativ la aranjarea caracterelor pe tastatură (layout), pornind de la principiul că pentru fiecare limbă (franceză, germană, etc…) pe blocul alfanumeric trebuie să apară caracterele specifice limbii. Aceasta însă impune de la început o rearanjare a acestor caractere precum si o reducere a numărului de simboluri accesibile la o simplă tastare. În plus au fost introduse acele taste moarte - death key - al căror rol era de a produce caracterul de accent, după care, fără a se trece la următorul caracter, să fie acceptat unul dintre caracterele care suportă un astfel de accent. Deci conform cu specificatia IBM pe o astfel de tastatură "românească" sînt prezente pentru tastare imediată caracterele ă, â, î, s, t si majusculele lor (evident în combinatie cu SHIFT) iar pentru alte caractere, cum ar fi <é> se recomandă apăsarea combinatiei <ALTGR+9> +<e>. Dar asta nu-i tot. De exemplu sub Windows acelasi caracter se poate obtine si prin combinatia <ALT+0233> unde numărul este introdus de la blocul numeric dar alte caractere cum ar fi <e> nu pot fi obtinute nici asa, decît în conjunctie cu anumite fonturi.

Nu numai că aceste tastaturi "locale" practic nu există, deoarece majoritatea calculatoarelor sînt livrate cu tastaturi americane, dar si dacă ele există, e aproape imposibil să te mai asezi în fata unei alteia fără a experimenta niste frustrări îngrozitoare. Nu numai că lipsesc caracterele specifice dar cifrele, simbolurile si chiar unele dintre caracterele standard (ex: Z,Y) au pozitii schimbate.

Si tot nu am ajuns la sfîrsitul acestui capitol. Windows 95 a adus ce-a mai însemnată politică de internationalizare de pînă acum. Nu numai că serveste mult mai bine limbile nationale prin introducerea în sistem a informatiilor legate de limbă, dar a introdus si adaptarea fonturilor (din punct de vedere al mapării paginii extinse - în functie de limba în care utilizatorul si-a ales să scrie). Dar desi frumos pînă aici, tot aici este si capătul drumului 95.

Usurări

Cînd acum vreo patru ani, am văzut mica aplicatie a lui Cicu Fettich care sub DOS (si Ventura) făcea comutarea între două mapări predefinite (pe principiul pe care se lucra atunci sub DOS), mi-a venit ideea să fac asa ceva si sub Windows si să-l fac bine. În primul rînd am abandonat din start ideea tastelor moarte. Apoi am ajuns la concluzia că din punct de vedere al utilizatorului este relativ simplu să se învete că pe anumite taste poate obtine si alte caractere.

Există deci două stări ale tastaturii: una normală (în care functionează evident modificatorii SHIFT si CAPS) si alta "rezervă caldă" - dacă se tine apăsată tasta ALTGR (în care de asemenea functionează modificatorii SHIFT si CAPS). Există astfel un spatiu virtual de dimensiunea a două tastaturi - credeti că ajunge? Nu ajunge, deoarece mental există oricum o legătură între o limbă si diacriticele specifice acesteia. Astfel, e preferabil să existe instalate în sistem mai multe layout-uri de tastatură, asociate fiecare unui limbaj. Asta face în sfîrsit Windows-ul 95 iar Keymap 2.0 vine si introduce si posibilitatea editării acestora într-un mod comod si foarte integrat cu functionalitatea de bază din sistem.

După cum se poate observa si din captura de ecran în partea superioară este afisată limba (ea poate fi aleasă din lista celor instalate în sistem). Acesteia îi corespunde un layout (care de altfel poate fi si încărcat). Layout-ul corespunzător este afisat în sectiunea de mai jos care vizualizează tastatura în oricare din combinatiile <ALTGR, SHIFT, CAPS>. Astfel puteti să vedeti care sînt caracterele ce vor fi emise de tastatură. Pentru oricare dintre "tastele" reprezentate se poate mapa (atasa) un caracter din tabelul de caractere disponibile. Mai mult se pot automatiza aceste operatii - astfel că dacă dorim să mapăm de exemplu litera <ă> pe tasta <[> este suficient să facem un dublu-clic pe caracterul 'ă' din tabloul de selectie. Dacă ambele optiuni (Letter si Move back) sînt marcate se va mapa automat <Ă> pentru acces cu SHIFT iar caracterele '[' si '{' se vor muta pe paginile "din spate" ale tastaturii si vor fi disponibile cu ALTGR respectiv ALTGR+SHIFT pe aceeasi tastă. O multime de alte combinatii pentru a ajunge la layout-ul dorit pot fi încercate si vă vor produce cred numai plăcere - măcar plăcerea de a-i modifica colegului, pe ascuns, o tastă pentru ca mai apoi să-l lasi perplex în fata faptului că "una face si-alta iese".

Un alt aspect este legat de fonturi. După cum se stie în afară de marea problemă a <s>-ului turcesc (pe care Microsoft-ul nu a corectat-o nici acum), pagina de cod Latin 2 este făcută mai mult pentru altii decît pentru noi. În loc ca aici să găsim diacriticele specifice limbii române si ale celorlalte limbi înrudite (Latine) avem o multime de caractere sîrbesti, turcesti, cehesti albaneze, poloneze etc. Singurul lucru comun cu latina este baza alfabetului - dar atunci de ce nu-i spune acesteia Latin-slav, pe nemti si ceilalti să-i includă într-un Latin-saxon iar limbile cu adevărat latine să-si regăsească caracterele într-o pagină de cod Latin. Acestea sînt doar cîteva dintre argumentele pentru care împreună cu Keymap (atît la versiunea 1.0 dar si la această a 2-a versiune, am crezut de cuviintă introducerea unor fonturi care să aibă măcar cîteva dintre aceste probleme rezolvate, si în plus să functioneze pe orice Windows (pe Windows 95 - nu din motive de orgoliu - aceste fonturi vor apare ca fiind din familia Western).

La final

Desi stiu că toate cele prezentate v-au incitat pentru a încerca produsul, el va fi disponibil în versiunea comercială începînd cu IFABO. Pînă atunci este disponibilă versiunea beta si de asemenea sînt asteptati cu comenzi producătorii locali de calculatoare care doresc să-si "localizeze" un pic mai mult sistemele - spre beneficiul nostru al tuturor!


(C) Copyright Computer Press Agora