n1ro°
RU

Текст и данные · Инструкция

Как настроить Unicode Highlight в VS Code

VS Code умеет отдельно подсвечивать невидимые, неоднозначные и прочие non-ASCII символы.

Редакция N1RO · Проверено

Короткий ответ

Откройте Settings, найдите Unicode Highlight и оставьте включёнными проверки, которые нужны проекту. Если подсветка срабатывает на допустимый язык или конкретный символ, добавьте узкое исключение вместо полного отключения функции.

Какие проверки Unicode Highlight включать

У настройки есть отдельные переключатели для invisible characters, ambiguous characters и non-basic ASCII. Для диагностики разумно сначала оставить их включёнными и открыть файл, где возникла проблема. Наведите указатель на подсвеченный символ: редактор показывает, почему он помечен. Если в строке смешаны, например, латинская и кириллическая буквы одинакового начертания, исправьте именно символ в исходнике, а не цвет подсветки.

Совет: Если проблема появилась после вставки текста из браузера или документа, сначала сравните подозрительную строку с вручную набранной.

Настройка через Settings и settings.json

  1. Откройте Settings командой Preferences: Open Settings и в поиске введите Unicode Highlight.
  2. Проверьте переключатели Invisible Characters, Ambiguous Characters и Non Basic ASCII; не выключайте все три, если мешает только один тип предупреждения.
  3. Откройте проблемный файл и убедитесь, что подсветка исчезает после замены подозрительного символа на ожидаемый.
  4. Если символ допустим по правилам проекта, откройте settings.json и добавьте его в editor.unicodeHighlight.allowedCharacters, а не отключайте весь механизм.
  5. Храните командное исключение в Workspace settings только тогда, когда оно действительно относится ко всему репозиторию.

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

Что проверить перед сохранением настройки

  • исправлен ли сам символ, если он случайный;
  • не перекрывает ли Workspace setting личную настройку;
  • нет ли language-specific секции с другим значением;
  • остались ли видимыми действительно подозрительные Unicode-символы.

Когда исключение оправдано

Исключение полезно, если проект осознанно использует конкретный символ или язык и подсветка создаёт постоянный шум. Для единичного символа применяйте allowedCharacters. Если проблема связана с языковым набором, сначала проверьте доступные параметры Unicode Highlight в текущем VS Code и область действия настройки. После изменения откройте два файла: один с допустимым символом и второй с намеренно подставленным похожим символом. Второй должен продолжать подсвечиваться.

Важно: Unicode Highlight — диагностическая функция редактора; она не заменяет проверку кодировки, линтер или ревью diff.

Почему подсветка может работать не везде

Значение может отличаться между User, Workspace и language-specific settings. Кроме того, расширение может визуально декорировать текст своим способом, поэтому не каждое цветное выделение относится к Unicode Highlight. Если настройка в интерфейсе выглядит правильной, откройте settings.json и найдите все вхождения editor.unicodeHighlight. После этого временно отключите только подозрительное расширение и сравните поведение, не сбрасывая весь профиль VS Code.

Что учитывать

Значение может отличаться между User, Workspace и language-specific settings. Кроме того, расширение может визуально декорировать текст своим способом, поэтому не каждое цветное выделение относится к Unicode Highlight. Если настройка в интерфейсе выглядит правильной, откройте settings.json и найдите все вхождения editor.unicodeHighlight. После этого временно отключите только подозрительное расширение и сравните поведение, не сбрасывая весь профиль VS Code.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. User and workspace settings). Пример и формулировки — редакция N1RO на 2026-09-23.