Gentoo Logo

Folosirea UTF-8 cu Gentoo

Conţinut:

1.  Codările Caracterelor

Ce Este o Codare de Caracter?

Calculatoarele nu înţeleg singure textul. În schimb, fiecare caracter este reprezentat de un număr. Tradiţional, fiecare set de numere utilizat pentru a reprezenta alfabetele sau caracterele (cunoscut ca sistem de codare sau setul de caractere) era limitat în mărime datorită limitărilor fizice ale calculatorului.

Istoria Codărilor de Caractere

Cel mai comun (sau cel mai răspândit) set de caractere este ASCII (American Standard Code for Information Interchange - Codul Standard American pentru Schimbul de Informaţie). Este cunoscut faptul că ASCII este mai reuşit standard software realizat vreodată. Codul ASCII modern a fost standardizat în 1986 (ANSI X3.4, RFC 20, ISO/IEC 646:1991, ECMA-6) de către American National Standards Institute (Institutul Naţional American pentru Standarde).

ASCII este strict din şapte biţi, asta însemnând că foloseşte modele de biţi reprezentate cu şapte numere binare, care pune la dispoziţie un interval de la 0 la 127 în decimal. Acestea include caracterele de control nevizibile 32, cel mai multe fiind între 0 şi 31, cu caracterul final de control, DEL sau delete la 127. Caracterele de la 32 la 126 sunt caractere vizibile: un spaţiu, semne de punctuaţie, litere latine şi numere.

Al optulea bit din ASCII a fost folosit la început pentru bitul de paritate la verificarea erorilor. Dacă acest lucru nu este dorit, este lăsat ca 0. Asta înseamă că ASCII foloseşte pentru fiecare caracter un singur octet.

Cu toate că ASCII era de ajuns pentru comunicaţiile în engleza modernă, în alte limbi europene care includ caractere accentuate, lucrurile nu erau aşa uşoare. Standardele ISO 8859 au fost create pentru a satisface aceste nevoi. Erau compatibile în sens invers cu ASCII, diferenţa este că se foloseşte al optulea bit pentru a permite alte 127 caractere în fiecare codare. Curând, limitările ISO 8859 au început să iasă la iveală, momentan sunt 15 variante al standardului ISO 8859 (începând cu 8859-1 şi terminând cu 8859-15). În afară de raza octetului de compatibilitate ASCII al acelor seturi de caractere, erau conflicte dese în literele reprezentate de fiecare octet. Pentru a complica şi mai mult interoperabilitatea dintre codările caracterelor, Windows-1252 este folosit în anumite versiuni de Microsoft Windows în loc de limbile Vest Europene. Acesta este un superset al ISO-8859-1, dar este diferit în multe locuri. Totuşi, aceste seturi păstrează compatibilitatea cu ASCII.

Dezvoltarea necesară unor codări diferite singur-octet pentru alfabetele nelatine, cum ar fi EUC (Extended Unix Coding) care sunt folosite pentru cel Japonez şi Corean (şi a celui Chinez de mărime mai mică) a creat şi mai multă confuzie, în timp ce sistemele de operare foloseau diferite seturi de caractere pentru acelaşi limbaj, de exemplu, Shift-JIS şi ISO-2022-JP. Utilizatorii care doreau să vadă simbolurile chirilice aveau de ales între KOI8-R pentru cele ruseşti şi bulgăreşti sau KOI8-U pentru cele ucrainiene, sau între celelalte codări chirilice cum ar fi insuccesul ISO 8859-5, şi setul comun Windows-1251. Toate aceste seturi de caractere rupeau compatibilitatea cu ASCII (cu toate că codarea KOI8 plasa caracterele chirilice în ordinea latină, deci în caz că nu se foloseşte al optulea bit, textul se poate citi pe un terminal ASCII.)

Asta a adus la confuzie, şi la inabilitatea unei comunicări în mai multe limbi, în special între mai multe alfabete. Intraţi în Unicode.

Ce Este Unicode?

