問題タブ [xgettext]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
9437 参照

php - 翻訳された .po ファイルから新しい .pot テンプレートを生成する方法

不完全な gettext .potファイルから開始したため、結果の.po翻訳ファイルには、元は.potファイルに含まれていなかった多数の翻訳文字列が含まれるようになりました。

翻訳された.poファイルから他の言語 (空白の翻訳エントリを持つ文字列) の.potファイルを逆生成するにはどうすればよいですか?

ご協力いただきありがとうございます。

0 投票する
3 に答える
8217 参照

python - Gettext : ソースが変更された後に po および pot ファイルを更新する方法

国際化された文字列を含む python プロジェクトがあります。ソース コードを変更したところ、文字列の行が変更されました。つまり、pot および po ファイルで、文字列の行が正しい行を指していません。

では、po ファイルと pot ファイルをファイル内の新しい文字列の場所に更新する方法を説明します。

0 投票する
1 に答える
6679 参照

python - WindowsでDjango MakeMessagesにxgettextがありません

Windows 7 で Django を実行しています。

現在、django book の第 19 章にある手順を使用して、いくつかの Django テンプレートを翻訳しようとしています。テンプレートに翻訳タグを追加し、I18N をロードし、django 設定を変更しました。次に、django-admin.py makemessages -l en を実行して po ファイルを作成します。すべてのフォルダーが作成されますが、django は次のエラーで終了します。

エラー: init .py で xgettext を実行中にエラーが発生しました 'xgettext' は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されません。

問題を調べてみると、django が unix ベースのシステムに gnu gettext ライブラリを使用していることがわかりました。これを解決するために、cygwin をインストールし、gettext パッケージ バージョン 0.18.1.0 をダウンロードしてインストールし、それを PATH に追加しました。悲しいことに、それは何も解決しませんでした。Cygwin は xgettext ファイルをまったく追加しませんでした。

私の質問は今これです。xgettext をインストールする簡単な方法 (またはチュートリアル) と、Windows 7 でdjango の国際化に必要なその他の機能を、さまざまな gnu パッケージをダウンロードすることなくインストールする方法はありますか。これまでのところ、Django は不必要な困難を最小限に抑えることに優れており、これらの突然の問題は django の特徴ではありません。

0 投票する
3 に答える
2839 参照

php - POEdit/xgettextで変数を翻訳する

PHPZend Framework、Zend_Translate(gettextアダプター)を使用しています。翻訳を編集するには、xgettextを利用して翻訳対象の文字列をフェッチするPOEditを使用します。

POEdit(xgettext)は、翻訳する文字列を見つけるためにキーワードを検索します。したがって、キーワードを検索する場合、テキストが次のように直接翻訳関数に渡されるときにtranslate、POEditは文字列を問題なく見つけることができます。'Text to translate'

ただし、多くの場合、文字列は、変数をパラメーターとして使用してtranslate関数を呼び出して、変換を行うZend関数に渡されます。

これにより、POEdit(xgettext)は翻訳する文字列の検索に失敗します。上記の例では、POEditで検索したい文字列はですが、関数に'Another text to translate'直接渡されないため、検索されません。translate

では、どのように問題を解決するのですか?

私の現在の解決策は、POEditで見つからなかったすべての文字列の長いリストを含むダミーファイルを作成することです。

ただし、このソリューションの欠点は、文字列を更新するときに、ダミーファイルを変更して元の文字列を見つける必要があることです。これにより、保守がより困難になります。

私が考えた別の解決策は、呼び出し後にコメントに翻訳文字列を追加することでしたSomeZendFunction(上記の例を参照)が、コメントを無視するため、xgettextにそれを受け入れさせることができません。

それで、コメント内の文字列を受け入れるようにxgettextを作成する方法を知っている人はいますか?または誰かがより良いかもしれない他の解決策を持っていますか?

助けてくれてありがとう!

編集:

なぜ私が反対票を投じられたのかわかりません。しかし、私は質問を明確にしようとしました。

0 投票する
1 に答える
637 参照

php - xgettextにコメント内のキーワードを見つけさせます

