Glossaire Unicode

150 termes Unicode essentiels expliqués — des fondamentaux de l'encodage des caractères aux concepts de sécurité.

Encodage (17)

ASCII

Code standard américain pour l'échange d'information. Encodage sur 7 bits couvrant 128 caractères (0–127) : caractères de contrôle, chiffres, lettres …

ASCII Art

Visual art created from text characters, originally limited to the 95 printable ASCII characters. Unicode expands the palette with box-drawing …

Base64

Binary-to-text encoding that represents binary data using 64 ASCII characters (A–Z, a–z, 0–9, +, /). Used for embedding binary data …

Big5

Encodage de caractères chinois traditionnels utilisé principalement à Taïwan et à Hong Kong, codant environ 13 000 caractères CJK.

EBCDIC

Code étendu d'échange décimal codé en binaire. Encodage pour mainframes IBM avec des plages de lettres non contiguës, encore utilisé …

Encodage de caractères

Système qui associe des caractères à des séquences d'octets pour le stockage et la transmission numérique. Tout fichier texte possède …

EUC-KR

Encodage de caractères coréens basé sur KS X 1001, associant les syllabes Hangul et les Hanja à des séquences de …

GB2312 / GB18030

Famille d'encodages pour le chinois simplifié : GB2312 (6 763 caractères) a évolué vers GBK puis GB18030, la norme nationale …

ISO 8859

Famille d'encodages monooctet sur 8 bits pour différents groupes linguistiques. ISO 8859-1 (Latin-1) a servi de base aux 256 premiers …

Jeu de caractères IANA

