8

Laravel のブレード テンプレート構文に問題があります。次のような場合:

<input placeholder="{{ __('My Tooltip') }}" />

その文字列は POEdit によって作成されません。しかし、これがあれば同じファイルに:

<span>{{ __('My Tooltip') }}</span>

それで大丈夫です。

次の構成で新しいエクストラクターを既に追加しましたが、問題は解決しません。

コマンド: xgettext --language=Python --add-comments=TRANSLATORS: --force-po -o %o %C %K %F

キーワード リストの項目: -k%k

入力ファイル リストのアイテム: %f

ソース コードの文字セット: --from-code=%c

誰でも私を助けることができますか?

4

1 に答える 1

3

あなたはこれらのファイルの内容について Poedit にをつき、それらが Python であると偽って、たとえ明らかにそうでなくても。それがあなたの好みに合わないことはまったく驚くべきことではありません。もしそうなら、驚くべきことは何でしょうこの場合、理由は明らかなようです: xgettext の Python パーサーは、素朴にあなたを信頼し、結果として絶望的に混乱し、"そこにある を接頭辞が付いていない文字列リテラルの開始と見なし、__それをスキップします。

ドキュメントに記載されていることを実行して修正します。専用のツールを使用して文字列を抽出します。laravel-gettext の場合、次のコマンドを使用することを意味します。

php artisan gettext:update

(今後の Poedit 2.0 では、このようなテンプレート言語を直接サポートする予定ですが、それまでは CLI ツールを使用する必要があります。)

于 2015-12-13T08:07:51.620 に答える