’ замість апострофа: як виправити лапки й тире

У тексті ’ замість апострофа, В« і В» замість лапок, — замість тире чи в„– замість знака номера? Ці знаки збережено в UTF-8, а програма прочитала їх як Windows-1251. Mojibuster складає їх назад – вставте текст у поле вище.

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

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

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

Виправити

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

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

Чому ламаються саме лапки й тире

Word, Outlook, WordPress та багато інших програм під час набору самі замінюють прості лапки й дефіси на типографські: «, », ’, –, —, …. Такі знаки потім потрапляють у вивантаження з 1С, CSV-файли, листи, старі форуми й поштові клієнти. Якщо програма читає UTF-8 як Windows-1251, текст ламається.

Тире, апостроф, три крапки й лапки “ ” „ в UTF-8 мають вигляд E2 80 xx і займають три байти. У Windows-1251 вони завжди стають †плюс третій знак. Лапки-«ялинки» займають два байти й перетворюються на В« і В». Кириличні букви теж займають два байти, тому зазвичай поруч ламаються й вони – детальніше про це.

Речення з розсилки інтернет-магазину, прочитане як Windows-1251

Кракозябри

Не пропустіть «літній» розпродаж – знижки до 30 %… Замовлення № 125 уже п’ять днів у дорозі — дякуємо!

Після виправлення

Не пропустіть «літній» розпродаж – знижки до 30 %… Замовлення № 125 уже п’ять днів у дорозі — дякуємо!

Усі варіанти коротко

  • ’ → ’ (апостроф, як у словах «п’ять» чи «м’ята», а також закрита одинарна лапка)
  • В« → «, В» → » (лапки-«ялинки»)
  • „ → „, “ → “, ” → ” (внутрішні лапки)
  • – → – (коротке тире), — → — (довге тире)
  • … → … (три крапки)
  • в„– → № (знак номера)
  • †без нічого після нього → див. нижче

Особливий випадок: †і більше нічого

Відкрита одинарна лапка ‘ містить байт 98, якому в Windows-1251 не відповідає жоден знак. Тому від неї лишається тільки вЂ. Mojibuster не змінює такий голий вЂ, бо не може знати, який знак там був. Перевірте ці місця вручну: найчастіше це була одинарна лапка.

Як цього уникнути

  • Зберігайте тексти з Word і редакторів в UTF-8 і вказуйте кодування під час імпорту.
  • Перевірте кодування в сервісах розсилок, WordPress та інтернет-магазинах: усюди має бути UTF-8.
  • Якщо кракозябри в листах, причина часто на боці відправника. Як прочитати такий лист в Outlook.
  • У базах даних встановіть для таблиць і з’єднання utf8mb4 – див. MySQL і phpMyAdmin.

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

Що, якщо замість одного знака стоїть довгий ланцюжок символів?

Тоді текст найімовірніше перетворили неправильно двічі. Mojibuster виправляє і це – детальніше про подвійне кодування.

Може, просто замінити все на прості лапки?

Не обов’язково. Mojibuster повертає початкові знаки. Якщо вам зручніші ' і ", їх можна замінити вже потім.

Чому зіпсовані лише лапки, а букви нормальні?

Імовірно, текст частково передрукували або зібрали з двох джерел. Mojibuster виправляє лише зіпсовані місця, а правильні знаки не чіпає.

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