Проверка YAML и конвертер YAML ↔ JSON
Проверяет YAML на ошибки и конвертирует между YAML и JSON
Загрузка инструмента…
Находит синтаксические ошибки YAML с указанием строки и столбца и конвертирует YAML в JSON и обратно. Пригодится, чтобы понять, почему не загружается YAML-файл, например конфигурация Docker Compose, Kubernetes или CI, или перенести данные из JSON в YAML.
Как пользоваться
- Вставьте YAML в поле «YAML» слева или нажмите «Открыть файл». Поле «JSON» обновляется сразу, и показывается «Корректный YAML» или «Ошибка YAML».
- При ошибке прочитайте причину и подсказку, затем нажмите «Перейти к строке». Если для отступов использовались табуляции, нажмите «Заменить табуляции пробелами».
- Чтобы превратить JSON в YAML, вставьте JSON в правое поле. На результат влияют «Отступ», «Сортировать ключи» и «Несколько документов ↔ массив JSON».
- Скачайте результат кнопкой «Сохранить .yaml» или «Сохранить .json».
Как это работает
- YAML читается библиотекой js-yaml (лицензия MIT) по базовой схеме YAML 1.2. Для значений, которые старые парсеры YAML 1.1 читают иначе, выводится отдельное предупреждение.
- «Переформатировать YAML» переписывает YAML заново, поэтому комментарии в нём удаляются.
- Всё конвертируется в этом браузере. Ничего из введённого не сохраняется и никуда не отправляется. Файлы больше 30 МБ открыть нельзя.
Частые вопросы
- Можно ли использовать табуляцию для отступов в YAML?
- Нет. В YAML для отступов допускаются только пробелы. Если найдены табуляции, ошибка показывается вместе с кнопкой «Заменить табуляции пробелами».
- Почему YAML превращает no или yes в true или false?
- Парсеры YAML 1.1 читают yes, no, on и off как true или false. В YAML 1.2 логическими значениями являются только true и false, но надёжнее всего сохранить слово как текст, взяв его в кавычки, например "no".
- Почему меняются значения вроде 0755 или 1.10?
- Без кавычек они читаются как числа, поэтому ведущие или конечные нули пропадают. Берите в кавычки почтовые индексы, номера версий и режимы файлов, которые должны остаться в исходном виде.
- Нужен ли в YAML пробел после двоеточия?
- Да. Ключ и значение записываются как key: value, с пробелом после двоеточия. Без пробела key:value читается как одна строка.