1

gettextに関する以前の質問から、他の言語翻訳方法の代わりにPHPのgettext拡張機能を使用する最大の利点の1つは、Poeditというプログラムを使用して他の人に翻訳ファイルを作成させるのが非常に簡単なことです。

これで、アプリでgettextが機能するようになりましたが、まだ翻訳ファイルを作成していません。ネット上でデモファイルを見つけてテストし、アプリがgettextで機能するようにテストしました。

今、私はpoeditを少しいじってみましたが、間違っているかもしれません。誰かがいくつかの問題を明らかにしてくれることを願っています。

  1. poeditがあなたのphpコードを読み取り、翻訳を行うために利用可能なすべてのスポットを見つけることができる限り、これは正しいですか?

  2. 上記が正しければ、アプリにアクセスせずに人間の翻訳者にpoeditで翻訳させるにはどうすればよいですか?

または、簡単に言えば、phpコードにアクセスせずにpoeditで翻訳ファイルを作成することは可能ですか?

4

3 に答える 3

2

私は自分でpoeditを使用したことがないので、これは完全に正確ではない可能性があることに注意してください...

いくつかの情報について、最初に読むかもしれない興味深い記事:poEditを使用したWordPressプラグイン
のローカライズWordPress、つまりPHPを意味するので、基本的なアイデアはアプリケーションにとって問題ないはずです。

基本的に、私がよく理解していれば:

  • まず、PHPソースコードからすべての文字列を抽出します
    • 翻訳関数がどのように呼び出されるかをpoeditに伝えることによって
    • これはあなたの1)に答えるはずです
  • 次に、翻訳を行います
    • .poファイルでの作業/
    • そして、この.poファイルを翻訳者に配布して、翻訳者がそこに含まれる文字列を翻訳できると思います。
  • 最後に、.poファイルを使用して、アプリケーションで使用される.moファイルを生成します。


この他の記事は、ワードプレスについても、私が正しく推測していることを示しているようです:ユーザー:スキッピー/ POTファイルの作成-特に、この文:

.poファイルをダウンロードできるようにします(またはオプションでプラグインアーカイブに含めます)。翻訳者はこのファイルを使用して、関数で使用される.moファイルを作成し load_plugin_textdomain()ます。

(明らかに、アプリケーションで使用する関数名は、wordpressの関数名と同じではありません-それでも、アイデアはそこにあります)


これがお役に立てば幸いです:-)
楽しんでください!

于 2009-09-13T22:17:29.327 に答える
2

いいえ、poEditはすべてのソースを読み取るわけではありません。これを行うには、gettextユーティリティ「xgettext」を使用します。

基本的に、xgettextは.poファイルを生成します。

翻訳者はPOEditを使用してその.poファイルを処理します。

翻訳が完了したら、.poを.moにコンパイルします。これは、アプリが翻訳を検索するために使用します。

ユニキシーシステムにgettextをインストールしている場合は、bashで「infogettext」を試してください。

于 2009-09-13T22:17:48.017 に答える
0

PoEditは実際にを使用します。これは[設定/パーサー]タブで正しく設定xgettextできます。

ちなみに、.poテンプレートである.potファイルを配布する必要があります。そのため、翻訳者はそれを翻訳したり、言語や翻訳者チームなどを設定したりできます。

残念ながら、ソースから.potファイルを作成するオプションは表示されませんが、poedit読み取ることはできます(もちろん、.poと同じです)。

独自の.poを作成した後、.moを作成できます。

于 2012-04-28T07:00:42.367 に答える