better-i18n Çeviri Kalite Güvencesi: Ölçekte Otomatik Kontroller
Eksik çevirileri, bozuk placeholder’ları ve tutarsızlıkları üretime ulaşmadan önce tespit edin.
Çevirilerinizi Tutarlı Tutmak
Çeviri kalitesi yalnızca kelimeleri doğru yazmak değildir -- her anahtarın hesaba katıldığından, kullanılmayan anahtarların temizlendiğinden ve terminolojinizin diller arasında tutarlı kaldığından emin olmakla ilgilidir. better-i18n, projenizdeki çeviri kalitesini korumak için birlikte çalışan çeşitli araçlar sunar.
CLI Scan: Sabit Kodlanmış Dizeleri Tespit Etme
İlk savunma hattı scan komutudur. Çevrilmesi gereken ancak çeviri işlevlerine sarılmamış dizeleri bulmak için AST analizi kullanarak kod tabanınızı ayrıştırır.
better-i18n scan --dir ./src
Scanner şunları tespit eder:
- Sabit kodlanmış JSX metni (
<h1>Hello</h1>) - Sabit kodlanmış JSX özellikleri (
<img alt="Logo" />) - Toast ve bildirim dizeleri
- Locale'e bağlı üçlü ifadeler
- Kullanıcıya yönelik metin içeren dize değişkenleri
CSS sınıflarını, URL'leri, HTML varlıklarını ve teknik sabitleri yok sayacak kadar akıllıdır; bu nedenle sonuçlar gerçek çeviri eksikliklerine odaklanır, yanlış pozitifler değil.
Bunu derleme pipeline'ınıza entegre etmek ve yeni sabit kodlanmış dizeler ekleyen PR'ları engellemek için --ci kullanın:
npx @better-i18n/cli scan --ci
CLI Sync: Eksik ve Kullanılmayan Anahtarları Bulma
sync komutu, kod tabanınızdaki çeviri anahtarı kullanımını better-i18n bulutunda var olanlarla karşılaştırır:
better-i18n sync
Şunları gösteren net bir rapor oluşturur:
- Remote'da Eksik: Kodunuzun kullandığı ancak henüz better-i18n'e yüklenmemiş anahtarlar
- Kodda Kullanılmayan: Kaynak kodunuzda artık başvurulmayan better-i18n'deki anahtarlar
Bu, yeniden düzenleme sonrasında çok değerlidir -- hangi anahtarların yetim kaldığını ve temizlenebileceğini, hangi yeni anahtarların yayına almadan önce çeviriye ihtiyaç duyduğunu anında görebilirsiniz.
--summary bayrağı size hızlı bir sağlık kontrolü sağlar:
better-i18n sync --summary
Bu, kapsama yüzdelerini (yerel-uzak ve uzak-kullanılan) gösterir, böylece çevirilerinizin ne kadar eksiksiz olduğunu bir bakışta anlarsınız.
Glossary: Terminoloji Tutarlılığı
Glossary, tüm çeviriler genelinde tutarlı terminolojiyi zorunlu kılar. Glossary'de marka terimlerini, ürün adlarını veya alana özgü sözcükleri tanımladığınızda, yapay zeka çevirileri bu tanımları otomatik olarak gözetir.
Bu, aynı kavramın uygulamanız genelinde farklı şekillerde çevrildiği yaygın sorunu önler -- bir yerde "Çalışma Alanı", başka bir yerde "İş Bölgesi", üçüncü bir yerde ise "Proje Uzayı" gibi durumlar oluşmaz.
Dashboard Kapsama Görünürlüğü
better-i18n dashboard'u, dil başına ve namespace başına çeviri kapsamını gösterir. Bir bakışta şunları görebilirsiniz:
- Hangi dillerin tamamen çevrildiği
- Hangi namespace'lerde eksiklik olduğu
- Projenizin her bölümünde kaç anahtar bulunduğu
Bu, ürün yöneticilerine ve mühendislik liderlerine CLI komutları çalıştırmaya gerek kalmadan yerelleştirme durumunu net bir şekilde görme imkânı sunar.
Kalite Kapıları için CI Entegrasyonu
Çeviri sorunlarının üretime ulaşmasını önleyen kalite kapıları oluşturmak için CI pipeline'ınızda scan ve sync'i birleştirin:
name: i18n Quality
on: [push, pull_request]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npx @better-i18n/cli scan --ci
- run: |
npx @better-i18n/cli sync --format json \
| jq -e '.comparison.missingCount == 0' > /dev/null || exit 1
Pre-commit hook'ları için hızlı geri bildirim almak amacıyla yalnızca staged dosyaları tarayın:
npx @better-i18n/cli scan --staged --ci
Henüz Sunmadıklarımız
Kalite araçlarının mevcut kapsamını netleştirmek için:
- Satır içi QA motoru yok -- editörde placeholder'lar, HTML etiketleri veya ICU MessageFormat için gerçek zamanlı doğrulama yoktur. CLI, eksik çevirileri kod düzeyinde tespit eder.
- Özel kural sistemi yok -- bugün özel doğrulama kuralları (uzunluk limitleri veya yasaklı karakterler gibi) tanımlayamazsınız.
- Placeholder doğrulaması yok -- sistem, kaynaktaki
{name}'in çeviride görünüp görünmediğini kontrol etmez. - Görsel bağlam yok -- kalite kontrolleri, işlenmiş UI ekran görüntüleri değil, anahtar/değer verileri üzerinde çalışır.
Bunlar, gelecekteki geliştirme için değerlendirdiğimiz alanlardır.
Başlarken
CLI'ı yükleyin ve ilk kalite kontrolünüzü çalıştırın:
npm install -g @better-i18n/cli
better-i18n scan --dir ./src
better-i18n sync --summary
Yapay zeka çevirilerinde tutarlılığı sağlamak için dashboard'da Glossary terimlerini ayarlayın ve otomatik kalite kapıları için CLI'ı CI pipeline'ınıza entegre edin.
Hesabınızı oluşturun ve projelerinizdeki çeviri kalitesini yönetmeye başlayın.