問題タブ [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.
python - POTファイルの生成
PoEditは、スキャンが不要なサブディレクトリ内のPythonソースもスキャンするため、問題が発生します。そのため、PoEditでPOTファイルから文字列に関する新しい情報を取得する必要があります。ここxgettext
では、ソースからPOTファイルを作成できると言われています。しかし、私はその方法を理解できません。常にPOファイルを生成します。
でPOTファイルを作成するにはどうすればよいxgettext
ですか?それとも古いものはpygettext
受け入れられますか?または別のツールはありますか?
linux - xgettext を使用したファイルの再帰スキャン
プロジェクトのすべてのフォルダーを再帰的にスキャンして xgettext 文字列を探す必要があります。Linuxでxgettextを使用してこれを行うにはどうすればよいですか?
私の現在のパラメータは次のとおりです。 --default-domain=project -k_
php - PHP から作成した最初の .pot ファイルをどのように実行しますか?
適切にローカライズする必要があるアプリを作成するのに忙しいのですが、常にポータブル オブジェクト テンプレートを手動で作成するのは面倒です。
このコードの理由を誰か教えてください:
何もしていませんが、コマンドラインでそれを実行すると、実際に default.pot ファイルに見つかったエントリが入力されますか?
gettext - xgettext から出力が得られません
準大規模なソフトウェア プロジェクトのローカリゼーションに gnu-gettext を使用しようとしているので、今は基本を学ぼうとしています。問題は、かなり基本的な機能に行き詰まったことです。xgettext を使用してソースコードから文字列を抽出しようとすると、何も得られません。dll が欠落している場合は文句を言い、パラメータが間違っている場合は文句を言いますが、現在はポット ファイルなどを生成せずに静かに戻ります。
だから、私の質問は、この問題を認識している人はいますか? xgettext が何をしているかについて、より冗長にする方法はありますか?
ソースファイルの間に xgettext を入れ、ソースファイルを gettext\bin ディレクトリに入れようとしましたが、うまくいきませんでした。
私は Win7 マシンで作業しており、gettext-tools-dev_0.18.1.1-2_win32 を使用しています。MinGWをインストールしました。
私のテストコードは次のようにロックします:
誰かがこれについて私を助けることができれば、私は感謝します. /ロバート
javascript - JavaScriptからxgettextを使用して翻訳者のコメントを抽出します(Pythonモードの場合)
すべての.jsファイルと.htmlファイル(アンダースコアテンプレート)から文字列を抽出する、非常にうまく機能するコマンドがあります。ただし、翻訳者のコメントには機能しないようです。
たとえば、これは私の.jsファイルの1つにあります。
次のコマンドを使用します。
xgettextは、.jsファイルからコメントを抽出し、次のように.poファイルに配置する必要があります。
しかし、そうではありません。私はここで何か間違ったことをしていますか、それとも翻訳者のコメントがPythonモードで機能していないだけですか?
編集:私はジョンフラットネスの答えを正しいものとして受け入れましたが、Pythonモードを引き続き使用して翻訳者のコメントを抽出できる回避策を見つけました。コメント内に構文の一部が実際に残っているため、完全ではありません。
私のtax.js
ファイル:
次のコマンドを実行します。
結果は.poファイルになります。
ご覧のとおり、唯一の問題は次のとおりです。
- コメントは2行で書く必要があります
- コメントターミネーター
*/
は翻訳者のコメントに残されています
ただし、ほとんどの場合、これはそれほど問題にはなりません。
php - PoEdit は _n() 複数形を認識しません
POEdit のソース キーワードに次のセットがあります。
機能しますが、関数を使用すると最初の文字列しか取得できません_n()
(Twenty Eleven テーマ):
<?php printf(_n('One Comment', '%s Comments', get_comments_number(), 'twentyeleven'), number_format_i18n(get_comments_number())); ?>
認識させる方法はあり_n()
ますか?それはまさに私が問題を抱えていることですが、解決策はありません: http://www.poedit.net/trac/ticket/307
php - xgettext は複数形をスキャンしません
gettext i18n に Poedit を使用していますが、問題なく動作します。翻訳を統合するためのビュー ヘルパーがある ZF2 を使用します。一つはtranslate
、もう一つですtranslatePlural
。
使用法:
Poedit でキーワードtranslate
andを追加しtranslatePlural
ます。通常の翻訳は正常に機能しますが、複数形の場合は "Item" のみが検出されます ("Items" は検出されません)。テスト目的で、$this->translatePlural()
呼び出しをに置き換えましたngettext()
が、最終的には同じ結果になります。私の結論: (私のバージョンの) Poedit は複数形をスキャンできません。
Poedit が 2 番目の文字列もスキャンできるようにするには、キーワードとして何を入力すればよいですか?
translation - gettext のマージ プロセス - 古い文字列を削除する方法
gettext 翻訳ファイル プロセスを改善したいので、アプリケーション用の .po ファイルを 1 つだけにして、ファイルを翻訳会社に送信するときに翻訳作業が重複するのを避け、オンロード マージを減らしたいと考えています。
問題は、最初の解析で常に 2 つの別個のファイルが作成されることです (1 つは poedit を使用した PHP からの解析、もう 1 つは tsmarty2c.php を使用した smarty からの解析)。そこで、msgcat を調べて、次のプロセスを思いつきました。
これは 1 つの例外を除いて正常に機能します。マージ プロセスに complete.po を含める必要があるため、1/2 で削除された非推奨の文字列は引き続き保持されます (これには機関からの最新の翻訳があるため)。
同様のプロセスを作成する方法に関するヒントはありますか?
xgettext - xgettext を使用して、さまざまな言語のファイルから i18n 用の文字列を収集する方法
デフォルトでxgettext
は、拡張子からファイルの種類を推測します。.js
ただし、現在理解できないJavaScript ファイル (拡張子付き) があります。そのため、言語を手動で指定する必要があります。Java が適切な選択のようです。しかし、その後、Glade ファイル (XML) もあり、これは明らかに Java として解析できません...--language
コマンド ラインで複数のオプションを指定すると、最後のオプションだけが効果があるようです。
xgettext によって認識されるファイル タイプ (C や Glade など) を使用するプロジェクトでは問題にならないようです。
python - csv ファイルからの xgettext
変換するすべての値を含む csv があります...csv ファイルを読み取って .pot ファイルを生成したいのですが、読み込んで print _(value) を呼び出そうとすると、.pot が生成されません。csv から動的コンテンツを含む .pot ファイルを生成できない理由がわかりません。
これが私のコードのスニペットです:
このスクリプトを実行すると、すべての値が表示されますが、実行しても .pot ファイルは生成されません。
文字列値を持つ変数に対して実際の文字列を指定すること (例: print _('hello')) は機能します...どんな助けも大歓迎です。