Grafana: 国際化

作成日 2014年05月27日  ·  209コメント  ·  ソース: grafana/grafana

やあ、

GUIの翻訳(言語ファイル)を追加するにはどうすればよいですか? 英語はそれほど多くありませんが、お客様はドイツ語を好みます。

誰かが翻訳方法を説明したら、私はドイツ語に翻訳します。 多分他のユーザーが他の言語を提供するでしょう。

ありがとうございました
MarkusR

areux typfeature-request

最も参考になるコメント

@markusr申し訳ありませんが、現在、国際化を追加する簡単な方法はありません。 おそらく長い間高い優先順位にはならないでしょうし、それを行うための良い方法がない限り(それは維持が簡単で、テンプレートのパフォーマンスを低下させない)、それは起こりません。 しかし、angular.jsと国際化についてはあまり見ていません。

しかし、これが重要であると感じている他の人がいる場合は、私に知らせてください(そしてこの問題を+1してください)

全てのコメント209件

@markusr申し訳ありませんが、現在、国際化を追加する簡単な方法はありません。 おそらく長い間高い優先順位にはならないでしょうし、それを行うための良い方法がない限り(それは維持が簡単で、テンプレートのパフォーマンスを低下させない)、それは起こりません。 しかし、angular.jsと国際化についてはあまり見ていません。

しかし、これが重要であると感じている他の人がいる場合は、私に知らせてください(そしてこの問題を+1してください)

+1

簡体字中国語に翻訳します。

+1

+1

+1

+1
スペイン語とカタロニア語の翻訳ができるようになります。

私はいくつかの研究をしました。

角度変換を使用し、transifexなどで変換自体を実行することをお勧めします。

ドイツ語のサポートもお願いします:-)

+1

+1

私は国際化された多くのプロジェクトに携わってきましたが、開発速度が大幅に遅くなる傾向があります。 しかし、私はあなたの母国語で情報を消費する必要性を理解しています。

おそらく、製品ではなく、さまざまな言語でドキュメントを作成できますか? とにかくグラフと数値については99%です:) // cc @torkelo @ nopzor1200

+1

+1

+1

+1 @ bergquistb2gプロジェクトでのGrafanaの使用を防止します

+1

+1

+1

+1 ..フランス語とアラビア語の翻訳を提供できます

+1

ポルトガル語-ブラジル

+1

ja_JP.utf8

+1
そして、この中の別の問題:現時点では、grafanaはäöüのようにドイツ語の「ウムラウト」をサポートしていません。 グラフの凡例のエイリアスフィールドでそれらを使用すると、グラフ全体が期待どおりに機能せず、「内部サーバーエラー」がスローされるため、これは問題です。
今、私はumlautsをそれらの表現に変更しましたが、それは良い解決策ではありません。

+1

+1

+2

+1

+1

+1

別の(一種の)ショーストッパーは、CSVエクスポートに国際化が必要であるということです。イライラしますが、ドイツ語圏の国では、国際的には「。」である小数を区切るために「、」が使用されます。 問題は、ドイツ語設定のExcel / LibreOfficeが数値をテキストとしてインポートすることです。 :-/
また:はい、GUIのドイツ語は素晴らしいでしょう!

国際化の進展はありますか? 翻訳スクリプトの作成を開始しようとしていますが、その前に、ここにいる誰かがすでに何かを持っているかどうかを確認したいと思いました。

+1。 また、これを行うための支援を探しているかどうか疑問に思います。

これは私たちにとって目を見張るものになるでしょう。 i18nがないと、私たちが検討しているプロジェクトでGrafanaを使用できません。

+1

+1

+1

+1

+1

+1
ロシア語に翻訳します。

+1

+1
ロシア語の翻訳を手伝う準備ができています

+1

+1
このローカリゼーションの欠如により、プロジェクトの1つでgrafanaを使用できなくなります。

👍+ 2

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

  • 中国語を翻訳する

+1

+1

+1

+1

+1

angular-translateを使用して、Grafanaをフランス語に翻訳することができました。 90%のように機能しています。

