| ملخص | سيسمح لك DiscoTOC بإنشاء فهرس تفاعلي لمحتويات مواضيعك بنقرة واحدة! | |
| معاينة | معاينة على منشئ سمات Discourse | |
| رابط المستودع | https://github.com/discourse/DiscoTOC | |
| جديد في سمات Discourse؟ | دليل المبتدئين لاستخدام سمات Discourse |
تثبيت مكون السمة هذا
عينات
سطح المكتب
جوال
الميزات
toc = فهرس المحتويات
-
يولد الفهرس بالكامل تلقائيًا عبر زر في قائمة إعدادات محرر المنشورات
-
سيظهر الفهرس دائمًا على الشاشة - يتحرك مع المحتوى مثل عنصر تقدم الموضوع
-
أثناء التمرير عبر الأقسام في الموضوع، سيتم تعيين العنصر النشط في فهرس المحتويات ليكون نشطًا (تمييز أزرق)
-
كل إدخال في الفهرس يربط إلى نقطة الارتساء الخاصة بالترويسة، لذا يمكنك أيضًا ربط قسم معين من موضوع آخر أو منشور
-
النقر على أي رابط في الفهرس سيوجه المتصفح للتنقل إلى القسم ذي الصلة (تمرير سلس)
-
في المواضيع التي تحتوي على ردود، زر المحتويات / الجدول الزمني يسمح للقراء بالتبديل بين الفهرس والجدول الزمني العادي للموضوع. يتم حفظ الاختيار في المتصفح
-
يعمل مع إضافة Discourse Docs
-
دعم اختياري لفهارس المحتويات في الردود، وليس فقط في المنشور الأول
-
دعم اللغات من اليمين إلى اليسار (RTL)
كيف يعمل؟
باختصار، يبحث عن الترويسات في المواضيع التي تم وضع علامة عليها لإنشاء فهرس (عبر زر المحرر) وإذا اتضح أن الموضوع الحالي معتمد، فإنه يأخذ جميع الترويسات ويضعها في الفهرس (متداخلة حسب مستويات الترويسات) - هذا يعني أن تنسيق Markdown الخاص بك يجب أن يكون صحيحًا نحويًا.
# الترويسة 1
## الترويسة 2
### الترويسة 3
#### الترويسة 4
##### الترويسة 5
أنت حر في العودة والتقدم في مستويات الترويسات، ولكن يجب أن يكون الترتيب صحيحًا
# الترويسة 2
## الترويسة 3
## الترويسة 3
### الترويسة 4
## الترويسة 3
# الترويسة 2
إلخ...
بعض الأشياء التي يجب معرفتها حول الترويسات المتوافقة
- يتم تضمين
h1إلىh5.h6غير مدرج - يتم تجاهل الترويسات داخل الاقتباسات، لذا لن تلوث الاقتباسات الفهرس
- يظهر الفهرس فقط إذا كان المنشور يحتوي على عدد من الترويسات يساوي على الأقل إعداد الحد الأدنى لترويسات الفهرس (3 افتراضيًا)
كيف تعمل الروابط في الفهرس؟
تحتوي كل ترويسة في منشور مطبوخ على نقطة ارتساء على شكل p-<معرف المنشور>-<معرّف الترويسة>-<الرقم> — وهي الهدف خلف ترويسة a. يربط DiscoTOC إلى نقاط الارتساء هذه بدلاً من اختراع نقاط خاصة به.
لأن نقاط الارتساء هذه تتضمن موضع الترويسة في المنشور، فإنها تتغير إذا أعدت ترتيب الترويسات أو غيرت عناوينها. إذا كنت تربط إلى أقسام من مكان آخر، يمكنك إضافة نقاط ارتساء مسماة مستقرة فوق الترويسة:
<div><a name="my-section"></a></div>
## قسم الخاص بي
ثم اربط إلى /t/your-topic-slug/1234#my-section. يسمح Discourse بـ <a name="..."> في المنشورات. ستستخدم إدخالات DiscoTOC الخاصة بهما لا تزال نقاط الارتساء الأساسية للترويسات، لكن نقاطك ستستمر في العمل بغض النظر عن التعديلات.
الإعدادات
| الاسم | الوصف |
|---|---|
| الحد الأدنى لمستوى الثقة لإنشاء فهرس | يجب أن يكون لديك لرؤية زر الفهرس في المحرر |
| نص فهرس المحرر | النص الذي يظهر في المحرر للإشارة إلى أن الموضوع سيحتوي على فهرس محتويات |
| فئات الفهرس التلقائي | تفعيل الفئات تلقائيًا |
| علامات الفهرس التلقائي | تفعيل الفهرس تلقائيًا على المواضيع التي تحتوي على هذه العلامات |
| تمكين الفهرس للردود | يسمح بإنشاء الفهرس للردود. لا تتأثر فهارس الردود بإعدادات علامات الفهرس التلقائي وفئات الفهرس التلقائي ويجب إدراجها يدويًا |
| الحد الأدنى لترويسات الفهرس | الحد الأدنى لعدد الترويسات في الموضوع ليظهر فهرس المحتويات |
نص فهرس المحرر هو ما يظهر في معاينة المحرر للإشارة إلى أن الفهرس سيتم إنشاؤه:
الترجمات
| الترجمة | الافتراضي |
|---|---|
| table_of_contents | فهرس المحتويات |
| insert_table_of_contents | إدراج فهرس المحتويات |
| jump_bottom | الانتقال إلى النهاية |
| toggle_toc.show_timeline | الجدول الزمني |
| toggle_toc.show_toc | المحتويات |
table_of_contents: "فهرس المحتويات"
يُستخدم هذا للزر الذي يفتح الفهرس على الجوال
insert_table_of_contents: "إدراج فهرس المحتويات"
يُستخدم هذا كنص لزر الفهرس في قائمة إعدادات المحرر
toggle_toc.show_toc: "المحتويات"
toggle_toc.show_timeline: "الجدول الزمني"
هذه تسميات الزر الذي يبدل بين فهرس المحتويات والجدول الزمني للموضوع
كيف أنشئ فهرسًا؟
- اكتب موضوعًا بترويسات صحيحة نحويًا
- انقر على زر الفهرس في قائمة إعدادات المحرر. بشكل افتراضي يظهر فقط في المنشور الأول للموضوع؛ فعّل إعداد تمكين الفهرس للردود لاستخدامه في الردود أيضًا
- استمتع بالنتيجة.
ماذا يحدث لعنصر تقدم الموضوع عندما يحتوي الموضوع على فهرس؟
لا يوجد مساحة لإظهار الاثنين في نفس الوقت، لذا في موضوع يحتوي على فهرس، يتم إخفاء عنصر تقدم الموضوع أثناء وجودك في المنشور الأول، وتظهر الفهرس بدلاً منه. بمجرد التمرير عبر المنشور الأول، يتم استبدال الفهرس بعنصر تقدم الموضوع العادي أثناء قراءة الردود. (مع تفعيل تمكين الفهرس للردود، يظهر رد يحتوي على فهرس خاص به بدلاً من ذلك.)
في المواضيع التي تحتوي على أكثر من منشور واحد، زر المحتويات / الجدول الزمني يسمح للقراء بالتبديل بين الاثنين، ويتم حفظ التفضيل في متصفحاتهم.
على الشاشات الضيقة، يفتح الفهرس كتراكب عبر زر في منطقة تقدم الموضوع.
هل هناك أي سلبيات لاستخدام هذا المكون؟
تحدث معظم الأشياء على جانب العميل، لذا يمكنك إزالة المكون في أي وقت وستظهر منشوراتك كما كانت من قبل. الشيء الوحيد الذي يمس محتواك هو زر المحرر: يلف المنشور في علامة <div data-theme-toc="true">، وهو كيف يعرف المكون أن المنشور يجب أن يحتوي على فهرس. إذا قمت بإلغاء تثبيت المكون، تبقى هذه العلامة في المنشور ولكن ليس لها تأثير مرئي.
القيود
لا يتم تضمين ترويسات h6 والترويسات داخل الاقتباسات في الفهرس.
الاعتماد
بدأ هذا كشوكة قوية لمكتبة Greg Franko tocify.js، وتم إعادة كتابته منذ ذلك الحين كمكونات Ember أصلية. لا توجد تبعيات خارجية أو طلبات.
شكر كبير لـ @erlend_sh على الكثير من الملاحظات القيمة ولـ @david لمساعدته في الترجمات.
نستضيف لك؟ مكونات السمات متاحة للاستخدام في خططنا Pro و Business و Enterprise.








