Traduce archivos JSON, ARB y JSON Lines
Traduce archivos .json, .arb, .resjson, .jsonl y .ndjson de hasta 8 MB a uno o varios idiomas. Se conservan las claves, la anidación y los marcadores de posición. Incluye ejemplos de instrucciones.
Se admiten archivos JSON (.json), Flutter ARB (.arb), recursos de aplicaciones de Windows (.resjson) y JSON Lines (.jsonl, .ndjson) de hasta 8 MB. Las claves forman parte de la estructura, no son palabras: nunca se envían como texto para traducir, así que no pueden volver traducidas. Solo cambian los valores de texto.
Qué se traduce y qué se conserva
| Se traduce | Se conserva tal cual | |
|---|---|---|
| JSON, resjson | Valores de texto a cualquier nivel | Claves, anidación, orden de los arrays, números, valores booleanos y valores nulos |
| ARB | Cadenas de mensajes | Claves, entradas de metadatos @ cuando así se indique, {placeholders} y sintaxis plural de ICU |
| JSON Lines | Los campos de texto que indiques, registro por registro | Claves y su orden, identificadores, números, un registro por línea |
Los marcadores de posición, como {count}, {{name}}, %s y $1, y la sintaxis de ICU, como {count, plural, one{...} other{...}}, se conservan en la cadena traducida y se colocan donde los necesite el idioma de destino. Indica cualquier convención poco habitual en las instrucciones.
Qué puedes pedir
Un solo trabajo en lugar de subir un archivo por idioma.
Traduce los valores al francés, alemán y español. Conserva sin cambios marcadores de posición como {{name}} y {count}.
Añade solo lo que falta para la próxima versión.
Traduce solo las claves que faltan en el archivo francés y conserva las traducciones existentes en francés.
Devuelve únicamente las claves que se hayan escrito.
Traduce al italiano y devuelve solo las claves que hayas cambiado.
Para Flutter: conserva las descripciones que espera gen-l10n.
Traduce los mensajes al portugués. Deja tal cual el valor de @@locale y todas las entradas de metadatos @, y conserva intacta la sintaxis plural de ICU.
Para un conjunto de datos o una exportación: los identificadores y las etiquetas no son palabras.
Traduce los campos title y description al francés. Deja id, price y category tal cual.
Información útil
- Varios idiomas en un solo trabajo para JSON, ARB, resjson y JSON Lines. El plan indica dónde se escribirá cada idioma: por defecto, se crea una clave hermana con el sufijo del idioma junto a la original, por ejemplo,
title_fr. Si tu proyecto necesita un archivo por idioma (en.json,fr.json), traduce una vez por idioma para obtener un archivo limpio cada vez. - Filtro de salida. Disponible para JSON (“solo las claves que hayas cambiado”). Los demás formatos de esta página devuelven el archivo completo.
- Formato. JSON se vuelve a escribir con sangría de dos espacios, así que si el original tiene otro formato, un diff puede mostrar cambios en los espacios en blanco. Se conserva el orden de las claves. JSON Lines se vuelve a escribir de forma compacta, con un registro por línea.
@@locale. Se conserva el valor@@localede un archivo ARB, a menos que pidas cambiarlo. Asígnale la configuración regional de destino antes de publicarlo.- Plurales. Los idiomas con más formas plurales, como el ruso o el árabe, pueden necesitar ramas ICU que no estén en el texto original en inglés. Revísalas.
- Registros JSON Lines con errores: se identifican por número de línea y se rechaza el archivo hasta que se corrijan.
- Límite. 8 MB; también se puede procesar de una vez una carpeta de localización dentro de un ZIP.
Contenido relacionado
- YAML y TOML, cadenas de Android y Apple y gettext PO, para otros formatos de localización.
- CSV para el mismo contenido organizado en filas.
- Todos los formatos de archivo