FileTree YAML (FTY)

Обзор

FileTree YAML (FTY) — это легкочитаемый иерархический формат данных, предназначенный для представления файловых систем. Он использует стандартные структуры YAML для описания файлов и директорий, что позволяет легко сериализовать и десериализовать целые структуры проектов или отдельных папок.

Основные принципы

Каждый элемент в файловой системе (будь то файл или папка) представляется как YAML-объект (эквивалент JSON-объекта) с двумя обязательными полями:

  1. name (строка): Имя файла или папки.
  2. data (строка или массив):
    * Если элемент является файлом, поле data содержит строку с полным содержимым этого файла.
    * Если элемент является папкой (директорией), поле data содержит массив YAML-объектов. Каждый объект в этом массиве представляет собой вложенный файл или папку, следуя той же структуре FTY.

Пример структуры

- name: root-folder
  data:
    - name: file1.txt
      data: Это содержимое первого файла.
    - name: sub-folder
      data:
        - name: file2.js
          data: |
            console.log("Hello from file2.js");
        - name: empty-folder
          data: [] # Пустая папка

Особенности и рекомендации

  • Кодировка: Рекомендуется использовать UTF-8 для содержимого файлов и имен.
  • Пустые папки: Пустые папки представляются массивом data с нулевым количеством элементов ([]).
  • Многострочное содержимое: Для файлов с многострочным содержимым рекомендуется использовать блочные индикаторы стиля YAML (например, | для буквального блока, > для сложенного блока) для улучшения читаемости.
  • Корневой элемент: Корневым элементом FTY-документа обычно является массив, содержащий один или несколько объектов верхнего уровня, представляющих корневые папки или файлы.
Edit
Pub: 24 Jun 2025 00:23 UTC
Views: 4