2011-10-05 5 views
10

私はgettextを使ってPHPプロジェクトのi18nをやっています。私はautomatic comment featureを使用して、idで置き換えられた長いフレーズを翻訳するときにヒントを翻訳者に伝えたいと思います。私は何を取得したいと、翻訳者は、彼がPOEditまたはプログラマのコメント欄に、いくつかのアナログツールを使用してキーfoobarを見たとき、彼は翻訳しなければならないものを見ることができます。このように、次のpoファイルGettext自動コメント生成

#: full-path-to-file/index.phtml:3 
#. a very long text which should replaced by _('foobar') 
msgid "foobar" 
msgstr "" 

です。

私はこのコードを試してみたが、それは

<?php 
/// TRANSLATORS: a very long text which should replaced by _('foobar') 
_('foobar'); 
?> 

動作しない私は何かが足りないか、自動コメントはちょうどphpのために動作しませんか?

はさえウィキペディアmentionsこの機能は、私はCファイルにその例をコピーしようとしましたが、私はそれがCでさえ私が使用したコマンドラインを働いて得ることができない

xgettext -C -o - main.c 

しかしあります生成された出力は、だから私は間違いなく欠けている何か

#: main.c:16 
#, c-format 
msgid "My name is %s.\n" 
msgstr "" 

である私は、この機能を有効にするには、任意のxgettextフラグまたは特定のバージョンを使用する必要があります。

+0

--language = Pythonを使ってjavascriptから解凍しようとすると、コメント開始にハッシュ#を付け加えます。つまり、//#のようにコメントを開始すると、xgettextは翻訳コメントを正しく抽出します。 –

答えて

8

xgettextをソースからコメントを抽出するには、検索するコメントを伝えるために引数を渡す必要があります。 documentationから

-c[tag]
--add-comments[=tag]

置きコメントブロック タグで始まり、出力ファイルにキーワードの行の前に。タグなしの場合、 オプションは、出力ファイルの にキーワード行より前のすべてのコメントブロックを配置することを意味します。引数として-c/または--add-comments=/を渡す

は、それが「トリプルスラッシュ」の形式を認識させるでしょう。

+0

はい、私は自分でそれを見つけました。私は大きなRTFMを受けなければなりません。 – Fabio

+0

@John Flatness - これはなぜPythonモードの.jsファイルではうまくいかないのですか?詳細はこちら:http://stackoverflow.com/questions/12052844/extract-translator-comments-with-xgettext-from-javascript-in-python-mode – ragulka

関連する問題