التواصل مع الدعم

نردّ عبر البريد الإلكتروني، عادةً خلال يومين.

يفحص Google reCAPTCHA هذا الإرسال للحماية من إساءة الاستخدام؛ وتُرسَل بيانات إلى Google. لا يُحمَّل السكربت إلا عند فتح هذا النموذج.

→ كل المقالات

كيف نفحص كل ترجمة

في هذه المدونة 64 تدوينة بإحدى عشرة لغة: 704 صفوف ونحو 2.2 مليون حرف. ولا تنقص أي تدوينة في أي لغة، وهذا ادعاء لا معنى له إلا إذا كان هناك ما يفرضه.

وهناك ما يفرضه. فقبل كتابة أي صف مترجم، يُقارَن بالأصل الإنجليزي، والصف الذي يفشل لا يُكتب إطلاقًا — بل يُبلَّغ عنه ويُترك لشخص كي ينظر فيه.

1 — أهداف روابط متطابقة 2 — عناصر نائبة متطابقة 3 — العدد نفسه لكل وسم 4 — طول بين 0.5x و2.5x 5 — لا عنصر نائب مكتوب نصفه يُكتب يُتخطّى ويُبلَّغ عنه 704 صفوف، 64 تدوينة، إحدى عشرة لغة

الغرض من كل فحص

أهداف الروابط نفسها. يجب ألا يتغير المسار الداخلي أثناء الترجمة: /privacy يبقى /privacy في كل اللغات، وتُضاف بادئة اللغة عند العرض. والمترجم — بشرًا كان أو غير ذلك — الذي يترجم مسارًا بحسن نية ينتج رابطًا لا يؤدي إلى أي مكان.

العناصر النائبة نفسها. تحمل بعض التدوينات أرقامًا تُستبدل عند بناء الصفحة، كي لا تتقادم. والترجمة التي تُسقط أحدها تفقد رقمًا؛ والتي تختلق واحدًا تُنتج قوسًا معقوفًا في منتصف الجملة.

العدد نفسه لكل وسم. لا يكفي أن تكون الوسوم متوازنة — بل يجب أن يكون عددها مطابقًا لما في النص الإنجليزي. هذا هو الفحص الذي يستحق مكانه: فصف جدول مفقود، أو عنصر قائمة ساقط، أو مخطط غائب، لا يراه أي اختبار آخر، لأن النتيجة تبقى HTML صالحًا يُقرأ بشكل سليم تمامًا.

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

ما كشفه، وما كشفه خطأً

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

وإنذاران كاذبان، كلاهما في اليوم نفسه، وكلاهما مفيد.

الأول: تدوينة تقتبس سطرًا من CSS، وسطر CSS ينتهي بالرمز }}. وكان فحص الأقواس يعدّ كل {{ وكل }}، ففشلت كل ترجمة لتلك التدوينة مع أنه لم يكن فيها أي خطأ. والرمز }} من دون {{ لا يمكن أن يكون عنصرًا نائبًا مكسورًا — فالعناصر النائبة تبدأ بالرمز {{ — لذا صار يُعدّ جانب الفتح وحده الآن.

الثاني: <rect/> و <path/> ليس لهما وسم إغلاق، لذا يُبلغ عنهما اختبار التوازن على أنهما غير متوازنين إلى الأبد. أما الآن فتُعدّ العناصر الفارغة بدلًا من اختبار توازنها.

كلّف كلٌّ منهما جولة عمل، وفي كلتا الحالتين كان الفحص مفرطًا في الصرامة لا متساهلًا. وهذا هو الاتجاه الأفضل للخطأ، لكنه ليس بلا ثمن: فالفحص الذي يكثر من الإنذارات الكاذبة يرخيه أول من يكون على عجلة، ثم لا يكون موجودًا حين يلزم.

الاختبار الأهم

عندما أُضيفت المخططات إلى التدوينات، وُسّع فحص الوسوم ليشملها. وبدلًا من الثقة بذلك، اختُبر الفحص نفسه: حُذف مخطط عمدًا من إحدى الترجمات وشُغّل برنامج الاستيراد.

فأبلغ بالضبط عمّا اختفى — المخطط، وتسمياته العشر، ومستطيلاته الأربعة، ومساراته السبعة — ورفض كتابة الصف. ثم أُعيد المخطط فنجح الفحص من جديد.

استغرق ذلك دقيقتين. فالتحقق الذي لم يُرَ يفشل قط هو تحقق مُفترَض، والافتراض هو بالضبط ما وُجد كل هذا لتجنبه.

إعلان