ファイルをプロジェクトにアップロードすると、新しいリソースがそのファイルから抽出され、プロジェクトに保存されます。アップロードされたファイルの形式は、プロジェクトの初期形式である必要はありません。リソースをグループ化するためのタグが提供されている場合、新しいキーにはそれらのタグが適用されます。
Gettextなどの一部の形式は、コメント、説明、または複数形に関する情報など、追加の貴重なメタ情報を提供します。この情報は可能な限り抽出され、割り当てられたリソースと共に保存され、ローカリゼーションファイルに提供されたすべての貴重な情報がさらなる使用のために保存されます。
ファイルをアップロードするためのいくつかの方法があります:
-
デフォルトでは、新しいコンテンツのみが抽出され、ローカリゼーションプロジェクト内の既存のキーは削除または更新されません。ファイルをアップロードしてもデータが失われることはありません。既存のデータを上書きする必要がある場合は、
オプションを選択して、ローカリゼーションファイルのコンテンツでプロジェクトリソースを置き換えます。既存の翻訳は、アップロードされたローカリゼーションファイルの内容で上書きされます。このオプションはAPIでも利用可能です。
備考
データ損失を防ぐために、変更を加える前にPhraseからローカリゼーションファイルに最新の変更をダウンロードし、
オプションで再度アップロードしてください。 -
アップロードされた翻訳キー名の前に追加する一意の識別子(例:ファイルパス)を入力してください。キー名を整理するために、プロジェクトまたはファイルに関連する意味のあるプレフィックスを使用してください。
たとえば、プレフィックス
project_
を持つインポートされたキーhello_world
は、キーproject_hello_world
になります。翻訳キーのプレフィックスは、異なるプロジェクトやファイル間での衝突を避けるために、キーが既存のものと一致することを保証します。
このオプションはAPIおよびCLIインターフェースでも利用可能です。
-
新しいキーを追加し、アップロードされたファイルの内容で既存のものを上書きします。
-
ターゲット翻訳は、既存のソーステキストがアップロードされた多言語ファイルのソーステキストと一致する場合にのみ更新されます。
-
アップロードされたファイルからキーのすべての説明を更新する必要がある場合は、このオプションを選択してください。空の説明は既存のものを上書きします。説明には翻訳者への追加情報を含めることができ、エディタ内の個々のキーを特定するのに役立ちます。
-
翻訳を整理するために、意味のあるラベルを持つキーに複数のタグを追加します。このオプションを選択すると、新しいキーが自動的にアップロードタグでタグ付けされるのを防ぎます。
-
このオプションを選択すると、アップロード時に新しいキーと更新された翻訳を持つキーが自動的にタグ付けされます。これにより、新しい、更新された、古い翻訳文字列を区別し、関連するキーのみがさらに処理されることが保証されます。
このオプションはAPIでも利用可能です。
-
ファイルのエンコーディング(例:UTF-8)を指定するか、自動的に選択させます(自動的に選択されたエンコーディングは不正確なエンコーディングを引き起こす可能性があり、アップロードを元に戻すことでロールバックできます)。
-
-
は、翻訳を更新する際に非メイン言語の翻訳を再度検証する必要を防ぎます。
-
高度なレビュー ワークフローが有効になっているときに利用可能です。これは、キーが本番環境に送信する準備ができていることを示します。
は、すべてのアップロードされた翻訳をレビュー済みとして扱います。このオプションは、 -
は、すべてのアップロードされた翻訳を検証済みとして扱います。
-
Stringsにファイルをアップロードするには、次の手順に従ってください:
-
アップロードの前に、ファイルがタイプに基づいて正しくフォーマットされていることを確認してください。
-
プロジェクトから、ファイルをアップロードを メニューから選択します。
ページが開きます。
-
ファイルを選択をクリックし、ディレクトリからファイルを選択します。
選択したファイルが
フィールドに追加されます。 -
ファイルの
を選択します。提案された形式は、ファイルタイプに基づいて最初に表示されます。
-
ドロップダウンリストからファイルコンテンツの言語を選択します。
この情報がファイル自体に含まれていない場合は、コンテンツの新しい言語を作成するか、既存のものを使用します。
-
新しいキーに割り当てるタグやその他のオプションを任意で提供します。
-
保存をクリックします。
コンテンツがインポートされ、キーに変換されます。
-
アップロード失敗
ファイルが正しく処理できなかった場合、エラーの詳細が提供され、エラーの軽減に役立ちます。
-
アップロード成功
翻訳ファイルの処理が成功した後、アップロードの概要を示すサマリーページが表示され、次のステップへのリンクボタンが提供されます。アップロードタグをクリックして、エディタでファイルを開きます。
-
キーの削除中
ローカリゼーションファイルからキーを削除して再アップロードする際に、誤ってキーが削除されないように、これらのキーは自動的に削除されません。
これらのキーを削除するには、次の手順に従ってください:
未記載のキーは、現在のアップロードに含まれていないが、プロジェクトに存在するキーです。それらを削除することで、アップロードされたファイルに含まれていないすべてのキーと関連する翻訳がプロジェクトから削除されます。
-
アップロードを元に戻す
すべてのアップロードは複数のアクションを引き起こし、プロジェクト内の多くのデータを変更する可能性があり、アップロードを取り消すことはできません。
アップロードされたファイルによって(誤って)導入されたキーを削除するには、次の手順に従ってください:
そのアップロードによって作成されたすべてのキーと関連する翻訳が削除されます。アップロード前に存在していたキーの翻訳は削除されません。個別の翻訳を削除するには、各翻訳のバージョン履歴を使用してください。
言語ファイルは、プロジェクトからいつでも任意のサポートされているファイル形式でダウンロードできます。
ファイルは、アプリケーションからAPI経由またはCLIを通じてダウンロードできます。
ファイルは、任意のプロジェクトのダウンロードをクリックすることで(複数のファイル)、または言語のその他のオプション/ダウンロードボタンを使用してダウンロードできます。
ダウンロードオプションは、
ウィンドウでファイルをダウンロードする際に、 、 、および のタブが表示されます。異なる特定のファイル形式に関する関連記事を参照してください。
を選択すると、異なるオプションが表示されます。詳細については、-
ファイルアップロード時に翻訳キーのプレフィックスが追加された場合、
タブでこのオプションを選択して、エクスポートされた翻訳キーの名前からプレフィックスを削除します。-
すべてのキーをダウンロードするためのプレフィックスを入力し、可能な限り指定されたプレフィックスを削除します。
注意
これにより、プレフィックスが削除された後に他のキーが同じ名前を共有する場合、重複したキー名が作成される可能性があります。
-
必要に応じて、指定されたプレフィックスを含む翻訳キーのみをダウンロードするために
を選択し、ダウンロードしたファイルからプレフィックスを削除します。
このオプションは、APIおよびCLIインターフェースでも利用可能です。
-
デフォルトでは、翻訳可能なリソースは元のファイル構造を保持するのではなく、キーと値として保存されます。これにより、1つの形式にロックされることなく、交換可能なファイル形式とタグを使用した柔軟なグループ化が可能になります。
一部のフレームワークやセットアップでは、追加の構成が必要な複数のソースファイルが必要です。
別々のファイルを保持する
一般的に、各言語のすべての翻訳を1つのファイルに保持します。これにより、リソースのダウンロードがより迅速かつ堅牢になります。翻訳はプロジェクト内で整理されているため、別々の小さなファイルは必要ありません。
ローカリゼーションファイルを別々のファイルで管理する必要がある場合、アップロード時にキーにタグを付け、翻訳されたキーを元のファイルにダウンロードする際にタグを参照として使用することで、ファイルベースのワークフローを使用できます。キーは複数のタグを持つことができ、再利用と一貫性を確保するために複数のファイルに含めることができます。タグベースのワークフローは柔軟で、プロジェクトにアップロードすることなく翻訳リソースの再編成を可能にします。
スムーズなワークフローを確保するために、すべてのファイルでキーにユニークな名前を付けてください。キーと値のアプローチでは、キーはすべてのコンテキストで同じ値が割り当てられている必要があります。一部のフレームワークでは、複数のファイルで非ユニークなキーの使用が許可されています。Symfonyなどの一部のフォーマットは、メッセージドメインをサポートしています。これらのドメインはファイル名によって検出されます。キーはファイル名ベースのドメインによって自動的にスコープされませんが、ファイル内のキーにユニークなドメインプレフィックスを使用することで解決できます。
例 CLI 設定
CLIで作業する場合や、プロジェクトをリポジトリ(例:GitHub、GitLab、またはBitbucket)に接続する場合は、アップロードとダウンロードを管理するための設定ファイルを設定してください。
例として、プロジェクトにはソースロケール用の意味的に名前付けされた翻訳ファイルがいくつかあります。例えば:accounts.en.yml
、emails.en.yml
など。これらの意味的な名前はタグを通じて管理されます。
.phrase.yml
を設定して、ローカリゼーションプロジェクト内のファイルの構成を反映し、ファイルパスにタグプレースホルダーを含めることでStringsプロジェクトのタグにリンクします:
phrase: access_token:"3d7e6598d955bfcab104c45c40af1b9459df5692ac4c28a17793" project_id:"23485c9c5dfb15d85b32d9c5f3d2hl54" file_format: yml push: sources: - file: ./path/to/locales/<tag>.en.yml params: locale_id: "abcd1234cdef1234abcd1234cdef1234" pull: targets: # アカウント - file: ./path/to/locales/accounts.<locale_name>.yml params: tags: accounts # メール - file: ./path/to/locales/emails.<locale_name>.yml params: タグ: メール
パラメータ タグは、<tag>
プレースホルダーを使用する代わりにプッシュセクションでも使用できます。
構成は、プッシュを実行するか、リポジトリから同期をトリガーする際に、ファイルに基づいてタグを持つキーを作成します。プルを実行するか、リポジトリへのエクスポートをトリガーすると、タグに基づいてキーをファイルにグループ化します。
製品、ウェブサイト、またはアプリは、いくつかの異なる言語に翻訳されますが、場合によっては、ローカリゼーションは選択された言語だけでなく、1つの言語内の異なるバージョンでもあります。
次のような場合は、さらなる区別が必要です:
-
製品が同じ言語が話されている地域で異なるブランディングを持っている場合。
-
製品が異なるクライアントによって使用され、ホワイトラベルソリューションを使用したい場合。
-
シンプル、フォーマル、またはインフォーマルなどの言語のバリエーションが必要です。
静的製品のローカライズ
製品が完全に開発され、ほとんど更新されない場合、プロジェクト内に製品の別のバージョンが存在することがあります。
継続的な更新を伴うプロジェクトのローカライズ
製品が新しいコンテンツ(キー)で常に更新されている場合、複数のプロジェクトにそれらの更新を適用し、同期を保つことは困難です。プロジェクト内で専用の言語を使用して、それらを維持します。
ISO標準に従った言語コード(例:en-US)は一意である必要はないため、同じ言語の多くのバージョンをプロジェクト内で作成することができます。地域、クライアント、またはオーディエンスを区別するために、一意の言語名を使用します。
セットアップ時に、デフォルトロケールで新たに導入されたキーは、他の言語では未翻訳として表示され、それに応じてローカライズされます。クライアントとその翻訳者と作業する場合、彼らのユーザープロファイルまたはプロジェクトのユーザー管理で言語アクセスを更新することにより、彼らの言語バージョンのみを編集できるように特に割り当てます。
同じプロジェクト内でジョブとレビューワークフローを使用して、並行ローカリゼーションプロセスを設定します。この柔軟性は、APIを介して言語ファイルのアップロードおよびダウンロードや自動化プロセスにも拡張されます。