Loading…

Giới thiệu về Công cụ Định dạng YAML này Công cụ Định dạng & Làm đẹp YAML Trực tuyến

Đang làm việc với `values.yaml`, `docker-compose.yml` hoặc quy trình làm việc GitHub Actions lộn xộn? Công cụ định dạng YAML này chuẩn hóa thụt lề và ngắt dòng trong khi bảo toàn các neo, bí danh và giá trị vô hướng khối. Dán YAML của bạn, điều chỉnh cài đặt thụt lề và sao chép lại cấu hình sạch sẽ, sẵn sàng cho đánh giá trong vài giây. 🚀

Tính Năng Chính Của Trình Định Dạng YAML Này

  • Định dạng dựa trên Prettier tinh chỉnh cho tệp cấu hình YAML 1.2
  • Thụt lề nhất quán với kích thước thụt lề có thể cấu hình (1–8) và khoảng trắng so với tab
  • Độ dài dòng / gói có thể điều chỉnh để khóa và giá trị dài vẫn dễ đọc
  • Xử lý chính xác neo, bí danh, boolean-dưới-dạng-chuỗi và vô hướng khối nhiều dòng
  • Hoạt động với tệp `.yaml` và `.yml` cho Kubernetes, Docker Compose, đường ống CI và hơn thế nữa
  • Dán YAML từ trình soạn thảo hoặc kéo và thả tệp cấu hình vào trình định dạng
  • Sao chép YAML đã định dạng bằng một cú nhấp trở lại trình soạn thảo hoặc kho lưu trữ của bạn
  • Định dạng chạy chủ yếu phía máy khách trong trình duyệt của bạn; một máy chủ dự phòng an toàn có thể được sử dụng chỉ khi thiếu trình phân tích cú pháp/plugin cần thiết

🔧 Cách Định Dạng Tệp Cấu Hình YAML for yaml-formatter

1

1. Dán hoặc Tải Lên YAML Của Bạn

Sao chép bất kỳ đoạn YAML nào (tệp kê khai Kubernetes, `docker-compose.yml`, quy trình làm việc GitHub Actions, playbook Ansible, v.v.) và dán vào trình soạn thảo, hoặc kéo & thả tệp `.yaml` / `.yml`.

2

2. Điều Chỉnh Thụt Lề và Gói

Chọn sử dụng khoảng trắng hoặc tab, đặt kích thước thụt lề (1–8 khoảng trắng) và điều chỉnh độ dài gói / dòng để phù hợp với phong cách của nhóm bạn. Độ dài gói `0` vô hiệu hóa gói bằng cách sử dụng `printWidth` nội bộ rất lớn.

3

3. Chạy Trình Định Dạng

Nhấp nút **Định dạng**. Công cụ YAML dựa trên Prettier viết lại cấu hình của bạn với thụt lề nhất quán trong khi bảo toàn neo, bí danh và vô hướng khối để ngữ nghĩa không thay đổi.

4

4. Sao Chép YAML Sạch

Xem lại đầu ra, sau đó sao chép YAML đã định dạng trở lại trình soạn thảo, commit vào Git hoặc dán vào CI/CD hoặc giao diện người dùng nhà cung cấp đám mây của bạn.

Thông Số Kỹ Thuật

Công Cụ Định Dạng & Hỗ Trợ YAML

Công cụ này được xây dựng trên trình định dạng YAML dựa trên Prettier với các tùy chọn cấu hình hiển thị trong giao diện người dùng.

Tính năngHỗ trợGhi chú
Phiên bản YAML✅ YAML 1.2 (thông thường)Phù hợp với YAML kiểu cấu hình hiện đại được sử dụng trong Kubernetes, Docker, CI/CD và các ứng dụng.
Neo & bí danh✅ Được giữ nguyênGiữ nguyên các tham chiếu `&anchor` và `*alias` trong khi định dạng lại cấu trúc xung quanh.
Giá trị vô hướng khối✅ Được giữ nguyênDuy trì các giá trị vô hướng khối `|` và `>` với thụt lề nội bộ được tôn trọng.
Boolean & số✅ Xử lý cẩn thậnĐịnh dạng giữ nguyên giá trị nhưng có thể làm lộ sự khác biệt giữa `yes` so với "yes" hoặc `0012` so với "0012".
YAML đa tài liệu (`---`)✅ Thông thườngNhiều tài liệu trong cùng một tệp được giữ nguyên thứ tự và định dạng nhất quán.
Nếu một đoạn YAML cụ thể sử dụng cú pháp cực kỳ lạ hoặc các thẻ tùy chỉnh mà trình phân tích cú pháp YAML Prettier tích hợp không hiểu, bạn có thể thấy lỗi phân tích cú pháp. Trong trường hợp đó, hãy đơn giản hóa đoạn mã hoặc chạy định dạng cục bộ với công cụ của riêng bạn.

