Как пользоваться: Умные кавычки → прямые
- Вставьте код или текст, который не работает: JSON, JavaScript, CSS или команду терминала.
- Оставьте режим «Умные → прямые». В отчёте будет видно, сколько типографских кавычек, тире и скрытых символов заменено.
- Скопируйте очищенную версию. Если это JSON, значок подтвердит, что его теперь можно разобрать.
- Нужен текст для публикации? Переключитесь на «прямые → умные», чтобы получить правильные типографские кавычки и тире.
Почему умные кавычки ломают код
Текстовые редакторы, Slack, Notion, Google Docs, macOS и многие CMS «по доброте душевной» заменяют прямые кавычки (" и ') типографскими (“ ” и ‘ ’). Языки программирования понимают только прямые кавычки, поэтому код, скопированный из таких приложений, выдаёт ошибки вроде Unexpected token “ in JSON, SyntaxError: Invalid or unexpected token или команда в терминале тихо делает не то, что нужно. Визуально разница почти незаметна, поэтому такую ошибку трудно найти.
Что заменяется
| Символ | Название | Заменяется на |
|---|---|---|
| “ ” „ « » | Типографские и угловые двойные кавычки | " |
| ‘ ’ ‚ ′ | Типографские одинарные кавычки, апостроф, штрих | ' |
| – — − | Среднее тире, длинное тире, знак минуса | - |
| … | Многоточие | ... |
| NBSP, тонкий пробел | Неразрывные пробелы | Обычный пробел |
| ZWSP, ZWJ, BOM, мягкий перенос | Невидимые символы | Удаляются |
Классический пример — длинное тире в --flag: Slack превращает двойной дефис в «—», и параметр командной строки перестаёт работать.
Как этого избежать
- Передавайте код в блоках кода (обратные кавычки в Slack, Notion, GitHub): там кавычки остаются прямыми.
- На macOS отключите опцию Системные настройки → Клавиатура → Ввод текста → Использовать умные кавычки и тире.
- В Word отключите «Заменять прямые кавычки “умными”» в разделе Автозамена → Автоформат при вводе.
Когда кавычки исправлены, отформатируйте и проверьте JSON с помощью JSON-форматтера.
Также ищут как: исправить кавычки json, smart quotes.
Инструменты, которые хорошо сочетаются с Умные кавычки → прямые
- Генератор мягких переносов — Не дайте длинным словам, например «Versicherungsleistungen», выходить за край на телефоне.
- HTML-сущности — Экранируйте < > & ", чтобы текст безопасно отображался в HTML, преобразуйте акценты и символы в именованные или числовые сущности либо декодируйте HTML с сущностями обратно в обычный текст.
- Сравнение текстов — Вставьте исходную и изменённую версии, чтобы увидеть добавленные, удалённые и изменённые строки рядом — с подсветкой точно изменённых слов внутри каждой строки.
- Удаление дублей строк — Вставьте список, чтобы мгновенно удалить повторяющиеся строки.
Часто задаваемые вопросы
Как исправить ошибки «Unexpected token» в JSON?
Меняются ли кавычки внутри строк?
Почему команда не работает, если скопировать её из Slack?
-- в длинное тире, а кавычки в типографские. Этот инструмент возвращает их к ASCII-символам, которые ожидает терминал.