デフォルトでは、xgettextはコメントブロック内で見つかったキーワードをすべて無視します。

この動作をオーバーライドすることは可能ですか?キーワードとして追加//_してみましたが、これも失敗します。コメントはキーワードよりも優先されるようです。

xgettext -o output.po --language=PHP -k_ -k//_ file.php

手伝ってくれてありがとう!

0 投票する
1 に答える
236 参照

java - xgettext が間違ったリテラルを抽出する

これを使用して、翻訳が必要なすべての文字列リテラルを抽出します。

これらを抽出する必要があります。

これらはありません:

しかし、両方とも私の .pot ファイルで終わります:

これをまっすぐにする方法はありますか?

0 投票する
1 に答える
760 参照

gtk - グレイド (ビルダー) ファイルから翻訳可能な文字列を抽出するにはどうすればよいですか?

コマンドプロンプトで私は書いた:

このバージョンは、expat なしでビルドされました。

libexpat を見つけようとしましたが、xgettext.exe にはありましたが、それでもこのエラーが発生します。グレード ファイルから翻訳可能な文字列を抽出する方法を教えてもらえますか?

私は正しいことを知っていますが、このエラーはどのチュートリアルでも言及されていない奇妙なものです:(

私は、GTK+ - 2.0 で Netbeans IDE を使用し、MSYS で MinGW を使用して Windows を使用しています。

0 投票する
3 に答える
7335 参照

php - PHPコードから.poファイルを作成するためのOSXのxgettext

私はMacOSXを使用していますが、PHPコードを解析して翻訳可能な文字列を抽出するための適切なソリューションを見つけることができません。

PoEditを試しましたが、反動詞のトランクエラーで失敗します: poEditの詳細なエラー

Virtaalも試しましたが、ブラウジングウィンドウが表示される前に[開く]をクリックするとアプリがクラッシュします。

OmegaTを試しましたが、.poファイルをサポートしていないと思います。私はそれがどのように機能するのか理解できません:(

私もxgettext.plを試しましたが、PHPのdgettext()関数を検出せず、poEditのように追加のキーワードを構成するための追加オプションを提供していないことを除けば、非常にうまく機能します。マニュアルページはここにあります:http://www.unix.com/man-page/OSX/1/xgettext.pl/

これまでの解決策はありますか?

0 投票する
2 に答える
3673 参照

php - PoEdit キーワード - 複数形

アプリに gettext のようなローカリゼーション システムを組み込みましたが、翻訳関数は次のようになります。

私の PoEdit キーワード:

  • t:2 は PoEdit に parse を指示し$string、明らかに動作します
  • t:2,3 は PoEdit に$string$plural_string- の両方を解析するように指示する必要がありますが、そうではありません :(

しか見え$stringないので、複数形が解析されません...どうすれば修正できますか? 私はこれが好きなので、関数を別の引数形式に切り替えたくありません:(

また、この関数は sprintf の置き換えのように機能します。

  • 3 番目の引数 ($plural_string) が配列の場合、関数は配列の値を vsprintf への引数と見なします。
  • 3 番目の引数が文字列で $number が指定されている場合、関数は $vprintf_arguments を vsprintf への引数 (指定されている場合) と見なし、$plural_string を $string の複数形と見なします。

とにかく、PoEdit は引用符で囲まれていない引数に干渉すべきではありませんよね? $plural_string が次のように見える場合にのみ、文字列として解析することを意味します'abc abc'

0 投票する
2 に答える
2444 参照

gettext - 未使用の gettext 文字列を自動的に削除するには?

gettext を使用して複数の翻訳を行う Web アプリケーションがあります。しかし今、私はアプリケーションを大幅に書き直しました。ほとんどの文字列は同じですが、かなりの数の文字列が大幅に変更または削除されています。

xgettext を使用して .po ファイルを作成します。コード内で新しい文字列を見つけて .po ファイルに追加できるのは素晴らしいことですが、コード内に見つからない文字列を削除するオプションが表示されません。 .

コードに含まれなくなった .po ファイルから文字列を自動的に削除する方法はありますか?