ToolPilot

Inspecteur Unicode

Inspectez chaque caractère Unicode de votre texte : codepoint, nom, catégorie, octets UTF-8. Détectez les caractères invisibles et comparez les normalisations NFC/NFD.

Inspecteur Unicode : analyse complète de chaque caractère

Pourquoi utiliser cet inspecteur Unicode ?

Unicode compte plus de 149 000 caractères répartis dans 161 blocs. Certains sont invisibles (espace sans chasse, BOM, marques directionnelles) et peuvent provoquer des bugs d'affichage, des failles de sécurité ou des comportements inattendus dans vos applications. Cet inspecteur révèle chaque caractère avec son codepoint (U+XXXX), son nom officiel, sa catégorie et ses octets UTF-8 hexadécimaux.

Le traitement s'effectue intégralement dans votre navigateur. Votre texte n'est jamais transmis à un serveur distant. Vous pouvez analyser des données sensibles (mots de passe, tokens, contenus confidentiels) en toute sécurité. L'outil détecte automatiquement les caractères invisibles et les signale visuellement en rouge.

L'inspecteur compare aussi les formes de normalisation NFC (composée) et NFD (décomposée) de votre texte. Cette fonctionnalité est indispensable pour vérifier la compatibilité de chaînes de caractères entre systèmes (bases de données, API, systèmes de fichiers macOS vs Linux).

Cas d'utilisation courants

Développeurs
Déboguez les problèmes d'encodage en identifiant les codepoints exacts de chaque caractère. Repérez les BOM parasites (U+FEFF) en début de fichier, les espaces sans chasse (U+200B) dans les chaînes copiées-collées, ou les marques directionnelles (LRM/RLM) qui perturbent l'affichage bidirectionnel.
Chercheurs en sécurité
Détectez les attaques par homoglyphes en comparant les codepoints de caractères visuellement identiques. Le « a » latin (U+0061) et le « а » cyrillique (U+0430) sont clairement distingués par leurs codepoints et catégories Unicode respectives.
Linguistes
Étudiez les marques diacritiques combinantes (U+0300 à U+036F) et comparez les formes NFC/NFD de textes accentués. Vérifiez si un « é » est un caractère précomposé (U+00E9) ou une lettre « e » suivie d'un accent combinant (U+0065 + U+0301).
Testeurs QA
Validez le traitement des chaînes Unicode dans vos applications. Vérifiez que votre système gère correctement les paires de substitution (surrogate pairs), les caractères invisibles et les différentes formes de normalisation. Le compteur UTF-16 vs codepoints révèle les écarts.

Comment fonctionne l'inspecteur Unicode ?

Collez ou tapez votre texte dans la zone de saisie. L'inspecteur analyse chaque caractère individuellement en utilisant l'itération Unicode de JavaScript (qui gère correctement les paires de substitution pour les emojis et les caractères au-delà du plan multilingue de base).

Pour chaque caractère, l'outil affiche : le caractère lui-même (ou le badge « INVISIBLE » en rouge), son codepoint U+XXXX, son nom Unicode, sa catégorie (Lu, Ll, Nd, Po, Cf, etc.) et ses octets UTF-8 en hexadécimal. Les statistiques indiquent le nombre total de codepoints, d'unités UTF-16, de codepoints uniques et de caractères invisibles.

La section NFC/NFD compare les deux formes de normalisation de votre texte. Si les codepoints diffèrent entre NFC et NFD, l'outil le signale explicitement. Tout le traitement est local : aucune requête réseau, aucune donnée stockée.

Questions fréquentes

Comment identifier un caractère invisible dans mon texte ?
Collez votre texte dans l'inspecteur. Chaque caractère invisible est signalé par un badge rouge « INVISIBLE » dans la colonne Caractère. Le compteur en haut affiche le nombre total de caractères invisibles détectés. Les plus courants sont l'espace sans chasse (U+200B), le BOM (U+FEFF) et les marques directionnelles (U+200E, U+200F).
Qu'est-ce qu'une paire de substitution (surrogate pair) et comment est-elle gérée ?
Les paires de substitution sont des séquences de deux unités UTF-16 qui représentent un seul caractère Unicode au-delà du plan multilingue de base (U+10000). Les emojis complexes et certains caractères historiques en font partie. L'inspecteur utilise l'itération Unicode de JavaScript qui décode correctement ces paires en un seul codepoint.
Pourquoi le même texte peut-il avoir un nombre différent de codepoints et d'unités UTF-16 ?
Les caractères Unicode au-delà de U+FFFF (emojis, certains caractères chinois rares) nécessitent deux unités UTF-16 (surrogate pair) mais ne comptent que pour un seul codepoint. Par exemple, l'emoji 😀 (U+1F600) = 1 codepoint mais 2 unités UTF-16. Cette différence peut provoquer des bugs dans les langages qui comptent en unités UTF-16 comme JavaScript.
À quoi servent les formes de normalisation NFC et NFD ?
NFC (Normalization Form Composed) représente les caractères accentués sous leur forme la plus compacte : « é » = U+00E9 (1 codepoint). NFD (Decomposed) les décompose en lettre de base + diacritique combinant : « e » + accent aigu = U+0065 U+0301 (2 codepoints). Les deux sont visuellement identiques mais techniquement différents, ce qui peut causer des problèmes de comparaison de chaînes entre systèmes.
Mes données personnelles sont-elles protégées ?
Entièrement. Le calcul est réalisé à 100 % côté client, directement dans votre navigateur web. Aucune donnée personnelle n'est envoyée vers un serveur distant ni stockée. Toutes les informations restent sur votre appareil.