
Tõlgi Flutter'i ARB-faile sekunditega
Metaandmed jäävad puutumata, kohatäitjad säilivad ja mitmusevormid vastavad CLDR-ile. Sinu ARB-failid tõlgitakse flutter gen-l10n-i rikkumata.
ARB tõlkimine rikub Flutter'i järgud
ARB-failid näevad välja nagu JSON, kuid pole seda. Need sisaldavad @-prefiksiga metaandmekirjeid, tüübimärkustega kohatäitjate definitsioone ja ICU mitmusevorme, mis peavad täpselt järgima CLDR-i reegleid. Üldised tõlketööriistad rikuvad selle kõik — flutter gen-l10n ebaõnnestub vaikselt või annab arusaamatuid vigu.
@-prefiksiga metaandmekirjed tõlgitakse või kustutatakse, rikkudes kohatäitjate definitsioonid ja kirjeldused
Looksulgudes kohatäitjate nimed tõlgitakse, nimetatakse ümber või eemaldatakse, põhjustades käitusajal kokkujooksmisi
ICU mitmusevormid vajavad iga keele jaoks täpseid CLDR-kategooriaid, kuid üldised tööriistad jätavad need vahele või loovad vigase struktuuri
@@locale-päis rikutakse või ei vasta failile, mistõttu flutter gen-l10n määrab tõlked valele keelele
{
"@@locale": "en",
"appTitle": "My Flutter App",
"@appTitle": {
"description": "The title of the application"
},
"greeting": "Hello, {name}!",
"@greeting": {
"description": "A greeting with the user's name",
"placeholders": {
"name": {
"type": "String",
"example": "John"
}
}
},
"itemCount": "{count, plural, =0{No items} =1{1 item} other{{count} items}}",
"@itemCount": {
"description": "Number of items in the cart",
"placeholders": {
"count": {
"type": "int"
}
}
},
"lastLogin": "Last login: {date}",
"@lastLogin": {
"placeholders": {
"date": {
"type": "DateTime",
"format": "yMMMd"
}
}
}
}{
"@@locale": "de",
"appTitle": "Meine Flutter-App",
"@appTitle": {
"description": "The title of the application"
},
"greeting": "Hallo, {name}!",
"@greeting": {
"description": "A greeting with the user's name",
"placeholders": {
"name": {
"type": "String",
"example": "John"
}
}
},
"itemCount": "{count, plural, =0{Keine Artikel} =1{1 Artikel} other{{count} Artikel}}",
"@itemCount": {
"description": "Number of items in the cart",
"placeholders": {
"count": {
"type": "int"
}
}
},
"lastLogin": "Letzte Anmeldung: {date}",
"@lastLogin": {
"placeholders": {
"date": {
"type": "DateTime",
"format": "yMMMd"
}
}
}
}Mida i18n Agent säilitab
@-metaandmekirjed
Kõik @-prefiksiga metaandmed — kirjeldused, kohatäitjad ja tüübimärkused — säilitatakse täpselt määratud kujul
Kohatäitjate ohutus
Nimega kohatäitjad, nagu {userName}, {count} ja {price}, tuvastatakse ning jäetakse kõigis tõlgetes puutumata
CLDR-i mitmusevormid
ICU mitmusekategooriad (zero, one, two, few, many, other) luuakse iga sihtkeele jaoks CLDR-i reeglite järgi õigesti
JSON-struktuur
Võtmete järjekord, pesastatus ja ARB-põhine vormindus vastavad sinu lähtefailile ning hoiavad erinevused puhtana
Töötab sinu Flutter'i pinuga
Kuidas see töötab

Käsitsi kopeerimist ega stringide eraldamist pole. Ainult tõlgitud failid.
Proovi i18n Agent'i kohe
Kukuta tõlkefail siia
JSON, YAML, PO, XML, CSV, Markdown, Properties
või klõpsa faili valimiseks
Sihtkeeled
Korduma kippuvad küsimused
Ettevõtte meeskond?
Kas oled endiselt TMS-i lepingus kinni? Räägime üleminekust.