Traduce tus archivos .arb de Flutter, luego revisa cada línea
Las aplicaciones Flutter guardan su texto en lib/l10n/app_en.arb: plurales ICU, marcadores {name} y metadatos @key. Una llave mal formada y flutter gen-l10n se detiene. KAERIS escribe app_de.arb, app_ja.arb y el resto con la sintaxis intacta.
KAERIS ha traducido esta página y revisado cada línea traduciéndola de vuelta. Un hablante nativo aún no la ha revisado. Original en inglés
Metadatos conservados, @@locale establecido
Las descripciones y los tipos de marcadores se copian; las palabras dentro de las ramas plurales se traducen.
{
"@@locale": "en",
"welcome": "Welcome back, {name}!",
"cartItemCount": "{count, plural, one{You have {count} item} other{You have {count} items}}",
"@cartItemCount": {
"description": "Shown on the cart screen",
"placeholders": { "count": { "type": "int" } }
}
}
{
"@@locale": "de",
"welcome": "Willkommen zurück, {name}!",
"cartItemCount": "{count, plural, one{Du hast {count} Eintrag} other{Du hast {count} Einträge}}",
"@cartItemCount": {
"description": "Shown on the cart screen",
"placeholders": { "count": { "type": "int" } }
}
}
Lo que KAERIS hace con él
Listo para gen-l10n
Un archivo .arb por idioma, junto a tu plantilla, con
@@localeestablecido para cada uno.Variables comprobadas sin IA
Después de la traducción, una simple comprobación por conteo compara cada variable y etiqueta con el original. Una línea que perdió una se marca y se muestra en la parte superior.
Cada línea traducida de vuelta
Un modelo diferente, GPT-4o mini, traduce cada línea de vuelta a tu idioma, y DeepSeek V3.2 en servidores de EE. UU. (DeepInfra, DigitalOcean, Google) juzga si el significado cambió. Lees lo que dice cada línea ahora.
Preguntas
¿Idiomas con más formas plurales?
El polaco, ruso o árabe obtienen las ramas ICU que necesitan, como few y many.
¿El texto largo en alemán romperá mi diseño?
Las líneas que crecieron mucho más de lo habitual para ese idioma se marcan, para que puedas revisar los botones en los que se encuentran.
¿Es gratis?
Sí, sin cuenta: 10.000 caracteres por archivo y hasta 8 idiomas por ejecución. Una clave API gratuita eleva el límite de archivos a 50.000 caracteres. La licencia vitalicia cuesta $79 una vez, con tu propia clave OpenRouter; los planes mensuales empiezan en $19. Precios
¿Cómo lo integro en el repositorio?
kaeris init --preset flutter-arb escribe la configuración para lib/l10n, y kaeris translate se ejecuta sin indicadores. Documentación