Skip to main content

Nástroj pro pseudo-překlad

Otestujte i18n UI před spuštěním. Generujte falešné překlady, které otestují rozložení, kódování a obousměrné vykreslování — bez čekání na skutečné překlady.

Problém

Vaše UI v angličtině vypadá perfektně. Pak přijde němčina — o 40 % delší řetězce rozbijí každé tlačítko a oříznou každý nadpis sloupce v tabulce. Arabština převrátí celé rozložení a Vaše ikony ukazují špatným směrem. Japonština potřebuje jiné výšky řádků a Vaše pečlivě rozestavěné karty se zbortí. To všechno zjistíte až po zaplacení překladů.

Průměrné náklady na opravu i18n chyb rozložení po překladu jsou 5-10× vyšší než jejich zachycení během vývoje. Pseudo-překlad tyto problémy odhalí zdarma, dřív než utratíte jediný dolar za skutečné překlady.

Řešení

i18n-pseudo generuje falešné překlady, které otestují Vaše UI, aniž byste museli čekat na skutečné překladatele. Aplikuje 7 transformačních strategií — diakritiku, znaky CJK, rozšíření textu, značky RTL a další — a přitom přesně zachovává zástupné symboly ICU, syntaxi plurálů i proměnné pro interpolaci.

Instalace

i18n-pseudo je dostupný jako balíček npm, jako formule pro Homebrew, nebo si ho můžete sestavit ze zdrojů pomocí Cargo.

Terminal
npm install -g @i18n-agent/i18n-pseudo
Balíček npm obsahuje globální CLI binární soubor. Nejsou potřeba žádné runtime závislosti.

7 transformačních strategií

Každá strategie cílí na konkrétní třídu i18n chyb. Používejte je jednotlivě pomocí příznaků nebo je kombinujte pomocí presetů.

StrategyFlagInputOutput
Accents--accentsHelloĤéľľó
CJK--cjkHello你好世界你好
Special Chars--specialHelloHel­lo
Expansion--expansion NSaveSave~~~~
Brackets--bracketsHello[Hello]
RTL--rtlHello‮Hello‬
Unicode Stress--unicode-stressHelloH́ȩl̈l̀õ
Diakritika je nejoblíbenější strategie pro detekci hardcodovaných řetězců. Pokud se řetězec v UI zobrazí bez diakritiky, nikdy neprošel překladovou funkcí.

Presety

Presety sdružují strategie pro běžné testovací scénáře. Použijte --preset a aplikujte skupinu strategií najednou.

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

Příklady použití

Spusťte i18n-pseudo nad zdrojovým souborem lokálu. Načte JSON, YAML, PO a další i18n formáty, aplikuje vybrané strategie a zapíše transformovaný výstup.

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/

Před a po

Zde je, co výchozí preset (diakritika + závorky) udělá s typickým souborem překladů. Všimněte si, že syntaxe plurálů ICU a zástupné symboly pro interpolaci jsou zachované přesně.

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 {# íťéɱš}}]"
}
Zástupné symboly jako {name}, {count} a pluralové výrazy ICU se nikdy neupravují. Transformují se pouze přeložitelné textové segmenty, takže se Vaše aplikace s pseudo-přeloženými soubory vykreslí správně.

Integrace CI

Přidejte pseudo-překlad do CI pipeline a automaticky zachycujte i18n regrese. Vygenerujte pseudo-přeložené soubory a poté nad nimi spusťte vizuální regresní testy.

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
Zkombinujte preset layout s vizuálním regresním testováním v Playwright nebo Chromatic. Jakákoli komponenta, která při 1.4× rozšířeném textu přeteče nebo se ořízne, neprojde vizuálním diffem.

Vyzkoušejte i18n Agent nyní

Sem přetáhněte svůj překladový soubor

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

nebo klikněte a vyberte soubor

Cílové jazyky

Bez registraceOkamžitý odhad

Často kladené otázky