كيف تجري المقارنة
تعتمد الأداة خوارزمية الفروق التي نشرها يوجين مايرز سنة 1986، وهي الطريقة التي تقوم عليها برامج كثيرة لإدارة الإصدارات والمقارنة. فهي تجد أقل عدد من الأسطر يلزم حذفه وإضافته لتحويل النص الأول إلى الثاني، فتتطابق الأسطر غير المتغيرة حتى لو أُضيفت فقرة في الوسط. وحين يقع سطر محذوف وسطر مضاف في الموضع نفسه يُعدّان تعديلًا ويُقارنان من جديد كلمة بكلمة، فترى أن «500 درهم» صارت «650 درهمًا» بدل سطر أحمر كامل وسطر أخضر كامل.
سطرًا بسطر أم كلمة بكلمة
تناسب المقارنة سطرًا بسطر كل نص للأسطر فيه أهمية: الشيفرات البرمجية وصفوف ملفات CSV وملفات الإعدادات وقوائم الأسماء والترجمات المرئية والعقود ذات البنود المرقمة. أما المقارنة كلمة بكلمة فتناسب المقالات والرسائل والنصوص التي ربما أُعيد توزيع جملها على الأسطر، إذ تقارن النص كله سلسلةً واحدة من الكلمات، وتُظهر الكلمات المحذوفة مشطوبة والجديدة مسطّرة في مكانها.
تجاهل حالة الأحرف والمسافات والتشكيل
يعامل خيار «تجاهل حالة الأحرف» كلمتي Dubai وDUBAI على أنهما واحدة. ويعامل «تجاهل المسافات الزائدة» المسافات المتتالية وعلامات الجدولة على أنها مسافة واحدة، ويتجاهل المسافات في أول السطر وآخره، وهذا مفيد للنصوص المنسوخة من ملفات PDF أو للشيفرات التي تغيّرت إزاحتها. أما «تجاهل التشكيل» فيعدّ «مُحَمَّد» و«محمد» متطابقتين، وهو مفيد حين تكون إحدى النسختين مشكولة والأخرى غير مشكولة. ويبقى الإبراز معروضًا على النص كما كتبته.
النص العربي والنصوص مختلطة الاتجاه
يُعرض كل سطر باتجاهه الخاص، فيُقرأ السطر العربي من اليمين إلى اليسار والإنجليزي من اليسار إلى اليمين في الجدول نفسه. وتُقسَّم الكلمات عند المسافات وعلامات الترقيم، ومنها الفاصلة وعلامة الاستفهام العربيتان، وتحتفظ كل كلمة بحركاتها، فإذا تغيّرت حركة واحدة ظهر التغيير على الكلمة الصحيحة. وفي النسخة العربية من هذه الصفحة يظهر النص الأصلي على اليمين والمعدّل على اليسار كما يتوقع القارئ العربي.
حفظ النتيجة والخصوصية
نزّل ملف changes.diff لتحتفظ بسجل لمقارنة الأسطر بصيغة الفروق الموحدة التي يقرؤها Git ومعظم أدوات البرمجة، مع ثلاثة أسطر من السياق حول كل تغيير. أما مقارنة الكلمات فتُنزَّل ملفًا نصيًا تظهر فيه المحذوفات بين [- -] والإضافات بين {+ +}. وتجري المقارنة كلها في متصفحك، وهذا مهم للعقود والخطابات الإدارية والأعمال غير المنشورة: لا يُرفع شيء ولا يُحفظ.