plucky (7) charsets.7.gz

Provided by: manpages-ro_4.25.1-1_all bug

NUME

       charsets - standarde de seturi de caractere și internaționalizare

DESCRIERE

       Această  pagină de manual oferă o prezentare generală a diferitelor standarde de seturi de caractere și a
       modului în care acestea erau utilizate în Linux înainte ca Unicode să devină  omniprezent.  Unele  dintre
       aceste informații sunt încă utile pentru persoanele care lucrează cu sisteme și documente vechi.

       Printre standardele discutate se numără ASCII, GB 2312, ISO/IEC 8859, JIS, KOI8-R, KS și Unicode.

       Accentul  principal  este  pus  pe  seturile  de  caractere care au fost utilizate efectiv de seturile de
       caractere locale, nu pe nenumărate altele care ar putea fi găsite în datele din alte sisteme.

   ASCII
       ASCII (American Standard Code For Information Interchange) este setul original de caractere  pe  7  biți,
       conceput  inițial  pentru  limba  engleză americană. Cunoscut și sub numele de US-ASCII. În prezent, este
       descris de standardul ISO/IEC 646:1991 IRV (International Reference Version).

       Diferite variante ASCII care înlocuiesc simbolul dolarului cu alte simboluri monetare și care  înlocuiesc
       semnele  de punctuație cu caractere alfabetice non-englezești pentru a acoperi limbile germană, franceză,
       spaniolă și alte limbi apărute în 7 biți. Toate acestea sunt depreciate; glibc nu acceptă localizări  ale
       căror seturi de caractere nu sunt adevărate superseturi ale ASCII.

       Deoarece Unicode, atunci când se utilizează UTF-8, este compatibil cu ASCII, textul ASCII simplu continuă
       să fie redat corect pe sistemele moderne care utilizează UTF-8.

   ISO/IEC 8859
       ISO/IEC 8859 este o serie de 15 seturi de caractere pe  8  biți,  toate  având  ASCII  în  jumătatea  lor
       inferioară  (7  biți), caractere de control invizibile în pozițiile 128-159 și 96 de caractere grafice cu
       lățime fixă în pozițiile 160–255.

       Dintre acestea, cea mai importantă este ISO/IEC 8859-1 („Alfabetul latin nr. 1” / Latin-1). Acesta a fost
       adoptat  și  susținut pe scară largă de diferite sisteme și este înlocuit treptat cu Unicode. Caracterele
       ISO/IEC 8859-1 sunt, de asemenea, primele 256 de caractere din Unicode.

       Suportul de consolă pentru celelalte seturi de caractere ISO/IEC  8859  este  disponibil  în  Linux  prin
       intermediul  utilităților  din  modul  utilizator  (cum  ar  fi  setfont(8))  care modifică asocierile de
       tastatură și tabelul grafic EGA și utilizează tabelul de fonturi „user  mapping”  (asocierile  făcute  de
       utilizator) în controlorul de consolă.

       Iată o scurtă descriere a fiecărui set de caractere:

       ISO/IEC 8859-1 (Latin-1)
              Latin-1  acoperă  multe  limbi  europene,  cum  ar  fi  albaneză, bască, daneză, engleză, feroeză,
              galleză, islandeză, irlandeză,  italiană,  norvegiană,  portugheză,  spaniolă  și  suedeză.  Lipsa
              ligaturilor olandeză IJ/ij, franceză œ și a ghilimelelor „germane” a fost considerată tolerabilă.

       ISO/IEC 8859-2 (Latin-2)
              Latin-2  acceptă  multe  limbi din Europa Centrală și de Est scrise în latină, cum ar fi bosniacă,
              croată, cehă, germană, maghiară, poloneză, slovacă și slovenă. Înlocuirea literei românești ș/ț cu
              ș/ț a fost considerată tolerabilă.

       ISO/IEC 8859-3 (Latin-3)
              Latin-3  a  fost  conceput  pentru  a  acoperi esperanto, malteză și turcă, dar ISO/IEC 8859-9 l-a
              înlocuit mai târziu pentru turcă.

       ISO/IEC 8859-4 (Latin-4)
              Latin-4 a introdus litere pentru limbile nord-europene, cum ar fi estonă,  letonă  și  lituaniană,
              dar a fost înlocuit de ISO/IEC 8859-10 și ISO/IEC 8859-13.

       ISO/IEC 8859-5
              Litere  chirilice  care  sunt  utilizate  în limba bulgară, bielorusă, macedoneană, rusă, sârbă și
              (aproape în totalitate) ucraineană. Nu a fost  niciodată  folosit  pe  scară  largă,  a  se  vedea
              discuția despre KOI8-R/KOI8-U de mai jos.

       ISO/IEC 8859-6
              A  fost  creat  pentru  limba  arabă. Tabelul de glife ISO/IEC 8859-6 este un font fix de forme de
              litere separate, dar un motor de  afișare  adecvat  ar  trebui  să  le  combine  folosind  formele
              inițiale, medii și finale adecvate.

       ISO/IEC 8859-7
              A fost creat pentru greaca modernă în 1987, și actualizat în 2003.

       ISO/IEC 8859-8
              Acceptă ebraica modernă fără niqud (semne de punctuație). Niqud și ebraica biblică în asamblu erau
              în afara domeniului de aplicare al acestui set de caractere.

       ISO/IEC 8859-9 (Latin-5)
              Aceasta este o variantă a Latin-1 care înlocuiește literele islandeze cu cele turcești.

       ISO/IEC 8859-10 (Latin-6)
              Latin-6 a adăugat literele Inuit (groenlandeză) și Sami (laponă), care lipseau în Latin-4,  pentru
              a acoperi întreaga zonă nordică.

       ISO/IEC 8859-11
              Suportă alfabetul thailandez și este aproape identic cu standardul TIS-620.

       ISO/IEC 8859-12
              Acest set de caractere nu există.

       ISO/IEC 8859-13 (Latin-7)
              Suportă  limbile  din  bazinul  baltic;  în special, include caractere letone care nu se găsesc în
              Latin-4.

       ISO/IEC 8859-14 (Latin-8)
              Acesta este setul de caractere celtice, care acoperă  limbile  irlandeză  veche,  manxă,  gaelică,
              galeză, galeză, cornișă și bretonă.

       ISO/IEC 8859-15 (Latin-9)
              Latin-9 este similar cu Latin-1, folosit pe scară largă, dar înlocuiește unele simboluri mai puțin
              obișnuite cu semnul euro și literele franceze și finlandeze care lipseau în Latin-1.

       ISO/IEC 8859-16 (Latin-10)
              Acest set acoperă mai multe limbi din sud-estul Europei și, cel mai important, asigură  un  suport
              mai complet pentru limba română decât Latin-2.

   KOI8-R / KOI8-U
       KOI8-R  este  un  set de caractere non-ISO popular în Rusia înainte de Unicode. Jumătatea inferioară este
       ASCII, iar cea superioară este un set de caractere chirilice ceva mai bine conceput decât ISO/IEC 8859-5.
       KOI8-U,  bazat pe KOI8-R, are un suport mai bun pentru ucraineană. Nici unul dintre aceste seturi nu este
       compatibil cu ISO/IEC 2022, spre deosebire de seria ISO/IEC 8859.

       Suportul de consolă pentru KOI8-R este  disponibil  în  Linux  prin  intermediul  utilităților  în  modul
       utilizator  care  modifică asocierile de tastatură și tabelul grafic EGA și utilizează tabelul de fonturi
       „user mapping” (asocierile făcute de utilizator) în controlorul de consolă.

   GB 2312
       GB 2312 este un set de caractere standard național din  China  continentală  utilizat  pentru  a  exprima
       chineza  simplificată.  La  fel  ca în cazul JIS X 0208, caracterele sunt transpuse într-o matrice de doi
       octeți de 94x94 utilizată pentru a construi EUC-CN. EUC-CN este  cea  mai  importantă  codificare  pentru
       Linux și include ASCII și GB 2312. Rețineți că EUC-CN este adesea numit GB, GB 2312 sau CN-GB.

   Big5
       Big5  a  fost un set de caractere popular în Taiwan pentru a exprima chineza tradițională (Big5 este atât
       un set de caractere, cât și o  codificare).  Este  un  superset  al  ASCII.  Caracterele  non-ASCII  sunt
       exprimate  în doi octeți. Octeții 0xa1–0xfe sunt utilizați ca octeți de început pentru caracterele de doi
       octeți. Big5 și extensia sa au fost utilizate pe scară largă în Taiwan și Hong Kong. Nu  este  compatibil
       cu ISO/IEC 2022.

   JIS X 0208
       JIS  X 0208 este un set de caractere standard național japonez. Deși există mai multe seturi de caractere
       standard naționale japoneze (cum ar fi JIS X 0201, JIS X 0212  și  JIS  X  0213),  acesta  este  cel  mai
       important.  Caracterele sunt transpuse într-o matrice 94x94 de doi octeți, fiecare octet fiind cuprins în
       intervalul 0x21–0x7e. Rețineți că JIS X 0208 este un set de caractere, nu o codificare. Aceasta  înseamnă
       că  JIS  X  0208  nu  este  utilizat pentru a exprima date text. JIS X 0208 este utilizat ca o componentă
       pentru a construi codificări precum EUC-JP, Shift_JIS și ISO/IEC 2022-JP. EUC-JP este cea mai  importantă
       codificare  pentru Linux și include ASCII și JIS X 0208. În EUC-JP, caracterele JIS X 0208 sunt exprimate
       în doi octeți, fiecare dintre aceștia fiind codul JIS X 0208 plus 0x80.

   KS X 1001
       KS X 1001 este un set de caractere standard național coreean. La fel ca și în  JIS  X  0208,  caracterele
       sunt  transpuse  într-o  matrice  de doi octeți de 94x94. KS X 1001 este utilizat, ca și JIS X 0208, ca o
       componentă pentru a construi codificări precum EUC-KR, Johab și ISO/IEC  2022-KR.  EUC-KR  este  cea  mai
       importantă codificare pentru Linux și include ASCII și KS X 1001. KS C 5601 este un nume mai vechi pentru
       KS X 1001.

   ISO/IEC 2022 și ISO/IEC 4873
       Standardele ISO/IEC 2022 și ISO/IEC 4873 descriu un model de control  al  fonturilor  bazat  pe  practica
       VT100.  Acest  model  este (parțial) acceptat de nucleul Linux și de xterm(1). Au fost definite mai multe
       codificări de caractere bazate pe ISO/IEC 2022, în special pentru japoneză.

       Există 4 seturi de caractere grafice, denumite G0, G1, G2 și G3, iar unul dintre acestea  este  setul  de
       caractere  curent  pentru  codurile  cu  bitul  mare  zero  (inițial G0) și unul dintre ele este setul de
       caractere curent pentru codurile cu bitul mare unu (inițial G1). Fiecare set de caractere grafice are  94
       sau  96  de  caractere  și  este,  în  esență,  un set de caractere pe 7 biți. Acesta utilizează codurile
       040–0177 (041–0176) sau 0240–0377 (0241–0376). G0 are întotdeauna dimensiunea 94 și  utilizează  codurile
       041–0176.

       Trecerea  de la un set de caractere la altul se face cu ajutorul funcțiilor de deplasare ^N (SO sau LS1),
       ^O (SI sau LS0), ESC n (LS2), ESC o (LS3), ESC N (SS2), ESC O (SS3), ESC ~ (LS1R), ESC }  (LS2R),  ESC  |
       (LS3R).  Funcția  LSn face ca setul de caractere Gn să fie cel curent pentru codurile cu bitul mare zero.
       Funcția LSnR face ca setul de caractere Gn să fie cel curent pentru codurile cu bitul 1 mare. Funcția SSn
       face  ca  setul de caractere Gn (n=2 sau 3) să fie cel curent numai pentru următorul caracter (indiferent
       de valoarea bitului de ordin înalt al acestuia).

       Un set de 94 de caractere este desemnat ca set de caractere Gn printr-o secvență  de  eludare  ESC  (  xx
       (pentru G0), ESC ) xx (pentru G1), ESC * xx (pentru G2), ESC + xx (pentru G3), unde xx este un simbol sau
       o pereche de simboluri din Registrul internațional al seturilor de caractere codificate ISO/IEC 2375.  De
       exemplu,  ESC  ( @ selectează setul de caractere ISO/IEC 646 ca G0, ESC ( A selectează setul de caractere
       standard din Marea Britanie (cu lira sterlină în loc de simbolul monetar), ESC ( B selectează  ASCII  (cu
       dolarul  în loc de simbolul monetar), ESC ( M selectează un set de caractere pentru limbile africane, ESC
       ( ! A selectează setul de caractere cubanez, și așa mai departe.

       Un set de 96 de caractere este desemnat ca set de caractere Gn printr-o secvență  de  eludare  ESC  -  xx
       (pentru  G1),  ESC  .  xx  (pentru G2) sau ESC / xx (pentru G3). De exemplu, ESC - G selectează alfabetul
       ebraic ca fiind G1.

       Un set de caractere multiocteți este desemnat ca set de caractere Gn printr-o secvență de eludare  ESC  $
       xx sau ESC $ ( xx (pentru G0), ESC $ ) xx (pentru G1), ESC $ * xx (pentru G2), ESC $ + xx (pentru G3). De
       exemplu, ESC $ ( C selectează setul de caractere coreene pentru G0. Setul de caractere japoneze  selectat
       prin ESC $ B are o versiune mai recentă selectată prin ESC & @ ESC $ B.

       ISO/IEC  4873  stipulează  o  utilizare  mai  restrânsă  a  seturilor  de  caractere, în care G0 este fix
       (întotdeauna ASCII), astfel încât G1, G2 și G3 pot fi invocate numai pentru codurile cu  bitul  de  ordin
       înalt  activat. În special, ^N și ^O nu mai sunt utilizate, ESC ( xx poate fi utilizat numai cu xx=B, iar
       ESC ) xx, ESC * xx, ESC + xx sunt echivalente cu ESC - xx, ESC . xx, ESC / xx, respectiv ESC / xx.

   TIS-620
       TIS-620 este un set de caractere standard național thailandez și un superset al ASCII. În același mod  ca
       și în cazul seriei ISO/IEC 8859, caracterele thailandeze sunt transpuse în intervalul 0xa1–0xfe.

   Unicode
       Unicode  (ISO/IEC  10646)  este  un  standard  care are ca scop reprezentarea fără ambiguitate a fiecărui
       caracter din fiecare limbă umană. Structura Unicode permite codificarea fiecărui caracter pe  20,1  biți.
       Deoarece  majoritatea  calculatoarelor  nu  includ  numere  întregi  pe 20,1 biți, Unicode este de obicei
       codificat ca numere întregi pe 32 de biți la nivel intern și fie ca o serie de numere întregi pe 16  biți
       (UTF-16)  (având nevoie de două serii de numere întregi pe 16 biți doar la codificarea anumitor caractere
       rare), fie ca o serie de octeți pe 8 biți (UTF-8).

       Linux reprezintă Unicode utilizând formatul de transformare Unicode pe  8  biți  (UTF-8).  UTF-8  este  o
       codificare  cu  lungime variabilă a Unicode. Acesta utilizează 1 octet pentru a codifica 7 biți, 2 octeți
       pentru 11 biți, 3 octeți pentru 16 biți, 4 octeți pentru 21 de biți, 5 octeți pentru 26 de biți, 6 octeți
       pentru 31 de biți.

       Fie  că  0,1,x reprezintă un zero, unu sau un bit arbitrar. Un octet 0xxxxxxx reprezintă Unicode 00000000
       0xxxxxxx, care codifică același simbol ca și ASCII 0xxxxxxx. Astfel, ASCII rămâne  neschimbat  în  UTF-8,
       iar  persoanele  care  folosesc  doar  ASCII nu observă nicio schimbare: nici în cod, nici în dimensiunea
       fișierului.

       Un octet 110xxxxx este începutul unui cod de 2 octeți, iar 110xxxxx 10yyyyyyyy este asamblat în  00000xxx
       xxyyyyyyy.  Un  octet  1110xxxx  reprezintă  începutul  unui  cod  de 3 octeți, iar 1110xxxx 10yyyyyyyyyy
       10zzzzzzzz este asamblat în xxxxyyyyyy yyzzzzzzzzzz. Atunci când se utilizează UTF-8  pentru  a  codifica
       ISO/IEC 10646 pe 31 de biți, această progresie continuă până la coduri de 6 octeți.

       Pentru majoritatea textelor din seturile de caractere ISO 8859, acest lucru înseamnă că toate caracterele
       din afara ASCII sunt acum codificate cu doi octeți. Acest  lucru  tinde  să  extindă  fișierele  de  text
       obișnuite  cu  doar  unul  sau  două  procente.  În  cazul textelor în rusă sau greacă, fișierele de text
       obișnuite se măresc cu 100%, deoarece textele din aceste limbi sunt în mare parte în afara ASCII.  Pentru
       utilizatorii  japonezi,  acest lucru înseamnă că codurile pe 16 biți utilizate în prezent în mod obișnuit
       vor necesita trei octeți. Deși există conversii algoritmice de la unele seturi de caractere  (în  special
       ISO/IEC  8859-1) la Unicode, conversia generală necesită utilizarea unor tabele de conversie, care pot fi
       destul de mari pentru codurile pe 16 biți.

       Rețineți că UTF-8 se autosincronizează: 10xxxxxx este o coadă, orice  alt  octet  este  capul  unui  cod.
       Rețineți  că  singurul  mod  în  care  apar octeți ASCII într-un flux UTF-8 este ca atare. În special, nu
       există NUL-uri încorporate („\0”) sau „/” care fac parte dintr-un cod mai mare.

       Deoarece ASCII și, în special, NUL și '/', sunt neschimbate, nucleul nu observă că se  utilizează  UTF-8.
       Nu-i pasă deloc ce reprezintă octeții pe care îi manipulează.

       Redarea  fluxurilor  de date Unicode este de obicei gestionată prin intermediul tabelelor de „subfonturi”
       care transpun un subset de Unicode în glife. La nivel intern, nucleul utilizează Unicode pentru a descrie
       subfontul încărcat în memoria RAM video. Acest lucru înseamnă că în consola Linux în modul UTF-8 se poate
       utiliza un set de caractere cu 512 simboluri diferite. Acest lucru nu  este  suficient  pentru  japoneză,
       chineză și coreeană, dar este suficient pentru majoritatea celorlalte scopuri.

CONSULTAȚI ȘI

       iconv(1), ascii(7), iso_8859-1(7), unicode(7), utf-8(7)

TRADUCERE

       Traducerea    în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel   Chelu
       <remusgabriel.chelu@disroot.org>

       Această  traducere  este  documentație  gratuită;  citiți  Licența  publică  generală  GNU  Versiunea   3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  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⟩.