# gt: General Translation CLI tool: Generación de traducciones URL: https://generaltranslation.com/es/docs/cli/guides/generating-translations.mdx --- title: Generación de traducciones description: "Cómo traducir tu proyecto con el CLI de General Translation: esta guía explica cómo generar traducciones y guardarlas en tu base de código o en la CDN." related: links: - /docs/cli/guides/managing-translations - /docs/cli/guides/branching - /docs/cli/guides/configuring - /docs/cli/guides/using-autoderive --- El comando [`gt translate`](/docs/cli/reference/commands/translate) es la forma principal de traducir tu proyecto. Lee `gt.config.json` para localizar tus archivos, analiza tu código fuente en busca de contenido inline y genera traducciones mediante la API de General Translation. *Nota: Ejecuta [`translate`](/docs/cli/reference/commands/translate) en tu flujo de CI antes de compilar para producción. No está pensado para desarrollo; en ese caso, usa una API key de desarrollo para la traducción on-demand.* ## Antes de empezar [#before] * Configura tu proyecto con un `gt.config.json`. Consulta [Configuración de la CLI](/docs/cli/guides/configuring). * Establece una `GT_API_KEY` y un `GT_PROJECT_ID` de producción como variables de entorno. * Cámbiate a la rama desde la que compilas para producción. ## Traduce tu proyecto [#translate] Ejecuta el comando desde la raíz del proyecto. ```bash npx gt translate ``` La CLI traduce cada archivo que coincida con `gt.config.json`. Si usas `gt-next`, `gt-react` o `gt-react-native`, también analiza tu código fuente en busca de contenido inline, como los componentes [``](/docs/react/reference/components/t) y las llamadas a [`useGT`](/docs/react/reference/hooks/use-gt), e incluye tu archivo de diccionario. Las traducciones se guardan en tu base de código, listas para hacer commit. Si usas `next-intl`, `react-i18next` o `next-i18next`, la CLI detecta la biblioteca en tu `package.json` y traduce tus archivos conservando la sintaxis de strings de esa biblioteca. ## Añádelo a tu compilación [#build] Ejecuta `translate` antes del comando de compilación para que la versión de producción siempre se publique con las traducciones actualizadas. ```json title="package.json" { "scripts": { "translate": "npx gt translate", "build": "npm run translate && " } } ``` ## Controla qué contenido se traduce [#content] De forma predeterminada, la CLI busca contenido inline en `src`, `app`, `pages` y `components`. Puedes cambiar este comportamiento con el campo `src` en `gt.config.json` o con la opción `--src`. ```bash npx gt translate --src "lib/**/*.{ts,tsx}" ``` Para traducir a locales adicionales en una sola ejecución sin editar tu configuración, pasa `--locales`. Estos se agregan a los `locales` de `gt.config.json`. ```bash npx gt translate --locales de it ``` ## Validate sin traducir [#validate] Usa `--dry-run` para analizar y validar tu proyecto sin llamar a la API. Esto es útil para detectar errores en CI antes de una ejecución real. ```bash npx gt translate --dry-run ``` ## Volver a traducir contenido existente [#retranslate] De forma predeterminada, la CLI solo traduce el contenido cuyo texto fuente ha cambiado y conserva los cambios locales. Para cambiar ese comportamiento: * `--force` vuelve a traducir todo el contenido y sobrescribe las traducciones existentes. Se pierden los cambios locales y se te cobra por las nuevas traducciones. * `--force-download` vuelve a descargar las traducciones y sobrescribe los cambios locales sin volver a traducir. ```bash npx gt translate --force ``` ## Etiqueta una ejecución de traducción [#tagging] Usa `--tag` y `-m` para etiquetar una ejecución con un identificador fácil de leer, lo que facilita el seguimiento de las versiones en el panel de control. ```bash npx gt translate --tag v2.1.0 -m "Added checkout page translations" ``` Pasa `--tag` sin ningún valor para usar el hash del commit actual de Git como etiqueta y el mensaje del commit como mensaje. El etiquetado no bloquea: si falla, la ejecución de la traducción continúa. ## Publicar en la CDN [#publish] De forma predeterminada, las traducciones se guardan localmente. Agrega `--publish` para publicarlas también en la CDN de General Translation, de modo que puedan cargarse en tiempo de ejecución. ```bash npx gt translate --publish ``` *Nota: Primero habilita la CDN en la configuración de tu Proyecto. Sin ella, la ejecución de traducción se completa correctamente, pero el paso de publicación falla con una advertencia.* ## Next steps - /docs/cli/guides/managing-translations - /docs/cli/guides/branching - /docs/cli/guides/configuring - /docs/cli/guides/using-autoderive