unicode(7)             Miscellaneous Information Manual             unicode(7)

NUME
       unicode - set de caractere universal

DESCRIERE
       Standardul interna<?>ional ISO/IEC 10646 define<?>te setul universal de
       caractere (,,Universal Character Set": UCS). UCS con<?>ine toate
       caracterele din toate celelalte standarde de seturi de caractere. De
       asemenea, garanteaza ,,compatibilitatea dus-intors"; cu alte cuvinte,
       tabelele de conversie pot fi construite astfel incat sa nu se piarda
       nicio informa<?>ie atunci cand un <?>ir de caractere este convertit din
       orice alta codificare in UCS <?>i invers.

       UCS con<?>ine caracterele necesare pentru a reprezenta practic toate
       limbile cunoscute. Acestea includ nu numai caracterele latine,
       grece<?>ti, chirilice, ebraice, arabe, armene<?>ti <?>i georgiene, ci
       <?>i ideogramele chineze<?>ti, japoneze <?>i coreene Han, precum <?>i
       caractere precum Hiragana, Katakana, Hangul, Devanagari, Bengali,
       Gurmukhi, Gujarati, Oriya, Tamil, Telugu, Kannada, Malayalam, Thai,
       Lao, Khmer, Bopomofo, Tibetana, Runic, Etiopiana, Silabica canadiana,
       Cherokee, Mongola, Ogham, Myanmar, Sinhala, Thaana, Yi <?>i altele. In
       ceea ce prive<?>te scripturile care nu sunt inca acoperite, cercetarile
       privind cea mai buna codificare a acestora pentru utilizarea pe
       calculator sunt inca in curs de desfa<?>urare <?>i vor fi adaugate in
       cele din urma. Acestea ar putea include in cele din urma nu numai
       hieroglife <?>i diverse limbi indo-europene istorice, ci chiar <?>i
       unele scripturi artistice selectate, cum ar fi Tengwar, Cirth <?>i
       Klingon. UCS acopera, de asemenea, un numar mare de simboluri grafice,
       tipografice, matematice <?>i <?>tiin<?>ifice, inclusiv cele furnizate
       de TeX, Postscript, APL, MS-DOS, MS-Windows, Macintosh, fonturi OCR,
       precum <?>i de multe sisteme de procesare a textelor <?>i de publicare,
       iar altele sunt in curs de adaugare.

       Standardul UCS (ISO/IEC 10646) descrie o arhitectura a setului de
       caractere pe 31 de bi<?>i care consta din 128 de grupuri pe 24 de
       bi<?>i, fiecare fiind impar<?>it in 256 de planuri pe 16 bi<?>i,
       alcatuite din 256 de randuri pe 8 bi<?>i cu 256 de pozi<?>ii coloana,
       una pentru fiecare caracter. Partea 1 a standardului (ISO/IEC 10646-1)
       define<?>te primele 65534 de pozi<?>ii de cod (de la 0x0000 la 0xfffd),
       care formeaza Planul multilingvistic de baza (,,Basic Multilingual
       Plane": BMP), adica planul 0 din grupul 0. Partea 2 a standardului
       (ISO/IEC 10646-2) adauga caractere la grupul 0 in afara de BMP in mai
       multe planuri suplimentare in intervalul 0x10000 - 0x10ffff. Nu exista
       planuri de adaugare a caracterelor dincolo de 0x10ffff la standard,
       prin urmare, din intregul spa<?>iu de cod, doar o mica parte din grupul
       0 va fi utilizata in viitorul apropiat. BMP con<?>ine toate caracterele
       care se gasesc in celelalte seturi de caractere utilizate in mod
       obi<?>nuit. Planurile suplimentare adaugate de ISO/IEC 10646-2 acopera
       doar caracterele mai exotice pentru nevoi speciale in domeniul
       <?>tiin<?>ific, al imprimarii dic<?>ionarelor, al industriei
       editoriale, al protocoalelor de nivel superior <?>i al entuzia<?>tilor.

       Reprezentarea fiecarui caracter UCS sub forma unui cuvant de 2 octe<?>i
       se nume<?>te forma UCS-2 (numai pentru caracterele BMP), in timp ce
       UCS-4 este reprezentarea fiecarui caracter sub forma unui cuvant de 4
       octe<?>i. In plus, exista doua forme de codificare: UTF-8 pentru
       compatibilitatea cu programele de procesare ASCII <?>i UTF-16 pentru
       gestionarea retro-compatibila a caracterelor non-BMP pana la 0x10ffff
       de catre programele UCS-2.

       Caracterele UCS de la 0x0000 la 0x007f sunt identice cu cele din setul
       clasic de caractere US-ASCII, iar caracterele din intervalul de la
       0x0000 la 0x00ff sunt identice cu cele din ISO/IEC 8859-1 (Latin-1).

   Combinarea caracterelor
       Unele puncte de cod din UCS au fost atribuite pentru caractere de
       combinare. Acestea sunt similare cu tastele de accent fara spa<?>iere
       de pe o ma<?>ina de scris. O combina<?>ie de caractere nu face decat sa
       adauge un accent la caracterul anterior. Cele mai importante caractere
       accentuate au coduri proprii in UCS; insa mecanismul de combinare a
       caracterelor ne permite sa adaugam accente <?>i alte semne diacritice
       la orice caracter. Un caracter de combinare nu face decat sa adauge un
       accent la caracterul anterior. Cele mai importante caractere accentuate
       au coduri proprii in UCS, insa mecanismul de combinare a caracterelor
       ne permite sa adaugam accente <?>i alte semne diacritice la orice
       caracter. Caracterele de combinare urmeaza intotdeauna caracterul pe
       care il modifica. De exemplu, caracterul german Umlaut-A (,,Litera
       majuscula latina A cu diereza") poate fi reprezentat fie prin codul UCS
       precompus 0x00c4, fie ca o combina<?>ie de ,,Litera majuscula latina A"
       normala urmata de o ,,diereza combinatorie": 0x0041 0x0308.

       Combinarea caracterelor este esen<?>iala, de exemplu, pentru
       codificarea scriptului thailandez sau pentru compunerea matematica <?>i
       utilizatorii alfabetului fonetic interna<?>ional.

   Niveluri de implementare
       Deoarece nu se a<?>teapta ca toate sistemele sa accepte mecanisme
       avansate, cum ar fi combinarea caracterelor, ISO/IEC 10646-1 specifica
       urmatoarele trei niveluri de implementare ale UCS:

       Nivelul 1
                Caracterele combinate <?>i Hangul Jamo (o varianta de
                codificare a alfabetului coreean, in care o pictograma de
                silaba Hangul este codificata ca un triplet sau o pereche de
                coduri de vocale/consonante) nu sunt acceptate.

       Nivelul 2
                In plus fa<?>a de nivelul 1, acum sunt permise combina<?>ii de
                caractere pentru unele limbi in care acestea sunt esen<?>iale
                (de exemplu, thailandeza, lao, ebraica, araba, devanagari,
                malaieziana).

       Nivelul 3
                Sunt acceptate toate caracterele UCS.

       Standardul Unicode 3.0 publicat de Consor<?>iul Unicode con<?>ine exact
       planul multilingvistic de baza UCS la nivelul de implementare 3, a<?>a
       cum este descris in ISO/IEC 10646-1:2000. Unicode 3.1 a adaugat
       planurile suplimentare din ISO/IEC 10646-2. Standardul Unicode <?>i
       rapoartele tehnice publicate de Consor<?>iul Unicode ofera numeroase
       informa<?>ii suplimentare privind semantica <?>i utilizarile
       recomandate pentru diverse caractere. Acestea ofera orientari <?>i
       algoritmi pentru editarea, sortarea, compararea, normalizarea,
       conversia <?>i afi<?>area <?>irurilor Unicode.

   Unicode in Linux
       In GNU/Linux, tipul C wchar_t este un tip de numar intreg cu semn (+/-)
       pe 32 de bi<?>i. Valorile sale sunt intotdeauna interpretate de
       biblioteca C ca valori de cod UCS (in toate localizarile), conven<?>ie
       care este semnalata de biblioteca C GNU C aplica<?>iilor prin definirea
       constantei __STDC_ISO_10646__ a<?>a cum este specificata in standardul
       ISO C99.

       UCS/Unicode poate fi utilizat la fel ca ASCII in fluxurile de
       intrare/ie<?>ire, in comunicarea prin terminal, in fi<?>ierele de text
       simplu, in numele fi<?>ierelor <?>i in variabilele de mediu in
       codificarea multiocte<?>i UTF-8 compatibila cu ASCII. Pentru a semnala
       tuturor aplica<?>iilor utilizarea UTF-8 ca codificare a caracterelor,
       trebuie sa se selecteze o configurare regionala adecvata (locale) prin
       intermediul variabilelor de mediu (de exemplu, ,,LANG=en_GB.UTF-8").

       Func<?>ia nl_langinfo(CODESET) returneaza numele codificarii selectate.
       Func<?>iile de biblioteca, cum ar fi wctomb(3) <?>i mbsrtowcs(3), pot
       fi utilizate pentru a transforma caracterele <?>i <?>irurile interne
       wchar_t in codificarea caracterelor de sistem <?>i invers, iar
       wcwidth(3) informeaza cu cate pozi<?>ii (0-2) este avansat cursorul
       prin ie<?>irea unui caracter.

   Zone de utilizare privata (,,Private Use Areas": PUA)
       In planul multilingvistic de baza, intervalul de la 0xe000 la 0xf8ff nu
       va fi niciodata atribuit niciunui caracter de catre standard <?>i este
       rezervat pentru uz privat. Pentru comunitatea Linux, aceasta zona
       privata a fost subdivizata in continuare in intervalul 0xe000 - 0xefff,
       care poate fi utilizat individual de orice utilizator final, <?>i in
       zona Linux din intervalul 0xf000 - 0xf8ff, unde extensiile sunt
       coordonate intre to<?>i utilizatorii Linux. Registrul caracterelor
       atribuite zonei Linux este men<?>inut de LANANA, iar registrul
       propriu-zis este Documentation/admin-guide/unicode.rst in sursele
       nucleului Linux (sau Documentation/unicode.txt inainte de Linux 4.10).

       Alte doua planuri sunt rezervate pentru uz privat, planul 15 (Zona
       suplimentara de utilizare privata-A, intervalul de la 0xf0000 la
       0xffffd) <?>i planul 16 (Zona suplimentara de utilizare privata-B,
       intervalul de la 0x100000 la 0x10fffd).

   Literatura
       o  Tehnologia informa<?>iei -- Set universal de caractere codificate cu
          octe<?>i multipli (UCS) -- Partea 1: Arhitectura <?>i planul
          multilingvistic de baza. Standardul interna<?>ional ISO/IEC 10646-1,
          Organiza<?>ia Interna<?>ionala pentru Standardizare, Geneva, 2000.

          Aceasta este specifica<?>ia oficiala a UCS. Disponibila la
          <http://www.iso.ch/>.

       o  Standardul Unicode, versiunea 3.0. The Unicode Consortium,
          Addison-Wesley, Reading, MA, 2000, ISBN 0-201-61633-5.

       o  S. Harbison, G. Steele. C: Un manual de referin<?>a. A patra
          edi<?>ie, Prentice Hall, Englewood Cliffs, 1995, ISBN 0-13-326224-3.

          O buna carte de referin<?>a despre limbajul de programare C. Cea
          de-a patra edi<?>ie acopera amendamentul 1 din 1994 la standardul
          ISO C90, care adauga un numar mare de noi func<?>ii de biblioteca C
          pentru gestionarea codurilor de caractere late <?>i multioctet, dar
          nu acopera inca ISO C99, care a imbunata<?>it <?>i mai mult suportul
          pentru caracterele late <?>i multioctet.

       o  Rapoarte tehnice Unicode.
          <http://www.unicode.org/reports/>

       o  Markus Kuhn: UTF-8 <?>i Unicode FAQ pentru UNIX/Linux.
          <http://www.cl.cam.ac.uk/~mgk25/unicode.html>

       o  Bruno Haible: Unicode HOWTO.
          <http://www.tldp.org/HOWTO/Unicode-HOWTO.html>

CONSULTA<?>I <?>I
       locale(1), setlocale(3), charsets(7), utf-8(7)

TRADUCERE
       Traducerea in limba romana a acestui manual a fost facuta de Remus-
       Gabriel Chelu <remusgabriel.chelu@disroot.org>

       Aceasta traducere este documenta<?>ie gratuita; citi<?>i Licen<?>a
       publica generala GNU Versiunea 3
       <https://www.gnu.org/licenses/gpl-3.0.html> sau o versiune ulterioara
       cu privire la condi<?>ii privind drepturile de autor.  NU se asuma
       NICIO RESPONSABILITATE.

       Daca gasi<?>i erori in traducerea acestui manual, va rugam sa
       trimite<?>i un e-mail la <translation-team-ro@lists.sourceforge.net>.

Pagini de manual de Linux 6.12 22 ianuarie 2025                     unicode(7)