اللغات المدعومة
يأتي rosetta مزوداً بـ Language Cards (بطاقات اللغات) — وهي ملفات تكوين مهيكلة لـ 50 لغة. تحتوي كل بطاقة على إعدادات مسبقة للسياق (register presets)، وبيانات وصفية لنظام الرسمية، وعلامات دعم الطرق، وقواعد الطباعة، ومعلومات نظام الكتابة. يمكن إضافة أي لغة يعرفها نموذجك اللغوي الكبير (LLM) بسطر تكوين واحد — هذه هي اللغات التي تحتوي على سياقات منسقة وجاهزة للإنتاج.
طرق الترجمة
يمكن لكل لغة استخدام واحدة أو أكثر من طرق الترجمة التالية:
| الأيقونة | الطريقة | كيف تعمل | التكلفة |
|---|---|---|---|
| 🟢 | Google Translate | خط الأساس للترجمة الآلية العصبية (Neural MT). أكثر من 130 لغة. نصوص المفتاح والقيمة (Key-value) فقط — لا يمكنه ترجمة محتوى Markdown بأمان. | ~$20/مليون حرف |
| 🔵 | LLM (OpenRouter) | أي لغة يعرفها النموذج. مطالبات موجهة بالسياق. يتعامل مع نصوص المفتاح والقيمة + محتوى Markdown. | تختلف حسب النموذج |
| 🟣 | LLM-Coached | LLM + قواميس نحوية + بيانات توجيهية (coaching data) تُحقن في المطالبات. الأفضل للغات المعقدة صرفياً. | تختلف حسب النموذج |
| 🟠 | API (Plugin) | مسارات ترجمة مستضافة من قبل المجتمع تُقدم عبر HTTP. متوافقة مع OCAP. | تختلف حسب المزود |
قم بتعيين GOOGLE_TRANSLATE_API_KEY لـ Google Translate، أو OPENROUTER_API_KEY لطرق LLM. راجع طرق الترجمة للحصول على التفاصيل الكاملة.
اللغات ذات الأولوية
هذه هي اللغات الأكثر طلباً لتطبيقات الويب والأجهزة المحمولة، وهي مدرجة بالترتيب الذي يوصي به rosetta مع إعطاء الأولوية لإمكانية الوصول.
| العلم | اللغة | الرمز | LLM | Coached | نظام الكتابة | ملاحظات | |
|---|---|---|---|---|---|---|---|
| 🇸🇦 | العربية | ar | ✅ | ✅ | ✅ | — | من اليمين لليسار (RTL). العربية الفصحى الحديثة (Modern Standard Arabic). |
| 🇵🇭 | الفلبينية (Taglish) | tl / fil | ✅ | ✅ | ✅ | — | استخدم fil في تكوينات Docusaurus. يقوم rosetta بحل كليهما. |
| 🇫🇷 | الفرنسية | fr | ✅ | ✅ | ✅ | — | صيغة Vous. شاملة للجنسين (Connecté·e). |
| 🇪🇸 | الإسبانية | es | ✅ | ✅ | ✅ | — | أمريكا اللاتينية المحايدة. |
| 🇩🇪 | الألمانية | de | ✅ | ✅ | ✅ | — | صيغة Sie. شاملة للجنسين (Benutzer:innen). |
| 🇯🇵 | اليابانية | ja | ✅ | ✅ | ✅ | — | です/ます للنص الأساسي، する لتسميات واجهة المستخدم. |
| 🇨🇳 | الصينية (المبسطة) | zh | ✅ | ✅ | ✅ | — | 简体中文. |
| 🇮🇹 | الإيطالية | it | ✅ | ✅ | ✅ | — | صيغة Lei. |
| 🇧🇷 | البرتغالية (البرازيل) | pt | ✅ | ✅ | ✅ | — | البرتغالية البرازيلية. |
| 🇰🇷 | الكورية | ko | ✅ | ✅ | ✅ | — | سياق 해요체 المهذب. |
اللغات العالمية الرئيسية
| العلم | اللغة | الرمز | LLM | Coached | نظام الكتابة | ملاحظات | |
|---|---|---|---|---|---|---|---|
| 🇧🇩 | البنغالية | bn | ✅ | ✅ | ✅ | — | تفضيل শুদ্ধ ভাষা. |
| 🇧🇬 | البلغارية | bg | ✅ | ✅ | ✅ | — | |
| 🇨🇿 | التشيكية | cs | ✅ | ✅ | ✅ | — | صيغة Vykání (صيغة vy). |
| 🇩🇰 | الدنماركية | da | ✅ | ✅ | ✅ | — | |
| 🇬🇷 | اليونانية | el | ✅ | ✅ | ✅ | — | Δημοτική الحديثة. |
| 🇮🇷 | الفارسية | fa | ✅ | ✅ | ✅ | — | من اليمين لليسار (RTL). |
| 🇫🇮 | الفنلندية | fi | ✅ | ✅ | ✅ | — | لا يوجد جنس نحوي. |
| 🇮🇱 | العبرية | he | ✅ | ✅ | ✅ | — | من اليمين لليسار (RTL). |
| 🇮🇳 | الهندية | hi | ✅ | ✅ | ✅ | — | शुद्ध हिन्दी. الحد الأدنى من الكلمات الدخيلة الإنجليزية. |
| 🇭🇺 | المجرية | hu | ✅ | ✅ | ✅ | — | صيغة Ön. |
| 🇮🇩 | الإندونيسية | id | ✅ | ✅ | ✅ | — | |
| 🇲🇾 | الملايوية | ms | ✅ | ✅ | ✅ | — | |
| 🇳🇱 | الهولندية | nl | ✅ | ✅ | ✅ | — | صيغة U. |
| 🇳🇴 | النرويجية | nb | ✅ | ✅ | ✅ | — | بوكمول (Bokmål). |
| 🇵🇱 | البولندية | pl | ✅ | ✅ | ✅ | — | صيغة Pan/Pani. |
| 🇵🇹 | البرتغالية (أوروبا) | pt-PT | ✅ | ✅ | ✅ | — | البرتغالية الأوروبية. |
| 🇷🇴 | الرومانية | ro | ✅ | ✅ | ✅ | — | |
| 🇷🇺 | الروسية | ru | ✅ | ✅ | ✅ | — | صيغة Вы. |
| 🇸🇰 | السلوفاكية | sk | ✅ | ✅ | ✅ | — | صيغة Vykanie (صيغة vy). |
| 🇷🇸 | الصربية | sr | ✅ | ✅ | ✅ | 🔤 لاتيني→سيريلي | محول نظام كتابة حتمي (Deterministic). |
| 🇸🇪 | السويدية | sv | ✅ | ✅ | ✅ | — | |
| 🇰🇪 | السواحلية | sw | ✅ | ✅ | ✅ | — | |
| 🇹🇭 | التايلندية | th | ✅ | ✅ | ✅ | — | أدوات التهذيب ครับ/ค่ะ. |
| 🇹🇷 | التركية | tr | ✅ | ✅ | ✅ | — | صيغة Siz. |
| 🇺🇦 | الأوكرانية | uk | ✅ | ✅ | ✅ | — | صيغة Ви. |
| 🇵🇰 | الأردية | ur | ✅ | ✅ | ✅ | — | من اليمين لليسار (RTL). صيغة آپ. |
| 🇻🇳 | الفيتنامية | vi | ✅ | ✅ | ✅ | — | |
| 🇹🇼 | الصينية (التقليدية) | zh-TW | ✅ | ✅ | ✅ | — | 繁體中文. |
| 🇬🇪 | الجورجية | ka | ✅ | ✅ | — | — | ქართული. العائلة الكارتفيلية. |
| 🇳🇬 | اليوروبا | yo | ✅ | ✅ | — | — | Èdè Yorùbá. نغمية (3 نغمات). |
المتغيرات الإقليمية
| العلم | اللغة | الرمز | LLM | Coached | نظام الكتابة | ملاحظات | |
|---|---|---|---|---|---|---|---|
| 🇲🇽 | الإسبانية المكسيكية | es-MX | ✅ | ✅ | ✅ | — | صيغة Tú. سياق دافئ. |
| 🇨🇦 | الفرنسية الكندية | fr-CA | ✅ | ✅ | ✅ | — | مصطلحات كيبك (Québécois). |
اللغات الأصلية ومنخفضة الموارد
هذه اللغات غير مدعومة من قبل خدمات الترجمة الآلية (MT) التجارية. يوفر rosetta الأدوات اللازمة لمجتمعات اللغات لبناء طرقهم الخاصة وفقاً لـ مبادئ OCAP.
| اللغة | الرمز | LLM | Coached | نظام الكتابة | الحالة | ||
|---|---|---|---|---|---|---|---|
| 🪶 | لغة كري السهول (Plains Cree) | crk | ❌ | ✅ | ✅ | 🔤 SRO→مقاطع لفظية | 🚧 قيد التطوير |
| 🌄 | الكيتشوا (Quechua) | qu | ✅ | ✅ | — | — | Runasimi. اللواحق الاستدلالية (Evidential suffixes). |
:::info لغة كري السهول (Plains Cree) قيد التطوير النشط السياق، والبنية التحتية للتوجيه (coaching)، ومحول نظام الكتابة، وأدوات التقييم للغة كري السهول كلها تعمل، ولكن مسار الترجمة لم يتم إصداره بعد. نحن نعمل مع مجتمعات اللغات وفقاً لـ مبادئ OCAP لضمان الجودة قبل الإصدار. راجع دعم لغة منخفضة الموارد للحصول على القصة الكاملة — وكيف يمكنك المساهمة. :::
:::tip إضافة المزيد من اللغات منخفضة الموارد تم تصميم نظام المكونات الإضافية للطرق في rosetta لهذا الغرض. يمكن لمجتمع اللغة بناء طريقة ترجمة مخصصة، واستضافتها تحت سيطرتهم الخاصة، وتقديمها عبر طريقة API. تتتبع لوحة صدارة الطرق الدرجات لأي زوج لغوي — قم ببناء طريقة، وشغّل أدوات التقييم، واحصل على أعلى درجة. :::
اللغات المصطنعة
يتم دعم اللغات المصطنعة (Conlangs) عبر سياقات LLM ومحولات أنظمة الكتابة الاختيارية. وهي تستخدم نفس البنية التحتية للغات الحقيقية — حيث تعمل بوابة الجودة، ونظام التوجيه، ومسار تحويل نظام الكتابة بشكل متطابق.
| اللغة | الرمز | LLM | نظام الكتابة | ملاحظات | ||
|---|---|---|---|---|---|---|
| 🖖 | الكلينغونية (Klingon) | tlh | ❌ | ✅ | 🔤 بالحروف اللاتينية→pIqaD | يتطلب خط PUA. مفردات مارك أوكراند. |
| 🧝 | السندارين (لغة الإلف لتولكين) | x-elvish-s | ❌ | ✅ | 🔤 لاتيني→تينغوار | يتطلب خط CSUR PUA. |
| 🏴☠️ | إنجليزية القراصنة | x-pirate | ❌ | ✅ | — | سياق فقط. استعارات بحرية. |
| 🦸 | الكريبتونية (Kryptonian) | x-kryptonian | ❌ | ✅ | 🔤 لاتيني→كريبتوني | يتطلب خط PUA. |
| 🎭 | الإنجليزية الشكسبيرية | x-shakespeare | ❌ | ✅ | — | سياق فقط. صيغ Thee/thou، -eth/-est. |
| 🐸 | لغة يودا (Yoda-speak) | x-yoda | ❌ | ✅ | — | سياق فقط. ترتيب الكلمات (مفعول-فاعل-فعل) OSV. |
راجع اللغات المصطنعة وأنظمة الكتابة والإملاء لمعرفة متطلبات خطوط PUA، وقيود Unicode، وكيفية إضافة لغتك الخاصة.
الإعدادات المسبقة للغات
يدعم معالج init أسماء الإعدادات المسبقة للإعداد السريع. يمكنك مزج الإعدادات المسبقة مع الرموز الفردية.
| الإعداد المسبق | يتوسع إلى |
|---|---|
european | fr, de, es, it, pt, nl |
asian | ja, zh, ko |
global | fr, es, de, ja, zh, ko, pt, ar |
nordic | da, fi, nb, sv |
# Mix presets with individual codes
i18n-rosetta init
# → Target languages: european, ja
# → Resolves to: fr, de, es, it, pt, nl, ja
إضافة أي لغة
يمكن لـ rosetta الترجمة إلى أي لغة يعرفها نموذجك اللغوي الكبير (LLM) — الجدول أعلاه يسرد فقط اللغات التي تحتوي على إعدادات سياق مسبقة مدمجة. لإضافة لغة غير مدرجة، قم بتضمين رمز BCP-47 الخاص بها في التكوين الخاص بك:
{
"languages": {
"sw": {},
"am": {
"register": "Formal Amharic. Professional register with Geʽez script."
}
}
}
سيقوم LLM بالترجمة باستخدام معرفته التدريبية باللغة. يمنحك تعيين register التحكم في النبرة، والرسمية، والاصطلاحات الإملائية. راجع التكوين للحصول على التفاصيل.
بطاقات اللغات
تحتوي كل لغة مدمجة على Language Card (بطاقة لغة) — وهي تكوين JSON مهيكل مقسم إلى مستويين من أجل الأداء:
بنية ثنائية المستوى
| المستوى | الدليل | التحميل | الغرض |
|---|---|---|---|
| وقت التشغيل (Runtime) | lib/data/language-cards/ | مبكراً عند import | محرك الترجمة: السياقات، الرسمية، القواعد، دعم الطرق |
| المرجع (Reference) | lib/data/language-reference/ | متأخراً عند الطلب | مستندات المطور: التحديات اللغوية، البيانات الموسوعية، موارد معالجة اللغات الطبيعية (NLP) |
يظل مستوى وقت التشغيل صغيراً (~2 كيلوبايت/بطاقة) حتى لا يؤدي استيراد rosetta إلى تحميل ميغابايتات من بيانات التوثيق. يتوفر المستوى المرجعي عبر getLanguageReference(code) للأدوات، والموقع الإلكتروني، وأدوات التقييم.
حقول بطاقة وقت التشغيل
| الحقل | ماذا يحتوي |
|---|---|
nativeName | الاسم المحلي (Endonym) — اسم اللغة كما يسميها أهلها، بنظام كتابتها الخاص (مثل: ქართული، Runasimi) |
| نظام الرسمية (Formality system) | تمييز T-V، مستويات التحدث، لغة الاحترام (keigo)، الأدوات، إلخ. |
| الإعدادات المسبقة للسياق (Register presets) | إعدادات مطالبات LLM المسبقة المسماة والخاصة بطابع اللغة |
| دعم الطرق (Method support) | واجهات برمجة تطبيقات (APIs) الترجمة التي تدعم هذه اللغة |
| إرشادات الجنس (Gender guidance) | قواعد الجنس النحوي ونصائح الكتابة الشاملة |
| نظام الكتابة/الاتجاه (Script/direction) | رمز نظام الكتابة ISO 15924 ومن اليمين لليسار (RTL) / من اليسار لليمين (LTR) |
| القواعد (Rules) | الطباعة (علامات الاقتباس، المسافات)، الكتابة بالأحرف الكبيرة، فئات الجمع |
| مجموعات بيانات التقييم (Eval datasets) | المعايير التي تغطي هذه اللغة |
glottocode | مُعرّف Glottolog الأساسي للإسناد الترافقي |
humanReviewed | ما إذا كانت البطاقة قد تمت مراجعتها من قبل متحدث باللغة |
حقول البطاقة المرجعية
| الحقل | ماذا يحتوي |
|---|---|
| التحديات اللغوية (Linguistic challenges) | المزالق الخاصة بالترجمة الآلية (مثل: الاستدلال، التشكيل النغمي، الإلصاق) |
| موسوعي (Encyclopedic) | عائلة اللغة، التصنيف، عدد المتحدثين، المناطق |
| الموارد (Resources) | أدوات معالجة اللغات الطبيعية (NLP)، المتون المتوازية، النماذج المدربة مسبقاً |
إنشاء هيكل بطاقة لغة جديدة
استخدم المولد لإنشاء هيكل لكلا المستويين من مصادر البيانات الموثوقة (IANA، CLDR، Glottolog):
# Preview what would be generated
node scripts/generate-language-card.mjs sw --dry-run
# Generate both runtime + reference cards
node scripts/generate-language-card.mjs sw
يقوم المولد بملء البيانات الوصفية تلقائياً (الرموز، نظام الكتابة، الاتجاه، صيغ الجمع، علامات الاقتباس، دعم الطرق، عائلة اللغة) ويضع علامة TODO على حقول الأحكام اللغوية ليتم تنسيقها بشرياً.
استخدام مفاتيح الإعدادات المسبقة
بدلاً من كتابة نص السياق بالكامل، يمكنك استخدام اسم مفتاح الإعداد المسبق:
{
"languages": {
"fr": "casual-tu",
"ko": "formal-hapsyo",
"ja": "polite"
}
}
يقوم Rosetta بحل المفتاح إلى مطالبة السياق الكاملة. قم بتشغيل npx i18n-rosetta init لرؤية الإعدادات المسبقة المتاحة لكل لغة.
أمثلة على الإعدادات المسبقة
| اللغة | الإعدادات المسبقة | الافتراضي |
|---|---|---|
| الفرنسية | formal-vous, casual-tu | formal-vous |
| الكورية | polite-haeyo, formal-hapsyo, casual-hae | polite-haeyo |
| اليابانية | polite, formal-keigo, casual | polite |
| الألمانية | formal-Sie, casual-du | formal-Sie |
| التايلندية | neutral-professional, polite-male, polite-female | neutral-professional |
| الإسبانية | neutral-professional, formal-usted, casual-tuteo | neutral-professional |
راجع المساهمة ببطاقة لغة للحصول على المواصفات الكاملة، بما في ذلك التحقق من صحة الحقول وقائمة التحقق الخاصة بطلبات السحب (PR).
انظر أيضاً
- التكوين — مرجع التكوين الكامل بما في ذلك إعداد اللغة
- طرق الترجمة — كيف تعمل كل طريقة
- محولات أنظمة الكتابة — مسار تحويل نظام الكتابة الحتمي
- اللغات المصطنعة وأنظمة الكتابة والإملاء — خطوط PUA، وUnicode، وإضافة اللغات المصطنعة
- دعم لغة منخفضة الموارد — بناء طرق للغات غير المخدومة بشكل كافٍ