เครื่องมือสร้าง EditorConfig
ไฟล์ .editorconfig ที่รากของรีโพซิทอรีจะบอก IDE รุ่นใหม่ทุกตัวว่าโปรเจกต์นี้จัดรูปแบบไฟล์อย่างไร และยุติข้อถกเถียงเรื่องแท็บกับช่องว่างทีละไฟล์ Python ใช้ 4 ช่องว่าง, JavaScript ใช้ 2, ส่วน Makefile ต้องใช้แท็บ (บังคับ) เครื่องมือนี้สร้างไฟล์ .editorconfig จากตัวเลือกการจัดรูปแบบของคุณ (สไตล์และขนาดการเยื้อง การจบบรรทัด ชุดอักขระ ความยาวบรรทัดสูงสุด การขึ้นบรรทัดใหม่ท้ายไฟล์ และการตัดช่องว่างท้ายบรรทัด) และรวมการปรับแต่งทั่วไปสองอย่างไว้เสมอ: [*.md] คงช่องว่างท้ายบรรทัดไว้สำหรับการขึ้นบรรทัดใหม่ใน Markdown และ [Makefile] ใช้แท็บตามที่ make กำหนด
วิธีสร้างไฟล์ .editorconfig
-
1
ตั้งค่าเริ่มต้นส่วนกลาง
ชุดอักขระ (ค่าเริ่มต้นคือ utf-8), การจบบรรทัด (lf หรือ crlf), สไตล์และขนาดการเยื้อง, ความยาวบรรทัดสูงสุด, การเพิ่มบรรทัดใหม่ท้ายไฟล์ และการตัดช่องว่างท้ายบรรทัด
-
2
ตรวจสอบการปรับแต่งในตัว
เครื่องมือเพิ่ม `[*.md]` ที่มี `trim_trailing_whitespace = false` เสมอ (Markdown ต้องมีช่องว่างท้ายบรรทัดสำหรับการขึ้นบรรทัดใหม่) และ `[Makefile]` ที่มี `indent_style = tab` ซึ่ง make กำหนดไว้
-
3
คัดลอกไฟล์
ใช้ปุ่มคัดลอกเพื่อนำไฟล์ `.editorconfig` ที่สร้างขึ้นไปวางไว้ที่รากของรีโพซิทอรี
-
4
ขยายในภายหลัง
ต้องการกฎแยกตามภาษาหรือไม่ เพิ่มส่วนของคุณเอง เช่น `[*.py]` ที่มี `indent_size = 4`
ไฟล์ .editorconfig ทำหน้าที่อะไร
ไฟล์ชื่อ .editorconfig ที่วางไว้ที่รากของโปรเจกต์ (หรือในไดเรกทอรีใดก็ได้) จะประกาศธรรมเนียมการจัดรูปแบบ โปรแกรมแก้ไขที่รองรับ EditorConfig (IDE หลักทุกตัวและโปรแกรมแก้ไขข้อความรุ่นใหม่ส่วนใหญ่) จะนำกฎเหล่านี้มาใช้เมื่อเปิดไฟล์
ตัวอย่างผลลัพธ์
ด้วยค่าเริ่มต้น (ช่องว่าง, ขนาด 4, LF, utf-8) เครื่องมือจะสร้าง:
root = true
[*]
indent_style = space
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
max_line_length = 120
[*.md]
trim_trailing_whitespace = false
[Makefile]
indent_style = tab
ไดเรกทิฟหลัก
| ไดเรกทิฟ | ค่าที่ยอมรับได้ | หมายเหตุ |
|---|---|---|
| root | true / false | ตั้งเป็น true ที่รากของโปรเจกต์ เพื่อให้การค้นหาหยุดลง |
| charset | utf-8, utf-8-bom, latin1, utf-16-be, utf-16-le | ค่าเริ่มต้นคือ utf-8 |
| end_of_line | lf, crlf, cr | lf สำหรับข้ามแพลตฟอร์ม; crlf สำหรับรีโพซิทอรีที่ใช้เฉพาะบน Windows |
| indent_style | space, tab | |
| indent_size | จำนวนเต็ม | จำนวนช่องว่าง จะถูกละเว้นเมื่อใช้ tab |
| tab_width | จำนวนเต็ม | ความกว้างที่แสดงของแท็บ (ค่าเริ่มต้นเท่ากับ indent_size) |
| insert_final_newline | true / false | ทำให้ไฟล์เป็นไปตามมาตรฐาน POSIX |
| trim_trailing_whitespace | true / false | ปิดสำหรับ Markdown (ช่องว่างท้ายบรรทัดหมายถึงการขึ้นบรรทัดใหม่) |
ธรรมเนียมของแต่ละภาษาโดยสังเขป
| ภาษา / ไฟล์ | ธรรมเนียม |
|---|---|
| JS, TS, JSON | 2 ช่องว่าง |
| HTML, CSS, YAML | 2 ช่องว่าง |
| Python | 4 ช่องว่าง (PEP 8) |
| PHP | 4 ช่องว่าง (PSR-12) |
| Ruby | 2 ช่องว่าง |
| Go | แท็บ (gofmt บังคับ) |
| Rust | 4 ช่องว่าง (rustfmt บังคับ) |
| Java | 4 ช่องว่าง |
| Makefile | แท็บ (make เองบังคับ) |
| Markdown | คงช่องว่างท้ายบรรทัดไว้ (ใช้กับ <br>) |
| Batch / CMD (.bat) | การจบบรรทัดแบบ crlf |
ข้อควรระวัง: ช่องว่างท้ายบรรทัดใน Markdown
ใน Markdown ช่องว่างสองช่องท้ายบรรทัดหมายถึง “ใส่ <br> ตรงนี้” หาก .editorconfig ตัดช่องว่างท้ายบรรทัดของทุกไฟล์ การขึ้นบรรทัดใหม่เหล่านั้นจะหายไป ให้แทนที่ด้วย trim_trailing_whitespace = false สำหรับ [*.md]
IDE ของคุณรองรับหรือไม่
รองรับในตัว: VS Code, ตระกูล IntelliJ ของ JetBrains, Sublime Text, Vim (ผ่านปลั๊กอิน), Emacs (ผ่านปลั๊กอิน), Atom, Notepad++, Xcode หากโปรแกรมแก้ไขใดไม่รองรับ EditorConfig มาในตัว ก็มักจะมีปลั๊กอินให้ ไฟล์นี้ยังอ่านได้ด้วยเครื่อง ทำให้ลินเตอร์และตัวจัดรูปแบบนำไปใช้ได้ด้วย
คำถามที่พบบ่อย
วางไว้ที่รากของโปรเจกต์พร้อม root = true คุณสามารถเพิ่มไฟล์ .editorconfig ในไดเรกทอรีย่อยเพื่อแทนที่เส้นทางบางเส้นทางได้ การค้นหาจะไล่ขึ้นไปตามโครงสร้างและหยุดที่ไฟล์ root = true ตัวแรกที่พบ
ไม่ EditorConfig จัดการเรื่องพื้นฐานอย่างช่องว่างและการจบบรรทัดในทุกโปรแกรมแก้ไข ส่วน Prettier และลินเตอร์เฉพาะภาษาจะจัดการกฎสไตล์ที่ลึกกว่า (เครื่องหมายคำพูด อัฒภาค เครื่องหมายจุลภาคท้ายบรรทัด) ทั้งสองอย่างเสริมกัน
ตั้ง end_of_line = crlf หากเครื่องมือ Windows ในรีโพซิทอรีจำเป็นต้องใช้จริง ทางเลือกที่ดีกว่าคือคอมมิต end_of_line = lf และเพิ่ม .gitattributes ที่มี * text=auto เพื่อให้ Git ปรับการจบบรรทัดให้เป็นมาตรฐานตอนคอมมิต ขณะที่การเช็กเอาต์จะได้การจบบรรทัดที่เหมาะกับระบบปฏิบัติการ
ไม่ ตัวเลือกของคุณใช้เพื่อสร้างไฟล์เท่านั้น ไม่มีการจัดเก็บข้อมูลบนเซิร์ฟเวอร์ของเรา และไม่มีอะไรถูกเก็บไว้หลังจากคุณออกจากหน้า
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
เครื่องสร้างตัวอักษรสุ่ม
สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน
ตัวลดรูปพีชคณิตบูลีน
ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^
ตัวตรวจสอบอีเมล
ตรวจสอบที่อยู่อีเมล: ตรวจไวยากรณ์ RFC 5322 ค้นหา MX เรกคอร์ดแบบเรียลไทม์ พร้อมรายละเอียดส่วนท้องถิ่น โดเมน และความยาว ไม่มีการส่งอีเมลใด ๆ
เครื่องมือนี้มีให้บริการในภาษาอื่น
- EditorConfig 생성기 [KO]
- Trình tạo EditorConfig [VI]
- EditorConfig Oluşturucu [TR]
- Generator EditorConfig [ID]
- Generador de EditorConfig [ES]
- Gerador de EditorConfig [PT]
- Generator EditorConfig [PL]
- EditorConfig-generator [SV]
- 编辑器配置生成器 [ZH]
- EditorConfig-Generator [DE]
- EditorConfig Generator [EN]
- EditorConfig ジェネレーター [JA]
- EditorConfig-generator [NL]
- مولد EditorConfig [AR]
- Générateur EditorConfig [FR]
- Generatore EditorConfig [IT]
- Генератор EditorConfig [RU]