Aller au contenu
Ghostchars

Largeur nulle et invisibles

ZERO WIDTH SPACE (U+200B)

Un espace sans largeur. Il occupe une position dans la chaîne, marque un endroit où la ligne peut se couper, et ne dessine absolument rien.

Point de code
U+200B
Supprimé par défaut
Oui
Option qui le régit
Aucune option nécessaire
Peut être porteur
Non

D’où il vient

Les systèmes de gestion de contenu et les traitements de texte l’insèrent pour qu’une URL interminable ou une suite ininterrompue d’idéogrammes puisse passer à la ligne. Il arrive aussi avec le contenu web copié-collé, avec les moteurs de gabarits qui en émettent entre deux balises, et avec les outils qui cachent des données exprès : c’est le porteur le plus courant de la stéganographie de largeur nulle.

Pourquoi il compte

Unicode le classe comme contrôle de formatage et non comme espace : il survit au copier-coller, coupe un mot en deux pour un correcteur orthographique, met en échec la recherche exacte et `grep`, et offre à un canal caché un bit par position. « bonjour » et « bon​jour » s’affichent à l’identique et ne sont pas égaux.

Avant et après

AvantbonU+200Bjour
Aprèsbonjour

Deux chaînes au rendu identique. Seule la seconde répond à une recherche sur « bonjour ».

Le caractère est affiché sous forme de pastille étiquetée, pour que vous voyiez où il se place. Dans votre texte, il ne dessine absolument rien.

Quand il est légitime

Uniquement comme indication de coupure dans un texte qui déborderait autrement : une longue URL, un paragraphe en chinois ou en japonais. Rien dans une prose latine n’en a besoin, et HTML dispose de `<wbr>` pour le même travail.

Comment le supprimer

La passe par défaut le supprime. Il n’y a aucune option à activer et aucun contexte dans lequel Ghostchars le conserve.

Est-ce un filigrane d’IA ?

Utilisé pour cacher des données — ce n’est pas un filigrane

Non. U+200B n’est pas un filigrane et aucun grand modèle n’est connu pour l’émettre comme signature. C’est le porteur classique des charges cachées fabriquées à la main : sa présence vous dit que le texte est passé par quelque chose — un CMS, un éditeur, un outil de stéganographie — pas qui l’a écrit, ni quoi.

Un porteur connu de charges volontairement cachées. Quelqu’un l’a mis là exprès, ce qui est une tout autre question que celle de savoir qui a écrit les mots.

Questions

Un espace de largeur nulle se voit-il quelque part ?

Pas au rendu normal : il n’a ni glyphe ni chasse. Il ne devient visible que dans un éditeur hexadécimal, dans un éditeur où l’affichage des caractères invisibles est activé, ou dans un outil comme celui-ci.

Le supprimer va-t-il casser mon texte ?

Non. Supprimer U+200B ne peut qu’enlever une possibilité de coupure de ligne. Cela ne change jamais un mot, un espace, ni aucun caractère que vous voyez.

Vérifier votre propre texte

Collez n’importe quoi dans le nettoyeur pour voir tous les caractères invisibles qu’il contient, avec leur position, leur point de code et ce qui arrive à chacun. Rien n’est envoyé.

Vérifier votre propre texteTous les caractères