Перейти к содержимому
Ghostchars

Соединители, селекторы и заполнители

VARIATION SELECTORS (U+FE00–U+FE0F)

Шестнадцать невидимых модификаторов, которые выбирают, в какой из нескольких форм показать предыдущий символ. VS15 (U+FE0E) просит чёрно-белую текстовую форму, VS16 (U+FE0F) — цветную эмодзи.

Диапазон
U+FE00–U+FE0F
Удаляется по умолчанию
Если одиночный
Управляющий параметр
Агрессивно -a
Может нести нагрузку
Да

Откуда он берётся

Любые эмодзи, у которых есть и текстовое, и эмодзи-представление: ❤️, ☀️, ✔️. Ещё типографика CJK, где VS1–VS14 выбирают региональный вариант глифа. И контрабанда байтов: дополнительный блок селекторов вариантов (U+E0100–U+E01EF) из 256 позиций позволяет закодировать произвольную последовательность байтов за одним видимым символом.

Почему это важно

Селектор вариантов после эмодзи делает свою работу. Селектор вариантов после латинской буквы не делает ничего заметного, а цепочка селекторов из дополнительного блока способна унести целое сообщение — приём, опубликованный под названием «протаскивание произвольных данных через эмодзи». Поскольку они цепляются к предыдущему символу, за одним видимым глифом могут прятаться килобайты.

До и после

ДоAU+FE0FU+FE0F
ПослеA ❤U+FE0F

Селектору после «A» нечего выбирать, и он удалён. Тот, что после сердца, делает его красным, и он оставлен.

Символ показан подписанной плашкой, чтобы было видно, где он стоит. В вашем тексте он не рисует ровно ничего.

Когда он уместен

Сразу после базового эмодзи (VS15/VS16) или после иероглифа CJK (текстовые селекторы и дополнительный блок). Ghostchars оставляет их там и удаляет везде ещё.

Как его удалить

Селектор, перед которым нет ни эмодзи, ни иероглифа CJK, удаляет базовый проход. Те, перед которыми они есть, остаются и попадают в отчёт; параметр «Агрессивно» (`-a`) удаляет и их, превратив ❤️ в одноцветное ❤.

Это водяной знак ИИ?

Используется для сокрытия данных — но не водяной знак

Нет. VS16 после эмодзи — это и есть способ задать эмодзи. Цепочка селекторов из дополнительного блока после буквы — намеренная скрытая нагрузка. Ни то, ни другое не водяной знак, и ни одна модель не ставит их как подпись.

Известный носитель намеренно спрятанных данных. Кто-то поместил его туда специально, а это уже другой вопрос, чем то, кто написал слова.

Вопросы

Не станут ли мои эмодзи чёрно-белыми после чистки?

По умолчанию — нет. Селектор вариантов после базового эмодзи остаётся. Удаляет его только параметр «Агрессивно» (`-a`), и результат — одноцветная текстовая форма.

Что за приём с «невидимыми данными за эмодзи»?

256 селекторов из диапазона U+E0100–U+E01EF взаимно однозначно соответствуют значениям байтов. Припишите цепочку из них к любому символу — и произвольные байты спрятаны за одним видимым глифом. Ghostchars удаляет любой селектор, которому не к чему прицепиться: ни иероглифа CJK, ни эмодзи.

Важны ли они в китайском или японском тексте?

Да: после иероглифа CJK селектор выбирает региональный вариант глифа, поэтому в этой позиции он остаётся.

Проверьте свой текст

Вставьте что угодно в инструмент очистки, чтобы увидеть каждый скрытый символ: позицию, кодовую позицию и то, что произойдёт с каждым из них. Ничего никуда не отправляется.

Проверьте свой текстВсе символы