دليل شامل لإنشاء أقسام Markdown قابلة للطي لـ GitHub والوثائق
ما هي أقسام Markdown القابلة للطي؟
يتميز Markdown ببساطته في تنسيق المستندات النصية وملفات README وتوثيق المطورين. ومع ذلك، تفتقر بناء جملة Markdown القياسية إلى الدعم الأصلي لعناصر الأكورديون التفاعلية أو مفاتيح تبديل المحتوى القابل للطي. لحل هذه المشكلة دون الاعتماد على مكتبات JavaScript الثقيلة، تدعم المحللات الحديثة لـ Markdown وسوم HTML5 المضمنة - وتحديداً عنصر الكشف <details> وعنصر التسمية التوضيحية <summary>.
من خلال الاستفادة من مولد أقسام Markdown القابلة للطي المجاني عبر الإنترنت، يمكنك فوراً تحويل المواصفات الفنية الطويلة ومخرجات السجلات المفصلة وأقسام الأسئلة الشائعة وعينات الكود إلى حاويات منسدلة قابلة للتوسيع. هذا يحسن قابلية قراءة المستند وتجربة المستخدم دون المساومة على المحتوى الأساسي.
تفكيك بناء جملة HTML5 Details و Summary
يعتمد أساس أي مفتاح أكورديون في Markdown على وسمي HTML قياسيين:
- وسم المغلف
<details>: يعمل كحاوية تفاعلية تضم كلاً من عنوان التبديل المرئي والمحتوى القابل للتوسيع المخفي. تتيح إضافة الخاصية الاختياريةopen(<details open>) توسيع الحاوية افتراضياً عند تحميل الصفحة أو ملف README. - وسم العنوان
<summary>: يحدد العنوان المرئي أو البطاقة التي ينقر عليها المستخدمون لتبديل رؤية المحتوى المخفي. يمكن غالباً تضمين التنسيقات المخصصة وتنسيق النصوص و Markdown المضمن داخل هذا العنصر أو بجانبه.
مثال على هيكل بناء الجملة القياسي:
<details>
<summary>انقر هنا لعرض تعليمات الإعداد التفصيلية</summary>
### المتطلبات الأساسية
- Node.js v18+
- npm أو yarn
قم بتشغيل الأمر التالي لتثبيت التبعيات:
```bash
npm install utiliome-tools
</details>
```[!IMPORTANT] نصيحة احترافية لمحللات Markdown: تتطلب معظم معالجات Markdown (مثل GitHub Flavored Markdown) سطرًا فارغاً بعد وسم الإغلاق
</summary>قبل بدء محتوى النص الأساسي. بدون هذا السطر الفارغ، سيتم عرض بناء جملة Markdown المتداخلة مثل العناوين (###) أو القوائم (-) أو كتل الكود (```) كنص عادي غير منسق بدلاً من عناصر HTML المعالجة.
حالات الاستخدام الشائعة للمحتوى القابل للتوسيع والطي
1. تنظيف ملفات GitHub README
تتطلب المستودعات غالباً تعليمات إعداد تفصيلية، وقوائم متغيرة للبيئة، وسجلات التغيير، ومعلمات مرجع API. إن وضع كل هذه المعلومات في صفحة واحدة يؤدي إلى التمرير اللانهائي. يؤدي غلاف سجلات الأوامر الطويلة وتكوينات البيئة داخل كتل <details> القابلة للطي إلى الحفاظ على ملف README نظيفاً وسهل الوصول.
2. بناء صفحات أسئلة شائعة نظيفة
تناسب الأسئلة الشائعة بشكل طبيعي تخطيط الأكورديون. يتيح استخدام وسوم HTML القابلة للطي للمستخدمين مسح الأسئلة عالية المستوى بسرعة وتوسيع الإجابات المحددة المتعلقة باستفسارهم فقط.
3. إخفاء نتائج الاختبارات وتتبعات المكدس
عند نشر وصف طلبات السحب أو تقارير المشكلات على منصات مثل GitHub أو GitLab أو Bitbucket، فإن لصق تتبعات المكدس الضخمة أو مخرجات الاختبارات الآلية يمكن أن يربك خيوط المناقشة. يغلف السجلات في قسم مطوي تفاصيل التشخيص الكاملة للمراجعين دون إغراق تدفق المحادثة الرئيسي.
4. تنظيم التوثيق التفاعلي وقواعد المعرفة
تعرض منصات التوثيق مثل Docusaurus و MkDocs و Hugo و Jekyll و GitBook عناصر تفاصيل HTML بسلاسة. يمكنك بسهولة تصنيف الدروس التعليمية متعددة الخطوات، والحالات الخاصة المتقدمة، وقصاصات الكود في لوحات قابلة للطي لتقليل الحمل المعرفي على القراء.
دليل توافق المنصات
| المنصة / المحلل | دعم <details> القابل للطي |
دعم Markdown داخل Details | ملاحظات |
|---|---|---|---|
| GitHub (GFM) | دعم أصلي كامل | مدعوم بالكامل (يتطلب سطرًا فارغاً بعد <summary>) |
مثالي لـ README.md وأوصاف PR والتعليقات. |
| GitLab | دعم أصلي كامل | مدعوم بالكامل | تحليل قياسي لـ HTML details/summary. |
| Notion | كتلة قائمة تبديل أصلية | مدعوم عبر الاستيراد | يستورد بنظافة أو يلصق ككتل تبديل. |
| Obsidian | دعم أصلي و HTML | مدعوم بالكامل | يدعم كل من مفاتيح الإضافات ووسوم HTML القياسية. |
| Azure DevOps | دعم جزئي | دعم أساسي | يدعم وسوم التفاصيل البسيطة في صفحات الويكي. |
| Jekyll / Hugo | دعم أصلي كامل | يتطلب تكوين امتداد Markdown | يضمن مخرجات HTML صالحة عبر بناء المواقع الثابتة. |
أفضل الممارسات لتصميم أكورديون Markdown
- استخدم عناوين ملخص واضحة وقابلة للتنفيذ: تجنب العناوين الغامضة مثل "مزيد من المعلومات". بدلاً من ذلك، استخدم عناوين صريحة مثل "عرض نتائج الاختبار الكاملة" أو "انقر لتوسيع قالب متغير البيئة".
- تضمين إشارات بصرية أو رموز تعبيرية: يمنح إضافة مؤشرات الأسهم أو أيقونات المجلدات أو الرموز التعبيرية (مثل
▶️و🔍و📋) داخل وسم الملخص ملاحظات مرئية فورية بأن القسم تفاعلي. - الحفاظ على المحاذاة الصحيحة للهيكل المتداخل: حافظ على مسافة بادئة نظيفة لكتل HTML أو Markdown المتداخلة لمنع كسر بناء الجملة عبر مترجمات Markdown الصارمة.