خطط لدعم Markdownit Ruler لـ BBCode؟

حالة الاستخدام الخاصة بي هي تعطيل/تمكين قواعد bbcode عند استخدام قاعدة الاستبدال لـ bbcode.

replace: function (state, tagInfo, content) {
  const source = state.push("my_token", "div", 0);
  try {
    md.block.bbcode.ruler.disable("ruleName")
    source.children = state.md.parse(content, {});
  } finally {
    md.block.bbcode.ruler.enable("ruleName")
  }
  return true
}

لاحظت أن تعليق TODO هنا كان منذ فترة طويلة، هل هناك خطط لتنفيذه؟

أعتقد أن سؤالي الأول هنا هو لماذا؟ ما المشاكل التي سيحلها هذا؟

إعجاب واحد (1)

هل سيهتم مشروعنا بك بدلاً من ذلك؟ نحن نقترب من النهاية:

لقد حددنا أن استخدام markdownit لأي bbcode معقد كان أمرًا مزعجًا، لذلك نقوم بإدخال bbob في Discourse بدلاً من ذلك.

الانتقال إلى مسطرة markdownit سيسمح بتمكين/تعطيل القواعد عند بدء تحليل جديد، مما يوفر المرونة والسلوك مثل قواعد markdownit الأصلية.

على سبيل المثال، أريد دفع بعض قواعد bbcode ولكن لا أقوم بتمكينها افتراضيًا، ثم أقوم بتمكينها عندما أحتاجها (مثل المثال في الموضوع الرئيسي). حاليًا، هذا غير ممكن مع المسطرة المخصصة، ربما يمكن القيام بذلك ببعض الحيل (عبر بيئة التحليل أو تعديل قواعد المسطرة يدويًا)؟

[foo]
عدم الالتفاف داخل الشريط يجب ألا يتم ترميزه
[/foo]

[bar]
[foo]
الالتفاف داخل الشريط يجب أن يتم ترميزه
[/foo]
[/bar]

السبب في أنني لا أقوم بإنشاء قواعد markdownit أصلية بخلاف استخدام bbcode هو أن تنفيذ قواعد مثل bbcode سيكون صعبًا ويصعب صيانته، و bbcode موجود بالفعل.


عمل رائع، لكن حالة الاستخدام الخاصة بي مختلفة.

وأنا أحب الكود الخاص بك هنا والذي يلهمي بشأن مشاكل الاهتمام الأخرى.

إعجاب واحد (1)

هل تقصد معاملة كل bbcode مثل [wrap] كما يتم التعامل معها الآن؟ لفها في أقسام؟

أود أن أقول إن ما تصفه يبدو وكأنه قاعدة / إضافة markdownit مخصصة مقابل شيء يحتاج إلى تنفيذه بشكل أساسي؟