ตัวจัดรูปแบบ Markdown
วางเอกสาร Markdown แล้วตัวจัดรูปแบบจะเขียนใหม่เป็นสไตล์ที่สอดคล้องกัน: แก้การกระโดดระดับหัวข้อ (ไม่มี H2 หลัง H4) เติมคอลัมน์ตารางให้จัดแนวในซอร์ส บังคับใช้บรรทัดว่างเดียวระหว่างบล็อก ปรับ marker รายการให้เป็น - ยุบบรรทัดว่างหลายบรรทัด และเรียง reference-style link definition ไว้ด้านล่าง HTML ที่เรนเดอร์ไม่เปลี่ยน, มีเพียงไฟล์ซอร์สที่เป็นระเบียบขึ้น ดังนั้น diff จึงอ่านง่ายขึ้น
ตัวจัดรูปแบบเขียน Markdown ใหม่อย่างไร
-
1
วาง Markdown
ใส่เอกสารดิบ: README, หน้าเอกสาร, บันทึกการประชุม
-
2
เลือกตัวเลือกสไตล์
marker รายการ (`-`/`*`), สไตล์หัวข้อ (ATX/Setext), การจัดแนวตาราง, คอลัมน์ตัดบรรทัด
-
3
จัดรูปแบบ
เครื่องมือแยกวิเคราะห์เอกสารเป็น AST และ re-serialize ด้วยสไตล์ที่เลือก
-
4
ดู diff ของเอาต์พุต
มุมมองเทียบเคียงแสดงสิ่งที่เปลี่ยนก่อนคุณวางกลับ
สิ่งที่ตัวจัดรูปแบบแก้ไข
- marker รายการ
*,-,+ทั้งหมดถูกปรับให้เป็นอักขระเดียวที่สอดคล้องกัน (ค่าเริ่มต้น-) - ลำดับหัวข้อ เตือน (หรือเลื่อนระดับ) เมื่อ H2 ตามด้วย H4 โดยไม่มี H3 คั่นกลาง
- บรรทัดว่าง บรรทัดว่างเดียวพอดีระหว่างบล็อก ไม่มีสามบรรทัดขึ้นไป
- ตาราง เติมแต่ละคอลัมน์เพื่อให้ pipe จัดแนวในซอร์ส แม้ว่าตัวเรนเดอร์ Markdown จะไม่สนใจ
- ช่องว่างตามหลัง ตัดช่องว่างตามหลังในทุกบรรทัดยกเว้น marker ขึ้นบรรทัดสองช่องว่างที่ตั้งใจ
- reference link รวบรวม definition
[label]: urlไว้ที่ท้ายเอกสาร เรียงตามตัวอักษร - code fence แท็กภาษาถูกปรับเป็นตัวพิมพ์เล็ก บล็อกโค้ดแบบเยื้องกลายเป็นบล็อกแบบ fence
ตัวเลือกสไตล์ที่คุณตั้งได้
| ตัวเลือก | ค่าเริ่มต้น | ทางเลือก |
|---|---|---|
| marker รายการ | - |
*, + |
| สไตล์หัวข้อ | ATX | Setext สำหรับ H1/H2 |
| ตัวคั่นเน้น | * |
_ |
| ตัวคั่นตัวหนา | ** |
__ |
| คอลัมน์ตัดบรรทัด | 0 (ปิด) | 80, 100, 120 |
| เรียง reference link | เปิด | ปิด |
ทำไม Markdown ที่สอดคล้องกันจึงสำคัญ
ในรีโปของทีม Markdown ที่ไม่สอดคล้องกันสร้าง diff ที่รบกวน: ทุกครั้งที่มีคนบันทึกไฟล์ด้วย editor ที่ต่างกัน marker รายการสลับและตารางจัดเรียงใหม่ ตัวจัดรูปแบบบังคับใช้สไตล์เดียวเพื่อให้ผู้ตรวจ pull request เห็นเฉพาะการเปลี่ยนแปลงเนื้อหา คิดว่ามันเป็น prettier สำหรับงานเขียน
เมื่อใดไม่ควรจัดรูปแบบ
- บล็อกโค้ดแบบ fence คงอยู่ทุกไบต์เหมือนเดิม, ตัวจัดรูปแบบจะไม่แตะต้องเนื้อหาของบล็อกโค้ด หากการจัดรูปแบบเปลี่ยนโค้ด นั่นเป็นบั๊ก
- การตัดบรรทัดแบบ hard ที่ตั้งใจ ที่ความกว้างแคบ (readme.md บนโปรเจกต์เทอร์มินัล) จะถูกตัดบรรทัดใหม่หากคุณเปิดคอลัมน์ตัดบรรทัด ปิดการตัดบรรทัดหากคุณเก็บการขึ้นบรรทัดที่ปรับด้วยมือ
- บล็อก HTML ที่ฝัง ผ่านไปโดยไม่เปลี่ยนแปลง
ตัวแทนแบบ drop-in
หากคุณชอบ CLI แบบโลคัล ตัวจัดรูปแบบใช้กฎ AST เดียวกับ remark-stringify พร้อมปลั๊กอิน remark-gfm prettier --parser markdown ให้ผลลัพธ์ที่คล้ายกัน
คำถามที่พบบ่อย
ไม่ ตัวจัดรูปแบบเขียนใหม่เฉพาะซอร์ส, เอาต์พุต HTML ที่เรนเดอร์ทั้งก่อนและหลังควรเทียบเท่ากัน หากคุณเห็นการเปลี่ยนแปลงการเรนเดอร์ ให้รายงานเป็นบั๊ก
ไม่ front-matter แบบ YAML หรือ TOML ที่ด้านบนของไฟล์ถูกตรวจจับและส่งผ่านโดยไม่แตะต้อง
ได้, ตั้งคอลัมน์ตัดบรรทัดเป็น 80, 100 หรือ 120 แล้วย่อหน้าจะถูกตัดบรรทัดใหม่ บรรทัดภายใน code fence ไม่เคยถูกแตะต้อง
ไม่ ตัวจัดรูปแบบสมมติว่าลิงก์ของคุณใช้งานได้ มันเพียงจัดระเบียบ reference-link definition ใหม่ ใช้เครื่องมือตรวจสอบลิงก์แยกต่างหาก
ไม่ การแยกวิเคราะห์และการจัดรูปแบบทำงานในเบราว์เซอร์ของคุณ เนื้อหาไม่เคยออกจากอุปกรณ์ของคุณ
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
ตัวตรวจสอบอีเมล
ตรวจสอบที่อยู่อีเมล: ตรวจไวยากรณ์ RFC 5322 ค้นหา MX เรกคอร์ดแบบเรียลไทม์ พร้อมรายละเอียดส่วนท้องถิ่น โดเมน และความยาว ไม่มีการส่งอีเมลใด ๆ
เครื่องมือสร้าง EditorConfig
สร้างไฟล์ .editorconfig ด้วยกฎสไตล์และขนาดการเยื้อง การจบบรรทัด ชุดอักขระ และช่องว่างของคุณ เพื่อให้การจัดรูปแบบสอดคล้องกันในทุก IDE และโปรแกรมแก้ไข
เครื่องสร้างตัวอักษรสุ่ม
สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน
เครื่องมือนี้มีให้บริการในภาษาอื่น
- Markdown-formaterare [SV]
- مُنسِّق ماركداون [AR]
- Markdown-Formatter [DE]
- Formateador de Markdown [ES]
- Formateur Markdown [FR]
- Pemformat Markdown [ID]
- Markdown 포맷터 [KO]
- Markdown-formatter [NL]
- Formater Markdown [PL]
- Trình định dạng Markdown [VI]
- Markdown フォーマッター [JA]
- Formatador de Markdown [PT]
- Markdown Formatter [EN]
- Formatter Markdown [IT]
- Форматтер Markdown [RU]
- Markdown Biçimlendirici [TR]
- Markdown 格式化工具 [ZH]