Skip to main content

Verktyg för pseudoöversättning

Testa ditt i18n-gränssnitt före lansering. Generera simulerade översättningar som stresstestar layout, teckenkodning och dubbelriktad återgivning – utan att vänta på riktiga översättningar.

Problemet

Ditt gränssnitt ser perfekt ut på engelska. Sedan kommer tyskan – 40 % längre strängar förstör alla knappar och kapar alla tabellrubriker. Arabiskan vänder hela layouten och ikonerna pekar åt fel håll. Japanskan kräver andra radhöjder och dina omsorgsfullt utplacerade kort faller ihop. Allt detta upptäcker du först efter att du har betalat för översättningarna.

Den genomsnittliga kostnaden för att åtgärda i18n-layoutfel efter översättningen är 5-10 gånger högre än att upptäcka dem under utvecklingen. Pseudoöversättning hittar problemen kostnadsfritt innan du lägger pengar på riktiga översättningar.

Lösningen

i18n-pseudo genererar simulerade översättningar som stresstestar ditt gränssnitt utan att du behöver vänta på riktiga översättare. Verktyget använder 7 omvandlingsstrategier – accenter, CJK-tecken, textexpansion, RTL-markörer med mera – samtidigt som ICU-platshållare, pluralsyntax och interpoleringsvariabler bevaras.

Installation

i18n-pseudo finns som npm-paket och Homebrew-formel. Du kan också bygga verktyget från källkoden med Cargo.

Terminal
npm install -g @i18n-agent/i18n-pseudo
npm-paketet innehåller en global binärfil för kommandoraden. Inga körningsberoenden krävs.

7 omvandlingsstrategier

Varje strategi är inriktad på en viss typ av i18n-fel. Använd dem var för sig med flaggor eller kombinera dem med förinställningar.

StrategyFlagInputOutput
Accents--accentsHelloĤéľľó
CJK--cjkHello你好世界你好
Special Chars--specialHelloHel­lo
Expansion--expansion NSaveSave~~~~
Brackets--bracketsHello[Hello]
RTL--rtlHello‮Hello‬
Unicode Stress--unicode-stressHelloH́ȩl̈l̀õ
Accenter är den populäraste strategin för att upptäcka hårdkodade strängar. Om en sträng visas utan diakritiska tecken i gränssnittet har den aldrig skickats genom översättningsfunktionen.

Förinställningar

Förinställningar samlar strategier för vanliga testscenarier. Använd --preset för att tillämpa en grupp strategier samtidigt.

PresetStrategiesUse Case
defaultaccents + bracketsQuick visual check that all strings are externalized
layoutexpansion (1.4x) + bracketsCatch truncation and overflow before real translations
charsetCJK + special + bracketsTest font rendering and character encoding
rtlRTL markers + bracketsVerify bidirectional layout without switching locale
fullAll strategies combinedMaximum stress test — everything at once

Användningsexempel

Kör i18n-pseudo mot filen för ditt källspråk. Verktyget läser JSON, YAML, PO och andra i18n-format, tillämpar de valda strategierna och skriver omvandlade utdata.

Terminal
# 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/

Före och efter

Så här påverkar standardinställningen (accenter + hakparenteser) en typisk översättningsfil. Observera att ICU-pluralsyntax och interpoleringsplatshållare bevaras exakt.

Before & After
// 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 {# íťéɱš}}]"
}
Platshållare som {name}, {count} och ICU-pluraluttryck ändras aldrig. Endast översättningsbara textsegment omvandlas, så appen återges korrekt med pseudoöversatta filer.

CI-integrering

Lägg till pseudoöversättning i ditt CI-arbetsflöde för att automatiskt upptäcka i18n-regressioner. Generera pseudoöversatta filer och kör sedan dina visuella regressionstester mot dem.

CI Pipeline
# 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=visual
Kombinera layoutförinställningen med visuell regressionstestning i Playwright eller Chromatic. Alla komponenter som flödar över eller kapas med text som har expanderats 1,4 gånger kommer att ge en avvikelse i det visuella testet.

Prova i18n Agent nu

Släpp din översättningsfil här

JSON, YAML, PO, XML, CSV, Markdown, Properties

eller klicka för att välja en fil

Målspråk

Ingen registrering krävsPrisuppskattning direkt

Vanliga frågor