El asistente de Internacionalización convierte un proyecto en multilingüe. Lee su repositorio, comienza cada paso a partir de lo que encuentra y finaliza con una tarea que abre una pull request. Nunca tendrá que escribir un código de idioma ni editar JSON; solo cambie lo que desee, y nada se modificará en su repositorio hasta que realice la fusión.
Los propietarios y administradores ejecutan el asistente. Inícielo desde Localización: seleccione Internacionalizar un proyecto, o Iniciar el asistente en la fila de un proyecto. Para un proyecto que ya sea multilingüe, Configuración → Cambiar idiomas abre el mismo asistente para proponer cambios.
Los pasos
1. Escanear
Coroid lee la rama predeterminada sin ejecutar ningún de sus códigos. Busca catálogos y sus idiomas, los frameworks en uso y el texto escrito directamente en el código, contado por archivo.
- Catálogos encontrados. El asistente los conserva: Coroid agrega sus comprobaciones y traduce lo que falta. Esto se denomina adoptar.
- No hay catálogos todavía. Coroid mueve el texto de su código a los catálogos y lo reemplaza con búsquedas. Esto se denomina introducir.
- Ya está configurado. El proyecto ya cuenta con una configuración de Coroid, y el asistente propone cambios en ella.
2. Idioma fuente
Es el idioma en el que está escrito el producto; todos los demás idiomas se traducen a partir de él. El asistente lo detecta a partir de sus catálogos o lo adivina por el texto en el código. Cualquier idioma puede ser el fuente: un producto sueco traducido al inglés y al alemán funciona de la misma manera.
3. Idiomas
Seleccione los idiomas uno por uno, o añada todo un mercado de una vez: Los más hablados, Europa, Países nórdicos, Asia oriental, Las Américas o Derecha a izquierda. Cada idioma muestra su propio nombre, si se escribe de derecha a izquierda y cuántas formas plurales necesita.
Las variantes regionales pueden derivarse en lugar de traducirse. El inglés británico se deriva del inglés estadounidense con ortografía británica, y el alemán suizo del alemán con ortografía suiza, por lo que no cuestan nada y permanecen sincronizados con su idioma padre.
Cada paso comienza con el contenido ya existente en el repositorio. Modifique solo lo que desee; nada se aplicará hasta que se fusione el pull request.
- Escanear
- Idioma de origen
- Idiomas
- Cadenas
- Estilo y términos
- Calidad y automatización
- Revisar
Seleccione los idiomas uno por uno o añada un mercado completo. Las variantes regionales, como el inglés británico, pueden generarse mediante reglas en lugar de requerir traducción manual.
- Deutschalemán · de · 2 formas plurales
- Françaisfrancés · fr · 3 formas plurales
- 日本語japonés · ja · 1 forma plural
- العربيةárabe · ar · derecha a izquierda · 6 formas plurales
- British Englishinglés británico · en-GB · 2 formas pluralesDerivado con ortografía británica
El asistente de Internacionalización en su paso de Idiomas: cada idioma con su dirección de escritura y formas plurales, el inglés británico generado mediante reglas, y mercados para añadir de una sola vez. Datos ilustrativos.
4. Cadenas
Al adoptar, seleccione los catálogos que Coroid mantendrá traducidos; sus claves y estructura permanecerán igual. Al introducir, elija los archivos cuyo texto Coroid moverá a los catálogos; los archivos que excluya permanecerán como están.
5. Estilo y términos
Todos son opcionales y se aplicarán en todos los idiomas:
- Formal o informal. Para los idiomas que dirigen al lector de forma formal o informal, como el alemán Sie y du. Por defecto, cada uno sigue el tono del texto fuente.
- Términos mantenidos tal cual. Los nombres de productos, marcas y funciones que permanecen igual en todos los idiomas.
- Información sobre el producto. Unas pocas frases sobre el producto y sus lectores, que ayudan a cada traducción a elegir las palabras adecuadas.
6. Calidad y automatización
Están activados por defecto y cada uno puede cambiarse más tarde:
- Comprobar las traducciones en cada cambio. La comprobación de Traducciones en Control de calidad envía un cambio de vuelta cuando deja cadenas faltantes o dañadas.
- Traducir cadenas fusionadas fuera de Coroid. Cuando alguien fusiona texto nuevo sin Coroid, una tarea lo traduce.
- Aplicar correcciones todas las noches. Las sugerencias aprobadas de los colaboradores llegan como una pull request cada noche.
- Permitir que las personas invitadas sugieran redacción. Los lectores nativos que invite pueden corregir las traducciones en su sitio. Consulte Mantener traducciones con sugerencias.
El archivo de configuración guarda la última versión. Coroid activará las demás la próxima vez que un propietario o administrador abra Localización después de que se fusione la pull request, y solo una vez: si desactiva alguna más tarde, permanecerá desactivada.
7. Revisión
Un resumen del proyecto, lo que hará la tarea, el idioma fuente, los idiomas y cuáles de ellos son derivados, el volumen de traducción, los términos mantenidos tal cual y qué se activará tras la fusión. La traducción se cobra como uso del modelo, al igual que otro trabajo de agentes, y tiene un límite por tarea.
Seleccione Internacionalizar. Coroid crea una tarea con una Especificación y criterios de aceptación y la inicia de inmediato.
Qué hace la tarea
- Adoptar Escribe el archivo de configuración tal como lo compuso el asistente y luego traduce todas las cadenas que falten.
- Presentamos Conecta tu framework, mueve el texto de los archivos seleccionados a los catálogos, añade enrutamiento de idiomas, respaldo y soporte para escritura de derecha a izquierda, y después traduce.
- Modificar Escribe la nueva configuración y corrige las traducciones afectadas por el cambio.
La tarea finaliza en una única pull request. Una vez que se fusione con la rama predeterminada, todos los idiomas aparecerán en Localización.
Formatos
Coroid lee los catálogos en estos formatos:
| Formato | Uso recomendado |
|---|---|
| ICU JSON | Archivos de mensajes con plurales y selecciones de ICU |
| i18next JSON | Catálogos de i18next y react-i18next, incluidos los sufijos de plural |
| Vue i18n JSON | Mensajes de vue-i18n, incluidos los mensajes vinculados y plurales con filtros |
| YAML de Rails | config/locales/*.yml, con %{name} interpolación y claves de plural |
| PO de gettext | .po archivos y una .pot plantilla, con Plural-Forms por idioma |
| Markdown y MDX | Páginas de documentación dentro de una carpeta de idioma (docs/en/…): texto, descripciones de imágenes y campos de metadatos seleccionados; el código y el marcado permanecen tal cual. |
| Personalizado | Cualquier otro formato, mediante un pequeño comando adaptador en tu repositorio. |
El archivo de configuración
El asistente escribe .coroid/i18n.json. Describe tu repositorio, por lo que reside en él y se modifica mediante pull requests:
{
"version": 1,
"cli": { "version": "1.9.0", "sha256": "…" },
"sourceLocale": "en",
"targetLocales": ["de", "fr", "ja", "ar"],
"derivedLocales": [
{ "locale": "en-GB", "from": "en", "rules": "en-gb-spelling" }
],
"catalogs": [
{
"id": "ui",
"format": "i18next-json",
"source": "messages/{locale}.json"
}
],
"protectedTerms": ["Storefront"],
"localeInstructions": {
"de": "Address the reader informally (du)."
}
}cliFija la versión exacta del motor y su suma de verificación. Coroid descarga y verifica esa versión antes de cada ejecución, para que una actualización nunca altere tu resultado de forma inesperada.derivedLocalesEnumera las variantes regionales generadas según las reglas.protectedTermsylocaleInstructionscontienen lo que seleccionaste bajo Estilo y términos.
El archivo también puede incluir un glosario, contexto del producto, rutas de traducción por idioma y la vinculación de sugerencias para colaboradores.
Configuración → Archivo de configuración en el entorno de trabajo muestra el archivo exacto de la rama predeterminada. Para modificarlo allí, edita la propuesta y selecciona Proponer cambio: Coroid abre una tarea que aplica ese archivo exacto y corrige las traducciones afectadas por el cambio. Para idiomas y estilo, el asistente es la opción más sencilla.