PlusMagi's Blog By Pitt Phunsanit Programming Coding Styles ด้วย .editorconfig

Coding Styles ด้วย .editorconfig

การใช้ .editorconfig เป็นวิธีที่ช่วยให้ทีมพัฒนาซอฟต์แวร์ทำงานร่วมกันได้ราบรื่นขึ้น โดยเฉพาะเมื่อสมาชิกในทีมใช้ Code Editor ที่ต่างกัน ไฟล์นี้จะช่วยกำหนดมาตรฐานของรูปแบบ Code ให้ตรงกันโดยอัตโนมัติครับ


.editorconfig คืออะไร ? ทำไมต้องใช้ ?

.editorconfig คือไฟล์กำหนดค่าขนาดเล็กที่วางไว้ใน Root ของโปรเจกต์ เพื่อบอกให้ Code Editor ทราบว่าควรจัดรูปแบบโค้ดอย่างไร เช่น การย่อหน้า , การขึ้นบรรทัดใหม่ หรือการจัดการช่องว่างท้ายบรรทัด

ประโยชน์หลัก

  1. Consistency: โค้ดทั้งโปรเจกต์จะมีรูปแบบเดียวกัน ไม่ว่าจะเขียนโดยใคร
  2. IDE Agnostic: ใช้งานข้าม Editor ได้ ไม่ต้องไปตั้งค่าใน Preference ของโปรแกรมแต่ละคน
  3. No More “Tab vs Space” War: ลดความขัดแย้งในทีมเรื่องการใช้ Tab หรือ Space เพราะตัวไฟล์จะบังคับให้เองตามที่ตกลงกันไว้

โครงสร้างและคำสั่งที่ใช้บ่อย

ไฟล์นี้มักจะเริ่มต้นด้วย root = true เพื่อบอกว่านี่คือไฟล์ตั้งค่าหลัก และใช้การระบุชนิดของไฟล์ผ่าน Wildcards
ตัวอย่างไฟล์ .editorconfig

# บอกว่าเป็นไฟล์ระดับบนสุดของโปรเจกต์
root = true

# ตั้งค่าเฉพาะไฟล์ Markdown (ใช้ 2 spaces) [*.md]
indent_size = 2
trim_trailing_whitespace = false

# ตั้งค่าเฉพาะไฟล์ในโฟลเดอร์ lib
[lib/**.js]
indent_style = tab

# ตั้งค่าสำหรับทุกไฟล์
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
spelling_language = th_TH
tab_width = 4
trim_trailing_whitespace = true

# C# Files
[*.cs]
indent_size = 4
indent_style = tab
insert_final_newline = true
tab_width = 4
trim_trailing_whitespace = true

คำอธิบาย Property สำคัญ

  • indent_style: เลือกระหว่าง tab หรือ space
  • indent_size: จำนวนช่องว่าง หรือความกว้างของ tab
  • end_of_line: กำหนดการขึ้นบรรทัดใหม่
  • trim_trailing_whitespace: ลบช่องว่างที่เกินมาท้ายบรรทัดให้อัตโนมัติเมื่อกด Save
  • insert_final_newline: เพิ่มบรรทัดว่างต่อท้ายไฟล์เสมอ

วิธีเริ่มต้นใช้งาน

  1. สร้างไฟล์: สร้างไฟล์ชื่อ .editorconfig ไว้ที่โฟลเดอร์นอกสุดของโปรเจกต์
  2. เขียน Rule: ใส่การตั้งค่าตามความต้องการของทีม
  3. ตรวจสอบ Editor: * VS Code: ต้องติดตั้ง Extension ที่ชื่อว่า EditorConfig for VS Code
    • JetBrains : รองรับในตัวอยู่แล้ว ไม่ต้องลงเพิ่ม
  4. Commit เข้า Git: อย่าลืม push ไฟล์นี้ขึ้น Git เพื่อให้ทุกคนในทีมได้รับค่าติดตั้งเดียวกัน

ข้อควรระวัง: อย่าลืม Backup หรือทำ Snapshot ของโปรเจกต์ก่อนที่จะทำการ Re-format โค้ดชุดใหญ่ตามไฟล์ .editorconfig ใหม่ เพื่อป้องกันความผิดพลาดที่อาจเกิดขึ้นกับโครงสร้างไฟล์เดิมครับ


อ่านเพิ่มเติม

Exit mobile version