Перейти до вмісту

Список у JSON дерево

Перетворіть відступний або маркований список на вкладене дерево JSON (або YAML) і навпаки.

Введення
Вихід

Список у JSON дерево

Вставте список, структура якого показана через відступи — пробіли, табуляції або маркери та нумерація — і цей інструмент перетворює його на вкладене дерево JSON або YAML. Він читає контури, карти сайтів, списки папок, організаційні діаграми та будь-які експорти з додатків для заміток, де структура знаходиться у відступах, а не у явній розмітці. Перемкніть напрямок, і інструмент працює й у зворотному напрямку: вставте дерево JSON і отримайте відступний список назад.

Опції контролюють як читання вхідних даних, так і формування вихідних даних. Розмір відступу встановлює, скільки пробілів вважається одним рівнем (табуляція завжди вважається одним рівнем, незалежно від розміру відступу). Маркери та нумерація можуть бути проігноровані — видалені перш ніж рядок стане ім'ям вузла — або збережені як текст. Формат виведення вибирається між об'єктом з масивом потомків, масивом масивів або картою імен, де елементи кожного рівня стають ключами об'єкта; ім'я ключа потомків застосовується тільки до формату об'єкта. Розділити ім'я/значення на розділює кожен рядок на ім'я та значення за розділювачем, наприклад ":" — зручно для контурів "ключ: значення" — і той же розділювач об'єднує їх під час зворотного перетворення.

Відступи, які не відповідають встановленому розміру відступу — три пробіли, де очікуються два — не зупиняють перетворення; інструмент присвоює найближчий рівень і показує кількість нерівних рядків у підсумку нижче вихідних даних, так що випадкова табуляція або артефакт вставлення виділяються. Перетворення дерева назад у список в даний час читає тільки вхідні дані JSON, а не YAML.

Все працює локально у вашому браузері — ничого, що ви вставляєте, ніколи не завантажується. Скопіюйте результат, завантажте його як файл .txt або відправте назад до вхідних даних, щоб продовжити коригування форми.

FAQ

Які відступи очікує інструмент?
Будь-який послідовний крок пробілів або табуляцій — табуляція завжди вважається одним рівнем, незалежно від встановленого вами розміру відступу для пробілів. Рядки, чиї відступи не кратні встановленому розміру відступу, все ще перетворюються, і кількість таких рядків відображається у підсумку нижче вихідних даних.
Чи можу я перетворити дерево JSON назад у відступний список?
Так — перемкніть напрямок на "Дерево у список". Він читає тільки вхідні дані JSON; вставлення YAML у тому напрямку повертає помилку з проханням замість цього використовувати JSON.
У чому різниця між трьома форматами виведення?
"Об'єкт з потомками" вкладає кожен елемент як { name, children: [...] }; "Масив масивів" поєднує кожне ім'я з масивом його потомків; "Карта імен" перетворює кожен рівень на ключі об'єкта, що є компактним, але вимагає унікальних імен — дублікати отримають суфікси "(2)", "(3)".
Що робить "Розділити ім'я/значення на"?
Він розділює кожен рядок при першому виникненні символу або рядка, який ви вводите — "ключ: значення" з розділювачем двокрапки стає вузлом з окремими полями імені та значення, замість одного довгого імені.
Мій список завантажується де-небудь?
Ні. Перетворення працює повністю у вашому браузері — ваш список та отримане дерево ніколи не покидають ваш пристрій.