Pszeudofordító eszköz
Tesztelje az i18n-felületet kiadás előtt. Készítsen álfordításokat, amelyek valódi fordítások nélkül teszik próbára az elrendezést, a kódolást és a kétirányú megjelenítést.
A probléma
A felület tökéletesen néz ki angolul. Aztán megérkezik a német — a 40%-kal hosszabb szövegek minden gombot szétszakítanak, és minden táblázatfejlécet levágnak. Az arab megfordítja a teljes elrendezést, az ikonok pedig rossz irányba mutatnak. A japán más sormagasságot igényel, és a gondosan elrendezett kártyák összeomlanak. Mindezt csak a fordítások kifizetése után fedezi fel.
A megoldás
Az i18n-pseudo valódi fordítók bevárása nélkül készít álfordításokat a felület terheléses teszteléséhez. 7 átalakítási stratégiát alkalmaz — ékezeteket, CJK-karaktereket, szövegbővítést, RTL-jelölőket és más módszereket —, miközben megőrzi az ICU-helyőrzőket, a többesszám-szintaxist és az interpolációs változókat.
Telepítés
Az i18n-pseudo npm-csomagként és Homebrew-formulaként érhető el, illetve forrásból is lefordítható a Cargo segítségével.
npm install -g @i18n-agent/i18n-pseudo7 átalakítási stratégia
Minden stratégia az i18n-hibák egy adott osztályát célozza. Kapcsolókkal külön-külön, előbeállításokkal együtt használhatja őket.
| 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̀õ |
Előbeállítások
Az előbeállítások gyakori tesztelési helyzetekhez csoportosítják a stratégiákat. A --preset kapcsolóval egyszerre alkalmazhat egy stratégiacsoportot.
| 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 |
Használati példák
Futtassa az i18n-pseudo eszközt a forrás területifájlon. Beolvassa a JSON, YAML, PO és más i18n-formátumokat, alkalmazza a kiválasztott stratégiákat, majd kiírja az átalakított eredményt.
# 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/Előtte és utána
Így alakítja át az alapértelmezett előbeállítás (ékezetek + zárójelek) egy tipikus fordításfájlt. Figyelje meg, hogy az ICU többesszám-szintaxisa és az interpolációs helyőrzők pontosan megmaradnak.
// 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áció
Adjon pszeudofordítást a CI-folyamathoz az i18n-regressziók automatikus észlelésére. Hozza létre a pszeudofordított fájlokat, majd futtassa rajtuk a vizuális regresszióteszteket.
# 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=visualKapcsolódó eszközök és útmutatók
Try i18n Agent Now
Drop your translation file here
JSON, YAML, PO, XML, CSV, Markdown, Properties
or click to browse
Target languages