翻訳の管理

ローカライゼーションファイルの使用 (Strings)

本コンテンツはPhrase Language AIの機械翻訳により、英語から翻訳されています。

ローカライゼーションファイルのアップロード

プロジェクトにファイルをアップロードすると、そのファイルから新しいリソースがすべて抽出され、プロジェクトに格納されます。アップロードされるファイルのファイル形式は、プロジェクトの初期設定ファイル形式である必要はありません。リソースのグループ化のためにタグ が提供されている場合、新しいキーにはそれらのタグが適用されます。

Gettext などの一部の形式は、コメント、説明、複数形に関する情報などの追加の貴重なメタ情報を提供します。この情報は必要に応じて抽出され、割り当てられたリソースとともに保存されるため、ローカライゼーションファイルで提供されるすべての貴重な情報を保存して、さらに使用することができます。

ファイルをアップロードするには、いくつかの方法があります。

  • で、新規プロジェクトを作成するとき、またはプロジェクトページでアップロードファイルを選択するとき

  • API経由

  • CLI経由

アップロードオプション

  • 翻訳更新

    デフォルトでは、新しいコンテンツのみが抽出され、ローカライゼーションプロジェクトの既存のキーは削除または更新されません。ファイルのアップロードによってデータが失われることはありません 。既存のデータを上書きする必要がある場合は、翻訳更新 オプションを選択して、プロジェクトリソースをローカライゼーションファイルのコンテンツで置換します。既存の翻訳は、アップロードされたローカライゼーションファイルのコンテンツで上書きされます。

    このオプションは APIでも利用できます。

    備考

    データの損失を防ぐため、ローカライゼーションファイルを変更してから 翻訳更新 オプションで再度アップロードする前に、Phraseから最新の変更をダウンロードしてください。

  • 更新説明

    アップロードされたファイルのキーの説明をすべて更新する必要がある場合は、このオプションを選択します。空欄の説明は既存の説明を上書きします。説明には、翻訳者の追加情報を含めることができ、エディタで個々のキーを識別するヘルプになります。

  • アップロードタグをスキップ

    翻訳を整理するには、意味のあるラベルを持つキーに複数のタグを追加します。このオプションを選択すると、新しいキーがアップロードタグで自動的にタグ付けされなくなります。

  • 新規翻訳及び更新された翻訳のためのタグキー

    このオプションを選択すると、アップロード時に新しいキーと更新された翻訳に自動的にタグを付けます。これにより、新しい翻訳文字列、更新された翻訳文字列、古い翻訳文字Stringsを区別し、関連するキーのみがさらに処理されるようにすることがヘルプます。

    このオプションは APIでも利用できます。

  • エンコード

    ファイルのエンコード(UTF-8など)を指定するか、自動的に選択してください(自動的に選択されたエンコードは不正なエンコードになる可能性があり、アップロードを元に戻すことでロールバックできます)。

  • 校正

    未検証をスキップ することで、翻訳の更新時に非メイン言語翻訳を再度検証する必要がなくなります。

    翻訳をレビュー済にすると、アップロードされたすべての翻訳がレビュー済として扱われます。このオプションは、 詳細レビューワークフローがアクティブになっている場合に使用できます。これにより、キーをプロダクションにプッシュする準備ができたことを示すことができます。

ユーザーインターフェースによるファイルアップロード

Strings でファイルをアップロードする手順は、次のとおりです。

  1. アップロード前に、ファイルがタイプに基づいて正しくフォーマットされていることを確認してください。

  2. プロジェクトから、[その他]メニューからファイルアップロードを選択します。

    ファイルのアップロードページが開きます。

  3. [ファイルの選択]をクリックし、ディレクトリからファイルを選択します。

    選択したファイルがファイルフィールドに追加されます。

  4. ファイルのファイル形式を選択します。

    ファイル形式に基づいて、提案されたフォーマットが最初に表示されます。

  5. ドロップ一覧からファイルコンテンツの言語を選択します。

    この情報がファイル自体にない場合は、コンテンツの新しい言語を作成するか、既存の言語を使用します。

  6. オプションで、新しいキーに割り当てるタグやその他のオプションを指定します。

  7. 保存をクリックします。

    コンテンツがインポートされ、キーに変換されます。

