الوثائقتصدير النصوص إلى مستودعك5 دقيقة قراءة
تصدير النصوص إلى مستودعك
ملف تقرأه منصّتك مباشرة، بأسماء المفاتيح التي اخترتها، من النصوص التي اعتمدها فريقك فقط. من صندوق الوارد: «تصدير إلى مستودعك».
| الصيغة | الشكل | لمن |
|---|---|---|
json | مسطّح، المفتاح أو النص الأصلي اسمًا | react-intl ومعظم توطين الويب |
nested | متداخل تحت الشاشة: { checkout: { pay: … } } | التطبيقات التي تنظّم كل شاشة في مساحة أسماء |
arb | حزمة موارد التطبيق مع @@locale | Flutter وgen-l10n |
strings | مفتاح = "قيمة"؛ سطر لكل واحد | iOS وmacOS |
csv | مفتاح، أصل، ترجمة، حالة، سياق | لمن يعمل في جدول، أو لمورد ترجمة، أو لمقارنة النسخ |
المفاتيح لك لا للحزمة
لكل نص عمود مفتاح اختياري تعدّله في صندوق الوارد. فهو اسم لمستودعك، لا تكتبه الحزمة بل أنت. والاسم المنقّط: حرف أولًا، ثم حروف وأرقام ونقاط وشرطات، حتى 80 حرفًا.
checkout.pay ✓ checkout.pay-now ✓ checkout.pay_now ✓ 9checkout ✗ a letter must come first checkout.pay! ✗ no punctuation beyond . - _
والقاعدة تتحقق من الصيغة نفسها، فما بدا خاطئًا لا يُحفظ.
المرشّحات
- اللغة: هدف واحد لكل ملف، لأن هذا ما يتوقعه البناء.
- المضمون: المعتمد افتراضيًا، فملف البناء لا يحمل قبول آلة لم يقرأه أحد. وهناك all وpending لمن أرادها.
- الشاشة: حيث كان السياق screen:checkout يختار المرشّح ذلك بعينه. وسمِّ بالمفتاح أو بالنص.
الشيء نفسه عبر HTTP
curl
curl -s -OJ \ -H "authorization: Bearer $SIYAK_TOKEN" \ "https://your-api-host/v1/projects/$PROJECT/export?format=arb&target=ar&status=approved"
هذه واجهة اللوحة ورمز جلستها لا مفتاح الحزم. والجواب يسمّي ملفه.
ويرفض ARB الملف المتصادم المفاتيح ويخبرك بالمفتاحين المتعارضين، بدل حزمة تفشل عند غيرك في البناء. ويحمل CSV النص الأصلي بجانب الترجمة، فتقول المقارنة ما تغيّر في المعنى لا في الاسم وحده.