Registre officiel des noms d'encodage de caractères maintenu par l'IANA, utilisé dans les en-têtes HTTP Content-Type et MIME (par ex. …

Marque d'ordre des octets

U+FEFF placé au début d'un flux de texte pour indiquer l'ordre des octets et l'encodage. Essentiel pour UTF-16/32, optionnel et …

Shift JIS

Encodage de caractères japonais combinant ASCII/JIS Roman sur un octet avec les kanji JIS X 0208 sur deux octets. Encore …

UCS-2

Encodage obsolète à longueur fixe de 2 octets couvrant uniquement le BMP (U+0000–U+FFFF). Prédécesseur de UTF-16 qui ne peut pas …

UTF-16

Encodage Unicode à longueur variable utilisant 2 ou 4 octets (1 ou 2 unités de code de 16 bits). Utilisé …

UTF-32

Encodage Unicode à longueur fixe utilisant exactement 4 octets par caractère. Simple mais peu économe en espace ; utilisé en …

UTF-8

Encodage Unicode à longueur variable utilisant 1 à 4 octets par caractère. L'encodage dominant du web (98 %+ des sites) …

Windows-1252

Surensemble de ISO 8859-1 par Microsoft, ajoutant des guillemets typographiques, le tiret em et le signe euro dans la plage …

Norme Unicode (25)

Basic Multilingual Plane (BMP)

Plan 0 (U+0000–U+FFFF), contenant les caractères les plus courants : latin, grec, cyrillique, CJK, arabe et la plupart des symboles. …

Caractère abstrait

Unité d'information utilisée pour organiser, contrôler ou représenter des données textuelles — l'entité conceptuelle avant qu'elle ne reçoive un point …

Caractère affecté

Point de code auquel un caractère a été attribué dans une version Unicode. Depuis Unicode 16.0, 154 998 points de …

CJK

Chinois, Japonais et Coréen — le terme collectif pour le bloc des idéogrammes Han unifiés et les écritures associées dans …

Consortium Unicode

Organisation à but non lucratif qui développe et maintient le standard Unicode. Ses membres comprennent Apple, Google, Microsoft, Meta et …

Espace de code

La plage complète des points de code Unicode possibles : U+0000 à U+10FFFF (1 114 112 au total), divisée en …

Han Unification

The process of mapping Chinese, Japanese, and Korean ideographs that share a common historical origin to a single Unicode code …

Hangul Jamo

The individual consonant and vowel components (jamo) of the Korean Hangul writing system. Unicode encodes both precomposed Hangul syllables (U+AC00–U+D7A3) …

ISO 10646 / Universal Character Set

Norme internationale (ISO/IEC 10646) synchronisée avec Unicode, définissant le même répertoire de caractères et les mêmes points de code, mais …

Non-caractère

Points de code définitivement réservés à un usage interne (66 au total) : U+FDD0–U+FDEF et U+nFFFE/U+nFFFF pour chaque plan. Valides …

Plan

Un bloc contigu de 65 536 points de code. Unicode compte 17 plans (0–16) : le plan 0 est le …

Plan supplémentaire

Plans 1 à 16 (U+10000–U+10FFFF), contenant les emoji, les écritures historiques, les extensions CJK et la notation musicale. Nécessite des …

Point de code

Valeur numérique dans l'espace de codes Unicode (U+0000 à U+10FFFF), écrite sous la forme U+XXXX. Tous les points de code …

Point de code non affecté

Point de code non encore assigné à un caractère dans aucune version Unicode, catégorisé comme Cn (Non assigné). Peut être …

Point de code réservé

Point de code mis de côté pour une future normalisation, distinct des non-caractères (réservés de façon permanente) et des zones …

Politique de stabilité Unicode

Garantie qu'une fois un caractère assigné, son point de code et son nom ne changent jamais. Les propriétés peuvent être …

Substitut

Points de code U+D800–U+DFFF réservés exclusivement aux paires de substitution UTF-16. Ce ne sont pas des valeurs scalaires Unicode valides …

Unicode

Norme universelle d'encodage de caractères attribuant un numéro unique (point de code) à chaque caractère de tous les systèmes d'écriture. …

Unicode Character Database (UCD)

Collection de fichiers de données lisibles par machine définissant toutes les propriétés des caractères Unicode, notamment UnicodeData.txt, Blocks.txt, Scripts.txt et …

Unicode Standard Annex (UAX)

Normative or informative documents that are integral parts of the Unicode Standard. UAX#9 (Bidi Algorithm), UAX#11 (East Asian Width), UAX#15 …

Unicode Technical Report (UTR)

Informational documents published by the Unicode Consortium covering specific topics like security mechanisms (UTR#39), text segmentation (UTR#29), and line breaking …

Unité de code

L'unité minimale d'encodage : un octet de 8 bits en UTF-8, un mot de 16 bits en UTF-16, un mot …

Valeur scalaire Unicode

Tout point de code à l'exception des substituts (U+D800–U+DFFF). L'ensemble valide des valeurs pouvant représenter de vrais caractères, soit 1 …

Version Unicode

Versions majeures du standard Unicode, chacune ajoutant de nouveaux caractères, scripts et fonctionnalités. La version actuelle est Unicode 16.0 (septembre …

Zone à usage privé

Plages réservées où les organisations peuvent définir leurs propres caractères : PUA du BMP (U+E000–U+F8FF) ainsi que des PUA supplémentaires …

Propriétés (19)

Alias de nom

Noms alternatifs pour les caractères, les noms Unicode ne pouvant pas changer selon la politique de stabilité. Utilisés pour les …

Bloc

Plage contiguë nommée de points de code (par ex. Basic Latin = U+0000–U+007F). Unicode 16.0 définit 336 blocs ; chaque …

Catégorie bidirectionnelle

Propriété déterminant le comportement d'un caractère dans un texte bidirectionnel (LTR, RTL, faible, neutre). Utilisée par l'algorithme bidirectionnel Unicode pour …

Catégorie générale

Classification de chaque point de code dans l'une des 30 catégories (Lu, Ll, Nd, So, etc.) regroupées en 7 classes …

Classe de combinaison

Valeur numérique (0–254) contrôlant l'ordre des marques combinantes lors de la décomposition canonique, déterminant quelles marques peuvent être réordonnées.

Correspondance de casse

Règles de conversion des caractères entre majuscules, minuscules et casse de titre. Peut dépendre de la locale (problème du I …

Décomposition

La décomposition d'un caractère en ses éléments constitutifs. La décomposition canonique préserve le sens (é → e + ́) ; …

East Asian Width

Unicode property (UAX#11) classifying characters as Narrow, Wide, Fullwidth, Halfwidth, Ambiguous, or Neutral. Wide characters (CJK ideographs, katakana) occupy two …

Grappe de graphèmes

Le « caractère » perçu par l'utilisateur — ce qui ressemble à une seule unité. Peut se composer de plusieurs …

Ignorable par défaut

Caractères ne devant avoir aucun effet visible et pouvant être ignorés par les processus qui ne les prennent pas en …

Joining Type

Unicode property controlling how Arabic and Syriac characters connect to adjacent characters. Types include Right_Joining, Left_Joining, Dual_Joining, and Non_Joining.

Ponctuation

Caractères utilisés pour organiser et clarifier le langage écrit : points, virgules, tirets, guillemets et plus. La catégorie générale P …

Propriété de version

La version Unicode dans laquelle un caractère a été assigné pour la première fois. Utile pour déterminer la compatibilité d'un …

Propriété miroir

Caractères dont le glyphe doit être inversé horizontalement dans un contexte RTL. Exemples : ( → ), [ → ], …

Script Extensions

Unicode property listing all scripts that use a character, broader than the single-valued Script property. Common characters like digits have …

Système d'écriture

Le système d'écriture auquel appartient un caractère (par ex. latin, cyrillique, han). Unicode 16.0 définit 168 scripts ; la propriété …

Valeur numérique

L'interprétation numérique d'un caractère, le cas échéant : valeur de chiffre (0–9), valeur décimale ou valeur numérique générale (par ex. …

Équivalence canonique

Deux séquences de caractères sémantiquement identiques qui doivent être traitées comme égales. Exemple : é (U+00E9) ≡ e + ◌́ …

Équivalence de compatibilité

Deux séquences de caractères ayant le même contenu abstrait mais pouvant différer en apparence. Plus large que l'équivalence canonique. Exemple …

Algorithmes (15)

Algorithme bidirectionnel

Algorithme déterminant l'ordre d'affichage des caractères dans un texte à direction mixte (par ex. anglais + arabe), en utilisant les …

Algorithme de classement

Algorithme standard de comparaison et de tri de chaînes Unicode via une comparaison multiniveau : caractère de base → accents …

Algorithme de coupure de ligne

Règles déterminant où le texte peut passer à la ligne suivante, en tenant compte des propriétés des caractères, des limites …

Case Folding

Mapping characters to a common case form for case-insensitive comparison. More comprehensive than lowercasing: German ß → ss, Turkish İ …

Exclusion de composition

Caractères exclus de la composition canonique (NFC) pour éviter la décomposition des non-initiaux et garantir la stabilité algorithmique. Répertoriés dans …

Frontière de mot

La position entre les mots selon les règles de coupure de mots Unicode. Plus simple qu'un simple découpage sur les …

Frontière de phrase

La position entre les phrases selon les règles Unicode. Plus complexe qu'un simple découpage sur les points — gère les …

Grapheme Cluster Boundary

Rules (UAX#29) for determining where one user-perceived character ends and another begins. Critical for cursor movement, text selection, and correctly …

NFC (Canonical Composition)

Forme de normalisation C : décomposer puis recomposer canoniquement, produisant la forme la plus courte. Recommandée pour le stockage et …

NFD (Canonical Decomposition)

Forme de normalisation D : décomposition complète sans recomposition. Utilisée par le système de fichiers HFS+ de macOS. é (U+00E9) …

NFKC (Compatibility Composition)

Forme de normalisation KC : décomposition de compatibilité puis composition canonique. Fusionne les caractères visuellement similaires (fi→fi, ²→2, Ⅳ→IV). Utilisée …

NFKD (Compatibility Decomposition)

Forme de normalisation KD : décomposition de compatibilité sans recomposition. La normalisation la plus agressive, perdant le plus d'informations de …

Normalisation

Processus de conversion du texte Unicode en une forme canonique standard. Quatre formes : NFC (composée), NFD (décomposée), NFKC (compatibilité …

Segmentation de texte

Algorithmes permettant de trouver les limites dans un texte : limites de groupe de graphèmes, de mots et de phrases. …

String Comparison

Comparing Unicode strings requires normalization (NFC/NFD) and optionally collation (locale-aware sorting). Binary comparison of code points alone gives incorrect results …

Typographie (19)

Cadratin / Demi-cadratin (Unités typographiques)

Em : une largeur égale à la taille de la police. En : la moitié d'un em. Utilisés pour définir …

Caractère d'espace

Caractères représentant un espace horizontal ou vertical mais sans glyphe visible. Unicode définit plus de 17 caractères d'espace blanc avec …

Caractère de combinaison

Un caractère qui s'attache au caractère de base précédent pour le modifier. Catégorie générale : Mn (non-espacement), Mc (combinaison avec …

Caractère de largeur nulle

Caractères avec une largeur d'avance nulle — invisibles lors du rendu mais influençant le comportement du texte. Comprend ZWSP (coupure …

Crénage

Ajustement de l'espacement entre des paires de caractères spécifiques pour une harmonie visuelle (p. ex., AV, To, LT). C'est une …

CSS unicode-range

CSS @font-face descriptor specifying which Unicode code points a font should cover. Enables downloading only the font subset needed for …

Espace insécable

U+00A0. Un espace qui empêche le retour à la ligne à sa position. HTML :  . Utilisé entre les chiffres …

Font Fallback

The mechanism by which a rendering engine substitutes glyphs from a secondary font when the primary font lacks coverage for …

Glyphe

La représentation visuelle d'un caractère telle que rendue par une police. Un caractère peut avoir plusieurs glyphes (ligatures, formes contextuelles) …

Guillemet

Signes de ponctuation appariés encadrant un discours direct ou des citations. Unicode comprend les guillemets droits (""), typographiques (""), les …

Ligature

Deux caractères ou plus réunis en un seul glyphe. Peut être typographique (fi → fi via OpenType) ou un caractère …

OpenType

Modern font format developed by Microsoft and Adobe supporting up to 65,535 glyphs, advanced typographic features (ligatures, alternates, kerning), and …

Petites majuscules

Formes de lettres majuscules à la hauteur des minuscules. CSS : font-variant: small-caps. Unicode possède également de véritables petites capitales …

Points de suspension

U+2026 POINTS DE SUSPENSION HORIZONTAUX (…). Un caractère unique remplaçant trois points, typographiquement correct et comptant comme 1 caractère au …

Police de caractères

Une implémentation spécifique d'une police de caractères à une taille, un grammage et un style particuliers. En typographie numérique, un …

RTL (Right-to-Left)

Directionnalité du texte dans laquelle les caractères s'écoulent de droite à gauche. Utilisée par l'arabe, l'hébreu, le thaana et d'autres …

Signe diacritique

Une marque ajoutée à une lettre pour modifier sa prononciation ou sa signification. Peut être précomposée (é U+00E9) ou combinée …

Tiret

Signes de ponctuation utilisés pour séparer les parties d'une phrase ou indiquer des plages. Unicode définit plusieurs tirets : trait …

Web Fonts

Fonts downloaded by the browser to render text, declared via CSS @font-face. WOFF2 is the standard format. Unicode subsetting and …

Méthodes de saisie (9)

Character Palette

A system-level tool for browsing and inserting Unicode characters. macOS Character Viewer (Ctrl+Cmd+Space), Windows Character Map (charmap.exe), and Linux gucharmap …

Code Alt

Méthode de saisie Windows utilisant Alt + chiffres du pavé numérique pour saisir des caractères par leur numéro de page …

Input Method Editor (IME)

Composant logiciel permettant la saisie de caractères complexes (CJK, coréen, etc.) à l'aide d'un clavier standard, convertissant des séquences de …

Méthode de saisie Unicode

Toute méthode pour saisir des caractères par leur point de code Unicode : saisie hexadécimale (Mac), entrée U+XXXX via Ctrl+Maj+U …

Saisie hexadécimale

Saisie directe de points de code Unicode en tapant la valeur hexadécimale. Mac : maintenir Option + hex + relâcher. …

Sélecteur de caractères

Composant d'interface utilisateur (natif ou basé sur le Web) permettant de parcourir et sélectionner des caractères visuellement. Les sélecteurs d'emoji …

Table des caractères

Utilitaire graphique permettant de parcourir et d'insérer des caractères Unicode. Windows : charmap.exe. Mac : Visualiseur de caractères (Contrôle+Commande+Espace). Linux …

Touche Compose

Une touche (généralement Alt droit ou personnalisée) qui démarre une séquence de composition multi-touches. Fonctionnalité Linux/Unix : Compose + a …

Touche morte

Une touche qui ne produit aucune sortie immédiate mais modifie la prochaine frappe. Utilisée pour les diacritiques : appuyer sur …

Web et HTML (16)

CSS Text Direction

CSS properties (direction, writing-mode, unicode-bidi) controlling text layout direction. Works with Unicode Bidi Algorithm for mixed LTR/RTL content in web …

Encodage en pourcentage (encodage d'URL)

Encodage des caractères non-ASCII et réservés dans les URL en remplaçant chaque octet par %XX. L'UTF-8 est utilisé en premier, …

Entité HTML

Une représentation textuelle d'un caractère en HTML. Trois formes : nommée (&), décimale (&) et hexadécimale (&). Indispensable pour les …

Internationalized Domain Name (IDN)

Noms de domaine contenant des caractères Unicode non-ASCII, stockés en interne sous forme de Punycode (xn--...) mais affichés en Unicode …

JavaScript Intl API

ECMAScript Internationalization API providing locale-aware string comparison (Collator), number formatting (NumberFormat), date formatting (DateTimeFormat), and segmentation (Segmenter).

Jeu de caractères Content-Type

Paramètre d'en-tête HTTP déclarant l'encodage des caractères d'une réponse (Content-Type: text/html; charset=utf-8). Remplace toute déclaration d'encodage dans le document.

Jointure de mot

U+2060. Un caractère de largeur nulle qui empêche le retour à la ligne. Le remplacement moderne de U+FEFF (BOM) en …

Propriété CSS content

Propriété CSS insérant du contenu généré via les pseudo-éléments ::before et ::after à l'aide d'échappements Unicode : content: "\2713" insère …

Présentation d'emoji

Rendu d'un caractère avec un glyphe emoji coloré, généralement à l'aide du Sélecteur de variante 16 (U+FE0F). Certains caractères ont …

Présentation en texte

Rendu d'un caractère avec un glyphe de texte monochrome simple plutôt qu'un emoji coloré, généralement à l'aide du Sélecteur de …

Punycode

Encodage compatible ASCII des noms de domaine Unicode, convertissant les libellés internationalisés en chaînes ASCII préfixées xn--. münchen.de → xn--mnchen-3ya.de.

Référence de caractère nommée

Entité HTML utilisant un nom lisible par l'homme : © → ©, — → —. HTML5 définit 2 231 références …

Référence de caractère numérique

Entité HTML utilisant le numéro de point de code Unicode : décimal (© → ©) ou hexadécimal (© → ©). …

Référence de caractère XML

La version XML des références de caractères numériques : ✓ ou ✓. XML ne possède que 5 entités nommées (& …

Sélecteur de variante

Caractères (U+FE00–U+FE0F, U+E0100–U+E01EF) qui sélectionnent une variante de glyphe spécifique. VS15 (U+FE0E) = présentation textuelle, VS16 (U+FE0F) = présentation emoji.

Unicode in CSS

CSS supports Unicode via escape sequences (\2713 for ✓), the content property for generated text, unicode-range for font subsetting, and …

Programmation et développement (13)

Ambiguïté de longueur de chaîne

La « longueur » d'une chaîne Unicode dépend de l'unité : unités de code (JavaScript .length), points de code (Python …

Caractère de remplacement

U+FFFD (�). Affiché lorsqu'un décodeur rencontre des séquences d'octets invalides — le symbole universel de « quelque chose s'est mal …

Caractère invisible

Tout caractère sans glyphe visible : espaces blancs, caractères de largeur nulle, caractères de contrôle et caractères de mise en …

Caractère nul

U+0000 (NUL). Le premier caractère Unicode/ASCII, utilisé comme terminateur de chaîne en C/C++. Risque de sécurité : l'injection d'octet nul …

Chaîne de caractères

Une séquence de caractères dans un langage de programmation. La représentation interne varie : UTF-8 (Go, Rust, nouvelles versions de …

Encodage / Décodage

L'encodage convertit les caractères en octets (str.encode('utf-8')) ; le décodage convertit les octets en caractères (bytes.decode('utf-8')). Le faire correctement prévient …

Expression régulière Unicode

Modèles de regex utilisant les propriétés Unicode : \p{L} (toute lettre), \p{Script=Greek} (écriture grecque), \p{Emoji}. Le support varie selon le …

Java Unicode

Java strings use UTF-16 internally. char is 16-bit (only BMP). For supplementary characters, use codePointAt() and Character.toChars(). Java's \uXXXX escapes …

Mojibake

Texte illisible résultant du décodage d'octets avec le mauvais encodage. Terme japonais (文字化け). Exemple : 'café' stocké en UTF-8 mais …

Paire de substitution

Deux unités de code de 16 bits (un substitut haut U+D800–U+DBFF + substitut bas U+DC00–U+DFFF) qui ensemble encodent un caractère …

Python Unicode

Python 3 uses Unicode strings by default (str = UTF-8 internally via PEP 393). Key features: \N{name} escapes, unicodedata module, …

Rust Unicode

Rust strings (str/String) are guaranteed valid UTF-8. char type represents a Unicode scalar value (4 bytes). Iteration via .chars() yields …

Séquence d'échappement Unicode

Syntaxe pour représenter des caractères Unicode dans le code source. Varie selon le langage : \u2713 (Python/Java/JS), \u{2713} (JS/Ruby/Rust), \U00012345 …

Sécurité (10)

Attaque par homographes IDN

Utilisation de caractères Unicode visuellement similaires dans les noms de domaine pour usurper des sites légitimes. аpple.com (а cyrillique) ressemble …

Attaque par substitution bidirectionnelle

Utilisation de caractères de substitution bidirectionnelle Unicode (U+202A–U+202E, U+2066–U+2069) pour déguiser des noms de fichiers ou du code malveillant. 'readme‮fdp.exe' …

Bidi Text Attack

Exploiting Unicode bidirectional control characters to disguise malicious code or filenames. The 'Trojan Source' attack (CVE-2021-42574) uses bidi overrides to …

Caractère confusable

Le terme officiel d'Unicode pour les paires de caractères pouvant être confondues visuellement, définis dans confusables.txt (UCD). Plus large que …

Détection de scripts mixtes

Identification d'un texte mélangeant des caractères de différentes écritures (p. ex., latin + cyrillique). Principale défense contre les attaques homographiques …

Homoglyphe

Caractères de différentes écritures qui se ressemblent de façon identique ou très similaire, comme le 'a' latin et le 'а' …

Normalization Attack

Exploiting Unicode normalization to bypass security filters. Input validated before normalization may change form after: 'fi' (U+FB01) normalizes to 'fi', …

Usurpation d'identité Unicode

Utilisation des fonctionnalités Unicode pour tromper les utilisateurs : homoglyphes pour de faux domaines, substitutions bidi pour de fausses extensions …

Zero Width Joiner (ZWJ)

U+200D. Demande la jonction des caractères adjacents. Essentiel pour les séquences d'emoji (👩+ZWJ+💻=👩‍💻). Dans les écritures indiennes, demande la formation …

Zero Width Non-Joiner (ZWNJ)

U+200C. Empêche la jonction des caractères adjacents. Essentiel en persan/arabe pour les formes correctes des lettres et utilisé en devanagari …

Emoji (6)

Divers (1)