Instrument de pseudotraducere
Testați interfața i18n înainte de lansare. Generați traduceri fictive care supun la încercare aspectul, codificarea și afișarea bidirecțională — fără să așteptați traducerile reale.
Problema
Interfața dumneavoastră arată perfect în limba engleză. Apoi vine germana — texte cu 40% mai lungi deteriorează fiecare buton și trunchiază fiecare antet de tabel. Araba inversează întregul aspect, iar pictogramele indică direcția greșită. Japoneza necesită alte înălțimi de rând, iar cardurile atent spațiate se dezorganizează. Descoperiți toate acestea după ce ați plătit traducerile.
Soluția
i18n-pseudo generează traduceri fictive care supun interfața dumneavoastră la încercare fără să așteptați traducători reali. Aplică 7 strategii de transformare — accente, caractere CJK, extinderea textului, marcaje RTL și altele — păstrând substituenții ICU, sintaxa pluralului și variabilele de interpolare.
Instalare
i18n-pseudo este disponibil ca pachet npm, formulă Homebrew sau poate fi compilat din codul sursă folosind Cargo.
npm install -g @i18n-agent/i18n-pseudo7 strategii de transformare
Fiecare strategie vizează o anumită categorie de erori i18n. Folosiți-le individual prin opțiuni sau combinați-le în presetări.
| 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̀õ |
Presetări
Presetările reunesc strategii pentru scenarii uzuale de testare. Folosiți --preset pentru a aplica simultan un grup de strategii.
| 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 |
Exemple de utilizare
Executați i18n-pseudo pentru fișierul de limbă-sursă. Acesta citește JSON, YAML, PO și alte formate i18n, aplică strategiile selectate și scrie rezultatul transformat.
# 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/Înainte și după
Iată cum transformă presetarea implicită (accente + paranteze) un fișier obișnuit de traducere. Observați că sintaxa pluralului ICU și substituenții de interpolare sunt păstrați exact.
// 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 {# íťéɱš}}]"
}Integrarea CI
Adăugați pseudotraducerea în fluxul CI pentru a depista automat regresiile i18n. Generați fișiere pseudotraduse, apoi executați testele de regresie vizuală folosindu-le.
# 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=visualInstrumente și ghiduri conexe
Încercați acum i18n Agent
Plasați aici fișierul de traducere
JSON, YAML, PO, XML, CSV, Markdown, Properties
sau faceți clic pentru a-l selecta
Limbi țintă