Unicode elimină tradiţionala limită a unui singur octet pentru setul de caractere. Foloseşte 17 "planuri" de 65,536 puncte de cod pentru a descrie un maxim de 1,114,112 caractere. Primul plan, cunoscut şi ca "Basic Multilingual Plane" (Planul de Bază Multi-lingv) sau BMP, conţine aproape tot ce vom folosi vreodată, mulţi au făcut presupunerea greşită că Unicode foloseşte un set de caractere pe 16 biţi.

Unicode a fost reprezentat în diferite moduri, dar două dintre cele mai comune sunt UTF (Unicode Transformation Format - Formatul de Transformare Unicode) şi UCS (Universal Character Set - Setul de Caractere Universale). Un număr după UTF indică numărul de biţi într-o unitate, în timp ce numărul de după UCS indică numărul de octeţi. UTF-8 a devenit cel mai răspândit pentru schimbarea de text Unicode datorită naturii sale simple pe opt biţi, şi este subiectul acestui document.

UTF-8

UTF-8 este o codare de caractere de lungime variabilă, ceea ce înseamă că foloseşte pentru fiecare simbol de la 1 la 4 octeţi. Deci, primul octet UTF-8 este folosit pentru codarea ASCII. UTF-8 înseamnă că caracterele ASCII şi latine pot fi combinate cu o mică creştere a dimensiunii datelor, deoarece e folosit numai primul bit. Utilizatorii alfabetelor estice cum ar fi cel Japonez, cui i-a fost repartiţionat o porţiune mai mare de octeţi sunt nefericiţi, deoarece are ca rezultat 50% de date redundante.

Ce Poate Face UTF-8 pentru Dumneavoastră

UTF-8 vă permite să lucraţi într-un mediu care respectă standardele, este internaţional acceptat şi puteţi folosi mai multe limbi, cu irosire mică de date. UTF-8 este metoda preferată pentru a transmite caractere non-ASCII pe Internet, prin poşta electronică, IRC sau oricare alt mediu. Cu toate astea, multă lume se comportă cu ostilitate la folosirea UTF-8 pentru comunicaţii online. Este bine să cunoaşteţi atitudinea privind UTF-8 într-un anume canal, listă de discuţii sau grup Usenet înainte să utilizaţi non-ASCII UTF-8.

2.  Setarea UTF-8 în Gentoo Linux

Căutarea şi Crearea Localizărilor UTF-8

Acum, că înţelegeţi principiile ce stau la baza Unicode, sunteţi pregătit pentru a începe folosirea UTF-8 în sistemul dumneavoastră.

Necesitatea prelimininară pentru UTF-8 este să aveţi instalată o versiune de glibc care are suport pentru limbile naţionale. Recomandarea este să faceţi asta în fişierul /etc/locales.build în combinaţie cu indicatorul USE userlocales. Nu este scopul acestui document de a explica folosirea acestui fişier, care este bine documentat în comentariile din interiorul lui. Este de asemenea explicat în Ghidul de Localizare Gentoo.

Acum urmează să decidem dacă o localizare UTF-8 este disponibilă pentru limba dumneavoastră, sau să creaţi una.

Cod 2.1: Verificarea unei localizări UTF-8 existente

(Înlocuiţi "en_GB" cu setarea localizării dorite)
# locale -a | grep 'en_GB'
en_GB
en_GB.UTF-8

Din ieşirea acestei comenzi, trebuie să luam rezultatul cu un sufix asemănător cu .UTF8. Dacă nu este nici un rezultat cu un sufix asemănător cu .UTF8, trebuie să creăm o localizare compatibilă UTF-8.

Notă: Executaţi următorul cod numai dacă nu aveţi o localizare UTF-8 disponibilă pentru limba dumneavoastră.

Cod 2.2: Crearea unei localizări UTF-8

(Înlocuiţi "en_GB" cu setarea localei dorite)
# localedef -i en_GB -f UTF-8 en_GB.UTF8

Altă metodă de a adăuga o localizare UTF-8 este să o adăugaţi în fişierul /etc/locales.build şi să recompilaţi glibc cu indicatorul USE userlocales activat.

Cod 2.3: Linie în /etc/locales.build

en_GB.UTF-8/UTF-8

