Skip to main content
AI agent network visualization

Tłumacz pliki Flutter ARB w kilka sekund

Metadane pozostają nienaruszone. Symbole zastępcze są zachowane. Formy liczby mnogiej są zgodne z CLDR. Pliki ARB zostają przetłumaczone bez psucia flutter gen-l10n.

Tłumaczenie ARB psuje kompilacje Flutter

Pliki ARB wyglądają jak JSON, ale nim nie są. Zawierają wpisy metadanych z prefiksem @, definicje symboli zastępczych z adnotacjami typów oraz formy liczby mnogiej ICU, które muszą dokładnie przestrzegać reguł CLDR. Ogólne narzędzia tłumaczeniowe uszkadzają te elementy, przez co flutter gen-l10n zawodzi bez komunikatu lub zgłasza niezrozumiałe błędy.

Wpisy metadanych z prefiksem @ są tłumaczone lub usuwane, co psuje definicje i opisy symboli zastępczych

Nazwy symboli zastępczych w klamrach są tłumaczone, zmieniane lub usuwane, powodując awarie podczas działania

Formy liczby mnogiej ICU wymagają dokładnych kategorii CLDR dla każdego języka, ale ogólne narzędzia je pomijają lub tworzą nieprawidłowe struktury

Nagłówek @@locale zostaje uszkodzony lub niedopasowany, przez co flutter gen-l10n przypisuje tłumaczenia do niewłaściwego języka

Źródło (angielski)
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"
      }
    }
  }
}
Tłumaczenie (japoński)
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"
      }
    }
  }
}

Co zachowuje i18n Agent

Wpisy metadanych @

Wszystkie metadane z prefiksem @ — opisy, symbole zastępcze i adnotacje typów — są zachowywane dokładnie tak, jak zdefiniowano

Bezpieczeństwo symboli zastępczych

Nazwane symbole zastępcze, takie jak {userName}, {count} i {price}, są wykrywane i pozostają nienaruszone we wszystkich tłumaczeniach

Formy liczby mnogiej CLDR

Kategorie liczby mnogiej ICU (zero, one, two, few, many, other) są generowane poprawnie dla każdego języka docelowego zgodnie z regułami CLDR

Struktura JSON

Kolejność kluczy, zagnieżdżenia i formatowanie właściwe dla ARB odpowiadają plikowi źródłowemu, zapewniając czytelne różnice

Działa z Twoim stosem Flutter

flutter gen-l10n (oficjalne)
Easy Localization
Internacjonalizacja GetX

Jak to działa

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.

Bez ręcznego kopiowania i wklejania. Bez wyodrębniania ciągów. Tylko przetłumaczone pliki.

Wypróbuj i18n Agent

Upuść tutaj plik tłumaczenia

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

lub kliknij, aby go wybrać

Języki docelowe

Rejestracja nie jest wymaganaNatychmiastowa wycena

Najczęściej zadawane pytania

Tworzysz oprogramowanie?

Zainstaluj narzędzie CLI i przetłumacz pierwszy plik w 2 minuty.

Zainstaluj narzędzie CLI

Zespół korporacyjny?

Nadal obowiązuje Cię umowa z dostawcą TMS? Porozmawiajmy o migracji.