هل يجب أن يدعم Checklist صيغة مربعات الاختيار الخاصة بـ GFM؟

لاحظت وجود بعض قوائم المراجعة الموجودة على نسختي التي كانت تعرض بناء الجملة القديم باستخدام النجمة. قررت تشغيل مهمة rake المذكورة أعلاه، لكنها لم تُحدَّث.

بحسب ما أذكر، تم ترحيل معظم قوائم المراجعة الأخرى الأخرى صامتًا إلى بناء الجملة الجديد أثناء ترقية Discourse خلال الأسابيع القليلة الماضية. لكن يبدو أن هناك بعض الحالات الغريبة التي تركتها مهمة rake دون معالجة. هل لدى أحدكم أي فكرة عن سبب ذلك؟

يسعدني تقديم المزيد من المعلومات إذا كان ذلك يساعد في استكشاف المشكلة.

تحديث: يبدو أن أحد هذه المنشورات كان يحتوي على بناء الجملة [\*] (الذي يتم إنشاؤه تلقائيًا عند تحديد مربع الاختيار من واجهة المستخدم). لذا ربما تكون هذه هي الحالة التي لم تلتقطها مهمة rake؟

4 إعجابات

@k4rtik، أظن أن مهمة Rake تُغيّر مربعات الاختيار الموجودة في بداية السطر فقط.

جميع الصفحات التي أراها تحتوي على مربعات اختيار في بداية السطر. السؤال هو ما إذا كانت المهمة تغير كلاً من [*] و[\*] أم فقط الصيغة الأولى؟

يجب أن تكون هذه السطر إذا كانت مربع الاختيار في أول ثلاثة أحرف من السطر. لقد تحققت للتو من التعبير النمطي ويبدو أنه يطابق بشكل صحيح.

3 إعجابات

ألا تبدأ قوائم المهام دائمًا برمز نقطة (* أو -) أولاً [1, 2]، لذا يجب أن يطابق التعبير النمطي:
- [\*]
وهو ما يعني أن هذا يُتجاوز لأنه لم يعد في أول ثلاثة أحرف.

لقد وجدت لاحقًا حالات أخرى لدي فيها مربعات اختيار متداخلة أيضًا. لذا فإن افتراض أنها في بداية السطر سيتجاوز أيضًا العديد من حالات الاستخدام الصالحة.

ملاحظة جانبية: أدركت أن المنشور الأصلي هنا لا يستخدم بناء جملة قوائم المهام في GFM (ولكن فقط اعتبارًا من 4 أغسطس مع التغيير في الويكي بواسطة @sam)، لكنني كنت أستخدم ذلك منذ فترة طويلة. مواصفة CommonMark التي يبدو أن Discourse تشير إليها في توثيق Markdown لا تدعم قوائم المهام بعد. هل تقوم Discourse باختراع متغير خاص بها من بناء جملة قوائم المهام؟ أفضل الالتزام ببناء جملة GFM الشائع على نطاق واسع بدلاً من تنويعه أكثر.

يرجى توفير رابط لمواصفات بناء جملة قائمة المهام في GFM؟

تمت إضافة الرابط أعلاه، ولكن إليك الرابط مرة أخرى:

يبدو لي أن الأمر صحيح هنا، سأقوم بلصق المثالين من الرابط أعلاه:

- [ ] foo
- [x] bar

ينتج عنه

  • foo
  • bar

و

- [x] foo
  - [ ] bar
  - [x] baz
- [ ] bim

ينتج عنه

  • foo
    • bar
    • baz
  • bim

لذلك، لا أدري ما المشكلة بالضبط؟ هل يمكنك التوضيح أكثر؟

عذرًا، يبدو هذا مربكًا لأن الأمور تغيرت مؤخرًا بشكل كبير. أنا أشير إلى لقطة الشاشة المعروضة في صفحة الإضافة التي لا تُظهر بناء جملة قائمة المهام النقطية (والتي يبدو أن مهمة rake migrate لا تدعمها):

إليك لقطة شاشة للفرق (diff) التي أجرت هذا التغيير:

من الصعب رؤيتها، لكن الجانب الأيسر يحتوي على مربعات اختيار نقطية، بينما يزيل الجانب الأيمن الحالي النقاط، مما يشير إلى بناء جملة مختلف افتراضيًا لمربعات الاختيار للمستخدمين الجدد.


مضاف لاحقًا:

بمعنى آخر، يتم دعم جميع الصيغ التالية الآن باستخدام إضافة قائمة المهام:

[] first
-[] second
- [] third

يتم عرضها على النحو التالي:

first
- second

  • third

بينما يسمح مواصفات قائمة المهام في GFM فقط بالمتغير الثالث (بما أن قائمة المهام هي قائمة):

عنصر قائمة المهام هو عنصر قائمة تكون فيه الكتلة الأولى عبارة عن فقرة تبدأ بـ محدد عنصر قائمة مهام وبمسافة بيضاء واحدة على الأقل قبل أي محتوى آخر.

يتكون محدد عنصر قائمة المهام من عدد اختياري من المسافات، وقوس مربع يسار ([ )، إما مسافة بيضاء أو الحرف x بحروف صغيرة أو كبيرة، ثم قوس مربع يمين (]).

إذا أراد المرء الامتثال لمواصفات امتداد قائمة مهام GFM، فلا ينبغي السماح بالصيغتين الأولى والثانية ولا الترويج لهما في توثيق الإضافة.

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

دعم حالة GFM لا يعني عدم دعم الحالات الأخرى. لو قمت باستقراء هذا المنطق، لكان ذلك يستلزم إجراء العديد من التغييرات السلبية على الطريقة التي يتعامل بها Discourse مع جميع أنواع تنسيقات Markdown.

هناك العديد من التطبيقات التي تولّد مربعات اختيار بتنسيق Markdown، ومن المريح جدًا القدرة على لصق القوائم في منشورات Discourse. ما هي القيمة في كسر التوافق؟

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

إحدى المشاكل الكبيرة في Markdown هي عدم وجود معيار موحد (CommonMark يعمل على إصلاح ذلك)، مما أدى إلى وجود مجموعة متنوعة من التطبيقات غير المتوافقة. عندما يكون هناك بالفعل امتداد قائمة مهام شائع جدًا على شكل GFM، فلماذا الحاجة إلى اختراع امتداد آخر؟ لقد كنتُ على اقتناع بأن مطوري Discourse ملتزمون بـ CommonMark وبمعايرة Markdown.

مشكلتي ليست في دعم بناء جملة بديل؛ فأنا أؤمن بقانون بيستل (رغم اعتقادي أنه كان ينبغي أخذ المسألة المذكورة أعلاه في الاعتبار عند إجراء أحدث التغييرات في بناء الجملة، أي من [*] إلى [x])، بل مشكلتي في الترويج لبناء جملة غير متوافق (مع GFM) في وثائق الإضافة، وعدم دعم هجرة سهلة لبناء جملة قائمة المهام المشابهة لـ GFM إلى التنسيق الأحدث، مما أدى إلى تعطيل العديد من صفحاتي في مثيل Discourse الخاص بي، راجع موضوعي الأصلي (OP).

3 إعجابات

لقد قمنا للتو بإجراء التغيير لتبسيط بناء الجملة. يمكنك استخدام [] في أي مكان في المنشور لإنشاء مربع اختيار. لا أتوقع أن نقوم بتغييره مرة أخرى في أي وقت قريب. ومع ذلك، فأنت مدعو تمامًا لإنشاء نسخة من الإضافة لتنفيذ ما ترغب فيه.

إعجابَين (2)