Loading…

О форматировщике YAML Онлайн форматировщик и beautifier YAML

Работаете с запутанными `values.yaml`, `docker-compose.yml` или рабочими процессами GitHub Actions? Этот форматировщик YAML нормализует отступы и переносы строк, сохраняя якоря, алиасы и блочные скаляры. Вставьте ваш YAML, настройте параметры отступов и скопируйте чистую, готовую к проверке конфигурацию за секунды. 🚀

Ключевые особенности этого форматтера YAML

  • Форматирование на основе Prettier, настроенное для конфигурационных файлов YAML 1.2
  • Единообразные отступы с настраиваемым размером (1–8) и выбором пробелов или табуляции
  • Настраиваемая длина строки для удобочитаемости длинных ключей и значений
  • Корректно обрабатывает якоря, псевдонимы, логические значения как строки и многострочные блоки
  • Работает с файлами `.yaml` и `.yml` для Kubernetes, Docker Compose, CI-пайплайнов и других
  • Вставьте YAML из редактора или перетащите конфигурационные файлы в форматтер
  • Одним кликом скопируйте отформатированный YAML обратно в редактор или репозиторий
  • Форматирование выполняется в основном на стороне клиента в вашем браузере; безопасный серверный резерв используется только при отсутствии необходимого парсера/плагина

🔧 Как форматировать конфигурационные файлы YAML for yaml-formatter

1

1. Вставьте или загрузите ваш YAML

Скопируйте любой фрагмент YAML (манифест Kubernetes, `docker-compose.yml`, workflow GitHub Actions, плейбук Ansible и т.д.) и вставьте его в редактор или перетащите файл `.yaml` / `.yml`.

2

2. Настройте отступы и переносы

Выберите использование пробелов или табуляции, установите размер отступа (1–8 пробелов) и настройте длину строки в соответствии со стилем вашей команды. Длина строки `0` фактически отключает переносы, используя очень большое внутреннее значение `printWidth`.

3

3. Запустите форматтер

Нажмите кнопку **Форматировать**. Движок YAML на основе Prettier переписывает вашу конфигурацию с единообразными отступами, сохраняя якоря, псевдонимы и блоки, чтобы семантика не изменилась.

4

4. Скопируйте чистый YAML

Просмотрите вывод, затем скопируйте отформатированный YAML обратно в редактор, закоммитьте в Git или вставьте в ваш CI/CD или интерфейс облачного провайдера.

Технические характеристики

Движок форматирования и поддержка YAML

Этот инструмент построен на основе форматтера YAML на базе Prettier с опциями конфигурации, доступными в интерфейсе.

ФункцияПоддержкаПримечания
Версия YAML✅ YAML 1.2 (типичная)Подходит для современного YAML в стиле конфигураций, используемого в Kubernetes, Docker, CI/CD и приложениях.
Якоря и псевдонимы✅ СохраненыСохраняет ссылки `&anchor` и `*alias` нетронутыми при переформатировании отступов окружающей структуры.
Блочные скаляры✅ СохраненыСохраняет блочные скаляры `|` и `>` с учётом внутренних отступов.
Логические значения и числа✅ Аккуратная обработкаФорматирование сохраняет значения, но может выявить различия между `yes` и "yes" или `0012` и "0012".
Многодокументный YAML (`---`)✅ ТипичноНесколько документов в одном файле сохраняются в порядке и форматируются единообразно.
Если данный фрагмент YAML использует крайне экзотический синтаксис или пользовательские теги, которые встроенный парсер Prettier YAML не понимает, вы можете увидеть ошибку парсера. В этом случае упростите фрагмент или запустите форматирование локально с помощью вашего инструментария.

Отступы, Длина строки и Стиль вывода

Форматировщик предоставляет ключевые опции, чтобы вы могли максимально точно соответствовать стилю вашего проекта.

НастройкаОпцииПрактическая рекомендация
Стиль отступовПробелы / ТабуляцииБольшинство руководств по стилю YAML рекомендуют пробелы; табуляции только если ваша команда явно предпочитает их.
Размер отступа1–8 пробелов2 пробела распространены для Kubernetes и Docker; 4 пробела для лучшей визуальной ясности.
Перенос / длина строки0–120 символов`0` отключает перенос (использует очень большое внутреннее значение `printWidth`), 80–100 сохраняет компактность различий.
Расширения файлов.yaml, .ymlСоответствует `fileExtensions` и `acceptedFileTypes` в конфигурации инструмента.
Согласуйте эти опции с `.prettierrc` или `.editorconfig` вашего репозитория, чтобы онлайн-форматирование соответствовало локальной разработке и проверкам CI.

Ограничения и Производительность

Оптимизировано для интерактивного форматирования YAML-конфигураций во вкладке браузера.

ПараметрОграничение / ПоведениеПримечания
Максимальный размер ввода≈ 2 МБ (~2 000 000 символов)Ограничение безопасности, применяемое внутри функции форматирования.
Максимальный размер загружаемого файла≈ 5 МБОграничено настройкой `maxFileSize` в интерфейсе для удобства и надежности.
Таймаут форматирования~25 секундДолгие операции прерываются, чтобы предотвратить зависание браузера.
Основное выполнениеНа стороне клиентаЗапускается через `runPrettier` и плагин Prettier YAML непосредственно в вашем браузере.
Резервный серверТолько при ошибках парсера/плагинаЕсли необходимый парсер или плагин отсутствует, можно использовать защищенную конечную точку `/api/yaml-formatter` в качестве резервного варианта.
Для больших наборов YAML (Helm charts, большие библиотеки CRD и т.д.) предпочтительнее использовать CLI инструменты, такие как `prettier` или `yq`, интегрированные в ваш локальный рабочий процесс или CI пайплайны.