spectacle l12531

現在、カレンダーを翻訳できません。

spectacle d12531

各言語の翻訳を書いたファイルがあります。

app.config(['$translateProvider', function ($translateProvider) {
      $translateProvider.translations('fr', {
        'resetmail': 'Mot de passe oublié?',
        'User' : "Utilisateur",
        "Password" : "Mot de passe",
        "emailorusername" : "mail ou identifiant",
        "Back to dashboard" : "Retour au tableau de bord",

私は次のようにHTMLで英語のテキストをパイプします:

<span class="gf-form-label width-7">{{'User' | translate}}</span>
<span class="gf-form-label width-7">{{'Password' | translate }}</span>

ループでも機能します

<select class="gf-form-input" ng-model="ctrl.prefs.timezone" ng-options="f.value as (f.text | translate) for f in ctrl.timezones">

混乱を少し解消して、後でコードを投稿します

+1

+1
@Nayarドロップダウンメニューとカレンダー以外のほとんどすべてを変更することができました。 解決策は見つかりましたか?
grafana

@Nayarコードクリーニングのステータスはどうなっていますか? あなたが公開したソリューションに間違いなく興味があるでしょう、そして私は初めてそれがここに投稿したほとんどの人々のニーズをカバーすると思います。

+1
角度変換アプローチが好きです。 言語ごとに異なるダッシュボードコンテンツを用意することをお勧めしますか? Grafana UXとダッシュボード自体の両方を特定の言語(オランダ語、ドイツ語、フランス語)で使用する必要があります。

私はこのブランチに必要最低限​​のものを置いています//github.com/Nayar/grafana/commits/i18n

ログインフォームはすでに翻訳済みです。

screenshot_20171212_162104

+1

+1

+1

+1

+1ロシア語

+1

+1

国際化は、メインチームがそれを処理する場合にのみ開発を遅らせます。

他の多くのプロジェクトでは、コミュニティがcrowdinなどのツールを使用して翻訳できるようにしています

ロシア語翻訳の場合は+1。 準備ができたら私にメールしてください

+ 1日本人

+1韓国語

+1

中国語は+1!

中国語パッケージの+1

中国語パッケージの+1

中国語パッケージの+1

中国語パッケージの+1

中国語パッケージの+1

+1

+1

「+1」のコメントでスパムを送信しないのであれば、すばらしいでしょう。 これが気に入ったら、最初の投稿に「いいね」を付けることができます。 そうしないと、間に何千もの「+1」コメントがある場合、ここで機能リクエストについての議論を始めるのは難しいでしょう。 ありがとう!

こんにちはトルケロ! お願いがありますが、今日は国際化できますか? 私はたくさんの投稿を読みましたが、それが可能かどうかはっきりしていません。 ありがとうございました!

ブルガリア人+1

+1ペルシア語+ RTL

+1ポルトガル語-BR

中国語パッケージの+1

中国語パッケージの+1

+1

+1

フランス語サポートの+1👍

日本語パッケージの場合は+1

+1ポルトガル語-BR

中国語パッケージの+1

簡体字中国語の場合は+1

+1

+1

+1

簡体字中国語の場合は+1

やあ、

GrafanaはAngularJSを使用しているようです。 Angular Translateは、AngularJSアプリケーションに国際化をもたらすソリューションです。 私はすでにそれを使用しました、そしてそれはうまくいきます。 また、ビルドプロセスに追加してJSソース、HTMLテンプレート、翻訳ファイルを検証できるNodeJSプラグインであるAngular TranslateQualityも開発しました。

国際化されたダッシュボードは、クライアントから頻繁に要求されます。 行政や組織にとって、それは義務的でさえあるかもしれません(それは法律です)。 Grafanaにi18nを追加するためのプルリクエストを送信し、それが開発ガイドラインに準拠している場合、それを受け入れますか? また、翻訳ファイルの保守をコミュニティに依存することも意味します。 それはあなたが受け入れる準備ができているものですか?

ところで、AngularJSを維持する予定はありますか? 別のWebフレームワークに移行する場合は、国際化をリセットする必要があり、今すぐ作業を行うことは意味がありません。

Reactを移行しています。Grafanaの大部分はすでに反応しています

OK、ありがとう。 小切手を最初のメッセージとpackage.jsonファイルに限定していました。
質問:移行とは、存在するものをアップグレードすることを意味します。 移行中に国際化に取り組むことを検討しましたか?

+1

+1 @ torkelo 、i18nはとても便利だと思います。

+1

フランス語の場合は+1

angular-translateを使用して、Grafanaをフランス語に翻訳することができました。 90%のように機能しています。

spectacle l12531

現在、カレンダーを翻訳できません。

spectacle d12531

各言語の翻訳を書いたファイルがあります。

app.config(['$translateProvider', function ($translateProvider) {
      $translateProvider.translations('fr', {
        'resetmail': 'Mot de passe oublié?',
        'User' : "Utilisateur",
        "Password" : "Mot de passe",
        "emailorusername" : "mail ou identifiant",
        "Back to dashboard" : "Retour au tableau de bord",

私は次のようにHTMLで英語のテキストをパイプします:

<span class="gf-form-label width-7">{{'User' | translate}}</span>
<span class="gf-form-label width-7">{{'Password' | translate }}</span>

ループでも機能します

<select class="gf-form-input" ng-model="ctrl.prefs.timezone" ng-options="f.value as (f.text | translate) for f in ctrl.timezones">

混乱を少し解消して、後でコードを投稿します

======================================

私はたくさんの助けを得ました。
ありがとうございました 。
そしてほとんど成功します

しかし
私は成功しませんでした。
pageHeader(tsxファイル)

これを修正しましたか?
あなたの助けが必要です。

return <h1 className="page-header__title">{title}</h1>;

->
return <h1 className="page-header__title">{title | translate}</h1>;

https://stackoverflow.com/questions/53476757/angular-translate-in-grafana-headerpage-modify-tsx-file

ヒント-カヌー(getcanoe.io)では、POEditor.comを使用して、ユーザーがサインアップして翻訳を手伝うようにすることにしました。 それはうまく機能し、100人以上の人々が翻訳を手伝っています。 POEditorはオープンソースプロジェクトでは無料です。 仮にあったとしても、それが開発を大幅に遅くするとは言えません。

@sundoforce
これはタイミングの問題である可能性があります。 翻訳プロバイダーは、タイトルが返される前に実行される場合があります。 翻訳ループを再実行する方法を見つけてください。 'tsx'ファイルがここで問題になっているようです。これは、Angularサービスをこのファイルにロードする方法がないと思うためです。

簡体字中国語の場合は+1

簡体字中国語の場合は+1

+1

繁体字中国語の場合は+1

+1

+1

@sundoforceまたは実行中のプロジェクトで翻訳を正常に実装した人:
ステップバイステップで実装を手伝ってもらえますか? 新しい翻訳ファイルを作成する方法と、プロジェクトを反映できるように更新する場所と方法を正確に知りたいです。

+1

angular-translateを使用して、Grafanaをフランス語に翻訳することができました。 90%のように機能しています。

それは素晴らしい@sundoforceです! Grafanaを他の言語に翻訳できるように、ファイルを共有していただけませんか? そうすれば、あなたが直面している問題の解決策を見つけることができるかもしれません。 前もって感謝します!

+1

+1

+1
+1
+1

+1

+1
+1
+1

簡体字中国語の場合は+1

この問題のスパムを停止してください。 代わりに、この問題に投票してください。

現在、Grafanaのフロントエンドをangularからreactに書き換えているため、現時点でこれを検討することはほとんどありません。

angular-translateを使用して、Grafanaをフランス語に翻訳することができました。 90%のように機能しています。
spectacle l12531
現在、カレンダーを翻訳できません。
spectacle d12531
各言語の翻訳を書いたファイルがあります。

app.config(['$translateProvider', function ($translateProvider) {
      $translateProvider.translations('fr', {
        'resetmail': 'Mot de passe oublié?',
        'User' : "Utilisateur",
        "Password" : "Mot de passe",
        "emailorusername" : "mail ou identifiant",
        "Back to dashboard" : "Retour au tableau de bord",

私は次のようにHTMLで英語のテキストをパイプします:

<span class="gf-form-label width-7">{{'User' | translate}}</span>
<span class="gf-form-label width-7">{{'Password' | translate }}</span>

ループでも機能します

<select class="gf-form-input" ng-model="ctrl.prefs.timezone" ng-options="f.value as (f.text | translate) for f in ctrl.timezones">

混乱を少し解消して、後でコードを投稿します

======================================

私はたくさんの助けを得ました。
ありがとうございました 。
そしてほとんど成功します

しかし
私は成功しませんでした。
pageHeader(tsxファイル)

これを修正しましたか?
あなたの助けが必要です。

return <h1 className="page-header__title">{title}</h1>;

->
return <h1 className="page-header__title">{title | translate}</h1>;

https://stackoverflow.com/questions/53476757/angular-translate-in-grafana-headerpage-modify-tsx-file

こんにちは心のこもった、それはあなたが私に翻訳する方法を手に入れることができるということになるでしょう。 grafanaからスペイン語、datepicker、timepicker。

++++

+1

スペイン語に翻訳するための1+

「grafana / public」ディレクトリから翻訳されたましたが、十分ではないことがわかりました。 「grafana / build /.js 」内にあります。
翻訳をgrafanaに含めることはできますか?

これは完全なGrafanaフロントエンドリファクタリングになりますが、それはアイデアです。 どこで問題に投票できますか?

中国語に翻訳するための+1

angular-translateを使用して、Grafanaをフランス語に翻訳することができました。 90%のように機能しています。
spectacle l12531
現在、カレンダーを翻訳できません。
spectacle d12531
各言語の翻訳を書いたファイルがあります。

app.config(['$translateProvider', function ($translateProvider) {
      $translateProvider.translations('fr', {
        'resetmail': 'Mot de passe oublié?',
        'User' : "Utilisateur",
        "Password" : "Mot de passe",
        "emailorusername" : "mail ou identifiant",
        "Back to dashboard" : "Retour au tableau de bord",

私は次のようにHTMLで英語のテキストをパイプします:

<span class="gf-form-label width-7">{{'User' | translate}}</span>
<span class="gf-form-label width-7">{{'Password' | translate }}</span>

ループでも機能します

<select class="gf-form-input" ng-model="ctrl.prefs.timezone" ng-options="f.value as (f.text | translate) for f in ctrl.timezones">

混乱を少し解消して、後でコードを投稿します

======================================
私はたくさんの助けを得ました。
ありがとうございました 。
そしてほとんど成功します
しかし
私は成功しませんでした。
pageHeader(tsxファイル)
これを修正しましたか?
あなたの助けが必要です。
return <h1 className="page-header__title">{title}</h1>;
->
return <h1 className="page-header__title">{title | translate}</h1>;
https://stackoverflow.com/questions/53476757/angular-translate-in-grafana-headerpage-modify-tsx-file

こんにちは心のこもった、それはあなたが私に翻訳する方法を手に入れることができるということになるでしょう。 grafanaからスペイン語、datepicker、timepicker。

私は角度変換が角度で機能することを理解しました。 しかし、grafanaにはreactのTSXファイルがたくさんありますが、angular-translateはどのように機能しますか?

+1
ポルトガル語ブラジル

+1

ポーランド語のhtmlファイルにある100%oのテキストの翻訳があります。 実装する準備はできていますが、サポートが必要ですか?

+1
スロバキア語の翻訳を手伝うことができますsk_SK

@bergquist

+1
私はフランス語に翻訳するのを手伝うことができます

+1

+1

ベトナム語に翻訳するための+1

このためのアーキテクチャは、私たちが行っているe2eの変更の追加部分として実行できると思います。 プロジェクトごとに英語のファイル(コアとプラグイン)のみを公式に提供できますが、他の言語はコミュニティが管理するプラグインにすることができます。 @torkelo

+1

+1

スペイン語翻訳の場合は+1

ラトビア語翻訳の場合は+1

+1

私は韓国語の翻訳を手伝うことができます

+1
フランス語の翻訳についてサポートが必要な場合は、サポートさせていただきます。

スペイン語(南アメリカ)の翻訳の場合は+1、信じられないかもしれませんが、英国英語(異なる日付形式を使用し、場合によってはいくつかの用語が異なります)

https://localizejs.comのサポートをGrafanaに追加することを検討した人はいますか? そうすれば、誰もが自分の翻訳を管理でき、Grafanaコアチームは、さまざまなロケールを維持するために継続的に余分なサイクルを費やす必要がなくなります。

+1

+1

\ + 1

ロシア語の場合は+1。

日付と時刻のフォーマットにはhttps://momentjs.comを使用できます。 他のものについてはgettextがあります。 よろしければ助けを求めてください。

このためのアーキテクチャは、私たちが行っているe2eの変更の追加部分として実行できると思います。 プロジェクトごとに英語のファイル(コアとプラグイン)のみを公式に提供できますが、他の言語はコミュニティが管理するプラグインにすることができます。 @torkelo

はい、アーキテクチャを変更してください。 実際の翻訳は、寄稿者による単純なプルリクエストで行うことができます。 Gettextは、翻訳されていない部分でエラーを発生させないため、コードを変更したときにすべての翻訳を修正するべきではありません。 また、gettextは複数形に最適です。

ブラジルから+1

+1

+1
私はペルシア語翻訳を提供するのを手伝うことができます。 :-)

+1
私はペルシア語翻訳を提供するのを手伝うことができます。 :-)

その後、ジャラーリー暦の追加をお手伝いします! 💯

@torkeloこの時間の後に更新はありますか? 本当にありがたいです! :)

ウクライナ語の場合は+1。

+1イタリア語とドイツ語

ウクライナ語とロシア語の場合は+1

+1

https://github.com/date-fns/date-fns

momentjsよりも優れています

Grafanaの何百人ものユーザーがこの素晴らしいオープンソースソフトウェアの翻訳を喜んで行っているので、 Weblateの私たちは喜んでお手伝いしたいと言っています。 ローカリゼーションは、開発を遅くしたり、開発者の作業負荷を増やしたりする必要はありません。 それは、コミュニティと自由な方法によって、簡単に、自動的に行うことができます。 openSUSEのように、Fedora、LibreOffice、Godot Engine、および他の多くのプロジェクトがそうします。

Grafanaリポジトリには、すでにいくつかのQt Linguist translation files 、言語JSONs 、およびHTML言語ファイルがあることがわかります。 😃コードのi18nが完了すると、🤞、librel10nプラットフォームを提供する準備が整います。

Grafanaチームは何と言いますか?

+ 1日本人

+1私はフランス語を手伝うことができます。 翻訳プロジェクトを寄稿者のサブグループに委任したいのですが、2年間リードできます。

ポルトガル語の場合は+1

+1

+1

+1

中国語は+1!

+1スペイン語

Grafanaで実際のプロジェクトを作成し、ダッシュボードを作成した後、私は一歩下がっていました。
翻訳する必要があるのは、ビューアアクセスロールのみです。このタイプのユーザーは、自分の言語との関連で作業し、ENでGrafanaに切り替えるのは難しい場合があります。
構成を変更するユーザーにとって、翻訳は意味がなく、維持するのは非常に困難です。 これらのユーザーは、自分が上級ユーザーであることを理解し、ENで作業することができます。

Grafanaで実際のプロジェクトを作成し、ダッシュボードを作成した後、私は一歩下がっていました。
翻訳する必要があるのは、ビューアアクセスロールのみです。このタイプのユーザーは、自分の言語との関連で作業し、ENでGrafanaに切り替えるのは難しい場合があります。
構成を変更するユーザーにとって、翻訳は意味がなく、維持するのは非常に困難です。 これらのユーザーは、自分が上級ユーザーであることを理解し、ENで作業することができます。

仰るとおりです。 翻訳は視聴者にとってのみ重要です

@fdepierre

Grafanaで実際のプロジェクトを作成し、ダッシュボードを作成した後、私は一歩下がっていました。
翻訳する必要があるのは、ビューアアクセスロールのみです。このタイプのユーザーは、自分の言語との関連で作業し、ENでGrafanaに切り替えるのは難しい場合があります。
構成を変更するユーザーにとって、翻訳は意味がなく、維持するのは非常に困難です。 これらのユーザーは、自分が上級ユーザーであることを理解し、ENで作業することができます。

SWローカリゼーションは私の日常のパンであり、あなたが共有した意見は通常、ローカリゼーションを開始した後に消えます。 多くのプロジェクト所有者はそれを長く保ちません。

はい、エンドユーザーインターフェイスは最も重要であり、l10nから始めるのに間違いなく最適な場所です。 しかし、ローカライズされた管理コンソールやドキュメントでさえ、誰もけがをしたことはありません。 コミュニティはこれを手伝うのが大好きです! Godot Engineプロジェクトに問い合わせるか、 https://docs.weblate.org/を多くの言語で確認して

エンドユーザー/ビューアのUIは、Grafanaローカリゼーションでstartを使用するのに適した場所であることに同意します。 😉

ここで多言語サポートの重要性についてもう1票を追加するだけで、これをより高い優先度にするための+1が得られます。

また、利用可能になったら、ドイツ語の翻訳に貢献させていただきます。

視聴者専用のi18nについては、長期的な選択肢ではないと思います。 おそらく最初の優先事項として。 しかし、おそらく長期的にはそうではありません。

+1私はスペイン語への翻訳を手伝うことができました。

+1私はイタリア語の翻訳を手伝うことができました!

+1はスペイン語の翻訳に役立つ可能性があります

+1はスペイン語を助けることができます

+1

+1

+1

+1

+1

+1私は日本語を手伝うことができます。

+1私はスペイン語への翻訳を手伝うことができました。

+1私はスペイン語への翻訳を手伝うことができました。

+1中国語への翻訳を手伝うことができます。

+1トルコ語への翻訳を手伝うことができます。

+1

+1

ロシア語の場合は+1。 翻訳を手伝うことができます

+ 1日本語翻訳

スペイン語+

エルエルマール、11月24日 de 2020 a la(s)04:07、ajoneba <
[email protected]>escribió:

+ 1日本語翻訳


あなたがコメントしたのであなたはこれを受け取っています。
このメールに直接返信し、GitHubで表示してください
https://github.com/grafana/grafana/issues/448#issuecomment-732699235
または購読を解除する
https://github.com/notifications/unsubscribe-auth/AAT7GTAIG4VCLWV5262S2WLSRNLS5ANCNFSM4AP2O6QA

ポルトガル語の翻訳の場合は+1。

+1

+1

日付を他の言語でフォーマットしておくのは少なくともクールでしょう。 ここでは、11〜12を正しく理解しているユーザーはいません(ドイツでは12月11日、私たちでは11月12日です)。

+1..。
したがって、この問題は6歳のようなものです。 少なくとも値と時刻と日付のフォーマットを変更する可能性を追加してください...

+1
多言語はGUIベースのソフトウェアにとって非常に重要であり、より多くの言語を利用できるようにすることで、世界中でgrafanaの人気を高めることができます。

簡単なスクリプトで簡単にgrafanaを翻訳できます。 ロシア語のタイムピッカーを翻訳したばかり

Screenshot_1

簡単なスクリプトで簡単にgrafanaを翻訳できます。 ロシア語のタイムピッカーを翻訳したばかり

Screenshot_1

いいね! あなたはあなたの経験を共有できますか?

このページは役に立ちましたか?
0 / 5 - 0 評価