Як виправити кодування в Notepad++

Notepad++ показує РџСЂРёРІС–С‚ замість «Привіт» або чорні квадратики на кшталт xCF? Отже, вибране кодування не збігається з файлом. Зазвичай допомагають два пункти меню, якщо знати, який із них потрібен.

Працює з текстом і файлами:

  • CSV
  • TXT
  • JSON
  • XML
  • SRT
  • VTT
  • SMI
  • TSV
  • MD
  • HTML
  • SQL
  • LOG

Наприклад, вивантаження з Excel і 1С, дампи баз даних, субтитри або код сайтів.

Виправити

  1. Перетягніть файл або вставте текст
  2. Виправлення відбувається автоматично
  3. Скопіюйте або завантажте
або просто перетягніть файл сюди
  • Без надсилання на сервер. Файли виправляються прямо в браузері й не залишають ваш пристрій.

  • Сервери в ЄС. Mojibuster працює на сервері в країні Фінляндія (ЄС), тому діє Загальний регламент про захист даних (GDPR). Текст GDPR (EUR-Lex, англ.)

Спершу перевіряємо кодування

Праворуч унизу в рядку стану Notepad++ показує, як зараз читає файл: UTF-8, UTF-8-BOM або ANSI. В українській Windows ANSI — це Windows-1251. У меню кодувань (Encoding) два види пунктів, які часто плутають:

  • ANSI, UTF-8, UTF-8-BOM (верх меню): Notepad++ заново читає ті самі байти й файл не змінює. Це лише налаштування відображення.
  • Convert to ANSI, Convert to UTF-8 … (низ меню): Notepad++ записує символи в новому кодуванні. Після збереження файл зміниться.

Випадок 1: РџСЂРёРІС–С‚ замість «Привіт»

Файл збережено в UTF-8, а Notepad++ читає його як ANSI. Виберіть у меню кодувань UTF-8, і літери одразу стануть правильними. Не конвертуйте: «Convert to UTF-8» збереже сміття РџСЂРёРІС–С‚ як справжні символи.

Випадок 2: xCF або квадратики замість «П»

Файл збережено в ANSI (Windows-1251), а прочитано як UTF-8. Спершу виберіть ANSI (в українській Windows це Windows-1251), щоб літери стали правильними, потім Convert to UTF-8. Після збереження файл буде в UTF-8. Якщо літери все одно неправильні, можливо, файл у KOI8-U чи CP866. Ці кодування є в підменю кирилиці (Cyrillic).

Випадок 3: сміття вже записано у файл

Якщо за вибраного кодування UTF-8 Notepad++ усе одно показує РџСЂРёРІС–С‚, зіпсований текст уже збережено. Тоді жоден пункт меню не допоможе надійно, особливо якщо правильні й зіпсовані рядки перемішані. Перетягніть файл у Mojibuster вище: він виправить лише зіпсовані місця й покаже кожну зміну.

Файл, у якому помилку вже збережено

До

Перевірка перекладу: Їжак, Єнакієве, ґанок, щедрий, Біла Церква — усе вірно.

Після

Перевірка перекладу: Їжак, Єнакієве, ґанок, щедрий, Біла Церква — усе вірно.

Нові файли завжди в UTF-8

У Settings → Preferences → New Document задайте для нових файлів кодування UTF-8. Для файлів, які відкриватиме Excel, краще UTF-8-BOM, докладніше в статті кракозябри в Excel. Скриптам для Windows PowerShell 5.1 також потрібен BOM, див. PowerShell. Якщо потрібна лише Windows-1251, прочитайте про перекодування в UTF-8.

Часті запитання

Чим відрізняються UTF-8 і UTF-8-BOM?

Символи зберігаються однаково. UTF-8-BOM додатково пише на початку три невидимі байти, за якими Excel і старі програми впізнають UTF-8.

Чому Notepad++ іноді неправильно визначає кодування?

У файлі без BOM немає відомостей про кодування, тому Notepad++ його вгадує. У коротких файлах з малою кількістю українських літер він помиляється частіше.

Чи можна конвертувати одразу кілька файлів?

У Notepad++ лише через макроси чи плагіни. У Mojibuster файли обробляються по одному, кожен за кілька секунд.

Інші інструкції