تخطَّ إلى المحتوى

اللغات والكتابة

الواجهة متوفرة بالفرنسية والعربية؛ أما محتوى الكتالوج فيبقى بالعربية. ثلاثة أسطح، وثلاث آليات، يحملها وسيط (middleware) واحد:

السطح أين تُحدَّد اللغة الافتراضي
الموقع العام في العنوان (/ar/…، /fr/…)، وروابط hreflang، ثم ملف تعريف الارتباط فالمتصفح للمسار / العربية
لوحة الإدارة تفضيل الحساب، ومحدِّد اللغة في القائمة، والجلسة قبل الدخول الفرنسية
واجهة البرمجة (API) الترويسة Accept-Language الفرنسية
  1. كل سلسلة واجهة تمرّ عبر __('Texte français'). الفرنسية هي المفتاح؛ والعربية في lang/ar.json. لا عربية ولا فرنسية مكتوبة مباشرة في القوالب أبدًا.
  2. جملة واحدة، مفتاح واحد. الأجزاء المتغيرة معاملات مسمّاة (:nom)، ولا يُلجأ أبدًا إلى ضمّ مقاطع.
  3. تسميات النماذج (الأنواع، والحالات، والأدوار…) تبقى بالفرنسية في الثوابت؛ والدوال …Label() تُرجع الترجمة؛ والعروض التي تمرّ على الثوابت تترجم عند العرض.
  4. الإعدادات المزروعة في القاعدة تحتفظ بتسميتها الفرنسية، وتُترجم عند العرض.
  5. اختبار يعيد قراءة الكود والثوابت والإعدادات: مفتاح بلا ترجمة عربية، أو رقم عربي-هندي، يُفشل المجموعة.

الكتابة من اليمين إلى اليسار

Section titled “الكتابة من اليمين إلى اليسار”

بالعربية، تنتقل الصفحة بأكملها إلى dir="rtl". ولكي تنقلب الشاشة على نحو صحيح:

  • لا تُستعمل إلا الأدوات المنطقية: ms-/me- بدل ml-/mr-، وps-/pe-، وstart-/end-، وtext-start/text-end، وrounded-s-/rounded-e-، وborder-s/border-e؛
  • يُعزل المقطع العربي داخل صفحة فرنسية بالصنف ar (خط عربي، unicode-bidi: isolate)؛
  • تُبقى الأرقام والأسعار والمعرّفات التقنية داخل ltr-num أو dir="ltr" حتى لا يتحوّل « 1 200 DH » أبدًا إلى « DH 200 1 »؛
  • الأرقام الأوروبية (0-9) في كل مكان، ولا أرقام عربية-هندية أبدًا — قاعدة من قواعد المشروع.