Giao diện
@digiforce-nc/plugin-locale-tester
Plugin kiểm tra bản dịch — công cụ cho developer kiểm tra và debug bản dịch (i18n), phát hiện chuỗi chưa dịch, hiển thị translation key, và tạo pseudo-locale.
Plugin này làm gì?
Khi phát triển đa ngôn ngữ, dễ bỏ sót chuỗi chưa dịch hoặc key không tồn tại. Plugin cung cấp chế độ test locale: highlight chuỗi chưa dịch, hiển thị translation key thay vì giá trị, và báo cáo missing keys — giúp QA phát hiện lỗi i18n nhanh chóng.
Năm tính năng chính
| # | Tính năng | Chi tiết |
|---|---|---|
| 1 | Show keys | Hiển thị translation key thay vì giá trị đã dịch |
| 2 | Missing highlight | Viền đỏ quanh chuỗi dùng fallback (chưa được dịch sang ngôn ngữ hiện tại) |
| 3 | Missing report | Panel tổng hợp tất cả missing keys, nhóm theo namespace |
| 4 | Pseudo-locale | Tạo pseudo-translation (thêm dấu, kéo dài text) để test UI overflow |
| 5 | Toggle nhanh | Bật/tắt chế độ test không cần reload |
Kiến trúc
Cách hoạt động
Pseudo-locale
Pseudo-locale biến text bình thường thành text "giả" để kiểm tra:
| Mục đích | Kỹ thuật | Ví dụ |
|---|---|---|
| Test overflow | Kéo dài text ~30% | Hello → [Hëëllöö!!] |
| Detect hardcode | Bao bọc trong brackets | Chuỗi không có brackets = hardcoded |
| Test RTL | Thêm RTL markers | Kiểm tra layout với text phải-sang-trái |
Không có API endpoint hay database
Plugin này chạy hoàn toàn trên client — không tạo endpoint hay bảng nào. Chế độ test được lưu trong localStorage của browser.
Thành phần client
| Thành phần | Mô tả |
|---|---|
LocaleTesterToggle | Nút bật/tắt chế độ test (toolbar developer) |
MissingKeysPanel | Panel hiển thị danh sách missing keys, nhóm theo namespace |
PseudoLocaleSwitch | Chuyển sang chế độ pseudo-locale |
KeyOverlay | Overlay hiển thị key khi hover lên text |
Dependencies
| Package | Vai trò |
|---|---|
@digiforce-nc/client | Client UI framework — i18n integration |
Mục lục chi tiết
(Xem trang tổng quan ở trên)