Перейти к содержанию

YAML в TOML

Преобразуйте YAML в TOML с таблицами для вложенных объектов и массивами таблиц для списков объектов. Поддерживает все основные форматы YAML.

Входные данные
Выходные данные

YAML в TOML

Вставьте YAML — манифест Kubernetes, рабочий процесс GitHub Actions, плейбук Ansible или файл конфигурации приложения — и этот инструмент преобразует его в эквивалент TOML. Вложенные отображения становятся таблицами TOML, а список объектов становится массивом таблиц, поэтому результат имеет форму, которую уже понимают читатели Cargo.toml или pyproject.toml.

Пять параметров формируют выходные данные. Сортировка ключей по алфавиту переупорядочивает ключи каждой таблицы для предсказуемого diff. Многострочные строки как блоки отображает значение с разрывом строки как тройной кавычки TOML вместо экранированной однострочной записи. Встроенные таблицы для простых объектов сворачивает отображение, чьи значения все скалярные, в одну строку { a = 1, b = 2 }, в то время как отображение, которое само вкладывает другое отображение, сохраняет собственный заголовок [table]. Сохранить комментарии передает комментарий YAML # написанный над ключом в выходные данные TOML над этим ключом. Пустые значения решает, что произойдет с ключом без значения, поскольку TOML не имеет null: пропустить ключ или записать его как пустую строку.

Конвертер принимает окончания строк LF и CRLF, односвязные и двойные кавычки, потоковые коллекции такие как [a, b] и {a: 1}, а также литеральные (|) и свёрнутые (>) блочные скаляры с их индикаторами отгрызания. Он валидирует документ при анализе: дублирующийся ключ, незавершённая строка или плохой отступ останавливают преобразование с точным номером строки для исправления, а не угадыванием. Якоря, псевдонимы и несколько YAML документов в одном файле не поддерживаются, поскольку TOML не имеет эквивалента ни для одного из них — сначала разверните якоря, если ваш файл их использует.

Всё работает в вашем браузере. YAML, который вы вставляете, никогда не загружается никуда. Скопируйте выходные данные TOML, загрузите их как файл .txt или отправьте их в входные данные другого инструмента для продолжения работы.

FAQ

Поддерживает ли она якоря и псевдонимы YAML?
Нет. Якоря YAML (&) и псевдонимы (*) не имеют эквивалента в TOML, поэтому конвертер сообщает о них как неподдерживаемых — сначала разверните их, например с помощью инструмента расширения якорей YAML.
Что происходит со списком объектов YAML?
Он становится массивом таблиц TOML ([[key]]), с одним разделом на элемент, в том же порядке, что и в списке YAML.
Как обрабатываются пустые или нулевые значения YAML?
TOML не имеет нулевого значения, поэтому опция Пустые значения позволяет либо пропустить ключ полностью, либо записать его как пустую строку ("").
Мой YAML загружается где-то?
Нет. Преобразование выполняется полностью в вашем браузере — ваш файл никогда не покидает ваше устройство.