ตัวจัดรูปแบบ YAML

วาง YAML ได้สูงสุด 1,000,000 อักขระ และไม่เกิน 100 เอกสาร การจัดรูปแบบเกิดขึ้นในเบราว์เซอร์นี้

YAML ผ่อนปรนกับไวยากรณ์แต่ไม่ปรานีเรื่องการเยื้อง แค่เว้นวรรคพลาดไปหนึ่งช่องก็อาจเปลี่ยนคีย์ให้กลายเป็นรายการในลิสต์อย่างเงียบ ๆ และการเยื้องที่ปะปนกันทำให้การรีวิวโค้ดทรมาน ตัวจัดรูปแบบนี้แยกวิเคราะห์ข้อมูลของคุณด้วยเอนจิน js-yaml (สคีมา core ของ YAML 1.2) ในเบราว์เซอร์โดยตรง แล้วเขียนออกมาใหม่ด้วยการเยื้อง สไตล์คอลเลกชัน เครื่องหมายคำพูด ลำดับคีย์ และความกว้างบรรทัดที่คุณเลือก เพื่อให้ไฟล์คอนฟิกได้ diff ที่สะอาดในระบบควบคุมเวอร์ชันและอ่านง่ายสำหรับทุกคนในทีม

วิธีจัดรูปแบบ YAML

  1. 1

    วาง YAML

    รองรับสูงสุด 1,000,000 อักขระ และสูงสุด 100 เอกสารในสตรีมเดียว ไม่มีการอัปโหลดใด ๆ: การแยกวิเคราะห์ทำงานในเบราว์เซอร์ของคุณ

  2. 2

    เลือกตัวเลือก

    ความกว้างการเยื้อง สไตล์บล็อกหรือโฟลว์ เครื่องหมายคำพูด การเรียงคีย์ และความกว้างบรรทัด

  3. 3

    จัดรูปแบบ

    เครื่องมือจะประกอบเอกสารแต่ละฉบับขึ้นใหม่ด้วยการเว้นวรรคมาตรฐานและสไตล์ที่คุณเลือก

  4. 4

    คัดลอกแล้วคอมมิต

    ผลลัพธ์คือ YAML ที่โครงสร้างเหมือนเดิมทุกประการ พร้อมวางกลับเข้าไฟล์คอนฟิกของคุณ

ก่อนและหลัง

อินพุตรกรุงรัง:

server:
  port:   8080
  hosts: ["api.example.com",  "api2.example.com"]
  timeout:  30
  debug: true

จัดรูปแบบแล้ว (เว้นวรรค 2 ช่อง, สไตล์บล็อก):

server:
  port: 8080
  hosts:
    - api.example.com
    - api2.example.com
  timeout: 30
  debug: true

ตัวเลือกการจัดรูปแบบ

ตัวเลือก ค่า ค่าเริ่มต้น
ความกว้างการเยื้อง 2, 4 2
สไตล์คอลเลกชัน บล็อก, โฟลว์ บล็อก
เครื่องหมายคำพูด น้อยที่สุด, คู่, เดี่ยว น้อยที่สุด
การเรียงคีย์ ลำดับเดิม, ตามตัวอักษร ลำดับเดิม
ความกว้างบรรทัด 80, 120, ไม่จำกัด 120

กฎของเครื่องหมายคำพูด

แบบน้อยที่สุดมักเป็นสิ่งที่คุณต้องการ: สตริงจะไม่มีเครื่องหมายคำพูด เว้นแต่การปล่อยไว้เปล่า ๆ จะไม่ปลอดภัย ตัวจัดรูปแบบจะเติมเครื่องหมายคำพูดให้อัตโนมัติสำหรับ:

  • บูลีนแบบเก่าที่เป็นสตริง: yes, no, on, off, y, n ทั้งนี้ YAML 1.2 อ่านค่าเหล่านี้เป็นสตริงอยู่แล้ว แต่พาร์เซอร์จำนวนมากยังยึด YAML 1.1 ซึ่ง no ที่ไม่มีเครื่องหมายคำพูดจะกลายเป็น false ตัวจัดรูปแบบจะใส่เครื่องหมายคำพูดให้เสมอในผลลัพธ์ บั๊กนอร์เวย์อันโด่งดัง (NO ในรายชื่อประเทศถูกอ่านเป็น false) จึงกัดคนที่ใช้ไฟล์ของคุณไม่ได้
  • ตัวเลขที่เป็นสตริง: '007', '3.14' หากไม่มีเครื่องหมายคำพูดจะถูกแยกวิเคราะห์เป็นจำนวนเต็มหรือทศนิยม
  • สตริงที่มีอักขระอย่าง :, #, [, { หรือขึ้นต้นด้วยช่องว่าง ซึ่งถ้าปล่อยเปล่า ๆ โครงสร้างจะเปลี่ยน

