كان أحد مشاريعنا الرئيسية هذا العام هو العمل على تطوير وضع جديد لتحرير النصوص الغنية للمحرر، مما يجعل الكتابة في Discourse أكثر ألفة وبديهية. كان المحرر الجديد متاحًا هنا في Meta وكإعداد تجريبي لبعض الوقت، ولكننا وصلنا إلى النقطة التي نشعر فيها بالحماس لإزالة علامة experimental ودعوة مجتمعكم لتجربته!
في هذا الموضوع، سنشارك المزيد عن المحرر، وكيفية عمله، وكيف يمكنكم جعله متاحًا في مجتمعكم بضغطة زرّتين فقط.
محرر نصوص غنية جديد لـ Discourse
يُبسّط محرر النصوص الغنية الجديد تجربة الكتابة لمستخدمي Discourse، ولا سيما أولئك الذين ليست لديهم خبرة تقنية كافية أو غير معتادين على الكتابة بلغة Markdown. يدعم محرر النصوص الغنية لغة Markdown، بالإضافة إلى اختصارات لوحة المفاتيح الشائعة وتعديلات التنسيق عبر شريط الأدوات، ولكن يتم عرض التنسيق فورًا لتجربة WYSIWYG (“ما تراه هو ما تحصل عليه”) تشبه الأدوات المألوفة مثل Google Docs و Notion.
مستقبل لغة Markdown
نعلم أن العديد من مستخدمي Discourse يحبون محرر Markdown الحالي ويستمتعون بتجربة الكتابة المتوقعة والمباشرة. المحرر الجديد هو “وضع” للمحرر يعمل جنبًا إلى جنب مع وضع Markdown الحالي، وبالتالي يمكن لأعضائكم اختيار أسلوب الكتابة الأنسب لهم.
معظم ما كنتم تفعلونه في محرر Markdown الكلاسيكي مدعوم الآن في محرر النصوص الغنية، بما في ذلك:
جميع تنسيقات النص الأساسية، المدعومة في Markdown (**bold**)، باستخدام اختصارات لوحة المفاتيح الشائعة (Command + B)، وعبر أيقونات شريط الأدوات.
ومع ذلك، هناك بعض المجالات التي ما زلنا نعمل عليها، مثل تسهيل تعديل الجداول والاستطلاعات. سنواصل العمل لتحقيق التكافؤ في الميزات بين أوضاع المحرر، ونشجعكم على مشاركة طلبات الميزات (Contribute > Feature requests) حول الميزات والقدرات التي تهمكم أكثر لمساعدتنا في تحديد أولويات عملنا. وفي غضون ذلك، يمكنكم دائمًا التبديل إلى وضع Markdown لتلبية الاحتياجات المتقدمة.
كيف بنيناه
يعتمد تنفيذنا على ProseMirror الممتاز ووحدة Markdown غير الأساسية، باستخدام مخططات الوحدة، والتفسير، وتعريفات التسلسل كأساس لمزيد من الميزات الخاصة بـ Discourse.
تفعيل المحرر الجديد
محرر النصوص الغنية مفعل افتراضيًا لجميع المجتمعات. عندما تفتح أنت أو أعضاؤكم المحرر، ستلاحظون زر تبديل في شريط الأدوات. يتيح هذا التبديل التبديل بين وضع Markdown الكلاسيكي فقط والمحرر الجديد للنصوص الغنية.
تحديث: إذا فضلتم أن يُظهر محرر Markdown لأعضائكم افتراضيًا:
أخبار رائعة. هل هناك ميزة في خارطة الطريق موجودة بالفعل في جميع المحررات الغنية؟ النص الملون؟ نظرًا لأن markdown لا يدعم النص الملون، يمكن تحقيق ذلك باستخدام إضافات CSS. بدلاً من ذلك، قد تكون هناك خيارات أخرى لا نعرفها.
أحب الكتابة باستخدام ماركداون (ربما اعتدت عليه؟)، ولكن عندما أستخدم إصدار ماركداون، لا يعجبني الخط الجديد أحادي المسافة، لذلك بالنسبة لي، لا معنى لتضمين المحرر الغني في مجتمعي (حيث سأكون على الأرجح الشخص الذي يكتب أكثر). ومع ذلك، يمكن أن يكون هذا إعدادًا يمكن للمستخدم تمكينه/تعطيله. على سبيل المثال، إذا قمت بتعطيله، أحصل دائمًا على إصدار ماركداون فقط، لذا أحتفظ بالخط “العادي” (ليس أحادي المسافة). إذا قمت بتمكينه، أحصل على ما تم تنفيذه. كمسؤول، يمكنني تمكينه للمجتمع، ولكن يمكن لكل مستخدم تمكينه/تعطيله. إما ذلك، أو يمكن لكل مستخدم تحديد الخط الذي يريد استخدامه في إصدار ماركداون.
أجد أنه مشتت بعض الشيء عندما يتم تمكين المحرر الغني، يتم تغيير حجم المؤلف بالكامل ونقله. خاصة إذا كنت سأستخدم كلا الإصدارين بالتبادل (أعلم أنني سأفعل ذلك)، فإن تغيير حجم النافذة في كل مرة أنقر فيها على المفتاح يبدو مشتتًا بالنسبة لي. أتفهم أنه مع المحرر الغني، لا نحتاج إلى جزء المعاينة الإضافي الأيمن، ولكن لا يزال الأمر كذلك… ربما يمكن استخدام هذه المساحة لشيء آخر؟
هذه مجرد تفاصيل بسيطة، ولكن إذا استمر تغيير الحجم، فإنه يبدو غريبًا أن المؤلف محاذي لوسط الصفحة، ولكن مقارنة بمنطقة الموضوع، فهو غير محاذٍ ولذلك يبدو غريبًا لعيوني:
ما زلت غير مقتنع بأنني سأستخدم هذه الميزة، بصراحة. يمكنني أن أرى كيف يمكن أن تكون مفيدة في النهاية، ولكن في الوقت الحالي لدي دائمًا هذا الشعور “المزعج” كلما فكرت في استخدامها.
حاول أحد المستخدمين بعض أكواد HTML ولم يتم عرضها في وضع WYSIWYG - كل ما حدث هو أن نص HTML تم وضعه في مربع. عند التبديل مرة أخرى إلى Markdown، ترى النتيجة الصحيحة في جزء المعاينة. هل من المفترض أن يعرض نتائج HTML أم تحتاج إلى التبديل مرة أخرى إلى Markdown للمعاينة؟ على سبيل المثال:
مقالة ويكي قيد الإنشاء
يرجى السماح للمنشئ بالعمل على هذا حسب قدرته. أنت حر في تقديم المساعدة أو المشورة عن طريق الرد، ولكن يرجى عدم تعديله دون إذن.
هذا مقصود، يتم دعم HTML المعقد فقط عبر كتلة HTML “passthrough”، كما رأيت.
بالنظر إلى أن المدقق يقوم بإزالة style، فلماذا لا تكتب هذا فقط؟
---
## Wiki article under construction
Please allow the creator to work on this as they are able. You are free to offer help or advice by replying, but please do not edit it without permission.
---