0

POedit/xgettext: コンテキスト固有の .po ファイルの作成 / 文字列のインポート

POedit を使用して 2 つの個別の言語ファイルを操作したいので、翻訳者はクライアント固有の言語ファイルを 1 つ編集するだけで済み、システム固有の言語ファイルはそのまま残ります。

これは私の xgettext 呼び出しです:

 xgettext --force-po -o %o %C %F -k --keyword=_e:1,2c

ただし、このPOEditを使用して特定のドメインから(翻訳可能な)文字列を取得する方法は、すべての翻訳可能な文字列を取得します。

ここで、特定のコンテキストに一致する文字列のみを含む .po ファイルを作成したいと考えています。これは私のPHPです:

# CLIENT-specific: should BE imported into .po file
__('Photo challenge', 'imlang_ext');

# SYSTEM-specific: should NOT be imported into .po file
__('An error has occured.', 'imlang_msg');

imlang_ext コンテキストに一致する値のみをインポートするにはどうすればよいですか?

4

1 に答える 1

0

Poedit も GNU gettext も、これを行う簡単な方法はありません。

可能であれば、問題はおそらく、そもそもなぜそれをしたいのかということです。それはコンテキストの目的ではありません。その目的は、カタログ内の同一の文字列のあいまいさを解消することです。

コンテキストを誤用しているように聞こえますが、本当に必要なのは、2 つの異なるドメイン(つまり、別々の PO ファイル) を使用することです。偶然ではありませんが、_e()関数の 2 番目の引数はドメインであり、コンテキストではありません: http://codex.wordpress.org/Function_Reference/_e

于 2014-08-11T14:35:07.240 に答える