Provided by: manpages-fr_4.26.0-1_all bug

NOM

       Unicode - Jeu de caractères universel

DESCRIPTION

       La norme internationale ISO/IEC 10646 définit le jeu de caractères universel (UCS). UCS contient tous les
       caractères  de  tous  les  autres normes de jeux de caractères. Il garantit également une « compatibilité
       circulaire », ce qui signifie que les tables de conversions peuvent être  construites  de  manière  à  ne
       perdre  aucune  information  quand  une  chaîne  de caractères est convertie dans un autre encodage, puis
       reconvertie en sens inverse.

       UCS contient les caractères nécessaires pour représenter presque toutes les langues  connues.  Il  inclut
       non  seulement les alphabets latin, grec, cyrillique, hébreu, arabe, arménien et géorgien, mais également
       les  idéogrammes  chinois,  japonais,  sino-coréens  et  les  écritures  :  hiragana,  katakana,  hangûl,
       dévanâgarî,  bengali, gourmoukhî, goudjarati, oriya, tamoul, télougou, kannara, malayalam, thaï, laotien,
       khmer, bopomofo, tibétain, runes,  éthiopien,  syllabaires  canadiens,  chérokî,  mongol,  ogam,  birman,
       cingalais,  thâna, yi, et d'autres. Pour les écritures qui n'ont pas encore été intégrées, des recherches
       sont en cours pour optimiser l’encodage et elles seront probablement ajoutées. Cela inclut non  seulement
       des  hiéroglyphes et des langues indo-européennes historiques, mais aussi des écritures artistiques comme
       les tengwar de Fëanor, les cirth ou le klingon. UCS  contient  également  un  grand  nombre  de  symboles
       graphiques,  typographiques,  mathématiques et scientifiques comme ceux fournis par TeX, PostScript, APL,
       MS-DOS, MS-Windows, Macintosh, les polices OCR et par  de  nombreux  traitements  de  texte  et  systèmes
       d'édition, et de plus en plus sont ajoutés.

       La  norme  UCS  (ISO/IEC  10646)  décrit  un  jeu de caractères sur 31 bits, constitué de 128 groupes sur
       24 bits, chacun d'eux divisés en 256 plans sur 16 bits, composés de 256  rangées  de  8  bits,  avec  256
       positions  en  colonne  contenant  chacune un caractère. La première partie de la norme (ISO/IEC 10646-1)
       définit les 65 534 premiers codes (0x0000 à 0xFFFD) qui  forment  le  plan  multilingue  de  base  (PMB),
       c'est-à-dire  le  plan  0 du groupe 0. La partie 2 de la norme (ISO/IEC 10646-2) ajoute des caractères au
       groupe 0 en dehors du PMB, dans plusieurs plans supplémentaires de l'espace 0x10000  à  0x10ffff.  On  ne
       prévoit  pas  d'ajouter  à  la norme des caractères au-delà de 0x10ffff. Ainsi sur l'ensemble de l'espace
       disponible, une faible fraction du groupe 0 ne sera effectivement utilisée dans un futur proche.  Le  PMB
       contient tous les caractères des jeux habituels. Les plans supplémentaires ajoutés par ISO/IEC 10646-2 ne
       contiennent  que  des caractères exotiques pour des notations scientifiques spéciales, des impressions de
       dictionnaires, l'industrie de l'impression, des protocoles de plus haut niveau et les besoins de quelques
       enthousiastes.

       La représentation des caractères UCS sur des mots de 2 octets  est  appelée  UCS-2  (seulement  pour  les
       caractères du BMP), alors que UCS-4 est la représentation des caractères par un mot de 4 octets. De plus,
       il  existe  deux formes d’encodage : UTF-8 pour la rétrocompatibilité avec les logiciels traitant l'ASCII
       et UTF-16 pour la gestion rétrocompatible des caractères non  PMB  jusqu'à  0x10ffff  par  des  logiciels
       UCS-2.

       Les  caractères  UCS  0x0000  à  0x007f  sont  identiques  à  ceux  du jeu classique US-ASCII, et ceux de
       l'intervalle 0x0000 à 0x00ff sont identiques à ceux du jeu de caractères ISO/IEC 8859-1 (latin-1).

   Caractères composés
       Quelques codes de l'UCS ont été assignés à des caractères  composés.  Ils  sont  semblables  aux  touches
       mortes  d'accents  sur  les  machines  à  écrire. Un caractère composé ajoute simplement un accent sur le
       caractère précédent. Les caractères accentués les plus  importants  ont  leur  propre  code  dans  l'UCS.
       Cependant,  le  mécanisme des caractères composés permet d'ajouter des accents ou des signes diacritiques
       sur n'importe quel caractère de base. Les  caractères  composés  suivent  toujours  le  caractère  qu'ils
       modifient.  Par exemple, le caractère « À » (lettre majuscule latine A accent grave) peut être représenté
       soit par le code UCS précomposé 0x00C0, soit par la combinaison  d'un  A  majuscule  normal,  suivi  d'un
       « diacritique accent grave », 0x0041 0x0308.

       Les  caractères  composés  sont  essentiels  par  exemple pour l’encodage de l'écriture thaïe ou pour les
       notations mathématiques et l'alphabet phonétique international.

   Niveaux d'implémentation
       Comme tous les systèmes ne sont pas censés gérer les mécanismes avancés comme  les  caractères  composés,
       ISO/IEC 10646-1 spécifie les trois niveaux d'implémentation suivants pour l'UCS :

       Niveau 1 Les  caractères  composés  et  les  caractères  jamos  hangûl (un encodage spécial de l'écriture
                coréenne, où les glyphes de syllabes hangûl sont  encodés  par  2  ou  3  codes  de  voyelle  ou
                consonne) ne sont pas pris en charge.

       Niveau 2 Outre  le niveau 1, les caractères composés sont maintenant permis pour certaines langues où ils
                sont essentiels (par exemple, le thaï, le  laotien,  l'hébreu,  l'arabe,  le  dévanâgarî  ou  le
                malayalam).

       Niveau 3 Tous les caractères UCS sont gérés.

       La  norme  Unicode  3.0 publiée par le Consortium Unicode contient exactement le plan multilingue de base
       UCS au niveau 3 de l’implémentation, comme décrit dans la norme ISO/IEC 10646-1:2000. Unicode 3.1  ajoute
       les  plans  supplémentaires de l'ISO/IEC 10646-2. La norme Unicode et les rapports techniques publiés par
       le Consortium Unicode fournissent beaucoup de renseignements supplémentaires sur  la  sémantique  et  les
       recommandations  d’utilisation  de  nombreux  caractères. Elles fournissent des guides et des algorithmes
       pour éditer, trier, comparer, normaliser, convertir et afficher des chaînes Unicode.

   Unicode sous Linux
       Sous GNU/Linux, le type C wchar_t est un entier 32 bits signé, et sa valeur est toujours interprétée  par
       la  bibliothèque C comme un code UCS (dans tous les paramètres régionaux), une convention signalée par la
       bibliothèque C de GNU pour les applications en définissant la constante __STDC_ISO_10646__ comme indiquée
       dans la norme ISO C99.

       L'UCS/Unicode peut être employé comme l'ASCII dans les flux d'entrée-sortie, les communications avec  les
       terminaux,  les  fichiers  textes,  les noms de fichier et les variables d'environnement dans un encodage
       multioctet UTF-8 compatible ASCII. Pour signaler l'utilisation de l'UTF-8 comme encodage pour toutes  les
       applications,  des  paramètres  régionaux  (locale)  adéquats  doivent être configurés dans les variables
       d'environnement (par exemple, « LANG=fr_FR.UTF-8 »).

       La fonction nl_langinfo(CODESET) renvoie le nom de l’encodage sélectionné. Les fonctions de  bibliothèque
       comme  wctomb(3)  et mbsrtowcs(3) peuvent être utilisées pour transformer les caractères internes wchar_t
       et les chaînes dans le jeu de caractères du système et inversement. La  fonction  wcwidth(3)  indique  de
       combien de positions (0–2) le curseur a été avancé en affichant un caractère.

   Zone d'utilisation privée (PUA ou « Private Use Areas »)
       L'intervalle  entre  0xe000  et 0xf8ff du plan multilingue de base (« Basic Multilingual Plane ») ne sera
       jamais assigné a aucun caractère par la norme et  est  réservé  pour  une  utilisation  privée.  Pour  la
       communauté  Linux, cette zone privée a été divisée en deux. L'intervalle entre 0xe000 et 0xefff peut être
       utilisé individuellement par n'importe quel utilisateur final. L'intervalle s'étendant de 0xf000 à 0xf8ff
       est réservé à Linux et les extensions  y  sont  coordonnées  entre  les  divers  utilisateurs  de  Linux.
       L'enregistrement  des caractères assignés à la zone Linux est maintenu par LANANA et le registre lui-même
       est  disponible  dans  les  sources  du  noyau  Linux  sous   Documentation/admin-guide/unicode.rst   (ou
       Documentation/unicode.txt avant Linux 4.10).

       Deux  autres  plans  sont réservés à un usage privé. Le plan 15 (zone d'utilisation privée supplémentaire
       PUA-A,  intervalle  0xf0000-0xffffd)  et  le  plan  16  (zone  d'utilisation  privée  PUA-B,   intervalle
       0x100000-0x10fffd).

   Littérature
       -  Information technology — Universal Multiple-Octet Coded Character Set (UCS) — Part 1: Architecture and
          Basic  Multilingual  Plane.  International  Standard  ISO/IEC  10646-1, International Organization for
          Standardization, Geneva, 2000.

          Il s'agit des spécifications officielles de l'UCS. Disponible sur http://www.iso.ch/.

       -  The Unicode Standard, Version 3.0. The Unicode Consortium, Addison-Wesley,  Reading,  MA,  2000,  ISBN
          0-201-61633-5.

       -  S.  Harbison,  G.  Steele. C : A Reference Manual. Quatrième edition, Prentice Hall, Englewood Cliffs,
          1995, ISBN 0-13-326224-3.

          Un bon livre de référence sur le langage de programmation C. La quatrième  édition  couvre  maintenant
          l'amendement  1  de 1994 à la norme ISO C90, qui ajoute un grand nombre de fonctions de bibliothèque C
          pour manipuler les jeux de caractères larges et multioctets, mais ne couvre pas encore l'ISO C99,  qui
          améliore encore plus la gestion des caractères larges et multioctets.

       -  Unicode Technical Reports.
          http://www.unicode.org/reports/

       -  Markus Kuhn : UTF-8 and Unicode FAQ for UNIX/Linux.
          http://www.cl.cam.ac.uk/~mgk25/unicode.html

       -  Bruno Haible : Unicode HOWTO.
          http://guidespratiques.traduc.org/lecture/Unicode-HOWTO.html

VOIR AUSSI

       locale(1), setlocale(3), charsets(7), utf-8(7)

TRADUCTION

       La   traduction   française   de   cette   page   de   manuel   a   été   créée   par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>,  François  Micaux,  Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,      Thomas      Huriaux      <thomas.huriaux@gmail.com>,     Nicolas     François
       <nicolas.francois@centraliens.net>,    Florentin    Duneau    <fduneau@gmail.com>,     Simon     Paillard
       <simon.paillard@resel.enst-bretagne.fr>,     Denis    Barbier    <barbier@debian.org>,    David    Prévot
       <david@tilapin.org> et Grégoire Scano <gregoire.scano@malloc.fr>

       Cette traduction est une documentation libre ; veuillez vous  reporter  à  la  GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si  vous  découvrez  un  bogue  dans la traduction de cette page de manuel, veuillez envoyer un message à
       debian-l10n-french@lists.debian.org.

Pages du manuel de Linux 6.9.1                     2 mai 2024                                         unicode(7)