Kiểu thụt lề, Độ dài dòng & Phong cách đầu ra

Trình định dạng cung cấp các tùy chọn chính để bạn có thể khớp với phong cách dự án của mình một cách chính xác nhất.

Cài đặtTùy chọnKhuyến nghị thực tế
Kiểu thụt lềKhoảng trắng / TabHầu hết hướng dẫn phong cách YAML khuyến nghị khoảng trắng; chỉ dùng tab nếu nhóm của bạn rõ ràng ưa thích chúng.
Kích thước thụt lề1–8 khoảng trắng2 khoảng trắng phổ biến cho Kubernetes và Docker; 4 khoảng trắng để rõ ràng hơn về mặt hình ảnh.
Độ dài dòng / gói0–120 cột`0` tắt tính năng gói (sử dụng `printWidth` nội bộ rất lớn), 80–100 giữ các khác biệt gọn gàng.
Phần mở rộng tệp.yaml, .ymlKhớp với `fileExtensions` và `acceptedFileTypes` trong cấu hình công cụ.
Căn chỉnh các tùy chọn này với `.prettierrc` hoặc `.editorconfig` của kho lưu trữ để định dạng trực tuyến khớp với phát triển cục bộ và kiểm tra CI.

Giới hạn & Hiệu suất

Được tối ưu hóa cho định dạng tương tác của cấu hình YAML trong tab trình duyệt.

Tham sốGiới hạn / Hành viGhi chú
Kích thước đầu vào văn bản tối đa≈ 2 MB (~2,000,000 ký tự)Giới hạn an toàn được áp dụng trong hàm định dạng.
Kích thước tải lên tệp tối đa≈ 5 MBGiới hạn bởi cài đặt `maxFileSize` của UI để thuận tiện và đáng tin cậy.
Thời gian chờ định dạng~25 giâyCác thao tác chạy lâu bị hủy để ngăn trình duyệt bị treo.
Thực thi chínhPhía máy kháchChạy qua `runPrettier` và một plugin Prettier YAML trực tiếp trong trình duyệt của bạn.
Dự phòng máy chủChỉ khi có lỗi trình phân tích/pluginNếu thiếu plugin trình phân tích cần thiết, có thể sử dụng điểm cuối an toàn `/api/yaml-formatter` làm phương án dự phòng.
Đối với các gói YAML lớn (biểu đồ Helm, thư viện CRD khổng lồ, v.v.), nên ưu tiên các CLI như `prettier` hoặc `yq` tích hợp vào quy trình làm việc cục bộ hoặc pipeline CI của bạn.

Các Lựa Chọn CLI Thay Thế cho Định Dạng YAML

Sử dụng trình định dạng trực tuyến để dọn dẹp nhanh và dựa vào công cụ CLI cho các dự án lớn và pipeline tự động.

Linux / 🍏 macOS

Định dạng tệp YAML với yq (in đẹp)

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

Viết lại YAML với thụt lề nhất quán và sắp xếp khóa tùy theo phiên bản yq.

Chuẩn hóa YAML với Prettier

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

Chạy cùng loại công cụ (trình phân tích YAML Prettier) trên toàn bộ kho lưu trữ của bạn.

Windows (PowerShell / cmd)

Định dạng YAML sử dụng PowerShell + yq

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

In đẹp YAML và ghi kết quả trở lại đĩa.

Xử lý YAML qua các đối tượng PowerShell

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

Sử dụng hỗ trợ YAML của PowerShell để chuẩn hóa cấu trúc và thụt lề.

Kết hợp trình định dạng trực tuyến này với bước `prettier --check` hoặc `yq` trong pipeline CI của bạn để đảm bảo tất cả YAML trong kho được định dạng nhất quán.

Các Trường Hợp Sử Dụng YAML Thực Tế

Hạ Tầng & Biểu Mẫu Kubernetes

  • Định dạng các biểu mẫu Kubernetes `Deployment`, `Service` và `Ingress` trước khi xem xét mã.
  • Chuẩn hóa các tệp `values.yaml` trong biểu đồ Helm để làm cho sự khác biệt rõ ràng hơn.
  • Giữ CRD, ConfigMap và Secret YAML được thụt lề nhất quán qua các môi trường.
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 & Cấu Hình Phát Triển Cục Bộ

  • Làm đẹp `docker-compose.yml` trước khi chia sẻ trong tài liệu hoặc phiếu công việc.
  • Căn chỉnh thụt lề của các dịch vụ, mạng và ổ đĩa để dễ bảo trì hơn.
  • Chuẩn bị các đoạn mã YAML sạch sẽ cho bài đăng blog và hướng dẫn hòa nhập.
