دعم اللغة العربية في markdown
هل سمعت من قبل بـ Markdown؟ انها لغة الترميز اللتي يستخدمها موقع Stackoverflow و اخواته للكتابة و النشر, منذ ان تعلمتها هناك و انا احبها و اظن انها الطريقة الوحيدة المريحة لكتابة مواضيع/تدوينات برمجية
تخيل عندما تكتب تدوينة في wordpress مثلا و تريد اضافة كود, يجب ان تدخل اوسمة html يدويا, يعني <pre><code> الخ,
بينما في Markdown فالكود هو مجرد فقرة مدفوعة للامام باربع مسافات امام كل سطر
هذا فضلا عن البساطة في اضافة العناوين و اضافة *emphasis* الى كلمة او فقرة
اصبحت لا اطيق اي طريقة لنشر اي مادة برمجية لا تعتمد على Markdown, و احد اسباب انتقالي الى tumblr فضلا عن النواحية الفنية في الموقع هو دعمه المباشرة لتقنية markdown و كذلك انني استطعت تحويره لكي استطيع نشر مواضيع عربية مكتوبة بالمارك داون
هنا نموذج حي عن امكانيات Markdown
و لكن حاول الكتابة باللغة العربية؟ ستجد ان الكتابة تظهر لليسار و ستكون مصفوفة من اليسار الى اليمين, يعني لو ادخلت كلمات انكليزية في الوسط فستكون النتيجة كارثة انسانية :)
صحيح انني حليت المشكلة في هذا الموقع, و لكنه حل ترقيعي كما يقولون, و نحتاج الى حل افضل.
اولا تعريف المشكلة: البحث عن طريقة لكتابة تدوينات عربية برمجية من دون html او لغات ترميز معقدة. ماركداون تحل المشكلة و لكنها لا تعرف شيئا عن اللغة العربية.
طبعا في عالم الويب فإن دعم عرض و تحرير اللغة العربية امر يتكفل به المتصفح, و لكن ما اقصده هو وضع فقرات عربية تكون مصفوفة الى اليمين و يكون اتجاه سير النص من اليمين الى اليسار. او بمعنى آخر اضافة خصائص direction: rtl; text-align: right الى الفقرات المكتوبة باللغة العربية تلقائيا.
بدأت بعمل fork من مشروع showdown على github و اضفت اليه بعض التعديلات في محاولة لاضافة دعم لاظهار الفقرات العربية من اليمين الى اليسار
الكود منشور هنا:
http://github.com/hasenj/showdown
و هو في مرحلته الاولية, و هناك احتمال لوجود بعض الاخطاء و الـ bugs و لكنه على ما اظن بداية جيدة
هناك مثال حي استضافه صديقي العزيز عمر محمد على موقعه مشكورا :)
http://omar84.com/docs/rtlsd/showdown-gui.html

في هذه المرحلة اود اصلاح اي خلل في الكود,
فيما بعد احب ان اضيف نفس الدعم الى محرر wmd في مربع الادخال ايضا و ليس فقط مربع الاخراج
بعدها اضافة التعديلات نفسها الى النسخة الاصلية بلغة perl و الى النسخ المشهورة من اللغات الاخرى مثل python, c#, ruby, الخ
لكن المشكلة الحقيقية ليست هنا, بل في تبني هذه الاضافة من قبل المواقع الشهيرة اللتي تدعم الكتابة و النشر بلغة الترميز هذه .. عندها فقط يمكن ان نقول ان فكرة المشروع نجحت.