Tool para sa Pseudo-Translation
Subukan ang inyong i18n UI bago ilunsad. Bumuo ng mga pekeng pagsasalin na mag-i-stress-test sa layout, encoding, at bidirectional rendering — nang hindi naghihintay ng totoong mga pagsasalin.
Ang Problema
Mukhang perpekto ang UI ninyo sa English. Pagdating ng German — 40% na mas mahahabang string ang sumisira sa bawat button at nagti-truncate sa bawat table header. Binabaligtad ng Arabic ang buong layout at mali ang direksiyon ng inyong mga icon. Nangangailangan ang Japanese ng ibang line height at gumuho ang inyong maingat na naka-space na mga card. Natutuklasan ninyo ang lahat ng ito pagkatapos ninyong magbayad para sa mga pagsasalin.
Ang Solusyon
Bumubuo ang i18n-pseudo ng mga pekeng pagsasalin na mag-i-stress-test sa inyong UI nang hindi naghihintay ng totoong mga translator. Nag-aapply ito ng 7 transformation strategy — accents, mga CJK character, text expansion, RTL marker, at iba pa — habang eksaktong pinapanatili ang ICU placeholder, plural syntax, at interpolation variable.
Pag-install
Available ang i18n-pseudo bilang npm package, Homebrew formula, o maaari ninyong buuin mula sa source gamit ang Cargo.
npm install -g @i18n-agent/i18n-pseudo7 Transformation Strategy
Bawat strategy ay tumatarget sa isang partikular na klase ng i18n bug. Gamitin ang mga ito nang paisa-isa gamit ang mga flag o pagsamahin gamit ang mga preset.
| 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̀õ |
Mga Preset
Pinagbubuklod ng mga preset ang mga strategy para sa mga karaniwang testing scenario. Gamitin ang --preset para mag-apply ng isang grupo ng mga strategy nang sabay-sabay.
| 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 |
Mga Halimbawa ng Paggamit
Patakbuhin ang i18n-pseudo laban sa inyong source locale file. Binabasa nito ang JSON, YAML, PO, at iba pang i18n format, ina-apply ang mga napiling strategy, at sinusulat ang transformed output.
# 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/Bago at Pagkatapos
Narito ang ginagawa ng default preset (accents + brackets) sa isang tipikal na translation file. Pansinin na eksaktong napapanatili ang ICU plural syntax at interpolation placeholder.
// 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 {# íťéɱš}}]"
}Integrasyon sa CI
Idagdag ang pseudo-translation sa inyong CI pipeline para awtomatikong mahuli ang mga i18n regression. Bumuo ng mga pseudo-translated file, saka patakbuhin ang inyong visual regression test laban sa mga ito.
# 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=visualMga Kaugnay na Tool at Gabay
Subukan ang i18n Agent Ngayon
I-drop dito ang inyong translation file
JSON, YAML, PO, XML, CSV, Markdown, Properties
o i-click para mag-browse
Mga target language