أوامر اللغات
تدير أوامر اللغات إعدادات تعدد اللغات لمشروع FORGE — إضافة وإزالة اللغات، وتعيين اللغة الافتراضية، ومزامنة سلاسل الترجمة عبر الخلفية والواجهة الأمامية.
forge lang:add
إضافة لغة جديدة إلى المشروع.
الاستخدام
forge lang:add <CODE> [OPTIONS]الخيارات
| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
CODE | string | — | رمز اللغة ISO 639-1 (مثل ar، fr، de). |
--name | string | يُكتشف تلقائياً | الاسم الإنجليزي للغة. |
--native | string | يُكتشف تلقائياً | الاسم الأصلي للغة (مثل العربية للعربية). |
--direction | string | ltr | اتجاه النص: ltr (من اليسار لليمين) أو rtl (من اليمين لليسار). |
--default | flag | false | تعيين هذه اللغة كافتراضية للمشروع. |
أمثلة
# Add Arabic with RTL support
forge lang:add ar --direction=rtl
# Add French as new default language
forge lang:add fr --defaultعند إضافة لغة، يُحدّث FORGE ملف forge.yaml، ويُولّد قوالب ترجمة للمفاتيح الموجودة، ويُحدّث بذرة قاعدة البيانات لجدول languages.
نصيحة
يكتشف FORGE تلقائياً اسم اللغة والاسم الأصلي والاتجاه لرموز ISO 639-1 الشائعة. تحتاج فقط لتحديد هذه الخيارات للغات مخصصة أو غير شائعة.
forge lang:remove
إزالة لغة من المشروع.
الاستخدام
forge lang:remove <CODE>مثال
forge lang:remove frتحذير
إزالة لغة لا تحذف بيانات الترجمة الموجودة من قاعدة البيانات. شغّل forge translations:sync --no-prune بعد الإزالة إذا كنت تريد الاحتفاظ بصفوف الترجمة اليتيمة، أو احذف الخيار للسماح للمزامنة بتنظيفها.
forge lang:list
عرض جميع اللغات المُعدّة وإعداداتها.
الاستخدام
forge lang:listمثال على المخرجات
┌──────┬──────────┬───────────┬───────────┬─────────┐
│ الرمز │ الاسم │ الأصلي │ الاتجاه │ افتراضي │
├──────┼──────────┼───────────┼───────────┼─────────┤
│ en │ English │ English │ ltr │ نعم │
│ ar │ Arabic │ العربية │ rtl │ لا │
│ fr │ French │ Français │ ltr │ لا │
└──────┴──────────┴───────────┴───────────┴─────────┘forge lang:default
تغيير اللغة الافتراضية للمشروع.
الاستخدام
forge lang:default <CODE>مثال
forge lang:default arهذا يُحدّث forge.yaml، ويُعيد توليد بذرة اللغات، ويُعدّل إعدادات اللغة الافتراضية في كل من تطبيقي API والواجهة الأمامية.
forge lang:supported
عرض جميع اللغات التي يمكن لـ FORGE التعرف عليها تلقائياً (الرمز، الاسم، الاسم الأصلي، والاتجاه). مفيد لاكتشاف رموز اللغات الصالحة قبل إضافتها لمشروعك.
الاستخدام
forge lang:supportedمثال على المخرجات
┌──────┬──────────────┬──────────────┬───────────┐
│ الرمز │ الاسم │ الأصلي │ الاتجاه │
├──────┼──────────────┼──────────────┼───────────┤
│ ar │ Arabic │ العربية │ rtl │
│ de │ German │ Deutsch │ ltr │
│ en │ English │ English │ ltr │
│ es │ Spanish │ Español │ ltr │
│ fr │ French │ Français │ ltr │
│ ... │ ... │ ... │ ... │
└──────┴──────────────┴──────────────┴───────────┘
الإجمالي: 25 لغة مدعومةنصيحة
عند إضافة لغة باستخدام رمز مدعوم، يملأ FORGE تلقائياً الاسم والاسم الأصلي والاتجاه. تحتاج فقط لتحديدها يدوياً للغات مخصصة أو غير مدعومة.
أوامر الترجمة
تدير أوامر الترجمة سلاسل الترجمة مفتاح-قيمة المستخدمة بواسطة طبقة استجابة API وواجهة Next.js الأمامية.
forge translations:sync
مزامنة ملفات الترجمة عبر جميع اللغات المُعدّة. تُضاف المفاتيح الجديدة بقيم فارغة؛ اختيارياً، المفاتيح غير الموجودة في المصدر تُحذف.
forge translations:sync [OPTIONS]| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--no-prune | flag | false | الاحتفاظ بمفاتيح الترجمة غير الموجودة في لغة المصدر. |
مثال
forge translations:syncجاري مزامنة الترجمات...
en: 142 مفتاح (المصدر)
ar: 138 مفتاح → 142 مفتاح (+4 مُضافة)
fr: 135 مفتاح → 142 مفتاح (+7 مُضافة)
اكتملت المزامنة.forge translations:export
تصدير الترجمات إلى ملف للمترجمين الخارجيين أو أنظمة إدارة الترجمة.
forge translations:export [OPTIONS]| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--output | string | translations/ | مجلد المخرجات أو مسار الملف. |
مثال
forge translations:export --output=./exports/يُولّد ملفات JSON لكل لغة:
exports/
en.json
ar.json
fr.jsonforge translations:import
استيراد الترجمات من ملفات خارجية إلى المشروع.
forge translations:import [OPTIONS]| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--input | string | — | مسار المجلد أو الملف الذي يحتوي الترجمات. |
--force | flag | false | الكتابة فوق قيم الترجمة الموجودة. بدون هذا الخيار، القيم الفارغة فقط تُملأ. |
مثال
forge translations:import --input=./exports/ --forceتحذير
استخدام --force يُستبدل جميع الترجمات الموجودة للغات المستوردة. تأكد من وجود نسخة احتياطية أو تحكم بالإصدارات قبل تشغيل هذا.
مثال سير العمل
سير عمل كامل لإضافة لغة جديدة لمشروع موجود:
# 1. Add the language
forge lang:add de --name=German --native=Deutsch
# 2. Sync translation keys (creates templates with empty values)
forge translations:sync
# 3. Export for translation team
forge translations:export --output=./to-translate/
# 4. After translators return files, import them
forge translations:import --input=./translated/ --force
# 5. Update the database
forge seed --class translationsانظر أيضاً
- أوامر المشروع — إعداد اللغات أثناء
forge new - أوامر التوليد — خيار
--translatableللنماذج - أوامر قاعدة البيانات — بذر بيانات الترجمة