アップロード概要

  • アップロード失敗

    ファイルを適切に処理できなかった場合は、エラーの詳細が表示され、エラーの軽減にヘルプます。

  • アップロード成功

    翻訳ファイルの処理が完了すると、アップロードの概要を示す概要ページが表示され、次へのステップにリンクするボタンが表示されます。

  • キーを削除中

    ローカライゼーションファイルからキーを削除して再度アップロードする際に、キーが誤って削除されるのを防ぐため、これらのキーは自動的に削除されません。

    これらのキーを削除する手順は、次のとおりです。

    1. ファイルをアップロードします。

    2. 削除をクリックし、メンションされていないキー削除を選択。

    3. 選択を確定。

    アップロードされたファイルに含まれなかったすべてのキーと関連する翻訳がプロジェクトから削除されます。

  • アップロードを元に戻す

    アップロードのたびに複数のアクションが実行され、プロジェクト内の多くのデータが変更される可能性があり、アップロードを取り消すことはできません。

    アップロードされたファイルによって(誤って)導入されたキーを削除する手順は、次のとおりです。

    1. 該当するアップロードのアップロード概要から、削除をクリックし、作成キー削除を選択。

    2. 選択を確定。

    そのアップロードロードによって作成されたすべてのキーと関連する翻訳は削除されます。アップロード前に存在していたキーの翻訳は削除されません。個々の翻訳を削除するには、各翻訳のバージョン履歴を使用します。

アーカイブアップロード

任意のプロジェクトページで、[その他]メニューの[アップロード]を選択し、アップロードアーカイブにアクセスします。

アップロードアーカイブには、過去のアップロード履歴がすべて一覧表示されます。リストされたアップロードをクリックすると、影響を受けたリソースの詳細なアップロード概要にアクセスできます。成功したすべてのアップロードは、プロジェクトのアクティビティストリームにも表示されます。

ローカライゼーションファイルのダウンロード

言語ファイルは、プロジェクトから任意の時点で、サポートされている任意のファイル形式にダウンロードできます。

ファイルは、アプリケーションから API またはCLI経由でダウンロードできます。

ファイルは、任意のプロジェクトの言語タブからエクスポート(複数ファイル)または言語の詳細/ダウンロードボタンをクリックしてダウンロードできます。

ダウンロードオプション

ダウンロードウィンドウでファイルをダウンロードする際にダウンロードオプションが表示されます。一般詳細エンコードのタブがあります。

異なるファイル形式を選択すると、異なるオプションが表示されます。

使用例

ファイル構造のメンテナンス

デフォルトでは、翻訳可能リソースは元のファイル構造を保持せずに、キーと値として保存されます。これにより、1つのファイル形式にロック済でないファイル形式の交換や、を使用した柔軟なグループ化が可能になります。

フレームワークや設定によっては、複数の原文ファイルが必要な場合もあります。

別々のファイルを保持する

通常、各言語の翻訳はすべて1つのファイルにまとめます。これにより、リソースのダウンロードがより速く、より堅牢になります。翻訳はプロジェクトごとに整理されるため、個別の小さなファイルは必要ありません。

ローカライゼーションファイルを別々のファイルで管理する必要がある場合は、アップロード時にキーにタグを付け、翻訳されたキーを元のファイルにダウンロードする際の参考資料として、ファイルベースのワークフローを使用できます。キーは複数のタグを持ち運ぶことができ、複数のファイルに含めることで再利用と一貫性を確保できます。タグベースのワークフローは柔軟性が高く、プロジェクトにアップロードすることなく翻訳リソースを再編成できます。

すべてのファイルに一意の名前を付けることで、スムーズなワークフローを実現します。キー値ベースのアプローチでは、すべてのコンテキストでキーに同じ値を割り当てる必要があります。一部のフレームワークでは、複数のファイルで一意でないキーを使用できます。Symfonyなど、一部のファイル形式はメッセージドメインをサポートしています。これらのドメインはファイル名によって検出されます。ファイル名ベースのドメインでは、キーは自動的にスコープ設定されませんが、ファイル内のキーに一意のドメインプレフィックスを使用することで解決できます。

