Aller au contenu
Ghostchars

Liants, sélecteurs et remplisseurs

ZERO WIDTH JOINER (U+200D)

Un caractère invisible qui demande à ses deux voisins d’être dessinés comme un seul. C’est lui qui transforme trois personnes distinctes en un emoji famille, et qui relie les lettres arabes et indiennes qui resteraient sinon séparées.

Point de code
U+200D
Supprimé par défaut
Quand il est isolé
Option qui le régit
Agressif -a
Peut être porteur
Oui

D’où il vient

Toutes les séquences d’emoji que vous avez envoyées : 👨‍👩‍👧, ce sont trois personnes et deux liants. Dans du texte, il vient de la saisie du persan, du hindi, du malayalam et de l’arabe, du contenu web copié-collé, et de la stéganographie de largeur nulle, où il forme la moitié d’un alphabet à deux symboles avec U+200C.

Pourquoi il compte

C’est le caractère qui rend les nettoyeurs naïfs dangereux. Supprimez tous les U+200D et vous transformez un emoji famille en trois personnes séparées et vous cassez de vrais mots dans une demi-douzaine d’écritures. Laissez tous les U+200D et vous laissez en place le canal caché le plus répandu.

Avant et après

AvantbonU+200Djour 👨U+200D👩U+200D👧
Aprèsbonjour 👨U+200D👩U+200D👧

Le même point de code, deux situations. Celui qui sépare « bon » de « jour » est supprimé ; les deux qui tiennent la famille sont conservés, parce que les enlever laisserait trois personnes séparées.

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

Entre deux bases d’emoji, et entre deux lettres d’une même écriture liante — arabe, persan, devanagari, malayalam. Ghostchars le conserve exactement à ces positions et le supprime partout ailleurs.

Comment le supprimer

Un liant isolé — posé entre deux lettres latines — est supprimé par la passe par défaut. Un liant porteur est conservé et signalé comme « conservé, porteur » ; `-a` (agressif) supprime aussi ceux-là, au prix de vos emojis et de votre persan.

Est-ce un filigrane d’IA ?

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

Non. Un liant de largeur nulle entre deux lettres latines est de la contrebande, mais de la contrebande posée à la main : c’est le plus vieux tour de la stéganographie textuelle. À l’intérieur d’un emoji, c’est simplement le fonctionnement des emojis. Ni l’un ni l’autre n’identifie un auteur.

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

Le nettoyage va-t-il casser mes emojis ?

Pas avec les réglages par défaut. Ghostchars regarde les caractères des deux côtés : un liant entre deux bases d’emoji est conservé. Seul `-a` (agressif) les supprime, et l’option le dit.

Et pour un texte persan, hindi ou arabe ?

Un liant entre deux lettres d’une même écriture liante est conservé pour la même raison. Le supprimer changerait la façon dont le mot est dessiné et, dans certains mots, ce qu’il veut dire.

Comment savoir lesquels ont été conservés ?

Chaque trouvaille est listée avec sa ligne, sa colonne et une action : supprimé, remplacé, conservé parce que porteur, ou trouvé mais non ciblé. Rien n’est décidé en silence.

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