version: "3.9"
services:
  web:
    image: myapp:latest
    ports:
      - "8080:80"
    environment:
      - NODE_ENV=production
  db:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: example

Quy trình CI/CD & Tự động hóa

  • Định dạng quy trình làm việc GitHub Actions (`.github/workflows/*.yml`).
  • Dọn dẹp GitLab CI (`.gitlab-ci.yml`) hoặc YAML Azure Pipelines.
  • Giữ cho YAML tự động hóa và cơ sở hạ tầng dưới dạng mã dễ đọc giữa các nhóm.
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

Trình định dạng YAML này làm gì?

Nó nhận đầu vào YAML (thường là các tệp cấu hình) và viết lại với thụt lề và ngắt dòng nhất quán bằng cách sử dụng công cụ YAML dựa trên Prettier. Ngữ nghĩa cấu hình của bạn vẫn giữ nguyên, nhưng bố cục trở nên dễ đọc và xem xét hơn nhiều.

🧩Những tính năng YAML nào được hỗ trợ?

Trình định dạng được thiết kế cho các tính năng YAML 1.2 phổ biến được sử dụng trong tệp cấu hình: ánh xạ, danh sách, neo và bí danh, vô hướng khối (`|` / `>`), và các tệp đa tài liệu phân cách bằng `---`. Các thẻ tùy chỉnh và cấu trúc quá phức tạp có thể không được hỗ trợ đầy đủ bởi trình phân tích cú pháp cơ bản.

📏Có giới hạn kích thước cho đầu vào YAML không?

Để đảm bảo ổn định và hiệu suất trình duyệt, đầu vào văn bản bị giới hạn khoảng 2 MB (~2.000.000 ký tự) và tệp tải lên khoảng 5 MB. Đối với mã nguồn lớn hơn hoặc YAML được tạo, hãy chạy Prettier hoặc yq từ CLI hoặc quy trình CI của bạn thay thế.

🔐YAML của tôi có được tải lên máy chủ không?

Định dạng chủ yếu chạy trong trình duyệt của bạn qua `runPrettier` và plugin YAML Prettier, vì vậy YAML của bạn không rời khỏi máy khách trong hoạt động bình thường. Trong một số trường hợp hiếm khi thiếu plugin phân tích cú pháp cần thiết, công cụ có thể chuyển sang sử dụng điểm cuối `/api/yaml-formatter` an toàn. Ngay cả khi đó, YAML của bạn chỉ được xử lý tạm thời và không được lưu trữ.

⚠️Tại sao đôi khi tôi thấy lỗi phân tích cú pháp?

Lỗi phân tích cú pháp thường có nghĩa là YAML bị lỗi định dạng (ví dụ: thụt lề không nhất quán, thiếu `:` hoặc các mục danh sách không thẳng hàng) hoặc sử dụng cú pháp mà trình phân tích cú pháp được đóng gói không hiểu. Hãy xác thực thụt lề và cấu trúc, hoặc thử đơn giản hóa đoạn mã, sau đó chạy lại trình định dạng.

📚Công cụ này liên quan thế nào đến thiết lập Prettier cục bộ của tôi?

Công cụ này sử dụng công cụ YAML dựa trên Prettier bên dưới, tương tự như chạy `prettier --parser yaml`. Bạn có thể sử dụng nó để sửa chữa nhanh một lần và vẫn dựa vào `.prettierrc` cục bộ và lệnh CLI của bạn để định dạng toàn bộ dự án.

Pro Tips

Best Practice

Chuẩn hóa tất cả YAML trong kho (Kubernetes, GitHub Actions, Docker Compose) với cùng kiểu thụt lề để làm cho việc so sánh khác biệt và xem xét dễ dàng hơn nhiều.

Best Practice

Hãy cẩn thận với các giá trị như `yes`, `no`, `on`, `off`, `0012` – hãy đặt chúng trong dấu ngoặc kép nếu bạn muốn chúng được xử lý như chuỗi thay vì boolean hoặc số dạng bát phân.

Best Practice

Sử dụng công cụ định dạng trực tuyến này để nhanh chóng làm sạch các đoạn mã cho tài liệu hoặc ticket, sau đó dựa vào `prettier` hoặc `yq` trong các hook pre-commit cho toàn bộ dự án.

CI Tip

Khi tái cấu trúc các cấu hình lớn, hãy định dạng trước để các thay đổi ngữ nghĩa nổi bật rõ ràng trong Git diff thay vì bị chôn vùi trong nhiễu thụt lề.

Additional Resources

Other Tools