# YAML 格式化

格式化和美化 YAML。注意：注释会丢失（js-yaml 限制）

> 标准页面: https://elysiatools.com/zh/tools/yaml-formatter

- **分类:** Format Conversion

- **关键词:** yaml, 格式化, 美化, yml, yaml格式化工具

## 概述

YAML 格式化工具是一款高效的在线 YAML 数据处理工具，支持对 YAML/YML 配置文件进行快速美化或压缩。您可以自定义缩进大小（0-8个空格），一键规范代码排版或缩减文件体积，帮助开发者和运维人员快速排查语法错误并优化配置文件结构。需要注意的是，格式化过程中原有的注释将会丢失。

## 输入项

- **YAML 输入** (textarea): Enter your YAML here. Note: comments will be lost after formatting.
- **缩进大小** (number): Enter indent size (0-8)
- **模式** (select)

## 适用场景

- 编写或修改 Kubernetes、Docker Compose 等配置文件时，需要规范缩进和排版以提高可读性。
- 复制了排版混乱、缩进不一致的 YAML 代码，需要快速修复格式并检查语法是否正确。
- 在生产环境部署前，需要压缩 YAML 配置文件以减少文件体积和网络传输开销。

## 工作原理

- 将需要处理的 YAML 文本粘贴到输入框中。
- 选择操作模式（美化或压缩），并根据需要设置缩进大小（默认为 2 个空格）。
- 工具将自动解析并重新生成规范的 YAML 文本，您可以直接复制或保存结果。

## 使用案例

- Kubernetes 部署清单排版：规范 K8s Deployment 或 Service 配置文件，确保层级结构清晰易读。
- CI/CD 管道配置校验：在提交 GitHub Actions 或 GitLab CI 的配置文件前进行格式化和语法检查。
- 配置文件体积压缩：将复杂的 application.yml 配置文件压缩，用于 API 传输或嵌入到其他紧凑型存储中。

## 常见问题

### 为什么格式化后我的 YAML 注释不见了？

本工具基于 js-yaml 库进行解析和重构，由于该库的底层限制，格式化或压缩过程中会忽略并清除所有注释。

### 缩进大小支持哪些范围？

支持 0 到 8 个空格的缩进设置，默认使用标准的 2 空格缩进。

### 压缩模式（minify）有什么作用？

压缩模式会移除不必要的空格、换行和缩进，将 YAML 转换为最紧凑的单行或精简格式，适合传输或存储。

### 输入错误的 YAML 会怎么样？

如果输入的 YAML 存在语法错误，工具将无法正常解析，并会提示相应的解析错误信息以供排查。

### 这个工具会把我的数据上传到服务器吗？

不会。所有格式化和压缩操作均在您的浏览器本地完成，确保您的配置数据安全隐私。

## 相关工具

- [JSON格式化](https://elysiatools.com/zh/tools/json-formatter): 格式化和验证JSON数据
- [TOML 格式化](https://elysiatools.com/zh/tools/toml-formatter): 格式化和美化 TOML。注意：注释会丢失，键顺序可能改变（@iarna/toml 限制）
- [XML 格式化](https://elysiatools.com/zh/tools/xml-formatter): 格式化、美化和压缩 XML，支持自定义缩进。保留注释和 CDATA
- [CSS 格式化器](https://elysiatools.com/zh/tools/css-beautifier): 将压缩或杂乱的 CSS 代码格式化为可读、缩进良好的样式表
- [VBA代码格式化器](https://elysiatools.com/zh/tools/vba-formatter): 格式化和美化VBA代码以提高可读性
- [HCL-YAML转换器](https://elysiatools.com/zh/tools/hcl-yaml-converter): 在HashiCorp配置语言(HCL)和YAML格式之间转换，用于Terraform配置
- [SQL 查询格式化器 & 压缩器](https://elysiatools.com/zh/tools/sql-query-formatter): 美化或压缩 SQL，完全可控 SQL 方言（PostgreSQL、MySQL、SQLite、SQL Server/T-SQL、BigQuery、Snowflake 等）、关键字/标识符/函数大小写、缩进风格（标准、左对齐表格、右对齐表格）以及语句间空行。输出带语法高亮、可直接复制的结果，并显示大小与语句数统计。
- [TOML-YAML转换器](https://elysiatools.com/zh/tools/toml-yaml-converter): 在TOML和YAML格式之间转换，支持复杂数据结构和配置文件

## 示例

- [YAML 示例](https://elysiatools.com/zh/samples/yaml-samples): YAML（YAML 不是标记语言）格式示例，从简单到复杂结构
- [YAML 查看器样本](https://elysiatools.com/zh/samples/yaml-viewer-samples): 用于浏览器内 YAML 查看器的样本文件
- [Kubernetes YAML 示例](https://elysiatools.com/zh/samples/kubernetes-yaml): 完整的 Kubernetes YAML 清单文件，包含 Deployment、Service、ConfigMap、Secret、Ingress 和其他必要资源
- [分布式追踪示例](https://elysiatools.com/zh/samples/distributed-tracing-samples): 使用 Jaeger、OpenTelemetry 和其他现代可观测性工具的综合分布式追踪示例，适用于微服务架构

## 相关内容

- [配置文件转换与环境差异检查工具](https://elysiatools.com/zh/hubs/config-workflows): 把 .env 解析、YAML/TOML/HCL 转换、配置片段合并和环境差异检查放到一个配置工作流专题里。
- [文本脱敏、高亮与展示格式化工具](https://elysiatools.com/zh/hubs/text-format): 在一个专题中比较文本脱敏、PII 检测、电话号码规范化、重点高亮、居中排版和 diff 格式化工具。
- [JSON 格式化、对比与规范化工具](https://elysiatools.com/zh/hubs/json-format): 在一个专题中比较 JSON 格式化、差异对比、日志审查、配置比较和数据规范化工具，适合需要让 JSON 更易读、更易审查的流程。
