戻る

gt-cli@2.8.0

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

概要

gt CLI が Python プロジェクトに対応しました。Flask または FastAPI のプロジェクトで gt upload を実行すると、Python のソースファイル内にある t() 呼び出しが抽出され、GT プラットフォームに登録されます。

変更点

新しい @generaltranslation/python-extractor パッケージは、Python のソースファイルを解析して翻訳呼び出しを抽出します。CLI は、pyproject.tomlrequirements.txt、または setup.pygt-flaskgt-fastapi があるかを確認して、Python プロジェクトを自動検出します。

この抽出ツールは、次を処理します:

  • キーワード引数による変数補間を含む t("string literal") 呼び出し
  • 動的な f-string 式を変数としてマークするための declare_var()
  • 抽出時に評価される静的な式を埋め込むための declare_static()
  • Python 固有のメタデータ kwargs (_context_id_max_chars) -- JavaScript ライブラリで使われる options オブジェクトではなく、先頭にアンダースコアが付いたキーワード引数

from gt_flask import t

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

gt upload は文字列を抽出し、プラットフォームに登録します。gt translate は設定したロケールの翻訳を生成します。JavaScript ライブラリと同じコマンドとワークフローです。

リンク