ネスト化されたキー
Smartcatは、ネスト化されたJSONオブジェクトをそのまま保持します。Structured JSON はパス区切り文字を使用して、ネスト化された各キーを checkout.button.label などの1つの ID にマッピングし、同じネスト構造を戻るようにエクスポートします。
- checkout.button.labelキーID、ロック中
- "Pay now"文字列の値、翻訳済み
Smartcatはプロダクトチーム向けのJSON翻訳ツールです。お客様のJSONロケールファイルを解析し、値の文字列のみを翻訳して、280以上の言語のいずれでも同じキーとネスト化を保持して返します。一度定義した正規表現ルールを使用することで、プレースホルダートークンはタグとして固定されたままになります。
世界最大級の企業80社以上がSmartcatを選んでいます
JSON翻訳ツールは、JSONファイルの構造に手を加えることなく、そのファイル内の人間が読める文字列を別の言語に変換するツールです。Smartcatはロケールファイル内の文字列の値を翻訳します。キーとネスト化は完全に元のまま維持され、プレースホルダートークンは編集不可のタグとしてロックされるため、翻訳されたファイルはそのままi18nパイプラインにスムーズに戻ります。
JSON ファイルの翻訳者として、Smartcat は en.json、translation.json、およびお使いの i18n ライブラリが読み込むその他のすべてのロケールファイルを処理します。JSON のローカリゼーションはさらに一歩進んでいます。ロケールファイルは UI、REST API、または CLI を通じてインポートおよびエクスポートする Smartcat プロジェクト内のキーとなるため、各リリースでは新規および変更された文字列のみが翻訳に送信されます。
1つのファイルを、1回だけ翻訳しますか?無料のJSON翻訳ツールは、ブラウザで同じエンジンを実行します。
92%
そのまま承認された機械翻訳のワードの
Smartcat AIによって翻訳された単語の92%が、人による修正を一切受けることなく承認されています。
280+
言語
1つのen.jsonから、280以上の言語のいずれかでde.json、ja.json、pt-BR.jsonを生成します。
80+
ファイル形式
JSONは同じワークスペース内で、YAML、Android、XML、iOS、.strings、そしてXLIFFの次へ座っています。
通常の翻訳ツールではJSONファイルが壊れてしまいます。これは、それらのツールがファイル全体を散文として扱うため、テキストと一緒にキー、プレースホルダー、複数形の構文まで翻訳されてしまうからです。
en.jsonを一般的な翻訳ツールに貼り付けると、文書全体が散文として扱われてしまいます。戻るものはエディターで解析されるか、あるいは解析されず、本番環境で失敗します。これらはどれもレビューに表示されません。それらは実行時に、一度に1つのロケールずつ表示されます。
「checkout_button」が「bouton_de_paiement」になり、コード内のすべての参照がundefinedを返すようになります。
Smartcatはキーをテキストとしてではなく、IDとしてインポートします。文字列の値のみがセグメントになるため、すべてのルックアップは引き続き解決されます。
「Hello, {{userName}}」は「Bonjour, {{nomUtilisateur}}」として戻り、文字列は生のトークンを描画します。
プレースホルダーのルールに一致するトークンは、ロックされたタグとしてインポートされます。翻訳者はそれらを移動できますが、編集することはできません。
{count, plural, one {# item} other {# items}} のような ICU メッセージは1つの文にフラット化され、英語以外のすべての言語で複数形が機能しなくなります。
ICUの複数形は各言語で必要な複数形へと解析され、エクスポートによってそれらはICU互換の文字列として戻る形で書き出されます。
エスケープされた見積もり、\n、および \uXXXX シーケンスが「親切にも」正規化され、diff では問題なく見えたファイルが JSON.parse でエラーを発生させます。
文字列の値のみがセグメントになります。キーおよびネスト化は翻訳の対象として提示されないため、エクスポートされたファイルは出典ファイルの形状を維持します。
JSON ファイル翻訳ツールは、キー、ネスト化、プレースホルダー、および ICU の複数形をそのまま維持し、文字列の値のみを翻訳する必要があります。これを実行するJSON翻訳ツールは、ビルドが読み取り可能なJSONファイル翻訳を提供します。ファイル内の各部分に必要なものは以下の通りです。
| 要素 | 例 | 汎用的な翻訳ツール | Smartcat |
|---|---|---|---|
| 鍵 | "checkout.title" | 頻繁に翻訳されるため、検索に失敗します | キーIDとしてロックされ、翻訳へ送信されることはありません |
| 文字列の値 | "Your cart" | それらを囲むコードと一緒に翻訳されました | 翻訳メモリと用語集を使用してセグメントとして翻訳済み |
| ネスト化されたオブジェクト | {"nav": {"home": "Home"}} | 括弧や見積もりは変動することがあります | 形状を保持。フラットまたは構造化データとしてエクスポート JSON |
| プレースホルダー | {{userName}}、%s、{0} | 翻訳済みまたは削除済み | 一度設定したプレースホルダールールにより、タグとしてロックされました |
| ICU 複数形 | {count, plural, one {…} other {…}} | 1つの文にまとめられた | 言語ごとの複数形に解析され、ICU としてエクスポートされました |
| コンテクスト | LocJSON コメントと最大長 | 失われた | 文字列の次へ翻訳者に表示されます |
同じソフトウェアローカリゼーションプロジェクトは、YAML、Android、XML、iOS、.strings、およびLocJSONのキーもインポートします。
SmartcatでJSONファイルの翻訳を行うには、ファイルをアップロードし、ターゲット言語を選択し、プレースホルダーをロックして機械翻訳させ、翻訳レビューを行って、すべての言語で同じキーをダウンロードします。同じフローがCLIとREST APIで実行され、JSONファイルの翻訳のステップバイステップガイドではフラット、ネスト化、およびi18nextファイルを網羅しています。
en.json、または複数のロケールファイルを一度にアップロードしてください。開発者は、代わりにCLIまたはREST APIを使用してキーをインポートできます。

ソース言語を1つ選択し、必要なすべてのターゲット言語を選択してください。ターゲット言語は後からいつでも追加できます。

{{名前}}、%s、または {0} など、コードで使用されている各トークン形式にルールを追加してください。一致するトークンはロックされたタグとしてインポートされます。

Smartcat AIはお客様の翻訳メモリと用語集を使用してすべての文字列を下書きするため、以前のリリースで承認された文字列が再利用されます。

文字列の確認、用語集の用語の適用、または人間によるレビューへの言語の割り当てを行うには、エディターを開いてください。AIの下書きで十分な場合は、スキップしてください。

同じキー、同じネスト化、新しい言語。言語ごとに1つのファイルをエクスポートするか、プロジェクト全体を選択してフォルダーごとに分類された1つのZIPをダウンロードします。

JSON ローカリゼーションソフトウェアは文字列をキーとして保存するため、リリースごとに承認済みの翻訳が再利用されます。Smartcatでは、そのソフトウェアローカリゼーションプラットフォームの一部として、1つのプロジェクトにキー、翻訳メモリ、用語集が保持されます。違う仕事?1つのファイルを無料で翻訳、JSONファイルの翻訳方法に関するステップバイステップのガイドに従うか、またはJSONファイルを英語やその他の言語に翻訳します。
Smartcatは、パス区切り文字を含むネスト化されたJSONキー、言語ごとの複数形としてのICU複数形、および標準的なキー/値JSONとしてのi18nextまたはReact Nativeロケールファイルを処理します。JSONローカリゼーションが失敗しがちな3つのポイントがこれらです。
Smartcatは、ネスト化されたJSONオブジェクトをそのまま保持します。Structured JSON はパス区切り文字を使用して、ネスト化された各キーを checkout.button.label などの1つの ID にマッピングし、同じネスト構造を戻るようにエクスポートします。
お使いのi18nライブラリが読み込む形式に応じて、同じキーをドット区切りのIDを持つフラットなJSONとして、またはネスト化されたオブジェクトを持つ構造化されたJSONとしてエクスポートします。
別々の複数形に解析されたICU MessageFormatの複数形をインポートするか、そのまま維持します。各言語は必要な形式を取得し、エクスポートはそれらをICU互換の文字列として書き戻る。
{{userName}}、%s、{0} などのトークンは、一度設定したプレースホルダーのルールに一致すると、ロックされたタグとしてインポートされます。翻訳者は文の中でタグを移動することはできますが、変更したり削除したりすることはできません。
translation.json などの i18next JSON 翻訳ファイルは、あらゆる React Native ロケールファイルと同様に、標準的なキーと値の JSON です。ロケールごとに1つのJSON言語ファイルを持つマルチ言語JSONセットアップは、そのネスト化を維持したままキーとして直接インポートされます。
ロケールごとに1つのファイル
1つのソフトウェアローカリゼーションプロジェクトでJSON、YAML、Android XMLおよびiOS .stringsキーを保持できるため、ウェブとモバイルの文字列で1つの翻訳メモリと用語集を共有します。
1つのプロジェクト内の形式
LocJSONは、SmartcatのJSONベースの統合フォーマットです。各ユニットにはコメントと最大長を設定でき、翻訳者は文字列の次へこれらを確認できます。
TJSONファイルは、同じワークスペース内のgettext、PO、XLIFF、およびJava .propertiesファイルと並んで、通常のファイルプロジェクトとして翻訳されます。
ファイルプロジェクト
同僚各自が初稿から最終チェックに至るまで、JSONのローカライズの各工程を1つずつ担当します。エクスポートの前に、レビュー担当者がすべての言語を承認します。
Chief of Staff
リリースに必要なロケールファイルと言語をChief of Staffに伝えると、それらを翻訳して確認する同僚たちをコーディネートしてくれます。
Content Translator Coworker
用語集と翻訳メモリを使用して、キーやプレースホルダーには手を加えずに、JSONの文字列の値を280以上の言語に翻訳します。
Content Update Coworker
出典の変更が影響を与える文字列を見つけるヘルプを提供し、新規または変更された文字列のみを再翻訳するため、承認されたキーのテキストは維持されます。
Reviewer Coworker
流暢さ、トーン、専門用語についてすべての言語を事前レビューするため、レビュー担当者は短いUI文字列の質の高いドラフトを承認できます。
Quality Assurance Coworker
エクスポートする前に、翻訳された文字列の用語、書式設定、正確性のエラーをチェックし、それらに品質スコアを付与します。
リポジトリ、CLI、またはREST APIからJSONのロケールファイルをプッシュおよびプルし、チームがすでに使用しているツールから製品に関するコンテンツを翻訳します。
Huelは、ウェブサイト、CRM、クリエイティブ、テクニカルローカリゼーションを1つのSmartcatワークスペースで実行します。以下の各数値は、Huelの公開されたケーススタディからの引用です。
50%
代理店と比較した全体的なコスト節約
「Smartcatは私たちにとって単なる翻訳ツールにとどまらず、当社の技術スタックと統合されています。」
Huelは、CRM、パフォーマンスマーケティング、クリエイティブ、ウェブ、およびテクニカルの各チームをSmartcatにオンボーディングしました。機械翻訳は約500エントリーの用語集を使用して実行され、最も重要な部分に人間によるレビューが適用されます。

エンジニアリングチームがJSON翻訳ツールを選ぶ前に提起する疑問への短い回答、およびAIがあなたのために行えない1つのことを含む。
はい。Smartcatは文字列の値のみを翻訳します。キーとネスト化はインポート時にロックされるため、ダウンロードするファイルはアップロードしたものと同じ構造になります。
彼らはそこに留まることができます。CI/CDパイプラインからCLIまたはREST APIを使用してキーをプッシュおよびプルするか、GitHub、GitLab、またはBitbucketを接続します。リポジトリには、ビルドが読み取るファイルが保持されます。
いいえ。新規の文字列および変更された文字列のみが請求の対象となります。翻訳メモリは以前のリリースで承認したすべての文字列を入力するため、レビュー担当者は変更された箇所のみを確認できます。
いつもそうとは限りません。「保存」は、ボタン、割引、または名詞になり得ます。短い文字列にスクリーンショットまたはコメントを追加し、リリース前にお客様独自のレビュー担当者またはSmartcat言語専門家に回送してください。
SmartcatはSOC 2 Type IIに準拠し、ISO 27001の認証を取得しています。ロケールファイルと翻訳メモリは、隔離されたワークスペース内に保持されます。Smartcatのセキュリティについて読む。
ロールベースのアクセス制御
エンタープライズプランでは、チーム、役割、または地域ごとに、誰が文字列の表示、翻訳、レビュー、および承認を行えるかを設定できます。
シングルサインオン(SSO)
エンタープライズプランでは、既存のIDプロバイダーを通じてサインインできます。
SOC 2 Type II準拠
SmartcatはSOC 2 Type IIに準拠しており、すべてのワークスペースを分離しています。
公開AIモデルのトレーニングに使用されることは一切ありません
お客様の文字列や出典ファイルが、公開AIモデルのトレーニングに使用されることは決してありません。
監査証跡
エンタープライズプランでは、翻訳およびレビュー全体で、誰が、何を、いつ変更したかを確認できます。
要求に応じた暗号化および削除
コンテンツは転送中および保存時に暗号化され、書面による要求から30日以内に削除または返却されます。
リリースごとにJSONロケールファイルを翻訳するチーム向けの、i18n、継続的ローカリゼーション、およびソフトウェアローカリゼーションに関するガイド。
JSON ファイル(JavaScript Object Notation)は、構造化データのための軽量なテキストベースのフォーマットであり、Smartcat はその中のテキストを翻訳します。アプリは、en.json などの JSON ロケールファイル内で、コードとは別にキーと値のペアとしてインターフェースのテキストを保持します。Smartcat は、キーとネスト化をそのまま維持しながら、値である文字列を翻訳します。
最良のJSON翻訳ツールは文字列の値のみを変更し、Smartcatはその規則に基づいて構築されています。4つの基準でツールを比較します。キーとネスト化が正確に保持されること、プレースホルダーがタグとしてロックされること、言語ごとにICUの複数形が処理されること、そして以前のリリースを再利用する翻訳メモリがあることです。ロケールファイルがCI/CDパイプラインを通過できるように、CLIまたはAPIも確認してください。
JSONのローカリゼーションとは、リリースを重ねるごとに、各言語および市場に合わせてJSONのロケールファイル内の文字列を適応させるプロセスのことです。Smartcatにおいて、ロケールファイルはソフトウェアローカリゼーションプロジェクト内のキーとなるため、各リリースでは新規および変更された文字列のみが翻訳に送られます。1回限りの単一のファイルであれば、無料のブラウザ版で十分です。
en.json、またはi18next用のtranslation.jsonを出典として保持し、キーとしてSmartcatソフトウェアローカリゼーションプロジェクトにインポートします。ターゲット言語を追加します。用語集と翻訳メモリを使用してAIが各文字列を下書きし、レビュー担当者が承認します。de.json、fr.json、および残りを同じキーでエクスポートするか、CI/CDでCLIを使用してプルします。React ネイティブのロケールファイルも同様に機能します。
はい。Smartcatは文字列の値のみを翻訳し、構造には一切手を加えません。ファイルのインポート時にキーとネスト化はロックされ、文字列の値に含まれるテキストのみが翻訳可能なセグメントになります。エクスポートされたファイルは同じ解析済み構造から書き出されるため、出典ファイルと同じ形状になります。
Smartcatはネスト化されたオブジェクトをそのまま保持します。ソフトウェアローカリゼーションプロジェクトにおいて、構造化されたJSONはパス区切り文字を使用して、ネスト化された各キーをcheckout.button.labelのような1つのIDに変換し、その結果をフラットまたは構造化されたJSONとしてエクスポートできます。主要なIDは各文字列とともに移動するため、翻訳メモリがそれを一致させるのに役立ちます。
はい。Smartcatは2つの方法で複数形をサポートしています。ネイティブでは各複数形を個別のセグメントとして扱う方法、またはICU MessageFormat構文としての方法です。インポート時には、ICU構文を持つキーを個々の複数形に解析するか、そのまま保持するかを選択し、エクスポート時には、複数形がICU MessageFormat互換の文字列として書き戻るされます。
はい。Smartcatは新規および変更された文字列のみを請求します。UI、CLIまたはREST APIから更新されたファイルまたはキーをプッシュすると、承認済みのすべての文字列が翻訳メモリによって入力されます。その後、翻訳者とレビュー担当者は変更された箇所のみを作業し、エクスポートには引き続きすべての言語のすべてのキーが含まれます。
Smartcatは標準的なキー・値のJSON、キーとしてのネスト化されたJSONおよびLocJSONをインポートし、ファイル形式としてTJSONを翻訳します。i18nextの翻訳ファイルおよびReactのネイティブロケールファイルは標準的なJSONであるため、直接インポートされます。同じプロジェクトでは、YAML、Android XML、およびiOS .stringsも受け取り、フラットファイルまたは構造化ファイルとしてJSONまたはYAMLをエクスポートします。
はい。Smartcatには、キーのインポートおよびエクスポート用のREST APIとコマンドラインインターフェイス(CLI)があり、どちらもCI/CDスクリプトから実行できます。開発者はビルド後に出典文字列をプッシュし、リリース前に翻訳されたJSONをプルできます。GitHub、GitLab、およびBitbucketの統合により、カスタムスクリプトを使用せずにリポジトリが同期されます。開発者向けドキュメントを参照してください。
Smartcatはプレースホルダーをロックされたタグに変換します。プレースホルダー設定で、{{名前}}、%s、{0} など、コードが使用するトークン形式ごとに正規表現を一度追加します。一致するトークンはタグとしてインポートされ、翻訳者は文内で移動できますが、編集や削除はできません。
はい。SmartcatはSOC 2 Type IIに準拠しており、ISO 27001の認証を取得しています。ファイルは転送時および保存時に暗号化され、ワークスペースは分離されており、アクセスはロールベースで行われます。お客様の文字列が公開AIモデルのトレーニングに使用されることは決してなく、書面による要求から30日以内にコンテンツは削除または返却されます。詳細はセキュリティページに記載されています。
Smartcat AIはキーの名前からUIの文脈を常に推測できるとは限りません。「保存」はボタン、割引、または名詞である可能性があり、適切な権限翻訳はほとんどの言語で異なります。約3ワード未満の文字列については、AIの下書きを出発点として扱い、スクリーンショットやコメントを追加し、リリース前にその言語をレビュー担当者に回送してください。
お探しの回答は見つかりませんでしたか?ローカリゼーションの専門家に相談する
Smartcatをお使いのJSON翻訳ツールとしてご利用ください。en.jsonをアップロードすれば、キー、プレースホルダー、およびネスト化を維持したまま、他のすべてのロケールをダウンロードできます。ご自身のロケールファイルの一つで確認するか、クレジットカード不要の15,000Smartwords付き15日間無料トライアルをお試しください。