ตัวจัดรูปแบบ YAML
ข้อมูลนำเข้า YAML
วาง YAML ได้สูงสุด 1,000,000 อักขระ และไม่เกิน 100 เอกสาร การจัดรูปแบบเกิดขึ้นในเบราว์เซอร์นี้
YAML ผ่อนปรนกับไวยากรณ์แต่ไม่ปรานีเรื่องการเยื้อง แค่เว้นวรรคพลาดไปหนึ่งช่องก็อาจเปลี่ยนคีย์ให้กลายเป็นรายการในลิสต์อย่างเงียบ ๆ และการเยื้องที่ปะปนกันทำให้การรีวิวโค้ดทรมาน ตัวจัดรูปแบบนี้แยกวิเคราะห์ข้อมูลของคุณด้วยเอนจิน js-yaml (สคีมา core ของ YAML 1.2) ในเบราว์เซอร์โดยตรง แล้วเขียนออกมาใหม่ด้วยการเยื้อง สไตล์คอลเลกชัน เครื่องหมายคำพูด ลำดับคีย์ และความกว้างบรรทัดที่คุณเลือก เพื่อให้ไฟล์คอนฟิกได้ diff ที่สะอาดในระบบควบคุมเวอร์ชันและอ่านง่ายสำหรับทุกคนในทีม
วิธีจัดรูปแบบ YAML
-
1
วาง YAML
รองรับสูงสุด 1,000,000 อักขระ และสูงสุด 100 เอกสารในสตรีมเดียว ไม่มีการอัปโหลดใด ๆ: การแยกวิเคราะห์ทำงานในเบราว์เซอร์ของคุณ
-
2
เลือกตัวเลือก
ความกว้างการเยื้อง สไตล์บล็อกหรือโฟลว์ เครื่องหมายคำพูด การเรียงคีย์ และความกว้างบรรทัด
-
3
จัดรูปแบบ
เครื่องมือจะประกอบเอกสารแต่ละฉบับขึ้นใหม่ด้วยการเว้นวรรคมาตรฐานและสไตล์ที่คุณเลือก
-
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 โดยประมาณ ค่าความสว่างสัมพัทธ์ และคอนทราสต์กับสีขาวและสีดำ