การทำความสะอาดที่ได้ทุกครั้งที่รัน

  • ช่องว่างท้ายบรรทัด ถูกลบออก
  • การเยื้องที่ปะปนหรือไม่สม่ำเสมอ ถูกปรับให้เท่ากับความกว้างการเยื้องที่คุณเลือก
  • บรรทัดว่างภายในคอลเลกชัน ถูกลบออก
  • แท็บในการเยื้อง YAML ห้ามใช้แท็บ พาร์เซอร์จะปฏิเสธอินพุตพร้อมข้อความผิดพลาดที่ชี้บรรทัดให้ชัดเจน คุณจะได้แก้ไขแทนที่จะส่งไฟล์ที่พาร์เซอร์อื่นไม่ยอมรับ

คอมเมนต์ แองเคอร์ และคีย์ผสาน

การจัดรูปแบบทำให้โมเดลเอกสารเป็นมาตรฐาน ซึ่งมีข้อจำกัดที่ควรรู้ก่อนคอมมิต:

  • คอมเมนต์ถูกลบออก พาร์เซอร์แปลงเอกสารให้เป็นข้อมูล คอมเมนต์ # จึงไม่รอดจากการจัดรูปแบบ เก็บสำเนาไว้หากคอมเมนต์ของคุณสำคัญ
  • แองเคอร์และเอเลียสถูกแทนค่า โหนดที่แชร์ผ่านเอเลียสยังแชร์กันอยู่ แต่จะถูกเขียนออกมาใหม่ด้วยชื่อที่สร้างขึ้นอย่าง &ref_0 ชื่อแองเคอร์เดิมจะไม่ถูกเก็บไว้
  • คีย์ผสาน (<<:) ถูกแทนค่า ให้เป็นแมปปิงธรรมดาที่มีค่าผสานอยู่ในตำแหน่ง

สตรีมหลายเอกสาร

รองรับสตรีมที่มีหลายเอกสาร: แต่ละเอกสารถูกจัดรูปแบบแยกกันแล้วต่อกลับเข้าด้วยกันด้วยตัวคั่น --- สูงสุด 100 เอกสารต่อการรันหนึ่งครั้ง

คำถามที่พบบ่อย

โครงสร้างและค่ายังเหมือนเดิมทุกประการ: สิ่งที่เปลี่ยนมีแค่การนำเสนอ (การเยื้อง เครื่องหมายคำพูด โฟลว์หรือบล็อก และลำดับคีย์หากเปิดการเรียง) มีสองอย่างที่ตั้งใจไม่เก็บไว้: คอมเมนต์ถูกลบ และชื่อแองเคอร์ถูกสร้างขึ้นใหม่

เมื่อสตริงเปล่า ๆ จะถูกแยกวิเคราะห์เป็นอย่างอื่น จำเป็นต้องมีเครื่องหมายคำพูดเพื่อความปลอดภัย กรณีที่พบบ่อย: คีย์หรือค่าที่เป็นตัวเลขล้วน สตริงที่มี : หรือ # และบูลีนแบบเก่าอย่าง yes กับ no ที่พาร์เซอร์ YAML 1.1 จะอ่านเป็น true/false

ไม่ได้ ตัวเลือกสไตล์มีผลทั้งเอกสาร: บล็อกจะกางทุกคอลเลกชันออกเป็นบรรทัดของตัวเอง ส่วนโฟลว์จะเขียนคอลเลกชันแบบอินไลน์ หากต้องการเปรียบเทียบ ให้จัดรูปแบบสองครั้งด้วยตัวเลือกต่างกัน

ไม่ การแยกวิเคราะห์และการจัดรูปแบบทำงานในเบราว์เซอร์ของคุณด้วยเอนจิน js-yaml ที่มาพร้อมเครื่องมือ YAML ของคุณไม่ผ่านเซิร์ฟเวอร์ ไม่ถูกเก็บ และไม่ถูกเพิ่มเข้าไปในที่อยู่ของหน้าเว็บ มันอยู่แค่ในเซสชันเบราว์เซอร์นี้เพื่อให้มุมมองหลายขั้นตอนแสดงผลลัพธ์ของคุณได้

เครื่องมือที่เกี่ยวข้อง

ตารางอ้างอิง ASCII

ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL

อ้างอิงตัวอักษร HTML

รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ

ตารางอ้างอิงแป้นพิมพ์ลัด

ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux

ตัวตรวจสอบอีเมล

ตรวจสอบที่อยู่อีเมล: ตรวจไวยากรณ์ RFC 5322 ค้นหา MX เรกคอร์ดแบบเรียลไทม์ พร้อมรายละเอียดส่วนท้องถิ่น โดเมน และความยาว ไม่มีการส่งอีเมลใด ๆ

เครื่องมือสร้าง EditorConfig

สร้างไฟล์ .editorconfig จากกฎการเยื้อง การจบบรรทัด และชุดอักขระของคุณ แล้วเพิ่มเซกชันที่ถูกต้องให้ทุกภาษาในรีโพซิทอรี ทั้ง Python, Go, YAML, Makefile และอื่น ๆ

ตัวลดรูปพีชคณิตบูลีน

ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^

เครื่องมือนี้มีให้บริการในภาษาอื่น