Skip to main content
AI agent network visualization

Oversett Flutter ARB-filer på sekunder

Metadata intakt. Plassholdere bevart. Flertallsformer korrekte i henhold til CLDR. ARB-filene dine oversatt uten å ødelegge flutter gen-l10n.

ARB-oversettelse ødelegger Flutter-bygg

ARB-filer ser ut som JSON, men er det ikke. De inneholder metadataoppføringer med @-prefiks, plassholderdefinisjoner med typeannoteringer og ICU-flertallsformer som må følge CLDR-reglene nøyaktig. Generiske oversettelsesverktøy ødelegger alt dette, og flutter gen-l10n mislykkes uten feilmelding eller viser kryptiske feilmeldinger.

Metadataoppføringer med @-prefiks blir oversatt eller slettet, noe som ødelegger plassholderdefinisjoner og beskrivelser

Plassholdernavn inni krøllparenteser blir oversatt, omdøpt eller fjernet, noe som forårsaker krasj ved kjøring

ICU-flertallsformer krever nøyaktige CLDR-kategorier per språk, men generiske verktøy hopper enten over dem eller genererer ugyldige strukturer

@@locale-overskriften blir ødelagt eller får feil verdi, noe som fører til at flutter gen-l10n tildeler oversettelser til feil språk

Kilde (engelsk)
lib/l10n/app_en.arb
{
  "@@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"
      }
    }
  }
}
Oversatt (japansk)
lib/l10n/app_ja.arb
{
  "@@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"
      }
    }
  }
}

Hva i18n Agent bevarer

@-metadataoppføringer

Alle metadata med @-prefiks – beskrivelser, plassholdere og typeannoteringer – bevares nøyaktig slik de er definert

Sikkerhet for plassholdere

Navngitte plassholdere som {userName}, {count} og {price} gjenkjennes og forblir urørt i alle oversettelser

CLDR-flertallsformer

ICU-flertallskategorier (zero, one, two, few, many, other) genereres korrekt for hvert målspråk i henhold til CLDR-reglene

JSON-struktur

Nøkkelrekkefølge, nøsting og ARB-spesifikk formatering samsvarer med kildefilen din for rene differ

Fungerer med Flutter-teknologistakken din

flutter gen-l10n (offisiell)
Easy Localization
GetX-internasjonalisering

Slik fungerer det

How i18n Agent works: Install, Translate, Done
1
2
3
terminal
$translate_filesrc/messages/en.json
 --target["de", "ja", "es"]
Done.3 languages, 142 keys translated.

Ingen manuell kopiering og liming. Ingen strenguttrekking. Bare oversatte filer.

Prøv i18n Agent nå

Slipp oversettelsesfilen din her

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

eller klikk for å bla gjennom

Målspråk

Ingen registrering krevesUmiddelbart estimat

Ofte stilte spørsmål

Utvikler?

Installer CLI-verktøyet og oversett din første fil på 2 minutter.

Installer CLI-verktøy

Team i en bedrift?

Fortsatt bundet til en TMS-kontrakt? La oss snakke om migrering.