Kaip rašyti lietuviškus asmenvardžius angliškose tinklalapiuose   

 

Kaip rašyti lietuviškus asmenvardžius angliškose tinklalapiuose


Gintautas Grigas

Angliškuose tinklalapiuose tenka parašyti lietuviškus vardus, pavardes, vietovardžiu, turinčių lietuviškų raidžių, nesančių anglų kalbos abėcėlėje, pavyzdžiui, „Jūratė Šalčiūtė, Klaipėda“. Kadangi visos angliškos raidės yra ir lietuvių kalbai rašyti vartojamose koduotėse (pvz., ISO 8859-13, Windows-1257), tai paprasčiausias būdas yra šią koduotę pasirinkti visam tinklalapiui. Tačiau jis nėra pats geriausias. Interneto tinklas pasaulinis ir nežinia, kokiame pasaulio krašte tą tinklalapį skaitys, ar ten kompiuteris atpažins pas mus vartojamas koduotes.

Universalus problemos sprendimas yra Unikodas. Tai universali viso pasaulio rašto ženklus turinti koduotė. Internete Unikodo ženklai vaizduojami utf-8 kodavimu. Jį atpažįsta šiuolaikinės interneto naršyklės „Netscape Communicator“, „Internet Explorer“ ir kt.

Gali atsitikti, kad kokiame nors svieto užkampyje kas nors skaitys tinklalapį naršykle, neturinčia utf-8 koduotės. Tačiau tokiu atveju kaltas bus jis pats, kad naudoja šių dienų realijų neatitinkančią programinę įrangą. Tuo tarpu, jeigu kas nors angliškame tinklalapyje neperskaitys mūsų pavardžių, koduotų lietuviška 8 bitų koduote, tai galės pagrįstai pasiteisinti, kad jis lietuvių kalba nesinaudoja ir mūsų koduotė jo kompiuteryje nebūtina.

Rašymas utf-8 koduote

Rašančiam tinklalapį, reikia pasirinkti HTML tekstų redaktorių, turintį utf-8 kodavimą, (pvz., „Netscape Composer“). Iš redaktoriaus meniu pasirinkus šį kodavimą į tą patį tinklalapį galima rašyti bet kurios kalbos rašto ženklus.

Tačiau mūsų klaviatūrų tvarkyklės į kompiuterį siunčia 8 bitų kodus. Tad kaip surinkti Unikodo ženklus?

Iš 8 bitų kodo į Unikodą arbą į utf-8 keičia HTML tekstų redaktorius. O 8 bitų kodai gali būti interpretuojami įvairiai ir atitinkamai keičiami Unikodo kodais. Jų interpretacija priklauso nuo tuo metu kompiuteryje veikiančios 8 bitų koduotės, o ši – nuo pasirinktos kalbos.

Kalbą galima pasirinkti iš meniu, kuris dažniausiai būna „Windows“ darbalaukio apačioje dešinėje. Dažniausiai šio meniu repertuare yra dvi kalbos – lietuvių (Lt) ir anglų (En). Repertuarą galima keisti nuėjus į kalbų langą (Start->Settings->Control Panel -> Keyboard -> Language).

Rašant tinklalapį galima keisti kalbas, t. y. tame pačiame tinklalapyje naudoti įvairių kalbų abėcėles. Šitaip, pasinaudojus Unikodo kodavimu, galima parašyti skirtingų kalbų raides, kurių nėra toje pačioje 8 bitų koduotėje. Pavyzdžiui, lietuviškose koduotėse yra ne visos prancūziškos raidės. O persijungus į prancūzų kalbą pasikeis koduotė ir bus galima rinkti prancūziškas raides. Prireikus lietuviškų raidžių reikės vėl grįžti prie lietuviškos koduotės.

Į kitą kalbą nebūtina persijungti, jeigu veikianti koduotė turi jos raides. Todėl esant nustatytai lietuvių kalbai (Lt) galima rašyti ne tik lietuviškai, bet ir dar 11 kalbų: anglų, danų, estų, latvių, lenkų, lotynų, norvegų, slovėnų, suomių, švedų ir vokiečių, nes visų šių kalbų abėcėlių raidės yra koduotėse ISO/IEC 8859-13 ir Windows-1257. Raides, kurių nėra klaviatūroje, galima surinkti 8 bitų kodais.