Setarea Localizării

Există o variabilă de mediu ce trebuie setată pentru utiliza noile noastre localizări UTF-8: LC_ALL (această variabilă suprascrie şi setarea LANG). Există, de asemenea, multe moduri de a le seta; unii utilizatori preferă să aibă un mediu UTF-8 doar pentru un anume utilizator, caz în care le pot seta în fişierele ~/.profile (dacă utilizaţi /bin/sh), ~/.bash_profile sau ~/.bashrc (dacă utilizaţi /bin/bash).

Alţii preferă să seteze localizările global. O circumstanţă specifică pe care autorul o recomandă în special, este când script-ul /etc/init.d/xdm este încărcat, pentru că acest script de iniţializare porneşte managerul grafic şi aplicaţia desktop înainte ca fişierele de shell menţionate anterior să fie încărcate, şi deci, înainte ca aceste variabile să fie prezente în mediu.

Setarea localizării generic ar trebui să fie efectuată prin utilizarea /etc/env.d/02locale. Fişierul ar trebui să aibă un conţinut similar cu următorul:

Cod 2.4: Demonstraţie pentru /etc/env.d/02locale

(Ca întotdeauna, modificaţi "en_GB.UTF-8" cu localizarea dvs.)
LC_ALL="en_GB.UTF-8"

Apoi, mediul trebuie actualizat pentru a încărca modificarea.

Cod 2.5: Actualizarea mediului

# env-update
>>> Regenerating /etc/ld.so.cache...
 * Caching service dependencies ...
# source /etc/profile

Acum, rulaţi locale fără nici un argument, pentru a vedea dacă avem variabilele corecte în mediul nostru:

Cod 2.6: Verificarea dacă noua noastră localizare se află în mediu

# locale
LANG=
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=en_GB.UTF-8

Asta este tot. Utilizaţi, acum, localizări UTF-8, şi următorul pas este configurarea aplicaţiilor ce le utilizaţi zilnic.

3.  Suportul Aplicaţie

Când Unicode a început să devină popular în lumea software, seturile de caractere multioctet nu se potriveau la limbaje ca C, în care erau scrise mai toate programele din acea perioadă. Chiar astăzi, anumite programe nu se descurcă bine cu UTF-8. Din fericire, cele mai multe se descurcă.

Numele Fişierelor, NTFS şi FAT

Sunt mai multe opţiuni pentru NLS în meniul de configurare al kernel-ului Linux, dar este important să nu devenim confuzi! În cea mai mare parte, singurul lucru care trebuie să îl facem este să activăm suportul NLS pentru UTF-8 în kernel, şi să schimbăm modul NLS implicit în utf8.

Cod 3.1: Paşii de configurare pentru UTF-8 NLS în kernel

File Systems -->
  Native Language Support -->
    (utf8) Default NLS Option
    <*> NLS UTF8
    (De asemenea bifaţi <*> pentru alte seturi de caractere care sunt 
    folosite de FAT şi de mediile CDROM Joilet.)

Dacă aveţi de gând să mount-aţi partiţii NTFS, trebuie să specificaţi opţiunea nls= la mount-are. Dacă aveţi de gând să utilizaţi partiţii FAT, este posibil să trebuiască să specificaţi o opţiune codepage= pentru comanda mount. Opţional, puteţi de asemenea să setaţi o pagină de coduri implicită pentru FAT în configurarea kernel-ului dvs. Notaţi faptul că opţiunea codepage pentru mount, va suprascrie setările de kernel.

Cod 3.2: Setări FAT în configuraţia de kernel

File Systems -->
  DOS/FAT/NT Filesystems  -->
    (437) Default codepage for fat

Ar trebui să evitaţi utilizarea opţiunii Default iocharset for fat cu valoarea UTF-8, doarece nu este recomandată. În loc, puteţi pasa opţiunea utf8=true la mount-area partiţiilor dvs. FAT. Pentru mai multe informaţii, consultaţi man mount şi documentaţia de kernel din /usr/src/linux/Documentation/filesystems/vfat.txt.

Pentru a schimba codarea numelor la fişiere, puteţi folosi app-text/convmv.

