Internacionalizácia systému

Ako sme už v úvode spomenuli, na to, aby sme mohli písať a čítať slovenský text so všetkým, čo k tomu patrí, operačný systém musí byť internacionalizovaný (v tejto súvislosti sa môžme stretnúť so zaujímavou skratkou [b]i18n[/b] - keďže slovo internationalization je dlhé, skracuje sa na [i]i-18 písmen-n[/i]) Internacionalizácia spočíva najmä v podpore národnej klávesnice a vybavení písmami (fontami) s podporou národnej abecedy a interpunkcie. Základom oboch je však kódovanie jednotlivých národných abecied.

Krátka história kódovania znakov

Zrejme nikoho neprekvapí, že spočiatku počítače a ich operačné systémy používali len základnú sadu znakov bez diakritiky. Táto sada je definovaná v norme ASCII (American Standard Code for Information Interchange) a definuje kódy pre 128 znakov - teda presne polovicu počtu, ktorý sa zmestí do jedného bajtu. Zvyšok bol voľný a spočiatky sa využíval viac-menej náhodne, napr. pre grafické znaky (Norton commander, NC). U nás trochu neskôr vznikol tzv. kód Kamenických, ktorý túto sadu doplnil tak, aby pri zachovaní grafiky pre NC bolo možné zobrazovať aj našu (českú a slovenskú) diakritiku. [h2]Normalizácia v 8 bitoch[/h2] Ak si majú viacerí používatelia navzájom vymieňať údaje, musia sa dohodnúť na ich formáte - tak vznikajú normy. Milou vlastnosťou noriem je, že ich býva viac a že sú navzájom nekompatibilné. Oblasť kódovania znakov je vynikajúcim príkladom. Pre 8-bitové znaky a slovenčinu (či presnejšie: stredoeurópske jazyky) sa bežne používajú dve normy. Jedna z nich v prostredí OS Windows - CP1250, druhá je normou Medzinárodnej organizácie pre normalizáciu - ISO-8859-2. Obdobné normy sú definované aj pre ostatné jazyky s hláskovou abecedou - ISO-8859-1 pre západoeurópske jazyky, ISO-8859-7 pre gréčtinu a tak podobne ďalej. Pre správne zobrazenie textu samozrejme musíme jeho kódovanie vopred poznať, čo je dôležité najmä v prostredí Internetu. Preto každý HTML dokument má svoje kódovanie uvedené v hlavičke: [code] [/code] Poznámka: Ak sa stránka nezobrazí správne a uvedený alebo podobný riadok na nej nenájdete (vo Firefoxe si možno pozrieť kód stránky stlačením CTRL-U), je to jednoznačne chyba autora stránky. Napíšte mu e-mail s upozornením. [h2]Ako zmeniť kódovanie textového súboru[/h2] Ak poznáme aktuálny kód súboru, môžme ho ľahko zmeniť pomocou programu recode. Napríklad pre zmenu z cp1250 na ISO-8859-2 (známy tiež ako latin2) na príkazovom riadku zadáme [code] recode cp1250..latin2 subor.txt [/code] Aj je to. Po vykonaní je subor.txt uz v novom kodovani. [h2]Unicode[/h2] 8-bitové kódy majú dva závažné nedostatky: [list] [*]Pre mnohé jazyky neposkytujú dostatočný priestor (čínština) [*]Neumožňujú kombinovať rôzne písma v jednom súbore (stále hovoríme o textových súboroch, napr. HTML stránkach. Pre dokumenty pre OpenOffice a iné podobné systémy toto obmedzenie neplatí) [/list] Norma [url=http:en.wikipedia.org/wiki/Unicode]UNICODE[/url] tieto nedostatky odstraňuje. Namiesto špeciálneho kódovania pre jednotlivé jazyky zavádza jedno kódovanie pre všetky. Samozrejme, že to nejde pomocou reprezentácia jedným bytom (8 bitov), unikód ich používa štyri, čo je priestor pre milióny rôznych znakov - to bezpochyby stačí pre pre všetky dnešné, ale aj budúce abecedy. Ale aby to zase nebolo také jednoduché aj UNICODE existuje vo viacerých formách [list] [*] UTF-16(Unicode Transformation Format) používa podľa potreby 1 alebo 2 byty a je štandardom pre Windows API a Javu [*] UTF-8 používa podľa potreby 1, 2 alebo 4 byty, pričom jednobajtové znaky (kód 0-127) sa zhodujú s kódovaním ASCII. Je to najekonomickejšie riešenie a je preferovaným kódovaním pre Internet a pre novšie distribúcie Linuxu (staršie používali ISO-8859-2) [/list] [h2]Krátka ukážka[/h2] Vďaka unikódu je dnes písanie v rôznych písmach a jazykoch a ich vzájomné kombinovanie jednoduché. Stačí si nainštalovať podporu pre danú klávesnicu a možno hneď písať [list] [*]Slovenčina: ďťňľ [*]Ruština: йцукенгш [*]Hebrejčina: 'שדגכעידאט (píše to odzadu!) [*]Arabčina: ضصثقفغ (aj tu) [*]Arménčina: ճփբսմուկըթ [/list] [h1]Vzájomná kompatibilita[/h1] Na úrovni [i]textových súborov[/i] o možno o kompatibilite asi sotva hovoriť. Treba poznať ich kódovanie a v prípade potreby použiť recode na jeho zmenu. Inde by s kompatibilitou nemali byť žiadne problémy. Aplikácie ako OpenOffice či Firefox poznajú kódovanie editovaného dokumentu, rovnako ako aj kódovanie lokálneho počítača - takže prenositeľnosť je zaručená, rovnako ako medzi rôznymi linuxovskými systémami, tak aj smerom k Windows.

