問題タブ [gettext]
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.
php - PHP Gettext の問題 (非スレッドセーフなど?)
Web プロジェクト (PHP 5) で翻訳を処理するために gettext の使用を開始したいと考えています。評判が良く広く使われている規格なので、ベストチョイスのようです。
ただし、サーバーに互換性がなく、スレッドセーフではないということも聞いています。それを使用する私のプロジェクトにとって、これはどういう意味ですか? 私は多くの人が使用するものを構築しているので、私のコードが機能することは非常に重要です。
マイナーな問題 (まだ PHP 4 を使用している人々など) について話しているのでしょうか、それとも web サーバーへの gettext の配布とインストールが少ないなどの大きな問題について話しているのでしょうか?
html - HTMLまたはLaTeXのgettext?
gettext
HTML や LaTeX のようなものはありますか? 同期を維持する必要がある単純なバイリンガル Web ページまたは LaTeX ドキュメントを生成するのに最適です。すでにそのようなものはありますか?そのための Perl スクリプトがあるに違いないと思いますが、見つかりませんでした。:-)
ありがとう!
php - PHP の gettext を Python の gettext と組み合わせて使用するにはどうすればよいですか?
一部を Django に移行しているアプリがありますが、Python と PHP では文字列形式が異なります (たとえば、"Hello %1s"
PHPと Python の"Hello {0}"
場合"Hello {name}"
)。
しばらく両方のアプリをメンテナンスしますが、PHP で Python 形式を使用する方法、またはその逆の方法はありますか?
php - Dreamweaver で php gettext テキストを表示するにはどうすればよいですか?
入力時に Dreamweaver が実際に「Hello World」を表示できるようにする拡張機能または設定はあり<?php echo _("Hello World"); ?>
ますか?
代わりに、「php」アイコンが表示されるだけです。
つまり、私は通常、HTML と PHP を一緒にブレンドします。次に例を示します。
そうすれば、Dreamweaver では、デザイン モードでページの一般的なレイアウトと静的テキストを簡単に確認できます (Dreamweaver は、php コードを php アイコンに置き換えるだけです)。
ただし、今は国際化のために php 'gettext' を使用する必要があります。そのために、私はしなければならないでしょう:
そのため、Dreamwever の目には静的テキストが php コードになるため、表示されなくなりました。私の仕事をより簡単にする拡張機能や何か他のものがあるかどうか疑問に思っていました.
php - DreamweaverまたはNotepad++でマクロ/ショートカットを作成する方法
私はどのプログラムでも「マクロ」などを作ったことがありません。
「gettext」を使用するようにphpコードを移動しているので、すべての静的テキストを探して変更する必要があります。
たとえば、に変更page title
する必要があり<?php echo _('page title'); ?>
ます。
静的なテキストのように見えるかどうかを確認する必要があるため、すべてを一度に変更する方法はないと思いますが、これらのエディターの1つで、テキストを選択することは可能だと確信しています。キーボードショートカットを押すと、代わりに使用できます。
それは可能ですか?どのように?
DreamweaverとNotepad++の両方が手元にあります。私は他のツールを使用することにオープンです。
ありがとう!
php - gettext は動的コンテンツをどのように処理しますか?
PHP (または一般的には gettext ) では、動的コンテンツへの変数を検出したときに gettext は何をしますか?
私は2つのケースを念頭に置いています。
1) 私が を持っているとしましょう<?=$user1?> poked John <?=$user2?>
。言語によっては、単語の順序が異なる場合があります。gettext はそれをどのように処理しますか? (いいえ、私はFacebookを構築していません。これは単なる例です)
2)データベースにいくつかのカテゴリを保存するとしましょう。それらはめったにありませんが、データベースに保存されます。もしそうしたらどうなります<?php echo gettext($data['name']); ?>
か?翻訳者にそれらのカテゴリ名も翻訳してもらいたいのですが、データベース自体で行う必要がありますか?
ありがとう
php - PHP:Gettextの問題
ここでは、gettextが機能していないようです。
MAMP Proを使用しphpinfo();
ていますが、gettextが有効になっているとのことです。
私はこのチュートリアルに従いました:http://zez.org/article/articleview/42/1/
- 私のコードでは、次のように文字列を宣言しています。
_('test string');
- 次に、を実行しました。これにより、ファイル
xgettest -L PHP test.php
が生成されました。messages.po
- このファイルをpoeditで開き、文字列を翻訳してから、ファイルを保存してファイルを作成しました
messages.mo
。 .po
と.mo
ファイルの両方を取得して移動しました[webroot]/locale/es/LC_MESSAGES/
(この場合、私の翻訳はスペイン語でした)私のコードでは、次のように設定します。
$lang = $_SESSION['lang']; // available to all views that include this file
putenv('LC_ALL='.$lang);
bindtextdomain('messages','./locale');
textdomain('messages');
...と
$_SESSION['lang']
を簡単に切り替えることができます。en
es
ページをリロードしてから、に切り替わるリンクをクリックします
es
が、文字列はスペイン語バージョンではなく英語バージョンとして表示されたままです。に戻すとen
、変化はありません。それは常に英語版です。
エラーメッセージがどこにも表示されないので、なぜこの問題が発生するのか少し迷っています。誰かが私にいくつかのガイダンス/ヘルプを与えることができますか?私は何か見落としてますか?
zend-framework - i18n:gettext + Zend_Translate-文字列の名前空間/グループ化?
現在のフレームワークのi18nメソッドを、言語文字列を配列に格納するLocalizationクラスからgettext
+に更新していますZend_Translate
。
戸惑う特定の状況があります。単一の文字列の出力は単純ですが、現在の方法を使用して、都市、州、プレフィックスなどのコレクションの特定の文字列をグループ化して、操作してhtmlに簡単に変換できるようにします(ドロップダウンオプションなど)。
以下のような配列をグループ化するために保存するしかないのでしょうか。または、を使用するときに見逃している方法がありgettext
ますか?これにより、より便利な方法でこれを行うことができますか?
繰り返しになりますが、呼び出しが次のように使用されるメソッドを基本的に保持できるようにしたいと思います。
そしてこれは、ローカライズされた文字列コレクションからテキスト値と実際のフォーム値を含むプレフィックスのコレクションを取得します。
私は現在も配列に依存しており、Zend_Translate呼び出しをそれらに適用しています。
zend-framework - ローカリゼーション ファイル ( .mo、.po ) の生成のしくみを説明できる人はいますか?
私はグロッキーしようとしていgettext
ます。
これが私がそれがどのように機能すると思うかです-
最初に、ある種の po エディターを使用して、アプリケーションのディレクトリをスキャンし、これらの「.po」ファイルを作成するように指示します。アプリケーションは、スキャンされた各ファイルに対して、プログラミング言語の文字列を含む po ファイルを作成し、それらをコンパイルします。のような高レベルAPIgettext
を使用してメソッドを呼び出し、使用するようZend_Translate
に指定するとgettext
、翻訳をキャッシュするように設定でき、翻訳を返すだけです。
私が本当に不明な点は、po ファイルの編集が実際にどのように行われるかということです。それは手動です。その後、もちろんコンパイルが完了すると、アプリケーションはバイナリ mo ファイルに依存します。
また、誰かが.po
ファイルを編集するための便利な Linux アプリケーションを提供してくれたら、私は感謝します。
php - Gettext: 内部に HTML を含む文字列の翻訳?
配列ベースの私の現在の実装は、キーと値を辞書に格納します。例:
このような文字列内に html を格納するのはおそらく悪い考えだと思いますが、gettext を使用している場合、.mo/.po ファイルで同様の文字列を格納するにはどうすればよいですか? 「貼り付け」「下の URL」「flickr」などの単語を別々に保存する必要がありますか?