Skip to content

التعريب ​

بطاقة Dreame Vacuum تدعم عدة لغات بشكل أصلي. فهي تستخدم ملفات اللغة المقدمة من تكامل الخلفية dreame_vacuum بشكل ديناميكي بدلاً من الاحتفاظ بملفات توطين منفصلة.

تسترجع البطاقة القيم النصية المترجمة من القسم entity_component داخل dreame_vacuum ملفات ترجمة التكامل.

مفاتيح الترجمة ​

داخل ملفات اللغة، تستخدم البطاقة أساسًا عدة فئات رئيسية تبدأ بـ frontend_ لعرض واجهتها:

  • frontend_action: يحتوي هذا القسم على جميع النصوص المستخدمة داخل أزرار الإجراءات على لوحة التحكم الرئيسية للبطاقة، مثل ابدأ, إيقاف مؤقت, أو إرساء.

  • frontend_config: يحتوي هذا القسم على جميع تسميات النصوص والوصف والإعدادات المستخدمة داخل واجهة تكوين البطاقة المرئية.

  • frontend_message: يحتوي على رسائل الحالة والتنبيهات وتقارير الأخطاء والتحذيرات المعروضة على البطاقة.

  • frontend_title: يغطي العناوين وعناوين الأقسام المستخدمة داخل قوائم البطاقة، مثل إدارة الخريطة أو إعدادات التنظيف.

  • entity: يغطي هذا القسم مجالات كيانات Home Assistant مثل select، sensor، switch، number، time و input. تقوم البطاقة بسحب أسماء وحالات هذه الكيانات تلقائيًا، مثل مستوى الشفط أو هادئ، مباشرة من التكامل لضمان الاتساق.

    • الحالات الخاصة بالبطاقة: توفر الترجمات للحالات الداخلية المستخدمة حصريًا بواسطة واجهة مستخدم البطاقة بدلاً من كيانات Home Assistant. ويشمل ذلك أسماء الغرف (المستمدة من الكيان segment_name)، بالإضافة إلى معرفات محددة مثل task_type، edit_type، map_type، object_type، furniture_type، obstacle_type، obstacle_reason، task_end_type، task_interrupt_reason، startup_method، cleanup_method و recovery_map_type.

تنسيق التاريخ والوقت والوحدات ​

بالإضافة إلى ترجمات النصوص، تتكيف البطاقة تلقائيًا مع تفضيلات التنسيق المحلية دون الحاجة إلى أي إعداد يدوي:

  • اللغة والمنطقة: تعطي البطاقة الأولوية للغة المحددة في ملف تعريف Home Assistant. إذا لم يتم تعيين أي لغة صراحة هناك، فإنها تعود تلقائيًا إلى اللغة الافتراضية للمتصفح.
  • تنسيق الوقت 12/24 ساعة: تحترم البطاقة تنسيق الوقت المُكوَّن في ملف تعريف Home Assistant. إذا لم يُحدد، فإنها تتبنى تلقائيًا تنسيق الوقت القياسي لمنطقة الجهاز.
  • أول يوم في الأسبوع: تقرأ البطاقة إعداد أول يوم في الأسبوع مباشرة من Home Assistant. إذا لم يُحدد، فإنها تحدد ديناميكيًا ما إذا كان يجب أن يبدأ التقويم يوم الأحد أو الاثنين بناءً على المنطقة المحلية.
  • نظام الوحدات: تتحقق البطاقة باستمرار من التكوين العالمي في Home Assistant. إذا كان النظام يستخدم نظام الوحدات الإمبراطوري، فإن البطاقة تعيد حساب المساحات والمسافات تلقائيًا، مع عرضها أصليًا بالقدم، القدم المربعة، أو الياردات.
  • ترجمات الوحدات الأصلية: لا تتطلب اللواحق والاختصارات الشائعة للوحدات، مثل متر، كيلومتر، قدم، ياردة، دقيقة وساعة أي ترجمة يدوية. يقوم الكرت بترجمتها تلقائيًا باستخدام ميزات المتصفح المدمجة المصممة خصيصًا للغة النشطة.

إصلاح أو تحسين الترجمات ​

إذا تم تحديد خطأ مطبعي أو ترجمة غير صحيحة، أو كانت هناك حاجة لدعم لغة جديدة، تذهب المساهمات إلى المستودع الرئيسي dreame_vacuum للتكامل.

تعميم الترجمة

غالبًا ما يستخدم التطبيق الرسمي مصطلحات مختلفة لنفس المعلمات عبر أجيال مختلفة من الأجهزة. يجب أن تستخدم الترجمات أسماء منطقية ومعممة بدلاً من نسخ الكلمات الدقيقة من التطبيق بدقة. هذا يمنع حدوث تعارضات في الترجمة حيث يتم لاحقًا تجاوز تصحيح مخصص لجيل محدد بواسطة مستخدمين يحملون أجيال أجهزة مختلفة.

تتضمن عملية التحديث الخطوات التالية:

  1. استنساخ المستودع: استنساخ مستودع تكامل Dreame Vacuum Home Assistant على GitHub.
  2. البحث عن ملف الترجمة: التنقل إلى الدليل custom_components/dreame_vacuum/translations/ في المستودع المستنسخ للعثور على ملف الترجمة الذي يطابق رمز اللغة، مثل de.json أو it.json.
  3. إجراء التغييرات: تحديث النص غير الصحيح. كتل frontend_action و frontend_config و frontend_message و frontend_title تدير النصوص المتعلقة بواجهة المستخدم. كتلة entity تدير أسماء المستشعرات، خيارات التحديد، وحالاتها.
  4. إرسال طلب سحب: فتح طلب سحب إلى المستودع الرئيسي. بعد مراجعة طلب السحب ودمجه في إصدار جديد من التكامل، تقوم بطاقة Dreame Vacuum تلقائيًا باستخدام الترجمات المحدثة.