Slovenčina pre GNOME

[h1]Nastavenie klávesnice[/h1] Tu sa môžeme s dôverou obrátiť na [url=http://people.tuke.sk//peter.mann/ubuntu/klavesnica.html]návod Petra Manna[/url].

Slovenčina pre KDE

KDE logoUvedený postup bol testovaný s distribúciou Kubuntu 6.10 (jeseň 2006). Mal by byť použiteľný pre všetky novšie distribúcie, ktoré už majú štandardne podporu [url=/node/101]kódovania utf-8[/url]. V prípade starších distribúcií je potrebné voliť kódovanie ISO-8859-2 manuálne, čo nie je celkom triviálne. Odporúčame preto prechod na niektorú z novších. Oplatí sa. [h1]Základné nastavenie klávesnice[/h1] Postup uvádzame pre anglickú lokalizáciu desktopu. Niekto by to mohol prepísať aj pre poslovenčený desktop - nájde sa? Postupne treba vybrať [b]K[/b] (menu) -> [b]System Settings[/b] -> [b]Regional & Languages[/b] -> [b]Keyboard layouts[/b] Otvorí sa okno [i]Keyboard Layouts[/i], v ktorom treba zvoliť [list=1] [*] [b]Enable Keyboard Layouts[/b] [*] V ľavom paneli [b]Available layouts[/b] vybrať [b]Slovakia[/b] [*] Kliknutím na [b]add>>[/b] preniesť do pravého panelu [*] Vpravo dolu kliknúť na [b]Apply[/b] [/list] Tým je slovenská (alebo hocijaká) iná klávesnica povolená. Na spodnom paneli vpravo sa objaví ikonka so zástavkou, kliknutím na ňu prepneme klávesnicu na požadovanú. Obdobne môžme klávesnice prepínať klávesovou skratkou [b]CTRL-ALT-K[/b]. Ovládací panel rozloženia kláves [i]Keyboard layout[/i] otvoríme aj kliknutím pravým tlačítkom myši na zástavku a voľbou [b]Configure[/b] [h1]Ďalšie možnosti nastavenia klávesnice[/h1][list] [*]Základné rozloženie kláves je QWERTZ. Voľba QWERTY je prístupná cez [b]Layout variant[/b]. [*]Rýchle prepínanie slovenského a štandardného (latin) rozloženia kláves pomocou špeciálnej klávesovej skratky. [list=1] [*] V okne [i]Keyboard layout[/i] zvolíme [b]Include latin layout[/b] [*] Zvolíme záložku [b]Xkb Opbtions[/b] a vyberieme si jednu z možností v menu [b]Group Shift-Lock Behavior[/b]. Populárne je prepínanie súčasným stlačením oboch Shift kláves. Volíme teda [b]Both shift keys together change group[/b] [/list] [*]Rozloženie klávesnice nemusí byť jednotné pre všetku okná. Napríklad, slovenskú môžme mať pre OpenOffice, pre ostatné to môžeme mať štandardné rozloženie. Túto voľbu robíme v záložke [b]Switching layouts[/b]/[b]Switching Policy[/b]. Výhodné je voliť [b]Application[/b], lebo v tom prípade sa použije rovnaké nastavenie pre všetky okná daného programu - aj pre tie, ktoré boli otvorené po prepnutí klávesnice. [*]Ďalšie voľby: treba preskúmať [/list] [h1]Používateľské rozhranie v slovenčine[/h1] chystáme...

Slovenčina pre ostatné grafické prostredia

[h1]Nastavenie klávesnice[/h1] Aj u sa môžeme s dôverou obrátiť na [url=http://people.tuke.sk//peter.mann/ubuntu/klavesnica.html#xorg]návod Petra Manna[/url]. V uvedenom prípade sa klávesnice prepínajú súčasným stlačením kláves [b]Alt[/b] a [b]Shift[/b]. Ďalšie možnosti sú uvedené napr. na http://gentoo-wiki.com/HOWTO_X11_Keyboard