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

การจัดรูปแบบทำงานในเบราว์เซอร์นี้ 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

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

ลดรูปนิพจน์บูลีนด้วยแผนผัง Karnaugh และอัลกอริทึม Quine-McCluskey แสดงทุกขั้นตอนการลดรูปและผลลัพธ์สุดท้ายในรูป SOP/POS

เลขฐานสองเป็นฐานสิบ

แปลงเลขฐานสองเป็นฐานสิบได้ทันที แสดงการกระจายตามตำแหน่งเพื่อให้เห็นว่าแต่ละบิตมีส่วนอย่างไร

เครื่องสร้างตัวอักษรสุ่ม

สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน

เครื่องกำเนิดจานสี

สร้างพาเลตสีแบบเอกรงค์ ใกล้เคียง คู่ตรงข้าม ไตรแอดิก หรือเตตราดิกจากสี HEX หลัก พร้อมส่งออกตัวแปร CSS ที่คัดลอกได้ทันที

เครื่องมือเลือกสี HEX

เลือกหรือป้อนสี HEX แล้วดูค่า RGB, HSL, CMYK โดยประมาณ ค่าความสว่างสัมพัทธ์ และคอนทราสต์กับสีขาวและสีดำ