問題タブ [string-externalization]
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.
java - フィールド名として ${key} を使用するように Eclipse で文字列の外部化を構成する
次のような単純なコードがあるとします。
ここで、おそらく国際化/ローカリゼーションなどを容易にするために、挨拶を外部化したいと思います。Eclipse を使用して、String Externalization ウィザード (Source/Externalize Strings) を使用して、次のように構成できます。
ウィザードを続行すると、次の変更が提案されます。
- ファイルを作成
Personal Toys/src/Messages.java
- ファイルを作成
Personal Toys/src/messages.properties
- 編集
ExternalizeStringDemo.java
"Hello World"
になるMessages.getString("DEMO_GREETING")
私の質問は簡単です。代わりに、キーをフィールド名として使用するためにアクセスを外部化するように Eclipse に依頼できますか? つまり、アクセスをegにしたいのですMessages.DEMO_GREETING
。
注:[Substitution pattern]
が simple${key}
の場合、生成されるコードはMessages."DEMO_GREETING"
であり、有効な Java コードではありません。
これが不可能な場合、次善の策は何ですか? (私はEclipseの正規表現の検索/置換を考えていますか?)。
spring - マルチ環境アプリケーションでシステムプロパティを外部化するための最良の方法
いくつかの環境(テスト、UAT、本番)で実行されるSpring 3アプリケーションを使用しています。これらの環境はサードパーティ企業によって管理されているため、サーバーにほとんどアクセスできません。
JbossシステムプロパティとMaven2プロファイルを試してみました。どちらのソリューションも正常に機能しましたが、アプリケーションを1つの特定のサーバー(この場合はJboss)に結び付けたくないし、環境固有のビルド(Maven2プロファイルに必要)を実行したくありません。
環境ごとに異なるビルドを必要とせず、サーバー側で変更を必要とせず、異なるサーバーでも実行できる、アプリの環境固有のプロパティを設定できる良い方法はありますか?(PropertyPlaceHolderConfigurer
アプリのコンテキスト外でプロパティファイルを読み取ることができるようなものでうまくいくはずです)
asp.net - ASPX ファイルをチェックして、参照されているリソース キーが RESX に存在することを確認します。
文字列が外部化されたかなり大きな Web サイトがあります。参照されているリソース ファイルに ASPX のリソース オブジェクトが存在することを確認する方法があるかどうかを知りたいです。パーサーエラーが発生するページがいくつかありますが、すべてのファイルを一括チェックできるようにしたいです。
すべてのファイルを確認するためのツールまたは何らかの方法があり、その方法をご存じでしたら、ご協力いただければ幸いです。
unicode - マルチバイト言語用の Web サイトのローカリゼーション
多くのハードコーディングされたテキストを含む中規模の Web サイトの多言語機能のコーディングを開始しました。Web サイトは日本語と韓国語 (マルチバイト文字セット) に翻訳されることになっているため、次のことを検討しています。
- 文字列の外部化を使用する場合、日本語または韓国語の文字列は、ロケール ファイル内で Unicode 形式にする必要がありますか (つまり
台北
、文字列値としての台北ではなく)? - ローカリゼーションを DB (つまり MySQL) に保存し、PHP のローカリゼーション関数を介してそれぞれの値を取得する方が理にかなっていますか?
ご意見をお待ちしております。
よろしくお願いします
java - 新しいEclipse文字列の外部化メカニズムを使用してSWTアプリでロケールを変更するには?
SWT アプリを多言語化したいと考えています。そのため、ここで説明する新しい Eclipse 文字列外部化メカニズムを使用しています。
一部の言語に対して異なるmessages_xx_XX.propertiesを作成し、 Messages.localeDependentStringを介してロケール依存の文字列に対処しています。
私が理解できないのは、デフォルトの Messages.properties ではなく、他の Messages_xx_XX.properties を使用するようにロケールを切り替える方法です。実行時にこれを行うことは可能ですか?
javascript - Javascript で文字列を外部化する
JavaScript で文字列を外部化するツールをオンラインで検索していましたが、そうすることができませんでした。日食に組み込まれているものに似たものがあることを望んでいました(ソース->文字列の外部化...)。それを実現できる Eclipse 用のツールまたはプラグインを誰かが知っている場合は、お知らせください。
すでに成熟しているソフトウェア プロジェクトがありますが、現在は翻訳をサポートする必要があるため、文字列を外部化する必要があります。
android - アンドロイドの文字列フォーマットの問題
Android アプリケーションで「string.format」の問題に直面しています。私のアプリケーションでは、ユーザーが言語設定をデフォルト (英語) から他の外国語 (日本語、ドイツ語など) に変更すると、変数文字列の配置によって強制終了エラーが発生します。以下のコードを参照してください。
temp = String.format(locale,getResources().getString(R.string.temp_string), value, name);
ここで、 temp_string = "パーセル番号 %1$d は %2$s に属します" は、一部の言語で他の言語が選択されている場合のデフォルト選択 (英語) で %2$s が %1$d の前に来ます。これにより、適用力が閉じます。変数文字列(値、名前)を動的に処理する方法はありますか?
qt - コンテキストに応じてQtアプリケーションランタイムのUIラベル/ツールチップを置き換える方法は?
Qt デスクトップ アプリケーションを開発しています。アプリケーションは複数のファイルを各タブで 1 つずつ開くことができ、各タブ (ファイル) には独自のコンテキストがあります。ユーザーは複数のファイルを開き、これらのタブを切り替えることができます。
例: あるタブがトラック管理のように、ツールバーのアクション (add_Vehicle) はツールチップ「トラックの追加」を表示し、別のタブが車両管理の場合、同じアクションはツールチップ「車の追加」を表示する必要があります。
このようなものがたくさんあります:
トラック (トラック管理タブから車両) を削除すると、「トラックが正常に削除されました」というメッセージ ボックスが表示されます。車 (つまり、車の管理タブからの車) が削除された場合、「車は正常に削除されました」というメッセージが表示されます。
テキストが QtDesinger を介して QLabels に直接設定されるダイアログがいくつかあります。
この問題はどのように発生しますか?
以前は、このアプリケーションはトラック管理のみをサポートしていましたが、現在は同じアプリケーションで車両管理のサポートを追加しています。すべてのメッセージ/UI ラベル/ツールヒントは「トラック」を使用しています。開いたタブ(ファイル)に応じて変更したいと思います。
実行可能な思考ソリューション: (実行時に機能しない)
すべての UILabels/ToolTips/Messages は翻訳可能です [つまり、QObject::tr(..) で書かれています]。すべての場所でテキストを自動的に変更するタブ コンテキストに従って QTranslator をインストールすることを考えました。QTranslator ランタイムのインストールが機能しません。
これを行う別の方法はありますか?または、ポインタ/ヒントが非常に役立ちます。
java - ビルド時に国際化されていない Java 文字列の警告を生成するにはどうすればよいですか
eclipse に組み込まれている外部化のような IDE 固有のソリューションを除外しているように見える、継続的インテグレーション サーバー (TeamCity) で実行できるソリューションを探しています。
Java ソース ファイルで文字列が見つかった場合は、警告を生成する必要があります。ただし、Eclipse の // $NON-NLS-1$ コメントなど、国際化を必要としないというフラグが (コメントまたは注釈によって) 付けられている場合を除きます。
コードは、teamcity の maven を使用してビルドされます。
既存のソリューションや、カスタム ソリューションを maven や teamcity に接続する方法についてのアイデアを見つけることができませんでした (どちらにもあまり詳しくないので、かなり明白なものを見落としている可能性があることに注意してください)。