Pseidotulkošanas rīks
Testējiet i18n UI pirms palaišanas. Ģenerējiet viltus tulkojumus, kas pārbauda izkārtojumu, kodējumu un divvirzienu atveidi, negaidot īstus tulkojumus.
Problēma
Jūsu UI angļu valodā izskatās nevainojami. Tad pienāk vācu valoda: par 40% garākas virknes sabojā katru pogu un apgriež katru tabulas galveni. Arābu valoda apgriež visu izkārtojumu, un ikonas rāda nepareizā virzienā. Japāņu valodai vajadzīgs cits rindu augstums, tādēļ rūpīgi izkārtotās kartītes sabrūk. To visu atklājat pēc tam, kad jau samaksāts par tulkojumiem.
Risinājums
i18n-pseudo ģenerē viltus tulkojumus UI pārbaudei, negaidot īstus tulkotājus. Tas lieto 7 pārveidošanas stratēģijas — diakritiskās zīmes, CJK rakstzīmes, teksta paplašināšanu, RTL marķierus un citas — vienlaikus saglabājot ICU vietturus, daudzskaitļa sintaksi un interpolācijas mainīgos.
Instalēšana
i18n-pseudo ir pieejams kā npm pakotne, Homebrew formula vai to var būvēt no pirmkoda ar Cargo.
npm install -g @i18n-agent/i18n-pseudo7 pārveidošanas stratēģijas
Katra stratēģija ir vērsta uz noteiktu i18n kļūdu klasi. Izmantojiet tās atsevišķi ar karodziņiem vai apvienojiet ar priekšiestatījumiem.
| Strategy | Flag | Input | Output |
|---|---|---|---|
| Accents | --accents | Hello | Ĥéľľó |
| CJK | --cjk | Hello | 你好世界你好 |
| Special Chars | --special | Hello | Hello |
| Expansion | --expansion N | Save | Save~~~~ |
| Brackets | --brackets | Hello | [Hello] |
| RTL | --rtl | Hello | Hello |
| Unicode Stress | --unicode-stress | Hello | H́ȩl̈l̀õ |
Priekšiestatījumi
Priekšiestatījumi apvieno stratēģijas biežiem testēšanas scenārijiem. Lai vienlaikus lietotu stratēģiju grupu, izmantojiet --preset.
| Preset | Strategies | Use Case |
|---|---|---|
default | accents + brackets | Quick visual check that all strings are externalized |
layout | expansion (1.4x) + brackets | Catch truncation and overflow before real translations |
charset | CJK + special + brackets | Test font rendering and character encoding |
rtl | RTL markers + brackets | Verify bidirectional layout without switching locale |
full | All strategies combined | Maximum stress test — everything at once |
Lietošanas piemēri
Palaidiet i18n-pseudo avota lokalizācijas failam. Tas nolasa JSON, YAML, PO un citus i18n formātus, piemēro izvēlētās stratēģijas un ieraksta pārveidoto izvadi.
# Default (accents + brackets)
i18n-pseudo en.json -o output/
# Layout testing (text expansion + brackets)
i18n-pseudo en.json --preset layout -o output/
# Specific strategies
i18n-pseudo en.json --accents --expansion 1.5 -o output/
# Kitchen sink
i18n-pseudo en.json --preset full -o output/Pirms un pēc
Lūk, ko noklusējuma priekšiestatījums (diakritiskās zīmes un iekavas) izdara tipiskam tulkošanas failam. Ievērojiet, ka ICU daudzskaitļa sintakse un interpolācijas vietturi tiek precīzi saglabāti.
// Input (en.json):
{
"greeting": "Hello, {name}!",
"save": "Save",
"items": "{count, plural, one {# item} other {# items}}"
}
// Output (default preset — accents + brackets):
{
"greeting": "[Ĥéľľó, {name}!]",
"save": "[Šáṽé]",
"items": "[{count, plural, one {# íťéɱ} other {# íťéɱš}}]"
}CI integrācija
Pievienojiet pseidotulkošanu CI konveijeram, lai automātiski atrastu i18n regresijas. Ģenerējiet pseidotulkojuma failus un palaidiet tiem vizuālās regresijas testus.
# Generate pseudo-translations and run visual regression
i18n-pseudo locales/en.json --preset layout -o locales/pseudo/
NEXT_PUBLIC_LOCALE=pseudo npx playwright test --project=visualSaistītie rīki un ceļveži
Izmēģiniet i18n Agent tūlīt
Nometiet tulkošanas failu šeit
JSON, YAML, PO, XML, CSV, Markdown, Properties
vai noklikšķiniet, lai izvēlētos
Mērķa valodas