Añadir i18n a tu proyecto
Esta sección es el conjunto de tutoriales para un proyecto que actualmente solo está en un idioma. Empieza aquí. Cada página a continuación lleva un tipo de proyecto desde la configuración hasta los primeros archivos traducidos. En Primeros pasos se explica qué es la herramienta, las opciones de instalación y los proveedores y modelos. Puedes abrir un tutorial sin leer esas páginas primero.
Qué haces tú y qué hace la herramienta
| Tú | La herramienta |
|---|---|
| Elige los idiomas, un proveedor y los modelos que probar | Extrae el texto, lo traduce, comprueba el resultado y escribe los catálogos o las páginas |
Haz visible el texto: t() en el código de la aplicación, en la i18n de tu framework de sitio, o un marcador de lista de idiomas en un README | Almacena en caché cada traducción y la reutiliza en la próxima ejecución |
| Carga los archivos y comprueba un idioma | Muestra el progreso y te permite revisar la redacción en el Panel de traducción |
Los tutoriales indican qué ediciones de código fuente te corresponden. Se incluyen indicaciones del agente de codificación cuando esas ediciones son mecánicas. La CLI escribe los catálogos y los archivos traducidos. No instala i18next ni la i18n de tu framework de sitio.
Configuración compartida
Cada tutorial sigue el mismo orden. La página que elijas completa los detalles.
- Instala la CLI y configura la clave API de tu proveedor. Ollama no necesita clave. Instalación y Proveedor y clave API.
- Ejecuta
initcon la plantilla que nombra esa página. Esto escribeai-i18n-tools.config.json. - Prepara el proyecto para que la herramienta pueda ver el texto.
- Ejecuta
ai-i18n-tools sync, luegoai-i18n-tools status. - Carga la salida, comprueba un idioma de destino y vuelve a ejecutar
synccuando el código fuente cambie. La caché solo envía texto nuevo o modificado al modelo.
Páginas de esta sección
| Tienes | Página | Lo que cubre esa página |
|---|---|---|
| Una aplicación JS/TS (React, Next.js, Node, CLI) cuyos botones y mensajes aún son texto sin formato | Añadir i18n a una aplicación JS/TS | Instala i18next, añade el bootstrap, envuelve los literales en t(), luego extract y translate-ui |
| Una aplicación Python (Streamlit, FastAPI, Flask, Django, gettext) | Añadir i18n a una aplicación Python | Envuelve t() o _(), o mantén GNU gettext. La CLI puede ejecutarse desde un ejecutable independiente sin necesidad de instalar Node.js |
| Un sitio de documentación o marketing (VitePress, Starlight, Docusaurus, Nextra, Fumadocs, Astro, HTML plano) | Añadir i18n a un sitio web o de documentación | Habilita las rutas de idioma propias del framework, luego traduce las páginas y las etiquetas del tema |
| Un README de repositorio y otros archivos Markdown, normalmente junto a una aplicación | Añadir i18n a tu README y documentos Markdown | Un archivo por idioma (translated-docs/README.de.md) y una fila de idioma en el README. init --with-readme añade ese bloque a cualquier plantilla |
| Más de uno de los anteriores en un solo repositorio | Combinar pipelines | Una configuración y un sync. El par habitual son las cadenas de la interfaz de usuario de la aplicación más el README |
| Diccionarios de Intlayer, y quieres mantener Intlayer | Traducir Intlayer in situ | translate-intlayer rellena las hojas faltantes y obsoletas dentro de *.content.ts |
| Diccionarios de Intlayer, y estás migrando de Intlayer | Migrar de Intlayer | migrate-intlayer inicializa catálogos a partir de los diccionarios y reescribe los sitios de llamada seguros a t() |
Una aplicación que también tiene un README utiliza la página de la aplicación y la página del README juntas. Un sitio que también tiene un README utiliza la página del sitio web, y init … --with-readme para el bloque del README.
Dónde profundizar
Las guías paso a paso terminan una vez que el primer idioma está configurado. Las páginas de referencia toman el relevo a partir de ahí:
- Cadenas de la IU, Documentos, JSON y SVG para una canalización a la vez.
- Integraciones para las cadenas del shell del framework (navegación, barra lateral, tema).
- Inicio rápido para la lista de comandos y los scripts
package.jsonrecomendados. - Proveedores de LLM para los preajustes y las claves de API.
- Modelos de IA para la lista de selección clasificada y la cadena de respaldo.