Парсер TOML
Мгновенный разбор и преобразование TOML (Tom's Obvious Minimal Language) в JSON. Вся обработка выполняется в вашем браузере для максимальной безопасности и конфиденциальности.
Разобранный JSON появится здесь...
Как использовать парсер TOML
Вставьте TOML
Введите или вставьте содержимое конфигурации TOML в область ввода.
Разбор
Нажмите кнопку «Разобрать» или содержимое будет разобрано автоматически.
Копирование JSON
Просмотрите сгенерированный вывод JSON и скопируйте его в буфер обмена.
Что такое TOML?
TOML (Tom's Obvious Minimal Language) — это минимальный формат конфигурационных файлов, который легко читать благодаря очевидной семантике. Созданный Томом Престон-Вернером, TOML разработан для однозначного отображения в хеш-таблицу и используется в проектах, таких как Cargo для Rust, pip для Python и генератор статических сайтов Hugo.
Возможности TOML
Пары «ключ-значение»
Простой синтаксис ключ = значение для базовых типов
Таблицы (секции)
Организация конфигурации с заголовками [секция]
Массивы и встроенные таблицы
Поддержка массивов, вложенных таблиц и синтаксиса встроенных таблиц
Часто задаваемые вопросы
TOML поддерживает строки, целые числа, числа с плавающей точкой, логические значения, дату/время, массивы и таблицы (хеш-отображения). Также поддерживаются встроенные таблицы и многострочные строки.
TOML разработан специально для конфигурационных файлов. В отличие от JSON, он поддерживает комментарии и более удобен для чтения. В отличие от YAML, он имеет более строгую и простую грамматику, что снижает вероятность ошибок разбора.
Да! Весь разбор выполняется полностью в вашем браузере. Никакие данные не отправляются на сервер, поэтому ваши конфигурационные файлы остаются полностью конфиденциальными.
[server] открывает таблицу; [server.tls] вкладывает в неё вложенную таблицу; а [[products]] начинает массив таблиц, где каждый повторный заголовок [[products]] добавляет новый элемент — это стандартный приём для списков записей в конфигурационных файлах. Отступы носят косметический характер; структура определяется заголовками в квадратных скобках.
В TOML 1.0 есть четыре типа данных даты и времени: дата-время со смещением (1979-05-27T07:32:00Z, формат RFC 3339), локальная дата-время без смещения, локальная дата (1979-05-27) и локальное время (07:32:00). Метки времени — полноценные значения первого класса: никаких кавычек и разбора строк, что устраняет целый класс ошибок конфигурации, которые порождают строковые даты в JSON или YAML.
По сравнению с INI: TOML имеет настоящую спецификацию, типизированные значения (целые и дробные числа, логические значения, даты, массивы) и чистую вложенность вместо соглашений о ключах с точками. По сравнению с JSON: комментарии, многострочные строки и отсутствие ловушек с висячими запятыми. JSON по-прежнему лучше подходит для обмена данными между программами; TOML нацелен именно на конфигурацию, написанную человеком.
Cargo в Rust (Cargo.toml) сделал формат популярным; Python стандартизировал его для конфигурации сборки (pyproject.toml, PEP 518); также он встречается в Hugo, Netlify и многих CI-системах. Формат поддерживается организацией toml-lang с набором тестов на соответствие спецификации — одна из причин, почему парсеры в разных языках дают согласованные результаты.
Тройные двойные кавычки охватывают несколько строк с реальными переводами строк и поддерживают обратный слэш в конце строки, который обрезает пробельные символы; тройные одинарные кавычки делают то же самое, но вовсе без обработки escape-последовательностей. Литеральные строки в одинарных кавычках тоже полностью игнорируют escape-последовательности — идеально для путей Windows (C:\Users\name) и regex-шаблонов, где иначе пришлось бы удваивать каждую обратную косую черту.
Похожие инструменты
Набор парсеров JSON
Валидация, форматирование, минификация и запросы JSON с помощью JSONPath прямо в браузере с мгновенной обратной связью об ошибках
Парсер XML
Форматирование, валидация и запросы к XML-документам с поддержкой XPath
Парсер CSV
Парсинг CSV-данных в визуальную таблицу с настраиваемым разделителем и статистикой столбцов
Авторитетные источники
Первоисточники, лежащие в основе этого инструмента, — официальные стандарты и спецификации, а не пересказы из вторых рук.