先选版本,再决定是否合并
默认使用 YAML 1.2 核心模式,两个版本的合并扩展均默认关闭。切换到 1.1 会改变 yes、日期等隐式类型。显式 %YAML 指令必须与选项一致;加载合并示例时会同时预览输入和合并选项的开启状态。
配置引用分析
同时查看定义位置、别名目标与独立的展开结果。
输入仅在当前浏览器内处理,不上传、不执行、不保存,也不加入 URL。
默认关闭合并。开启后显式键优先,较早的来源映射优先;仅做浅合并。合并示例会预览开启此选项。
yaml 2.9.0 · 源文件的版本指令必须与所选版本一致,输出声明所选版本。
输入最多 500,000 个 UTF-16 单位 / 2 MB UTF-8;100 个文档;源节点及展开访问各 50,000;深度 100;图 5,000 行;输出字符及标量工作量各 200 万;超时 5 秒。
箭头从定义指向使用位置,点击任一位置可返回输入。“找到目标”只代表定位到定义,不代表循环图能够展开。
输入 YAML 或执行分析。
同名的 YAML 锚点不一定指向同一段内容。一个别名采用当前文档中位于它之前、距离最近的定义;引用图按真实位置区分每次定义,让配置覆盖问题可以回到源文逐项检查。
YAML 别名展开用于查看共享值的完整内容,YAML 合并键用于可选的浅层继承。处理 YAML 嵌套引用时,先检查关系再查看预览;即使展开失败,已经收集的关系仍会保留,帮助查找未定义引用或循环。
三个操作,让覆盖规则和原始位置都可追查
默认使用 YAML 1.2 核心模式,两个版本的合并扩展均默认关闭。切换到 1.1 会改变 yes、日期等隐式类型。显式 %YAML 指令必须与选项一致;加载合并示例时会同时预览输入和合并选项的开启状态。
点击定义或引用一端即可定位真实行列。关系图每页 50 条,也列出未被使用的定义。未解析引用与检测到的循环边会在展开失败后保留;超出预算时图可能只显示已收集的部分。
使用结果、加载示例、清空和导入文件都会先显示行数变化预览。应用后可撤销一次,同时恢复输入、选项、输出和诊断。手动模式支持 Ctrl/Cmd+Enter;自动模式等待编辑停顿 350 毫秒,过期结果禁止导出。
区分 YAML 结构和应用程序自己的配置规则
词法分析与语法树识别实际锚点属性和别名节点,包括独占一行的锚点以及字符串键上的锚点。带引号文本和多行块内容视为数据。每个文档单独记录定义,同名引用按源文顺序解析。
关系分析先检测递归依赖,不需要先展开内容。自引用可以是合法的 YAML 图,但不能生成有限、无别名的文本。工具标明出错引用并阻止整个输出,保留已收集关系供排错。
合并扩展接受映射、映射别名及映射序列。较早的来源提供默认值,显式键无论出现在什么位置都覆盖继承值。嵌套对象整体替换,不递归合并;序列也不会拼接。
展开复制语法树节点,不经过 JSON 中转。大整数、数值写法、非有限浮点数和时间戳保留源表示。输出会在同一模式下重新解析并检查,通过后才开放导出。
只输出完整、有限且通过检查的 YAML 结果
嵌套引用、格式变化与类型支持
可以。YAML 锚点可包含指向先前定义的别名,展开会继续追踪这些依赖。若形成循环,就无法生成有限文本,工具保留诊断图并阻止导出;深度或工作预算超限也会停止,不只展开一半。
会。结果移除注释、原空白以及锚点和别名语法,字符串也可能重新排版。数值与时间戳保留源表示。输入在应用前保持不变,应用后可撤销并恢复输入、选项和分析快照。
支持字符串、布尔、null、数值、序列、映射,以及受支持的 timestamp 和 binary 标签。键必须是字符串,二进制要求规范且带填充的 Base64。不支持未知标签以及 set、omap、pairs;1.1 和 1.2 的隐式类型规则不同。
这些字符可以是普通字符串内容,并不一定是引用语法。工具通过语法树识别真正的引用,成功结果不会保留锚点或别名节点。未定义引用、循环或预算超限会阻止导出,而不是留下未展开节点冒充成功。
YAML 锚点与别名是单个文档内部的语法关系,不能引用另一个文档或文件。JSON $ref 属于应用层协议,可能另有远程或跨文件规则。本工具只处理 YAML 原生引用,不解析 $ref、Compose include 或模板。
遇到需要核查的引用或标量案例?