الأولوية/الخطورة: منخفض؟
المنصة: الأجهزة التي تستخدم RTE الجديد.
الوصف: يؤدي إنشاء أنواع رموز مخصصة، والتي كانت تعمل سابقًا بشكل جيد مع محرك markdown-it فقط، إلى حدوث أخطاء مع ProseMirror. نظرًا لعدم وجود مخطط ProseMirror لمعالجة المحتوى المحلل إلى DOM، فإن أي أنواع رموز مخصصة تنشئ خطأ. وبالمثل، توجد مشكلات سلوكية عند التبديل بين RTE و Markdown مع BBCode.
خطوات التكرار:
RTE أولاً:
- افتح المحرر
- اضبط الوضع على RTE
- أدخل BBCode مخصص.
أ. على سبيل المثال مع Discourse Meta:[wrap=test2 user-id=1]Content[/wrap] - تجاهل الخطأ وقم بالتبديل بين وضعي RTE و md.
أ. يتم تهريب BBCode
Markdown أولاً:
- افتح المحرر
- اضبط الوضع على Markdown
- أدخل BBCode مخصص.
- قم بالتبديل بين وضعي md و RTE.
أ. BBCode غير مرئي
- قم بالتبديل مرة أخرى لرؤية النص الخام.
الحل الحالي:
استخدم وضع Markdown فقط بدلاً من ذلك.
إن الحصول على الخطأ نفسه ليس مشكلة كبيرة، والمشكلة الأكبر هي السلوك الغريب عند التبديل أو عند إدخال الكود.
الحل المثالي هو أن يقوم كل مكون إضافي لـ markdown بإنشاء معالج/مخطط ProseMirror مناسب للتعامل معه.
فيما يتعلق بـ BBCode العام [wrap]، ربما يكون تركه كنص عادي هو الأفضل، حيث يمكن لمكونات متعددة استخدام BBCode العام في نفس مثيل Discourse. الحل المثالي هو على الأرجح السماح للمطورين بإنشاء معالج مخصص ومطابقة المخرجات لتطبيقاتهم الخاصة، والسماح له بالرجوع إلى النص العادي إذا لم يتم العثور على مطابقات.
بشكل عام، مع أي مكونات إضافية موجودة لم يتم تحديثها لاستخدام ProseMirror، فإن السماح لها بالرجوع افتراضيًا إلى النص العادي (الذي لا يتم تهريبه/إخفاؤه) سيكون بديلاً مؤقتًا لطيفًا.