Cod 3.3: Exemplu de folosire al convmv

# emerge --ask app-text/convmv
(Formatul comenzii)
# convmv -f <encodare-curentă> -t utf-8 <nume-fişier>
(Înlocuiţi iso-8859-1 cu setul de caractere de la care convertiţi)
# convmv -f iso-8859-1 -t utf-8 nume-fisier

Pentru a schimba conţinutul fişierelor, folosiţi utilitarul iconv, inclus în glibc:

Cod 3.4: Exemplu de folosire al iconv

(înlocuiţi iso-8859-1 cu setul de caractere de la care convertiţi)
(Verificaţi dacă rezultatul este normal)
# iconv -f iso-8859-1 -t utf-8 nume_fisier 
(Convertiţi un fişier, trebuie să creaţi alt fişier)
# iconv -f iso-8859-1 -t utf-8 nume_fisier > fisier_nou

Pentru acest lucru poate fi folosit şi app-text/recode.

Consola Sistemului

Important: Aveţi nevoie de >=sys-apps/baselayout-1.11.9 pentru a putea folosi Unicode în consolă.

Pentru a activa UTF-8 în consolă, trebuie să editaţi /etc/rc.conf şi să setaţi UNICODE="yes", de asemenea să citiţi comentariile în acel fişier -- este important să aveţi un font care are o plajă mare de caractere dacă intenţionaţi să folosiţi totul din Unicode.

Variabila KEYMAP setată în /etc/conf.d/keymaps, ar trebui să aibă o definiţie de dispunere a tastelor specifică Unicode.

Cod 3.5: Exemplu de folosire /etc/conf.d/keymaps

(Schimbaţi "uk" cu dispunerea dumneavoastră locală)
KEYMAP="uk"

Ncurses şi Slang

Notă: Ignoraţi orice menţionare de Slang în această secţiune dacă nu îl aveţi instalat sau dacă nu îl folosiţi.

Este indicat să adăugaţi unicode între indicatorii USE globali din /etc/make.conf, după care să efectuaţi din nou emerge pentru sys-libs/ncurses şi sys-libs/slang, dacă este nevoie. Portage va efectua acest lucru când vă veţi actualiza sistemul:

Cod 3.6: Updating your system

# emerge --update --deep --newuse world

Trebuie de asemenea să recompilăm pachetele care se leagă de ele, acum că schimbările de la USE au avut loc. Instrumentul care îl folosim (revdep-rebuild) face parte din pachetul gentoolkit.

Cod 3.7: Recompilarea programelor care se leagă de ncurses sau slang

# revdep-rebuild --soname libncurses.so.5
# revdep-rebuild --soname libslang.so.1

KDE, GNOME şi Xfce

Majoritatea mediilor desktop suportă în întregime Unicode, şi nu necesită alte setări care nu au fost acoperite de acest ghid. Asta din cauză că toolkit-urile grafice care sunt folosite (QT şi GTK+2) au suport pentru UTF-8. În consecinţă, toate aplicaţiile care rulează cu aceste toolkit-uri ar trebui să funcţioneze cu UTF-8 fără setări suplimentare.

Excepţia la această regulă este în Xlib şi GTK+1. GTK+1 necesită o setare FontSpec iso-10646-1 în ~/.gtkrc, de exemplu -misc-fixed-*-*-*-*-*-*-*-*-*-*-iso10646-1. De asemenea, aplicaţiile care folosesc Xlib sau Xaw au nevoie să fie specificat o setare FontSpec asemănătoare, altfel ele nu vor funcţiona.

Notă: Dacă aveţi o versiune de gnome1 control center instalat, folosiţi-l pentru a seta de acolo. Alegeţi oricare font iso10646-1 de acolo.

Cod 3.8: Exemplu ~/.gtkrc (pentru GTK+1) care defineşte un font compatibil Unicode

style "user-font"
{
    fontset="-misc-fixed-*-*-*-*-*-*-*-*-*-*-iso10646-1"
}
widget_class "*" style "user-font"

