Volver

gt-cli@2.8.0

Ernest McCarter avatarErnest McCarter
gt-cliv2.8.0pythonpython-extractorgt-flaskgt-fastapii18n

Descripción general

La CLI de gt ahora también admite proyectos de Python. Al ejecutar gt upload en un proyecto de Flask o FastAPI, se extraen las llamadas a t() de los archivos fuente de Python y se registran en la plataforma GT.

Qué cambió

Un nuevo paquete @generaltranslation/python-extractor analiza archivos fuente de Python y extrae llamadas de traducción. La CLI detecta automáticamente proyectos de Python comprobando si gt-flask o gt-fastapi aparecen en tu pyproject.toml, requirements.txt o setup.py.

El extractor admite:

  • llamadas a t("string literal") con interpolación de variables mediante argumentos con nombre
  • declare_var() para marcar como variables expresiones dinámicas de f-strings
  • declare_static() para insertar expresiones estáticas que deben evaluarse en el momento de la extracción
  • kwargs de metadatos específicos de Python (_context, _id, _max_chars) -- argumentos con nombre con prefijo de guion bajo, en lugar del objeto de opciones que usan las bibliotecas de JavaScript

Ejemplo

from gt_flask import t

@app.get("/error")
def error():
    return {"error": t("Something went wrong. Please try again.", _context="error page")}

gt upload extrae la cadena y la registra en la plataforma. gt translate genera traducciones para las configuraciones regionales definidas. Los mismos comandos y el mismo flujo de trabajo que las bibliotecas de JavaScript.

Enlaces