Lingo.dev + .xml (Android)
Lingo.dev CLIはAndroid XMLリソースファイルをネイティブ構造、属性、およびAndroid固有の規則を保持しながら翻訳します。CLIは既存のAndroidビルドプロセスとシームレスに統合し、リソースリンクシステムを維持し、GradleやAndroid Studioと連携し、フォーマット変換を必要とせずにプラットフォームのローカリゼーション標準に従います。
クイックセットアップ
ロケールベースのフォルダパターンを使用してAndroidリソースファイルを指定します:
{
"locale": {
"source": "en",
"targets": ["es", "fr", "de", "ja"]
},
"buckets": {
"android": {
"include": ["res/values-[locale]/strings.xml"]
}
}
}
注意:[locale]
は設定内で文字通りのプレースホルダーとして残しておく必要があります。CLI実行中に実際のロケールに置き換えられます。
デフォルトリソースの処理
Androidではデフォルトのvalues/
フォルダが必要です。互換性のためにシンボリックリンクを作成してください:
cd res
ln -s values-en values
これによりAndroidの要件を満たしながら、適切なロケール処理が可能になります。
リソースの翻訳
npx lingo.dev@latest i18n
XMLフォーマット、属性、および特殊なAndroid構文を保持しながら、すべてのAndroidリソースタイプを処理します。
完全なAndroidリソースサポート
文字列配列
<string-array name="planets">
<item>Mercury</item>
<item>Venus</item>
<item>Earth</item>
</string-array>
数量を持つ複数形
<plurals name="songs_found">
<item quantity="one">%d song found</item>
<item quantity="other">%d songs found</item>
</plurals>
フォーマット保持
- HTMLマークアップ:
<b>
、<i>
、<u>
タグを維持 - フォーマット指定子:
%1$s
、%2$d
プレースホルダーを保持 - CDATAセクション:
<![CDATA[]]>
コンテンツを正しく処理 - 文字列参照:
@string/app_name
リンクを維持 - 特殊文字:
\@
、\?
、\#
エスケープを保持
高度な設定
複数のリソースファイル
"android": {
"include": [
"res/values-[locale]/strings.xml",
"res/values-[locale]/plurals.xml"
]
}
翻訳不要な文字列のスキップ
自動的に translatable="false"
属性を尊重します。