jinja2 テンプレートを使用した Python Web アプリケーションがあります。ローカライズにはpybabelを使用しています。このpybabel extract
コマンドを使用すると、jinja2autoescape
タグを使用するファイルを除いて、すべてが意図したとおりにエクスポートされます。
私のbabel.cfgファイルには次の行があります:
extensions=jinja2.ext.autoescape,jinja2.ext.with_
そして、私が使用している抽出コマンドは次のとおりです。
pybabel extract -F ./babel.cfg -o ./locale/messages.pot ./
次のタグを持つ settings.html というファイルがあります。
{% autoescape false %}
{% endautoescape %}
そして、pybabel はこのファイルをコンソールの抽出元ファイルのリストにリストします。
extracting messages from templates/cfg/settings.html
しかし、pot ファイルを確認すると、settings.html からの翻訳がありません。
settings.html から autoescape タグを削除してコマンドを再実行するpybabel extract
と、翻訳が正しく抽出されます。
そのため、自動エスケープを使用すると何か問題が発生するはずです。
手がかりはありますか?