Альтернативы CLI для форматирования YAML

Используйте онлайн-форматтер для быстрой очистки, а для больших проектов и автоматизированных пайплайнов полагайтесь на CLI инструменты.

Linux / 🍏 macOS

Форматирование YAML файла с помощью yq (красивое отображение)

yq eval -P config.yaml > config.formatted.yaml

Перезаписывает YAML с последовательными отступами и порядком ключей в зависимости от версии yq.

Нормализация YAML с помощью Prettier

prettier --parser yaml --write "**/*.{yaml,yml}"

Запускает тот же класс движка (парсер YAML Prettier) во всем вашем репозитории.

Windows (PowerShell / cmd)

Форматирование YAML с использованием PowerShell + yq

yq eval -P config.yaml | Set-Content config.formatted.yaml

Красиво отображает YAML и записывает результат обратно на диск.

Обработка YAML через объекты PowerShell

Get-Content config.yaml -Raw | ConvertFrom-Yaml | ConvertTo-Yaml | Set-Content config.formatted.yaml

Использует поддержку YAML в PowerShell для нормализации структуры и отступов.

Сочетайте этот онлайн-форматтер с шагом `prettier --check` или `yq` в вашем CI пайплайне, чтобы гарантировать, что весь YAML в репозитории остается последовательно отформатированным.

Практические случаи использования YAML

Инфраструктура и манифесты Kubernetes

  • Форматируйте манифесты Kubernetes `Deployment`, `Service` и `Ingress` перед код-ревью.
  • Нормализуйте файлы `values.yaml` в Helm charts для более чистых различий.
  • Поддерживайте последовательные отступы в YAML для CRDs, ConfigMaps и Secrets во всех средах.
apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
        - name: my-app
          image: my-app:latest
          ports:
            - containerPort: 80

Docker Compose и локальная конфигурация разработки

  • Украсьте `docker-compose.yml` перед тем, как поделиться им в документации или тикетах.
  • Выравнивание отступов сервисов, сетей и томов для упрощения обслуживания.
  • Подготовка чистых фрагментов YAML для постов в блогах и руководств по адаптации.
version: "3.9"
services:
  web:
    image: myapp:latest
    ports:
      - "8080:80"
    environment:
      - NODE_ENV=production
  db:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: example

CI/CD Пайплайны и Автоматизация

  • Форматирование рабочих процессов GitHub Actions (`.github/workflows/*.yml`).
  • Очистка GitLab CI (`.gitlab-ci.yml`) или YAML Azure Pipelines.
  • Поддержание читаемости YAML для автоматизации и инфраструктуры как кода между командами.
name: CI
on:
  push:
    branches: [ main ]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
      - run: npm ci
      - run: npm test

❓ Frequently Asked Questions

Что делает этот форматтер YAML?

Он принимает входные данные YAML (обычно файлы конфигурации) и перезаписывает их с единообразными отступами и переносами, используя движок YAML на основе Prettier. Семантика вашей конфигурации остается неизменной, но структура становится гораздо удобнее для чтения и проверки.

🧩Какие функции YAML поддерживаются?

Форматтер предназначен для распространенных функций YAML 1.2, используемых в конфигурационных файлах: отображения, списки, якоря и псевдонимы, блочные скаляры (`|` / `>`), а также многодокументные файлы, разделенные `---`. Пользовательские теги и очень экзотические конструкции могут не полностью поддерживаться базовым парсером.

📏Есть ли ограничение по размеру для входных данных YAML?

Для стабильности и производительности в браузере текстовый ввод ограничен примерно 2 МБ (~2 000 000 символов), а загружаемые файлы — около 5 МБ. Для больших кодовых баз или сгенерированного YAML лучше запускайте Prettier или yq из вашего CLI или CI-пайплайна.

🔐Загружается ли мой YAML на сервер?

Форматирование в основном выполняется в вашем браузере через `runPrettier` и плагин Prettier YAML, поэтому ваш YAML не покидает клиент при нормальной работе. В редких случаях, когда отсутствует необходимый плагин парсера, инструмент может переключиться на защищенную конечную точку `/api/yaml-formatter`. Даже в этом случае ваш YAML обрабатывается только временно и не сохраняется.

⚠️Почему иногда появляются ошибки парсера?

Ошибки парсера обычно означают, что YAML содержит ошибки (например, несогласованные отступы, отсутствие `:` или неправильно выровненные элементы списка) или использует синтаксис, который встроенный парсер не понимает. Проверьте отступы и структуру или попробуйте упростить фрагмент, затем снова запустите форматтер.

📚Как это связано с моей локальной настройкой Prettier?

Этот инструмент использует движок YAML на основе Prettier, аналогично запуску `prettier --parser yaml`. Вы можете использовать его для быстрых единичных исправлений и по-прежнему полагаться на локальный `.prettierrc` и CLI-команды для форматирования всего проекта.

Pro Tips

Best Practice

Нормализуйте весь YAML в репозитории (Kubernetes, GitHub Actions, Docker Compose) с одинаковым стилем отступов, чтобы значительно упростить сравнение и проверку изменений.

Best Practice

Будьте осторожны со значениями типа `yes`, `no`, `on`, `off`, `0012` – заключайте их в кавычки, если хотите, чтобы они обрабатывались как строки, а не как логические значения или числа в восьмеричном формате.

Best Practice

Используйте этот онлайн-форматтер для быстрой очистки фрагментов для документации или тикетов, а для полных проектов полагайтесь на `prettier` или `yq` в pre-commit хуках.

CI Tip

При рефакторинге больших конфигураций сначала отформатируйте их, чтобы семантические изменения четко выделялись в Git diff, а не терялись в шуме отступов.

Additional Resources

Other Tools