Dacă o aplicaţie are suport pentru interfaţă grafică QT cât şi GTK+2, interfaţa grafică GTK+2 va da în general rezultate mai bune dacă se foloseşte Unicode.

X11 şi Fonturile

Important: x11-base/xorg-x11 are suport mai bun Unicode decât XFree86 şi este foarte recomandat.

Fonturile TrueType suportă Unicode, şi majoritatea fonturilor care sunt distribuite cu Xorg au un foarte bun suport de caractere, cu toate, că nu fiecare simbol disponibil în Unicode a fost creat pentru acel font. Pentru a avea fonturi(inclusiv setul Bitstream Vera) cu suportul pentru literele est-asiatice şi X, asiguraţi-vă că aţi setat indicatorul USE cjk. Multe alte aplicaţii folosesc acest indicator, deci merită să îl adăugaţi ca un indicator USE permanent.

De asemenea mai multe fonturi din Portage au suport pentru Unicode.

Cod 3.9: Opţional: Instalaţi câteva fonturi care au suport Unicode

# emerge terminus-font intlfonts freefonts cronyx-fonts corefonts

Managerii de Ferestre şi Emulatoarele de Terminal

Managerii de ferestre care nu sunt realizate cu GTK sau QT au în general bun suport Unicode, deoarece folosesc librăria Xft pentru manipularea fonturilor. Dacă managerul dumneavoastră de ferestre nu foloseşte Xft pentru fonturi, puteţi utiliza setarea FontSpec menţionată în secţiunea anterioară ca font Unicode.

Emulatoarele de terminal care folosesc Xft şi suportă Unicode sunt mai greu de găsit. În afară de Konsole şi Gnome-Terminal, cele mai bune opţiuni în Portage sunt x11-terms/rxvt-unicode, xfce-extra/terminal, gnustep-apps/terminal, x11-terms/mlterm sau x11-terms/xterm când este compilat cu indicatorul USE unicode şi pornit ca uxterm. app-misc/screen suportă de asemenea UTF-8, când este pornit ca screen -U sau este adăugătă în ~/.screenrc următoarea linie:

Cod 3.10: ~/.screenrc pentru UTF-8

defutf8 on

Vim, Emacs, Xemacs şi Nano

Vim are suport complet pentru UTF-8, de asemenea detectează automat fişierele UTF-8. Pentru mai multe informaţii în Vim, folosiţi :help mbyte.txt.

Emacs 22.x sau versiunile mai noi are suport complet UTF-8, de asemenea. Xemacs 22.x nu suportă caracterele mixte, încă.

Versiunile mai vechi de Emacs şi/sau Xemacs ar putea să necesite instalarea app-emacs/mule-ucs şi/sau app-xemacs/mule-ucs şi adăugarea următorului cod în fişierul dvs. ~/.emacs pentru a avea suport pentru limbile CJK în UTF-8:

Cod 3.11: Suportul CJK UTF-8 în Emacs

