🧹
Код

Форматировщик и минификатор кода

Форматировщик и минификатор
Исходный код
Результат

Форматирование выполняется в вашем браузере — код не отправляется на сервер и нигде не сохраняется. Автоисправление работает только для JSON: там ошибки механические. Для остальных языков мы показываем место ошибки, но не переписываем ваш код.

Об инструменте: форматирование, минификация и проверка кода

Этот инструмент заменяет восемь отдельных вкладок. Он приводит код к читабельному виду, сжимает его для публикации и показывает, где именно синтаксическая ошибка — с номером строки и позицией. Поддерживает JSON, JavaScript, CSS, HTML, XML, PHP, YAML и Markdown. Здесь нет сторонней рекламы, лимитов на объём и регистрации.

Вся работа происходит в вашем браузере — код не отправляется на сервер и нигде не сохраняется. Для кода это принципиально: в нём бывают ключи, пароли и данные клиентов.

Главные преимущества инструмента:

  • Язык определяется автоматически: вставьте код — инструмент распознает его по структуре. Если догадка ошибочна, язык можно выбрать вручную.

  • Ошибка с координатами: вместо глухого «невалидно» вы видите сообщение парсера и точное место — строку и позицию.

  • Форматирует проверенный инструмент, а не самоделка: внутри работает Prettier — тот самый, что стоит в редакторах миллионов разработчиков. Результат совпадает с тем, который дала бы ваша среда разработки.

Форматирование или минификация?

Форматирование

Этот режим расставляет отступы и переносы так, чтобы код было удобно читать. Он пригодится, когда вы получили ответ API одной длинной строкой, унаследовали чужой файл или просто хотите увидеть структуру. Отступ можно задать: два пробела, четыре или табуляция.

Минификация

Этот режим убирает всё лишнее — пробелы, переносы, комментарии — чтобы файл весил меньше. Это нужно перед публикацией на сайт, а не для работы с кодом.

Минификация доступна для JSON, JavaScript, CSS, HTML и XML. Для PHP, YAML и Markdown её нет намеренно: в PHP сжатие кода не даёт выигрыша и ломает отладку, а в YAML и Markdown отступы и переносы — это и есть синтаксис.

Что именно инструмент исправляет сам?

Здесь важно быть точным, потому что автоматическое исправление кода — вещь опасная.

Для JSON исправление действительно работает. Ошибки в нём почти всегда механические, поэтому инструмент молча починит и обязательно покажет перечень того, что изменил:

  • Комментарии удаляются: в JSON их не бывает, хотя редакторы часто и позволяют их писать.

  • Лишние запятые перед закрывающей скобкой убираются: чаще всего они остаются после удаления последнего элемента.

  • Одинарные кавычки заменяются на двойные, а ключи без кавычек берутся в кавычки: так JSON копируют из JavaScript.

  • True, False, None — литералы Python, в котором они пишутся с большой буквы. Заменяются на true, false, null.

  • NaN и undefined — литералы JavaScript, которых в JSON не существует вовсе. Заменяются на null.

  • Типографские кавычки заменяются на прямые: они появляются после копирования через Word или мессенджер.

Python и JavaScript здесь упомянуты не как языки, которые инструмент форматирует, а как источники текста: именно оттуда люди копируют в поле то, что считают JSON. Python печатает словарь собственным синтаксисом, а не через json.dumps() — и получается почти JSON, но невалидный. Форматирование Python инструмент не поддерживает.

Для остальных языков исправления нет, и это осознанное решение. Починить произвольную синтаксическую ошибку в JavaScript или PHP означает угадать, что именно автор имел в виду. Ошибиться здесь легко, а цена высока: инструмент втихую изменит логику вашего кода. Поэтому для JS, PHP, CSS, HTML и XML мы показываем место ошибки и оставляем решение за вами.

Несколько практических советов

  • Ответ API одной строкой: вставьте как есть и нажмите «Форматировать» — язык определится сам.

  • Ошибка может быть не в указанной строке: парсер сообщает, где он заметил проблему. Незакрытую скобку обычно видно значительно ниже реального места, поэтому смотрите выше указанной позиции.

  • Минифицированный код не редактируют: сжимайте последним шагом, а работайте всегда с отформатированным оригиналом.

  • Секреты в коде: хотя всё и обрабатывается в вашем браузере, возьмите за привычку не вставлять ни в один онлайн-инструмент боевые ключи и пароли.