対応するファイル形式#
Weblate は幅広い翻訳フォーマットに対応しています。各形式は若干異なり、異なる機能セットを提供します。
ヒント
アプリケーションで使うファイル形式を選択するときは、使用するツールキット/プラットフォームで実績のある形式を使用することをお勧めします。そうすれば、翻訳者は慣れ親しんだツールを追加で使用でき、プロジェクトに貢献する可能性が高まります。
- Android 文字列リソース
- Apple iOS 文字列
- アプリ ストアのメタデータ ファイル
- ARB ファイル
- CSV ファイル
- DTD ファイル
- Excel Open XML
- フラット化した XML ファイル
- Fluent 形式
- GNU gettext
- go-i18n JSON ファイル
- gotext JSON ファイル
- GWT プロパティ
- HTML ファイル
- i18next JSON ファイル
- IDML 形式
- INI の翻訳
- Inno Setup INI の翻訳
- Java プロパティ
- Joomla の翻訳
- JSON ファイル
- Laravel PHP 文字列
- mi18n 言語ファイル
- OpenDocument 形式
- PHP 文字列
- Qt Linguist .ts
- ResourceDictionary ファイル
- RESX .NET リソース ファイル
- Ruby YAML ファイル
- Stringsdict 形式
- 字幕ファイル
- TermBase eXchange 形式
- テキスト ファイル
- WebExtension JSON
- Windows RC ファイル
- XLIFF
- YAML ファイル
自動検出#
Weblate は、翻訳プロジェクトとコンポーネントの追加 中にファイル形式の検出を試みます。同じシリアル化形式(JSON、YAML、プロパティ)またはファイル エンコーディングの異なる別表記では検出が間違っていることがあるため、コンポーネントを作成する前に ファイル形式 が正しいことを確認してください。
翻訳の種類別の機能#
ファイル形式 |
ファイル種別 [1] |
複数形 [2] |
説明 [3] |
コンテキスト [4] |
文字列位置 [5] |
フラグ [8] |
追加の状態 [6] |
---|---|---|---|---|---|---|---|
バイリンガル |
yes |
yes |
yes |
yes |
yes [9] |
要編集 |
|
モノリンガル |
yes |
yes |
yes |
yes |
yes [9] |
要編集 |
|
両方 |
yes |
yes |
yes |
yes |
yes |
要編集、承認済 |
|
両方 |
no |
yes |
no |
no |
no |
||
モノリンガル |
no |
yes |
no |
no |
no |
||
モノリンガル |
yes |
yes |
no |
no |
no |
||
モノリンガル |
no |
yes |
no |
yes |
no |
||
両方 |
yes |
yes |
no |
yes |
yes |
要編集 |
|
モノリンガル |
yes |
yes [7] |
no |
no |
yes |
||
両方 |
no |
yes |
no |
no |
no |
||
モノリンガル |
no [10] |
yes |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
yes |
no |
no |
no |
no |
||
モノリンガル |
yes |
yes |
no |
no |
no |
||
モノリンガル |
yes |
yes |
no |
yes |
no |
||
モノリンガル |
yes |
yes |
no |
no |
no |
||
モノリンガル |
yes |
yes |
no |
no |
no |
||
モノリンガル |
no |
yes |
no |
no |
yes |
||
モノリンガル |
no |
no |
no |
no |
yes |
||
両方 |
no |
yes |
yes |
yes |
no |
要編集 |
|
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
yes |
no |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
no |
yes |
||
モノリンガル |
no |
yes |
no |
no |
no |
||
モノリンガル |
no |
yes |
yes |
yes |
no |
要編集 |
|
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
yes |
no |
||
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
no |
no |
no |
no |
no |
||
バイリンガル |
no |
yes |
no |
no |
yes |
||
モノリンガル |
no |
no |
no |
no |
no |
||
モノリンガル |
yes |
no |
no |
no |
no |
||
モノリンガル |
no [11] |
yes |
no |
no |
no |
バイリンガル形式とモノリンガル形式#
モノリンガル と バイリンガル の両方の形式に対応しています。バイリンガル形式は一つのファイルの中に二つの言語、原文と翻訳文が保存されます(典型例は GNU gettext、XLIFF や Apple iOS 文字列)。一方、モノリンガル形式は文字列を ID で識別し、それぞれの言語のファイルには各 ID に対応するその言語への翻訳のみが含まれます(典型例は Android 文字列リソース)。ファイル形式によっては、どちらの形式にも使用されます。詳細は、下記の説明で確認してください。
モノリンガル ファイルを正しく使用するには、原文とともに翻訳する文字列の完全なリストを含むファイルを編集することが必要です。このファイルは、Weblate 内では モノリンガル用の、基礎となる言語ファイル と呼ばれますが、命名は項目により変化することがあります。
さらに 中間言語ファイル を使用して、開発者が提供するが、最終的には使われない文字列を組み込むようにワークフローを拡張できます。
String states#
Many file formats only differentiate "Untranslated" and "Translated" strings. With some formats it is possible to store more fine-grained state information, such as "Needs editing" or "Approved".
Source string description#
原文の説明を使用して、翻訳する文字列に関する追加情報を渡すことができます。
Several formats have native support for providing additional info to translators (for example XLIFF, GNU gettext, WebExtension JSON, CSV ファイル, Excel Open XML, Qt Linguist .ts, go-i18n JSON ファイル, gotext JSON ファイル, ARB ファイル, RESX .NET リソース ファイル). Many other formats extract closest comment as source string description.
解説#
The 解説 on strings can be stored and parsed from a few file formats.
Currently supported only in TermBase eXchange 形式.
Source string location#
ソースコード内の文字列の位置情報は、熟練した翻訳者が文字列の使用状況を把握する参考になります。
This information is typically available in bilingual formats where strings are extracted from the source code using tools. For example GNU gettext and Qt Linguist .ts.
翻訳フラグ#
翻訳フラグを使用すると、Weblate の動作をカスタマイズできます。一部の形式は、翻訳ファイルでの設定に対応しています(Weblate 管理画面からいつでも設定できます。参照: フラグを使用した動作の設定)。
この機能は、GNU gettext のフラグを参考にしています。
さらに、すべての XML を元にしたファイル形式では、フラグは非標準の属性 weblate-flags
から抽出されます。また、max-length:N
は XLIFF 規格で定義されている maxwidth
`属性<http://docs.oasis-open.org/xliff/v1.2/os/xliff-core.html#maxwidth>`_ により対応しています。参照: 翻訳フラグの指定。
参考
フラグを使用した動作の設定、PO files documentation`_
Context#
Context is used to differentiate identical strings in a bilingual format used in different scopes (for example Sun can be used as an abbreviated name of the day "Sunday" or as the name of our closest star).
For monolingual formats the string identifier (often called key) can serve the same purpose and additional context is not necessary.
複数形がある文字列#
複数形は、数によって変化する文字列を適切に現地語化するために必要です。規則は対象言語によって異なり、ファイル形式の多くは CLDR の仕様に準拠しています。
ヒント
文字列の複数形化には、アプリケーション フレームワークでの適切な対応も必要です。 GNU gettext、Android 文字列リソース、Stringsdict 形式 など、プラットフォームの正規のファイル形式を選択します。
翻訳禁止の文字列#
バージョン 3.10 で追加.
翻訳ファイル中の翻訳禁止の文字列は Weblate に読み込まれますが、編集はできません。この機能はいくつかのフォーマット(XLIFF および Android 文字列リソース)では公式に対応していますが、その他のフォーマットでは read-only
フラグを追加して再現しています(参照: フラグを使用した動作の設定)。
他の形式への対応#
ほとんどの、translate-toolkit に対応するファイル形式では、シリアル化への対応は簡単にできます。(まだ)テストはしていませんが。多くの場合は、translate-toolkit ストレージの動作の違いに対応するため、Weblate に対応させるプログラムの実装が必要です。
新しいファイル形式に対応するには、まず translate-toolkit に対応するプログラムから実装すべきです。