(require 'un-define)
(require 'jisx0213)
(set-language-environment "Japanese")
(set-default-coding-systems 'utf-8)
(set-terminal-coding-system 'utf-8)

Nano oferă suport complet pentru UTF-8 de la versiunea 1.3.6.

Aplicaţii Shell

Momentan, bash are suport complet pentru Unicode prin librăria GNU readline. Aplicaţia Z Shell stă foarte prost la acest lucru, nici o porţiune din shell nu are suport Unicode, cu toate că este concentrat un efort pentru a adăuga suport pentru setul de caractere multioctet.

Aplicaţia C Shell, tcsh şi ksh nu au deloc suport UTF-8.

Irssi

Irssi are suport complet pentru UTF-8, cu toate că este necesară setarea unei opţiuni.

Cod 3.12: Activarea UTF-8 în Irssi

/set term_charset UTF-8

Pentru canale unde caractere non-ASCII sunt folosite des în seturi de caractere non-UTF-8, comanda /recode poate fi folosită pentru a converti caracterele. Scrieţi /help recode pentru mai multe informaţii.

Mutt

Agentul de mesagerie electronică Mutt are suport foarte bun pentru Unicode. Pentru a folosi Mutt cu UTF-8, nu trebuie să modificaţi deloc fişierele dvs. de configurare. Mutt va funcţiona într-un mediu unicode dacă toate fişierele dvs. de configurare (incluzând semnătura) sunt encodate UTF-8.

Notă: Încă puteţi folosi '?' în timp ce citiţi mailurile. Acest lucru apare de la faptul că persoanele folosesc un client de mail care nu specifică setul de caractere folosit. Nu puteţi face mare lucru decât să cereţi persoanelor să îşi configureze corespunzător clientul de mail.

Mai multe informaţii găsiţi pe pagina Mutt Wiki.

Less

Cu toţii utilizăm mult more sau less alături de caracterul | pentru a putea să observăm corect ceea ce afişează o comandă, cum ar fi spre exemplu, dmesg | less. În timp more are nevoie doar ca aplicaţia shell să ştie codarea UTF-8, less are nevoie de o variabilă de mediu setată, LESSCHARSET pentru a vă asigura afişarea corectă a caracterelor. Aceasta poate fi setată în /etc/profile sau ~/.bash_profile. Deschideţi editorul preferat şi adăugaţi următoarea linie într-unul dintre fişierele menţionate anterior.

Cod 3.13: Setarea variabilei de mediu pentru less

LESSCHARSET=utf-8

Man

Paginile de manual sunt o parte integrală a unei maşini Linux. Pentru a vă asigura că textul unicode este afişat corect în paginile dvs. de manual, editaţi /etc/man.conf şi înlocuiţi o linie, după cum urmează.

Cod 3.14: modificările din man.conf pentru suportul Unicode

(Aceasta este linia anterioară)
NROFF           /usr/bin/nroff -Tascii -c -mandoc
(Înlocuiţi linia de mai sus cu aceasta)
NROFF           /usr/bin/nroff -mandoc -c

elinks şi links

Acestea sunt cele mai utilizate aplicaţii browser în mod text, şi vom vedea cum să le activăm suportul UTF-8. Pentru elinks şi links, există două modalităţi de a efectua această operaţie, una fiind utilizarea opţiunii Setup din browser sau prin editarea fişierului de configurare. Pentru a seta opţiunea prin intermediul aplicaţiei browser, deschideţi o pagină cu elinks sau links şi apoi apăsaţi Alt+S pentru a intra în meniul Setup, apoi selectaţi Terminal options sau apăsaţi T. Derulaţi în jos şi selectaţi ultima opţiune UTF-8 I/O prin apăsarea tastei Enter. Apoi, salvaţi şi ieşiţi din meniu. Pentru links este posibil să trebuiască repetarea apăsarii Alt+S şi apoi apăsarea tastei S pentru salvare. Opţiunea pentru fişierul de configurare este descrisă mai jos.

Cod 3.15: Activarea UTF-8 pentru elinks/links

(Pentru elinks, editaţi /etc/elinks/elinks.conf sau ~/.elinks/elinks.conf şi
adăugaţi următoarea linie)
set terminal.linux.utf_8_io = 1

(Pentru links, editaţi ~/.links/links.cfg şi adăugaţi următoarea linie
terminal "xterm" 0 1 0 us-ascii utf-8

Testarea Funcţionalităţii

Sunt multe site-uri cu teste pentru UTF-8.net-www/w3m, net-www/links, net-www/elinks, net-www/lynx şi toate navigatoarele bazate pe Mozilla (inclusiv Firefox) suportă UTF-8. Konqueror şi Opera suportă de asemenea UTF-8, în totalitate.

Când folosiţi navigatoarele în mod text, asiguraţi-vă că folosiţi un terminal care are suport pentru Unicode.

Dacă vedeţi anumite caractere afişate ca pătrate cu litere sau numere înăuntru, asta înseamnă că fontul dumneavoastră nu are caracter pentru simbolul care îl doreşte UTF-8. În schimb, afişează un pătrat cu codul hexazecimal al simbolului UTF-8.

Metode de intrare

Tastele inactive pot fi folosite pentru caracterele de intrare în X care nu sunt incluse în tastatura dumneavoastră. Acestea funcţionează la apăsarea tastei ALT stânga (sau în anumite ţări, AltGr) şi o tastă opţională din secţiunea non-alfabetică a tastaturii din stânga butonului enter, eliberaţi-o, apoi apăsaţi o literă. Tasta inactivă ar trebui să o modifice. Intrarea mai poate fi modificată folosind tasta Shift în acelaşi timp cu tasta AltGr şi modificatorul.

Pentru a activa tastele inactive în X, trebuie să aveţi o definiţie de dispunere care le suportă. Majoritatea definiţiilor de dispunere Europene au taste inactive în configuraţia implicită. Cu toate astea, nu este aplicabil pentru definiţiile de dispunere nord-americane. Cu toate că definiţiile de dispunere sunt destul de inconsistente, cea mai uşoară soluţie este să folosiţi o definiţie de forma "en_US" şi nu "us". Definiţia de dispunere este setată în /etc/X11/xorg.conf în felul următor:

Cod 3.16: /etc/X11/xorg.conf snippet

Section "InputDevice"
    Identifier "Keyboard0"
    Driver     "kbd"
    Option     "XkbLayout" "en_US" # În loc de numai "us"
    (Alte opţiuni pentru Xkb)
EndSection

Notă: Schimbările anterioare trebuie aplicate numai dacă folosiţi un o definiţie de dispunere nord-americană, sau altă dispunere unde tastele inactive nu funcţionează. Utilizatorii europeni vor avea tastele inactive funcţionale.

Această schimbare va avea efect după ce serverul X a fost repornit. Pentru a aplica schimbările imediat, folosiţi utilitarul setxkbmap, de exemplu, setxkbmap en_US.

Probabil este mai uşor dacă descriem tastele inactive prin exemple. Cu toate că rezultatele sunt locale, conceptul ar trebui să rămână acelaşi indiferent de localizare. Exemplele conţin UTF-8, aşa că pentru a le vedea trebuie să îi specificaţi navigatorului să vizualizeze pagina ca UTF-8, sau să aveţi deja configurată o localizare UTF-8.

După ce apăsaţi AltGr şi [, eliberaţi-le, după care apăsaţi a, 'ä' este scris. Când apăsaţi AltGr şi ], după care apăsaţi e, 'ë' este scris. Când apăsaţi AltGr şi ;, 'á' este scris, şi când apăsaţi AltGr şi ;, 'é' este scris.

Apăsând AltGr, Shift şi [, după care le eliberaţi, şi apoi apăsaţi a, este scris caracterul scandinav 'å'. Similar, când apăsaţi AltGr, Shift şi [, eliberaţi numai şi apoi apăsaţi-l din nou, caracterul '˚' este scris. Cu toate că seamănă între ele, acesta (U+02DA) nu este la fel cu simbolul pentru grad (U+00B0). Aceasta funcţionează şi pentru alte caractere accentuate produse de cheile moarte - AltGr şi [, eliberând numai [, apoi apăsându-l din nou este scris '¨'.

AltGr poate fi folosit singur şi cu tastele alfabetice. De exemplu, AltGr şi m, este scris litera mică greacă miu: 'µ'. AltGr şi s produce un caracter scharfes s sau esszet: 'ß'. Aşa cum mulţi utilizatori europeni se aşteaptă (pentru că este marcat pe tastatura acestora), AltGr şi 4 (sau E, depinzând de dispunerea tastaturii dvs.) produce un semn Euro, '€'.

Resurse



Imprimare

Actualizat la 19 Martie 2006

Versiunea originală a acestui document a fost actualizată ultima dată la 17 Aprilie 2007

Sumar: Acest ghid este pentru a seta şi utiliza setul de caractere Unicode UTF-8 cu sistemul Gentoo Linux, după ce se explică beneficiile care le aduce Unicode, în special UTF-8.

Thomas Martin
Autor

Alexander Simonov
Contribuitor

Shyam Mani
Editor

Spoială Cristian
Translator

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Bytemark

Bytemark

Copyright 2001-2008 Gentoo Foundation, Inc. Questions, Comments? Contact us.