Provided by: manpages-ro_4.21.0-2_all bug

NUME

       unicode - set de caractere universal

DESCRIERE

       Standardul  internațional  ISO  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,
       garantează „compatibilitatea dus-întors”; cu alte cuvinte, tabelele de conversie pot fi construite astfel
       încât  să  nu  se  piardă  nicio informație atunci când un șir de caractere este convertit din orice altă
       codificare în 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,
       Tibetană, Runic, Etiopiană, Silabică canadiană, Cherokee, Mongolă, Ogham, Myanmar, Sinhala, Thaana, Yi și
       altele.  În ceea ce privește scripturile care nu sunt încă acoperite, cercetările privind  cea  mai  bună
       codificare a acestora pentru utilizarea pe calculator sunt încă în curs de desfășurare și vor fi adăugate
       în  cele  din  urmă.   Acestea  ar  putea  include  în cele din urmă nu numai hieroglife și diverse limbi
       indo-europene istorice, ci chiar și unele scripturi artistice selectate, cum  ar  fi  Tengwar,  Cirth  și
       Klingon.   UCS  acoperă,  de  asemenea,  un  număr  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 în curs de adăugare.

       Standardul UCS (ISO 10646) descrie o arhitectură a setului de caractere pe 31 de biți care constă din 128
       de grupuri pe 24 de biți, fiecare fiind împărțit în 256 de planuri pe  16  biți,  alcătuite  din  256  de
       rânduri  pe  8 biți cu 256 de poziții coloană, una pentru fiecare caracter.  Partea 1 a standardului (ISO
       10646-1) definește primele 65534 de poziții de cod  (de  la  0x0000  la  0xfffd),  care  formează  Planul
       multilingvistic  de  bază  („Basic  Multilingual  Plane”:  BMP), adică planul 0 din grupul 0.  Partea 2 a
       standardului (ISO 10646-2) adaugă caractere la grupul 0 în afară de BMP în mai multe planuri suplimentare
       în intervalul 0x10000 - 0x10ffff.  Nu există planuri de adăugare a caracterelor dincolo  de  0x10ffff  la
       standard,  prin  urmare,  din  întregul  spațiu de cod, doar o mică parte din grupul 0 va fi utilizată în
       viitorul apropiat. BMP conține toate  caracterele  care  se  găsesc  în  celelalte  seturi  de  caractere
       utilizate  în  mod obișnuit.  Planurile suplimentare adăugate de ISO 10646-2 acoperă doar caracterele mai
       exotice pentru nevoi  speciale  în  domeniul  științific,  al  imprimării  dicționarelor,  al  industriei
       editoriale, al protocoalelor de nivel superior și al entuziaștilor.

       Reprezentarea  fiecărui  caracter  UCS  sub  forma  unui cuvânt de 2 octeți se numește forma UCS-2 (numai
       pentru caracterele BMP), în timp ce UCS-4 este reprezentarea fiecărui caracter sub forma unui cuvânt de 4
       octeți.  În plus, există două forme  de  codificare:  UTF-8  pentru  compatibilitatea  cu  programele  de
       procesare ASCII și UTF-16 pentru gestionarea retro-compatibilă a caracterelor non-BMP până la 0x10ffff de
       către 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 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  fără  spațiere  de pe o mașină de scris.  O combinație de caractere nu face decât să
       adauge un accent la caracterul anterior.  Cele mai importante caractere accentuate au coduri  proprii  în
       UCS,  însă  mecanismul de combinare a caracterelor ne permite să adăugăm accente și alte semne diacritice
       la orice caracter.  Un caracter de combinare nu face decât să adauge un accent  la  caracterul  anterior.
       Cele  mai  importante  caractere  accentuate  au  coduri  proprii  în UCS, însă mecanismul de combinare a
       caracterelor ne permite să adăugăm accente și alte semne diacritice la orice  caracter.   Caracterele  de
       combinare  urmează  întotdeauna  caracterul  pe care îl modifică.  De exemplu, caracterul german Umlaut-A
       („Litera majusculă latină A cu diereză”) poate fi reprezentat fie prin codul UCS precompus 0x00c4, fie ca
       o combinație de „Litera majusculă latină A” normală urmată de o „diereză combinatorie”: 0x0041 0x0308.

       Combinarea caracterelor este esențială, de exemplu, pentru codificarea scriptului thailandez  sau  pentru
       compunerea matematică și utilizatorii alfabetului fonetic internațional.

   Niveluri de implementare
       Deoarece  nu  se  așteaptă  ca  toate  sistemele  să  accepte  mecanisme  avansate,  cum ar fi combinarea
       caracterelor, ISO 10646-1 specifică următoarele trei niveluri de implementare ale UCS:

       Nivelul 1
                Caracterele combinate și Hangul Jamo (o variantă de codificare a alfabetului coreean, în care  o
                pictogramă  de  silabă  Hangul  este  codificată  ca  un  triplet  sau  o  pereche  de coduri de
                vocale/consonante) nu sunt acceptate.

       Nivelul 2
                În plus față de nivelul 1, acum sunt permise combinații de caractere pentru unele limbi în  care
                acestea sunt esențiale (de exemplu, thailandeză, lao, ebraică, arabă, devanagari, malaieziană).

       Nivelul 3
                Sunt acceptate toate caracterele UCS.

       Standardul Unicode 3.0 publicat de Consorțiul Unicode conține exact planul multilingvistic de bază UCS la
       nivelul  de  implementare  3,  așa cum este descris în ISO 10646-1:2000.  Unicode 3.1 a adăugat planurile
       suplimentare din ISO 10646-2.  Standardul Unicode și rapoartele tehnice publicate de  Consorțiul  Unicode
       oferă  numeroase  informații  suplimentare  privind  semantica  și utilizările recomandate pentru diverse
       caractere.  Acestea oferă orientări și algoritmi pentru  editarea,  sortarea,  compararea,  normalizarea,
       conversia și afișarea șirurilor Unicode.

   Unicode în Linux
       În  GNU/Linux,  tipul  C  wchar_t este un tip de număr întreg cu semn (+/-) pe 32 de biți.  Valorile sale
       sunt întotdeauna interpretate de biblioteca C ca valori de cod UCS  (în  toate  localizările),  convenție
       care  este  semnalată de biblioteca C GNU C aplicațiilor prin definirea constantei __STDC_ISO_10646__ așa
       cum este specificată în standardul ISO C99.

       UCS/Unicode poate fi utilizat la fel ca  ASCII  în  fluxurile  de  intrare/ieșire,  în  comunicarea  prin
       terminal,  în  fișierele  de  text simplu, în numele fișierelor și în variabilele de mediu în codificarea
       multiocteți UTF-8 compatibilă cu ASCII.  Pentru  a  semnala  tuturor  aplicațiilor  utilizarea  UTF-8  ca
       codificare  a  caracterelor,  trebuie  să  se  selecteze  o  configurare regională adecvată (locale) prin
       intermediul variabilelor de mediu (de exemplu, „LANG=en_GB.UTF-8”).

       Funcția nl_langinfo(CODESET) returnează numele codificării selectate.  Funcțiile de bibliotecă, cum ar fi
       wctomb(3) și mbsrtowcs(3), pot fi utilizate pentru a transforma caracterele și șirurile  interne  wchar_t
       în  codificarea  caracterelor  de  sistem și invers, iar wcwidth(3) informează cu câte poziții (0–2) este
       avansat cursorul prin ieșirea unui caracter.

   Zone de utilizare privată („Private Use Areas”: PUA)
       În planul multilingvistic de bază, intervalul de la 0xe000 la 0xf8ff nu va fi niciodată atribuit niciunui
       caracter de către standard și este rezervat pentru uz privat.  Pentru  comunitatea  Linux,  această  zonă
       privată a fost subdivizată în continuare în intervalul 0xe000 - 0xefff, care poate fi utilizat individual
       de  orice  utilizator  final,  și  în  zona  Linux  din  intervalul 0xf000 - 0xf8ff, unde extensiile sunt
       coordonate între toți utilizatorii Linux.  Registrul caracterelor atribuite zonei Linux este menținut  de
       LANANA,  iar  registrul propriu-zis este Documentation/admin-guide/unicode.rst în sursele nucleului Linux
       (sau Documentation/unicode.txt înainte de Linux 4.10).

       Alte două planuri sunt rezervate pentru uz privat, planul 15 (Zona suplimentară de  utilizare  privată-A,
       intervalul  de  la 0xf0000 la 0xffffd) și planul 16 (Zona suplimentară de utilizare privată-B, intervalul
       de la 0x100000 la 0x10fffd).

   Literatură
       •  Tehnologia informației — Set universal de caractere codificate cu octeți multipli (UCS)  —  Partea  1:
          Arhitectura  și planul multilingvistic de bază.  Standardul internațional ISO/IEC 10646-1, Organizația
          Internațională pentru Standardizare, Geneva, 2000.

          Aceasta este specificația oficială a UCS.  Disponibilă la http://www.iso.ch/.

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

       •  S.  Harbison,  G.  Steele. C: Un manual de referință. A patra ediție, Prentice Hall, Englewood Cliffs,
          1995, ISBN 0-13-326224-3.

          O bună carte de referință despre limbajul de programare C.  Cea de-a patra ediție acoperă amendamentul
          1 din 1994 la standardul ISO C90, care adaugă un număr mare de noi  funcții  de  bibliotecă  C  pentru
          gestionarea codurilor de caractere late și multioctet, dar nu acoperă încă ISO C99, care a îmbunătățit
          și mai mult suportul pentru caracterele late și multioctet.

       •  Rapoarte tehnice Unicode.
          http://www.unicode.org/reports/

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

       •  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    în   limba   română   a   acestui   manual   a   fost   creată   de   Remus-Gabriel   Chelu
       <remusgabriel.chelu@disroot.org>

       Această traducere este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3  sau  o
       versiune   ulterioară   cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se  asumă  Nicio
       RESPONSABILITATE.

       Dacă găsiți erori în traducerea acestui manual, vă rugăm să  trimiteți  un  e-mail  la  translation-team-
       ro@lists.sourceforge.net.

Pagini de manual de Linux 6.03                  5 februarie 2023                                      unicode(7)