Blog
Français

Normalisation Unicode en ligne — NFC, NFD, NFKC, NFKD

Un outil de normalisation Unicode pour textes et noms de fichiers, y compris les noms décomposés de macOS

Traitement dans le navigateur · aucun envoi de fichier

Forme de normalisation

Choisissez NFC pour réparer un texte décomposé, comme les noms de fichiers accentués ou coréens créés sur Mac (généralement en NFD).

Convertir un texte

L’exemple est stocké sous forme décomposée (NFD), comme macOS le fait pour les noms de fichiers. Il a la même apparence, mais il est différent à la comparaison.

  • 6 jamos hangeul décomposés
  • 0 caractères de compatibilité que NFKC modifierait

Converti en NFC : 37 points de code → 29

Résultat
Résumé – rapport d’été 한글.pdf
Afficher les points de code
Avant
U+0052 U+0065 U+0301 U+0073 U+0075 U+006D U+0065 U+0301 U+0020 U+2013 U+0020 U+0072 U+0061 U+0070 U+0070 U+006F U+0072 U+0074 U+0020 U+0064 U+2019 U+0065 U+0301 U+0074 U+0065 U+0301 U+0020 U+1112 U+1161 U+11AB U+1100 U+1173 U+11AF U+002E U+0070 U+0064 U+0066
Après
U+0052 U+00E9 U+0073 U+0075 U+006D U+00E9 U+0020 U+2013 U+0020 U+0072 U+0061 U+0070 U+0070 U+006F U+0072 U+0074 U+0020 U+0064 U+2019 U+00E9 U+0074 U+00E9 U+0020 U+D55C U+AE00 U+002E U+0070 U+0064 U+0066

Corriger des noms de fichiers en lot

Collez les noms de fichiers à raison d’un par ligne, ou choisissez des fichiers pour les télécharger dans un ZIP avec des noms normalisés. Les fichiers ne quittent jamais votre navigateur.

Applique l’Unicode Standard Annex #15 (Unicode Normalization Forms) avec String.prototype.normalize du navigateur. NFC et NFD ne changent jamais l’apparence ni le sens du texte ; NFKC et NFKD ramènent aussi les caractères de compatibilité, comme les lettres pleine largeur (A→A), les chiffres cerclés (①→1) et les symboles d’unité (㎏→kg), si bien que le texte peut changer d’apparence. Dans le ZIP, les noms de fichiers sont stockés en UTF-8.

Présentation

Le normaliseur Unicode fait en sorte qu’un texte qui paraît identique le soit aussi en profondeur. Une même lettre peut être stockée de plusieurs façons : « é » peut être un seul point de code ou un « e » suivi d’un accent combinant, et une syllabe coréenne peut être un point de code ou trois jamos. Mélanger les deux formes provoque des recherches infructueuses, des noms de fichiers en double et des envois refusés. Collez un texte ou des noms de fichiers, choisissez une forme de normalisation et obtenez un résultat cohérent.

Mode d’emploi

  1. Choisissez une forme. NFC est le bon choix pour réparer un texte décomposé venu de macOS.
  2. Collez un texte dans le premier champ. Le résultat apparaît aussitôt, avec le nombre de jamos décomposés et de caractères de compatibilité.
  3. Ouvrez « Afficher les points de code » pour comparer les valeurs avant et après.
  4. Dans la section des noms de fichiers, collez les noms à raison d’un par ligne ou choisissez des fichiers.
  5. Si vous avez choisi des fichiers, téléchargez le ZIP avec les noms normalisés.

Fonctionnement

  • Les quatre formes de l’Unicode Standard Annex #15 (Unicode Normalization Forms) sont appliquées avec String.prototype.normalize du navigateur.
  • Le hangeul décomposé est compté en jamos conjoints (U+1100–U+11FF et les blocs étendus). Les jamos de compatibilité saisis au clavier, comme ㅋ, ne sont pas comptés comme décomposés.
  • Les caractères de compatibilité sont ceux dont la forme NFKC diffère de la forme NFC.
  • Dans le ZIP, les noms de fichiers sont stockés en UTF-8 et le contenu des fichiers sans recompression. Jusqu’à 200 fichiers et 500 Mo à la fois ; 150 Mo sur téléphone et tablette, car le ZIP est construit en mémoire.

Exemples

Saisie Forme Résultat
cafe + U+0301 (5 points de code) NFC café (4)
café NFD cafe + U+0301
A①㎏fi NFKC A1kgfi
한글.txt décomposé (10 points de code) NFC 한글.txt (6)
㈜ NFKC (주)

Questions fréquentes

Pourquoi les noms de fichiers venus d’un Mac s’affichent-ils mal ailleurs ?

macOS stocke les noms de fichiers sous forme décomposée (NFD) ; é est donc enregistré comme un e suivi d’un accent combinant, et les syllabes coréennes comme des jamos séparés. Certains programmes Windows et formulaires web affichent les morceaux séparément ou considèrent le nom comme un texte différent. La conversion en NFC les réunit à nouveau.

L’outil peut-il renommer les fichiers sur mon ordinateur ?

Une page web ne peut pas renommer les fichiers de votre disque. Choisissez les fichiers et téléchargez-les dans un ZIP avec des noms normalisés, ou copiez la liste des noms corrigés.

Quelle différence entre NFC et NFKC ?

NFC ne fait que réunir des caractères équivalents ; le texte garde donc la même apparence et le même sens. NFKC ramène en plus les caractères de compatibilité, comme les lettres pleine largeur, les chiffres cerclés, les ligatures comme fi et les symboles d’unité comme ㎏, à des caractères simples, ce qui peut changer l’apparence du texte.

Les deux chaînes semblent identiques. Pourquoi est-ce important ?

Un texte en NFC et un texte en NFD peuvent paraître identiques tout en étant différents à la comparaison, ce qui casse la recherche, la détection de doublons et les envois de fichiers. Ouvrez « Afficher les points de code » pour voir les valeurs réelles.

Quelque chose est-il envoyé sur un serveur ?

Non. La normalisation et la création du ZIP se font dans votre navigateur.

Il vous manque un outil ?