CLI และการสแกนโค้ด: ค้นหาสตริงที่ยังไม่ได้แปลทุกรายการโดยอัตโนมัติ
หยุดค้นหาสตริงที่เขียนตรงในซอร์สไฟล์ Better I18N CLI ใช้การแยกวิเคราะห์แบบ AST เพื่อสแกนโค้ดเบสทั้งหมด ตรวจจับข้อความที่ยังไม่ได้แปลในคอมโพเนนต์และแอตทริบิวต์ JSX รายงานคีย์ที่ขาดหายและไม่ได้ใช้งาน และผสานรวมเข้ากับ CI pipeline ได้อย่างราบรื่น
การสแกนโค้ดด้วย AST
ต่างจากเครื่องสแกนที่ใช้ regex ซึ่งให้ผลบวกปลอม Better I18N แยกวิเคราะห์โค้ดของคุณเป็น Abstract Syntax Tree เพื่อการตรวจจับสตริงที่แม่นยำและรับรู้บริบท
การตรวจจับสตริงที่ฝังรหัสไว้
ค้นหาทุกข้อความที่แสดงต่อผู้ใช้ซึ่งไม่ได้ถูกห่อด้วยฟังก์ชันการแปลโดยอัตโนมัติ รวมถึงข้อความในลูกของ JSX และพร็อพเพอร์ตี้ของคอมโพเนนต์
การแยกวิเคราะห์ตาม AST
แยกวิเคราะห์ซอร์สโค้ดของคุณเป็นต้นไม้สังเคราะห์นามธรรมเพื่อการตรวจจับที่แม่นยำและเข้าใจบริบท ซึ่งช่วยขจัดข้อผิดพลาดจากการตรวจจับแบบ regex
การสแกนโหนดข้อความ JSX
ตรวจจับเนื้อหาข้อความที่ยังไม่ได้แปลภายในองค์ประกอบ JSX รวมถึงนิพจน์และเทมเพลตตัวอักษรที่แสดงผลโดยตรงในคอมโพเนนต์ของคุณ
การสแกนแอตทริบิวต์ JSX
ค้นหาสตริงที่ฝังอยู่ในแอตทริบิวต์ JSX เช่น placeholder, aria-label และ title ซึ่งมักถูกมองข้ามระหว่างการตรวจสอบ i18n ด้วยตนเอง
การกรองอัจฉริยะ
เพิกเฉยค่าที่ไม่สามารถแปลได้ เช่น ชื่อคลาส CSS, เส้นทางการนำเข้า และค่าตัวเลข เพื่อให้คุณเห็นเฉพาะผลลัพธ์ที่สามารถดำเนินการได้เท่านั้น
คำสั่ง CLI สำหรับการตรวจสอบการแปล
คำสั่ง check มอบประสบการณ์การตรวจสอบที่เป็นมิตรกับนักพัฒนาแบบ interactive โดยจะเปรียบเทียบ translation key ที่ใช้ในซอร์สโค้ดของคุณกับ key ที่จัดเก็บใน Better I18N ระยะไกล เพื่อแสดง key ที่ขาดหายไปซึ่งต้องการการแปล และ key ที่ไม่ได้ใช้ซึ่งสามารถล้างออกได้
รูปแบบ key แบบไดนามิก เช่น template literals จะถูกตรวจจับโดยอัตโนมัติ เมื่อโค้ดของคุณใช้ t(`key.${variable}`) CLI จะรับรู้ส่วนที่เป็น dynamic และรวมไว้ในรายงานที่จับคู่รูปแบบ เพื่อไม่ให้มีสิ่งใดหลุดรอด
- ดำเนินการตรวจสอบการแปลอย่างครบถ้วนด้วยคำสั่งตรวจสอบเพียงครั้งเดียว
- พื้นผิวที่ขาดคีย์การแปลที่มีอยู่ในโค้ดแต่ไม่มีในร้านค้าของคุณ
- ระบุคีย์ที่ไม่ได้ใช้งานในคลังระยะไกลของคุณซึ่งไม่ได้ถูกอ้างอิงในโค้ดอีกต่อไป
- ตรวจจับรูปแบบคีย์แบบไดนามิก เช่น เทมเพลตลิเทอรัล และทำเครื่องหมายเพื่อตรวจสอบ
- สร้างรายงานการเปรียบเทียบระหว่างการใช้งานในเครื่องและสถานะการแปลระยะไกล
รูปแบบผลลัพธ์ที่ยืดหยุ่น
ผลการสแกนมีให้ในรูปแบบต่างๆ เพื่อให้เหมาะกับกระบวนการทำงานของคุณ การแสดงผลแบบ ESLint-style ให้รายงานที่มนุษย์อ่านได้พร้อมการอ้างอิงไฟล์ บรรทัด และคอลัมน์ การแสดงผลแบบ JSON ให้ข้อมูลที่เครื่องอ่านได้สำหรับการทำงานอัตโนมัติของ CI/CD และเครื่องมือที่กำหนดเอง
โหมด Verbose ให้ความโปร่งใสอย่างลึกซึ้งด้วย audit log โดยละเอียด สรุปขอบเขต และข้อมูลเวลา สถิติการสแกนแสดงจำนวนไฟล์ เมตริกการค้นพบ และข้อมูลประสิทธิภาพ ทำให้คุณทราบสุขภาพของการครอบคลุมการแปลเสมอ
ผลลัพธ์แบบ ESLint
รายงานที่มนุษย์อ่านได้พร้อมเส้นทางไฟล์ หมายเลขบรรทัด และการอ้างอิงคอลัมน์ เพื่อการนำทางที่รวดเร็วในทุก editor
ผลลัพธ์แบบ JSON
ข้อมูลที่มีโครงสร้างและอ่านได้ด้วยเครื่อง เหมาะสำหรับระบบอัตโนมัติ CI/CD แดชบอร์ดแบบกำหนดเอง และการผสานรวมกับเครื่องมืออื่น
โหมด Verbose
audit log โดยละเอียดพร้อมสรุปขอบเขต ข้อมูลเวลา และการติดตามการแก้ไข namespace สำหรับการดีบัก
สถิติการสแกน
จำนวนไฟล์ เมตริกการค้นพบคีย์ และข้อมูลประสิทธิภาพ เพื่อให้คุณทราบสุขภาพของการครอบคลุมการแปลเสมอ
การผสานรวม DevOps และ CI/CD
ฝังการตรวจสอบการแปลเข้าในไปป์ไลน์การพัฒนาที่มีอยู่ของคุณ เพื่อตรวจจับสตริงที่ขาดหายไปก่อนที่จะถึง production
การผสานรวม CI Pipeline
เพิ่มขั้นตอนการสแกนใน CI workflow ของคุณที่จะทำให้ build ล้มเหลวเมื่อตรวจพบ string ที่ไม่ได้แปลหรือ key ที่ขาดหายไป
Pre-Commit Hooks
รันการสแกนบนไฟล์ที่ stage ไว้ก่อนการ commit แต่ละครั้ง เพื่อตรวจจับสตริงที่ยังไม่ได้แปลตั้งแต่ขั้นตอนแรกสุดของการพัฒนา
การสแกนตามขอบเขตไดเรกทอรี
กำหนดเป้าหมายไดเรกทอรีหรือรูปแบบไฟล์เฉพาะเพื่อสแกนเฉพาะส่วนของโค้ดเบสที่มีเนื้อหาที่แสดงต่อผู้ใช้
การวิเคราะห์แบบรับรู้ขอบเขต
แก้ไข namespace ของการแปลโดยอัตโนมัติผ่านการติดตาม lexical scope เพื่อให้การเรียก t() แต่ละครั้งแมปกับชุดคีย์ที่ถูกต้อง
Better I18N CLI: การสแกนโค้ดที่สร้างขึ้นเพื่อ Localization
Better I18N CLI รวมการสแกนโค้ดแบบ AST เข้ากับการจัดการคีย์จากระยะไกลในเครื่องมือเดียว สแกนโค้ดเบสเพื่อหาสตริงที่เขียนตรง เปรียบเทียบการใช้งานในเครื่องกับ translation store ระยะไกล ตรวจจับคีย์ที่ไม่ได้ใช้ที่ทำให้ขนาด bundle โตขึ้น และสร้างรายงานสำหรับ CI pipeline — ทั้งหมดโดยไม่ต้องออกจาก terminal
การสแกนแบบรับรู้ขอบเขต
ติดตามการเรียก useTranslations และ getTranslations ผ่าน lexical scope และผูกการเรียก t() แต่ละครั้งกับ namespace ที่ถูกต้องโดยอัตโนมัติ
รองรับ Server Component
รองรับ async server component ของ Next.js App Router อย่างครบถ้วน ทำให้การเรียก getTranslations ในโค้ดฝั่งเซิร์ฟเวอร์ถูกตรวจจับและตรวจสอบพร้อมกับการใช้งานฝั่งไคลเอนต์
Pre-Commit Hooks
ทำการสแกนเฉพาะไฟล์ที่อยู่ในขั้นตอนเตรียมการด้วยแฟล็ก --staged เท่านั้น เพื่อตรวจจับสตริงที่ยังไม่ได้แปลก่อนที่จะถูกคอมมิตโดยไม่ทำให้เวิร์กโฟลว์ของคุณช้าลง
หัวข้อที่เกี่ยวข้อง
For Developers
เครื่องมือ i18n ที่มุ่งเน้นนักพัฒนาพร้อม SDK ที่ปลอดภัยด้านประเภทและ workflow แบบ Git-first
Localization Software
เครื่องมือ TMS และ CAT สำหรับจัดการการแปลในระดับขนาดใหญ่
Localization Software
เครื่องมือ TMS และ CAT สำหรับจัดการการแปลในระดับขนาดใหญ่
Translation Management System
Centralize your localization workflow with a TMS
เผยแพร่การแปลโดยไม่พลาด string ใดเลย
CLI ของ Better I18N สแกนโค้ดของคุณ ตรวจจับทุก string ที่ยังไม่ได้แปล และผสานรวมกับ CI pipeline ของคุณเพื่อไม่ให้มีสิ่งใดขึ้น production โดยไม่มีการแปล