Спершу перевіряємо кодування
Праворуч унизу в рядку стану 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 файли обробляються по одному, кожен за кілька секунд.