Jeigu HTML redaktorius neturi utf-8 kodavimo, tai tinklalapį galima parašyti 8 bitų koduote ir po to perkoduoti į utf-8 pasinaudojus kokia nors perkodavimo programa, pavyzdžiui „Kodav“ (http://www.lta.lt/~rims/kodav/). Tik reikia nepamiršti į perkoduoto tinklalapio antraštę rankiniu būdu (t.y. grynojo teksto redaktoriumi) įrašyti utf-8 koduotės pavadinimą, pavyzdžiui,

<CONTENT="text/html; charset=utf-8">

Naršyklės testas

Tinklalapyje http://aldona.mii.lt/pms/kalba/utf-8.html yra testas patikrinimui, kokius utf-8 koduotus rašmenis atpažįsta naršyklė arba HTML tekstų redaktorius. Jeigu ekrane matomas čia pateiktas paveikslas

 

tai reiškia, kad jį skaitanti naršyklė (redaktorius) atpažįsta visus tinklalapyje pavaizduotus rašmenis, o pasirinkti šriftai turi jų „paveikslus“.

Jeigu matomi neteisingi ženklai ir jų yra daugiau, negu šiame piešinyje, tai naršyklė neatpažįsta tų ženklų utf-8 kodų.

Jeigu vietoj kai kurių ženklų matomi kvadratėliai, tai reiškia, kad naršyklė juos atpažįsta, bet jų neturi šriftas.

Teste pateiktų Europos tautų kalbų rašmenis turi dauguma šriftų. Tuo tarpu japonų ir kinų rašmenis, parodytus paskutinėse testo pastraipose, parodys tik nedaugelis mūsų kompiuterių, todėl nekaltinkite savo kompiuterio, jeigu vietoj jų matysite tik kvadratėlius.

Elektroninis paštas

Kai į užsienį siunčiame lietuvišką laišką, tai jis gali būti koduotas ir 8 bitų koduote, turinčia visas lietuviškas raides (pvz, ISO 8859-13), nes jeigu gavėjas moka lietuviškai, tai jis savame kompiuteryje turėtų turėti ir lietuvių kalbai tinkamą programinę įrangą. O jei neturi, tai galėtume jam pagelbėti. Kas kita, jei rašome laišką užsieniečiui. Vien dėl to, kad jis galėtų perskaityti lietuvišką asmenvardį, jam gali būtų per didelė prabanga į kompiuterį diegti kad ir tarptautinę koduotę, turinčią lietuviškas raides. Tuo tarpu įdiegęs elektroninio pašto programą su utf-8 koduote, jis galės teisingai matyti ne tik lietuviškus, bet ir bet kuriais kitais rašmenimis parašytus laiškus arba įtarpus į juos.

Kodas utf-8 iš vidaus

Naudotis Unikodu arba jo kodavimu utf-8 nereiškia, kad reikia žinoti ženklų kodus. Tačiau tiems, kas nori pažvelgti giliau į ženklų kodavimą – suvokti kodėl ir kaip koduojama, trumpai paaiškinsime apie tai.

Kiekvienas ženklas Unikode koduojamas dviem baitais (oktetais). Abu baitai sudaro vientisą 16 bitų ilgio žodį – dvejetainį skaičių. Tuo tarpu telekomunikacijose duomenys persiunčiami baitais. Pirmuosius 32 baitus (kodus 0–31) telekominikacijų sistemos gali interpretuoti kaip valdančiuosius. Tolesni 96 kodai (32–127) yra ASCII ženklai, kuriuos sistemos gali interpretuoti kaip ASCII ženklus, o ne kaip nors kitaip.

Jeigu 16 bitų ilgio žodžiu koduotą Unikodo ženklą mechaniškai perskelsime į dvi dalis (du baitus), tai jose pasitaikys bitų kombinacijų iš intervalo 0–127 ir juos sistema gali palaikyti valdymo arba ASCII ženklais. Todėl jų reikia išvengti, t.y. juos kaip nors kitaip užkoduoti. Tai ir yra svarbiausia utf-8 paskirtis.

Kodavimas, kai dalis kodų lieka nepanaudoti, ilgina kodą. Siekiant, kad koduotas tekstas būtų kiek galint trumpesnis, buvo pasirinktas ženklų kodavimas nevienodu baitų skaičiumi: dažniausiai pasitaikantys ženklai koduojami vienu baitu, rečiau – dviem, o labai retam negaila ir trijų. Unikodo ženklų kodavimo utf-8 kodu schema parodyta lentelėje.

Bitų skaičius

Dvejetainis kodas Unikode

1-as

baitas

2-as

baitas

3-ias

baitas

4-as

baitas

1

000000000xxxxxxx

0xxxxxxx

     

2

00000yyyyyxxxxxx

110yyyyy

10xxxxxx

   

3

zzzzyyyyyyxxxxxx

1110zzzz

10yyyyyy

10xxxxxx

 

4

110110wwwwzzzzyy+

110111yyyyxxxxxx

11110uuu

10uuzzzz

10yyyyyy

10xxxxxx

Čia uuuuu = wwww + 1

Vienu baitu koduojami ženklai, kurių kodai yra internete nuo 0 iki 127, t. y. visi ASCII ženklai. Jų kodas sutampa su Unikodo antrojo baito reikšme, o šis – su ASCII kodu. Į šį intervalą patenka pagrindinės lotyniškosios abėcėlės raidės, skaitmenys, svarbiausi skyrybos ženklai. Šie ženklai sudaro daugumą lotyniškąją abėcėlę vartojančių kalbų tekstuose. Dėl to čia pasiekiama kodavimo ekonomija.

Į dviem baitais koduojamų ženklų aibę patenka praktiškai visų kalbų raidės (t. y. ne hieroglifai).

Keturiais baitais koduojamos taip vadinamos Unikodo surogatų poros. Pirmasis poros kodas yra iš intervalo U+D8000..U+DBFF, o antrasis – iš intervalo U+DC00..U+DFFF. Kiekviename intervale yra po 1024 kodus. Abu kodai skirti vienam ženklui pavaizduoti. Taigi, visomis kodų poromis galima pavaizduoti 1024×1024 ženklų, t.y. virš milijono. Tai priemonė Unikodo ženklų aibei išplėsti.

Surogatų kodai kol kas nepanaudoti. Jie palikti ateičiai, kai atsiras naujų ženklų, nebetelpančių į Unikodą.

Unikodo kodas visada keičiamas trumpiausia baitų seką. Pavyzdžiui, kodas 0000000000000001 koduojamas 00000001, bet ne 11000000 10000001. Tai užtikrina kodavimo vienareikšmiškumą ir suprastina iškodavimą. Iškodavimą taip pat palengvina tai, kad iš utf-8 kodo galima atpažinti pirmuosius ženklų baitus (jis prasideda 0, 110, 1110 arba 11110) ir nustatyti, kiek baitų skiriama tam ženklui. Todėl iškoduoti galima pradėti ir nebūtinai nuo kodų sekos pradžios.

Nors iš pažiūros kodavimas atrodo sudėtingas, tačiau į jį įsigilinus galima pastebėti, kad jis sudarytas gana logiškai ir motyvuotai. Ir perkodavimo algoritmai gali būti sklandūs. Čia pateiktos informacijos pakanka kodavimo bei iškodavimo programai parašyti. Pabandykite!

Lietuviškų rašto ženklų utf-8 kodai

Raidžių, sutampančių su pagrindinėmis lotyniškosios abėcėlės raidėmis, skaitmenų ir skyrybos ženklų, išskyrus kabutes ir brūkšnį, utf-8 kodai (nuo 0 iki 127) sutampa su bet kurios standartinės koduotės kodais ir išreiškiami vienu baitu. Kiti ženklai išreiškiami dviem baitais. Pavyzdžiui, žodis Dūkštas būtų koduojamas 9 baitais, kurių šešioliktainiai kodai būtų tokie:

44 C5 AB 6B C5 A1 74 61 73

Raudonai pažymėti raidžių ū ir š kodai, išreiškiami dviem baitais.

Jeigu šitaip koduotą žodį skaitytume su utf-8 žiūrikliu, tai matytume teisingą žodį Dūkštas, o 8 bitų žiūriklis teisingai neparodytų tų ženklų, kurie užkoduoti dviem baitais. Matytume DÅ«kÅtas

Kitų raidžių kodus galima pamatyti skaitant aukščiau minėtą utf-8 testo tinklalapį grynojo teksto šešioliktainiu žiūrikliu.

Lietuviški asmenvardžiai kitų kalbų tinklalapiuose

Tai, kas pasakyta apie lietuviškas raides angliškuose tinklalapiuse, tinka ir bet kuria kita kalba rašomiems tinklalapiams. Dar daugiau – jeigu anglišką tinklalapį galima parašyti ir Lietuvoje vartojama tarptautine 8 bitų koduote ISO 8859-13 arba „Microsoft“ koduote „Windows-1257“, tai kitų kalbų, išskyrus 11 išvardytų šio straipsnio pardžioje, 8 bitų koduotės neturi lietuviškų raidžių ir čia be Unikodo neapsieisi.

Kompiuterija, 12, 2000, 34–35. 

Į turinį

Į viršų

 

 


Rašykite mums  info@likit.lt
Atnaujinta 2001.12.15 .