Yuki-no: GitHub Action สำหรับโปรเจกต์แปลเอกสารโอเพนซอร์ส
(github.com/Gumball12)สวัสดีครับ ขอแนะนำโอเพนซอร์สที่พัฒนาขึ้นระหว่างทำโปรเจกต์แปลเอกสารภาษาเกาหลีของ Vite
Yuki-no (Gumball12/yuki-no)
ในการทำงานแปล การติดตามการเปลี่ยนแปลงของเอกสารต้นฉบับเป็นเรื่องสำคัญมาก ไม่เช่นนั้นอาจแปลในส่วนที่ผิด หรือทำให้บางเนื้อหาตกหล่นไปได้
ก่อนหน้านี้จึงได้ใช้โอเพนซอร์สชื่อ Ryu-Cho โอเพนซอร์สตัวนี้ใช้ GitHub Actions เพื่อตรวจจับการเปลี่ยนแปลงของรีโพซิทอรีต้นฉบับ แล้วสร้างเป็น GitHub Issues ในรีโพซิทอรีแปลเพื่อแจ้งให้ทราบ อย่างไรก็ตาม หลังจากใช้งานมาเกือบ 2 ปี ก็พบจุดที่ควรปรับปรุงอยู่หลายอย่าง
- หาก Actions ล้มเหลว การเปลี่ยนแปลงทั้งหมดของรีโพซิทอรีต้นฉบับที่ยังไม่ได้ประมวลผลจะสูญหาย และไม่ถูกสร้างเป็น GitHub Issues ส่งผลให้บางส่วนของเนื้อหาต้นฉบับอาจตกหล่นไป
- วิธีกรองไฟล์เป้าหมายที่ต้องติดตามมีข้อจำกัดมาก (เป็นการเทียบสตริงต้นทางเท่านั้น)
- ไม่สามารถตั้งค่า label ให้กับ issue ที่สร้างขึ้นได้ จึงอาจปะปนกับ issue อื่นและดูภาพรวมได้ยาก
- ไม่มีข้อมูลว่าการเปลี่ยนแปลงของเอกสารต้นฉบับถูกปล่อยออกมาแล้วหรือยัง ซึ่งอาจทำให้เผยแพร่เนื้อหาที่ยังไม่ release เร็วเกินไปโดยไม่ตั้งใจ
จึงได้พัฒนาขึ้นมาเพื่อแก้ปัญหาเหล่านี้ และมีความสามารถดังต่อไปนี้:
- เพิ่มความเสถียรของ Action ด้วยการประมวลผลแบบ batch (ยืนยันแล้วว่าทำงานได้ตามปกติกับมากกว่า 200 commits)
- หาก Action ล้มเหลว จะตั้งค่าให้กู้คืนโดยอัตโนมัติในการรันครั้งถัดไป
- รองรับการติดตาม release (ตัวอย่าง: โปรเจกต์แปล Vite ภาษาเกาหลี)
- กรองไฟล์เป้าหมายที่ติดตามด้วยรูปแบบ Glob pattern
- สามารถตั้งค่า custom label สำหรับ issue ที่สร้างขึ้นได้
ขณะนี้มีการใช้งานในโปรเจกต์ต่อไปนี้:
- โปรเจกต์แปลอย่างเป็นทางการภาษาเกาหลีของ Vite (issues ที่สร้างขึ้น)
- โปรเจกต์แปลอย่างเป็นทางการภาษาเกาหลีของ Vue.js
- เทมเพลตแปล Vite
หากคุณกำลังจะทำโปรเจกต์แปล ต้องการความช่วยเหลือด้านการตั้งค่า เช่น การย้ายระบบ หรือสนใจโปรเจกต์นี้ สามารถติดต่อได้ทุกเมื่อผ่าน GitHub Issues หรืออีเมล (to@shj.rip) ขอบคุณครับ
ยังไม่มีความคิดเห็น