CLI設定例

CLIを使用するか、プロジェクトをリポジトリ( GitHub、 GitLab、 Bitbucketなど)に接続する場合は、アップロードとダウンロードを管理する 設定ファイル を設定します。

たとえば、プロジェクトには原文ロケール用のセマンティックな名前が付いた翻訳ファイルがいくつかあります。例:accounts.en.ymlemails.en.ymlなどこれらのセマンティック名はタグで管理されます。

ファイルの組織をローカライゼーションプロジェクトに反映するように .Phrase.yml を設定し、ファイルパスにタグプレースホルダーを含めることでStringsプロジェクトのタグにリンクします。

Phrase:
  access_token:"3d7e6598d955bfcab104c45c40af1b9459df5692ac4c28a17793"
  project_id:"23485c9c5dfb15d85b32d9c5f3d2hl54"
  file_format: yml
  push:
    出典:
      - file: ./path/to/locales/<tag>.en.yml
        params:
          locale_id: "abcd1234cdef1234abcd1234cdef1234"
  プル:
    訳文:
      #個のアカウント
      - ファイル: ./path/to/locales/accounts.<ロケール名>.yml
        params:
          タグ:アカウント
      #個のメール
      - file: ./path/to/locales/emails.<locale_name>.yml
        params:
          タグ:メール

パラメータ tags は、 <タグ> プレースホルダーの代わりにプッシュセクションでも使用できます。

この設定では、プッシュを実行する とき、またはリポジトリから同期をトリガーするときのファイルに基づいて、タグ付きのキーが作成されます。リポジトリへのエクスポートを実行する pull またはトリガーすると、キーはタグに基づいてファイルにグループ化されます。

地域、クライアント、オーディエンスごとにプロジェクトをローカライズする

製品、ウェブサイト、アプリは多数の異なる言語に翻訳されますが、場合によっては、ローカライゼーションは選択した言語だけでなく、1つの言語内で異なるバージョンを使用することもあります。

以下の場合は、さらに区別する必要があります。

  • 同じ言語を話す地域でも、製品のブランディングは異なります。

  • 製品は、ホワイトラベルソリューションの使用を希望するさまざまなクライアントによって使用されます。

  • シンプル、公式、非公式などの言語バリエーションが必要です。

静的製品のローカライズ

製品が完全に開発され、ほとんど更新されない場合、プロジェクト内に製品の別バージョンが存在することがあります。

  • 単一の出力または短期プロジェクトの場合:

    ブランチを作成し、プロジェクトの期間中そのブランチだけで仕事をし、完了後ブランチを削除。

  • 長期用語プロジェクトの場合:

    既存プロジェクトの複製を維持する。これによって、同じ組織内のクライアントを招待し作業することができます。クライアントにはプロジェクトへのアクセスのみが許可され、他のプロジェクトは非表示になります。

継続的な更新を伴うプロジェクトのローカライズ

製品が常に新しいコンテンツ(キー)で更新されている場合、それらの更新を複数のプロジェクトに適用して同期を維持することは困難です。プロジェクト内で専用の言語を使用してメンテナンスします。

言語コード (例:en-US)は一意である必要はないため、同じ言語の多くのバージョンが プロジェクト内でできます。一意の言語名を使用して、地域、クライアント、オーディエンスを区別します。

セットアップ時、デフォルトロケールで新しく導入されたキーは他の言語では未翻訳として表示され、それに応じてローカライズされます。クライアントとその翻訳者を使用する場合は、ユーザープロファイルまたはプロジェクトユーザー管理で言語アクセスを更新して、その翻訳者の言語バージョンのみ編集できるように割り当ててください。

ジョブレビューワーク フローを使用して、同じプロジェクト内で並列ローカライゼーションプロセスを設定します。この柔軟性は、API経由での言語ファイルのアップロードやダウンロード、プロセスの自動化にも及びます。

この記事は役に立ちましたか?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.