DevToolPal
繁

YAML 格式化與驗證

檢查 YAML 語法,列出每個錯誤的行號與欄號,並把有效的 YAML 重新格式化為一致的縮排。

本機處理,不會上傳

選項

縮排

YAML

0 字元 · 0 B

驗證結果

結果會顯示在這裡

這是什麼

YAML 容易閱讀,因此廣泛用於設定檔:Kubernetes 資源清單、GitHub Actions 與 GitLab CI 工作流程、Docker Compose、Ansible playbook、OpenAPI 文件等。但它也很容易寫壞:多縮排一個空格、用了 Tab、引號沒有閉合、冒號後少了空格,都可能改變檔案的意思或讓它無法載入。

這個工具會解析你的 YAML,回報每個語法錯誤及其行號與欄號,以及未知指令之類的警告。YAML 有效時,會顯示文件數量和每份文件根節點的型別,也可以輸出一份縮排一致、整齊的格式化版本。

怎麼用

  1. 把 YAML 貼到輸入框,或上傳 .yaml、.yml 檔案,也可以按 範例。
  2. 結果會隨輸入即時顯示:綠色的 YAML 有效 標記,或類似 第 3 行,第 2 欄 的錯誤清單。
  3. 保持 顯示格式化後的 YAML 開啟即可取得整齊的副本,可選 2 或 4 個空格縮排,並用區塊上方的按鈕複製。
  4. 只有在你的工具允許重複鍵時,才關閉 重複的鍵視為錯誤。

常見錯誤

server:
  port: 8080
   host: localhost   # indented one space too far
tags: [web, api      # missing closing bracket
  • 縮排不一致:同一層級的項目必須從同一欄開始。YAML 不允許用 Tab 縮排。
  • 冒號後缺少空格:key:value 是一般字串,不是鍵與值。
  • 特殊字元沒加引號:以 *、&、!、%、@ 或反引號開頭,或包含 : 、 # 的值需要加引號。
  • 型別出乎意料:yes、no、on、off 在 YAML 1.2 中是字串,在舊的 YAML 1.1 解析器中卻是布林值,保險起見請加引號。1.10 這類版本號不加引號會變成數字 1.1。

驗證結構

這個工具檢查的是語法,也就是文字是否為格式正確的 YAML。若要檢查檔案是否有正確的鍵和值型別,可以先用 YAML 轉 JSON 工具轉換,再用 JSON Schema 驗證工具檢查結果。

常見問題

› 依哪個 YAML 版本驗證?

YAML 1.2,也就是大多數現代工具使用的版本。以 --- 分隔的多文件輸入會逐份檢查。

› 為什麼重複的鍵會被當成錯誤?

YAML 規格要求同一個對映中的鍵必須唯一,而許多解析器會默默只保留最後一個值,把錯誤掩蓋。如果你的工具刻意允許重複鍵,可以關閉「重複的鍵視為錯誤」。

› 格式化會保留註解嗎?

會。註解、鍵的順序、錨點和帶引號的字串都會保留,只統一縮排與空白。長字串不會被折行。

› 我的 YAML 會被上傳嗎?

不會。解析在瀏覽器中完成,含有密鑰的設定檔也不會離開你的電腦。