مكون سمة اقتباس سريع

:information_source: الملخص ببساطة: يغير سلوك أزرار “الرد على المنشور” (وليس الرد على الموضوع) لذكر منشور تلقائيًا بنقرة واحدة.
:hammer_and_wrench: رابط المستودع GitHub - merefield/discourse-quick-quote: A Theme component to change the behaviour of the Post Reply buttons to quote a Post automatically in a single click. · GitHub
:open_book: دليل التثبيت Installing a theme or theme component
:heart: الرعاية يُرجى النظر في أن تصبح راعيًا مستمرًا لأعمالي مفتوحة المصدر بمستوى يناسب مواردك أو موارد مؤسستك واحتياجاتها، لضمان حصول هذا المكون على الصيانة التي يستحقها ومواصلة عمله لموقعك في المستقبل.
هل تستمتع بهذا المكون الخاص بالقالب؟ يرجى :star: له على GitHub

ما الذي يفعله

ببساطة: يغير سلوك أزرار “الرد على المنشور” (وليس الرد على الموضوع) لذكر منشور تلقائيًا بنقرة واحدة.

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

نظرًا لأن الاقتباس الآلي يُوجَّه إلى المحرر، يمكنك تعديله يدويًا من هناك إذا رغبت في ذلك (لكن هذا نوعًا ما يُفقد جزء “السرعة” :snail:).

لا يغير سلوك زر الرد على الموضوع في الأسفل، ولا أداة الاقتباس.

السبب

  • يشعر البعض أن عملية الاقتباس تتطلب نقرات كثيرة في التثبيت الأساسي. وتُعد هذه مشكلة أكبر على الأجهزة التي تعمل باللمس.

  • يُعد “الاقتباس التلقائي” مفيدًا بشكل خاص عندما يكون الرد على منشور قديم نسبيًا. يقوم هذا الإضافة بعد عدد المنشورات التي سبقت المنشور المرجعي، ويقوم تلقائيًا بإدراج اقتباس إذا كان المنشور قديمًا بما يكفي. وهذا يساعد الناس على فهم السياق بسرعة أكبر.

  • يعيد “الاقتباسات المتداخلة”! (مفعل افتراضيًا: غير مفعّل) قد يكون المكون جذابًا بشكل خاص لأولئك المعتادين على بعض منصات المنتديات “التي تعود إلى الأسلوب القديم” :space_invader:، وهو مسألة ذوق — إذا كنت تحب رؤية اقتباسات متداخلة، فستتمكن من ذلك الآن، ولكن انتبه لتأثيرها على المساحة!

لا تحتاجه إذا

كنت راضيًا تمامًا عن سلوك الرد على منشورات الموضوع كما هو عليه افتراضيًا. أنا كذلك، لكن من الرائع وجود خيارات، أليس كذلك؟

الإعدادات

quick_quote_post_location_threshold: “عدد المنشورات السابقة قبل تفعيل الاقتباس السريع.”

تحكم في مدى قِدم المنشور المطلوب قبل تفعيل الاقتباس التلقائي. يتجنب الاقتباس غير الضروري للمنشورات الحديثة.

quick_quote_remove_links: “إزالة جميع الروابط (بما في ذلك الصور) من الاقتباسات”

ينظف الأمور ويحسن استخدام المساحة.

quick_quote_remove_prior_quotes: “إزالة جميع الاقتباسات السابقة (المتداخلة)”

مفعل افتراضيًا. قم بإلغاء تفعيل هذا الإعداد للحصول على تجربة متداخلة كلاسيكية نهائية. (آسف جيف! :wink: )

quick_quote_remove_contiguous_new_lines: “إزالة أسطر جديدة غير ضرورية”

الأسطر الجديدة مبالغ في تقديرها.

quick_quote_character_limit: “حد أحرف الاقتباس (يستخدم آخر x حرف إذا تجاوز الطول الكلي)”

الاقتطاعات بسيطة جدًا :slight_smile: عد إلى أداة الاقتباس إذا كنت بحاجة إلى اقتباس أكثر دقة (والتي لا يتم تجاوزها بواسطة الإضافة).

القيود المعروفة

لا يدعم وضع النص الغني الجديد في المحرر. يبدو أن التحديثات الأساسية قد حلّت المشكلة؟

المكون الخاص بالقالب بسيط نسبيًا في طريقة تعامله مع تحضير الاقتباس. بعض الإعدادات تعمل معًا بشكل أفضل من غيرها، وعلى المسؤول تحديد ما يناسبه. تم تجنب بعض التعقيدات، مثل وجود حد لأحرف الاقتطاع الذي قد يقسم الكلمات إلى نصفين. يتم تبسيط التنسيق بإزالة الوسوم لتجنب خطر قطع الوسم والتسبب في تلف — مرة أخرى، هذا لتحقيق البساطة. يعتمد معالجة الاقتباس بشكل كبير على التعبيرات النمطية، وليست جميعها آمنة تمامًا، لكنها تعمل “بشكل كافٍ”. قد يتم تحسين هذه التعبيرات خلال عمر المكون الخاص بالقالب.

تم نقل هذا مؤخرًا من الإضافة المماثلة الخاصة بي، ولكن قد تكون هناك أخطاء ظهرت أثناء هذه العملية. يُرجى إعلامي إذا واجهت أيًا منها.

راعيتي والإلهام وراء هذا المكون

يرجى شكر @Merlls_Rizzini على رعاية هذا العمل. الوظيفة هي مزيج من أفكارنا معًا، وهي مستوحاة جزئيًا من هذا المنشور من @eesty.

ملاحظة: كان هذا مبنيًا على إضافة “السرعة في الاقتباس” الخاصة بي، لكنه انتقل إلى تنسيق مكون القالب لمنح مديري المواقع المزيد من الوصول إذا كانوا مستضافين من طرف ثالث. اقترح @sam تحويله إلى مكون قالب لأنه لا يحتوي على مكون خلفي، وقدم @sully الدفعة النهائية لنقله بعد أن أنشأ نسخة قالب خاصة به.

كل التعليقات موضع ترحيب.

37 إعجابًا

لو لم أقرأ ذلك بسرعة، لكان قد استغرق مني وقتًا أقل في محاولة فهم قيمته،

أعجبني :+1:

3 إعجابات

سيكون رائعًا لو أمكن استخدام هذا حسب الفئة، وسنحبّذ وجوده في فئة الأسئلة والأجوبة (AMA) لدينا، ولكن بخلاف ذلك سيكون الأمر فوضويًا بعض الشيء.

3 إعجابات

يبدو أن إيداع Git حديث في ملف topic.js قد عطّل مكون السمة هذا:

لم يعد Quote.build() موجودًا؛ ويبدو أنهم يستوردون ويستخدمون دالة buildQuote() بدلاً من ذلك. لم ينجح التبديل السريع؛ وسأحتاج إلى التفكير في الأمر قليلاً أكثر.

إعجابَين (2)

خطأي! لم يكن إضافة الاقتباس السريع في قائمة all-the-plugins، لذا لم ألاحظه عند البحث عن أخطاء رجعية. سأضيفه وقد فتحت طلب دمج (PR) بإصلاح للإضافة:

(بالإضافة إلى إصلاح صغير للإعدادات: FIX: Setting descriptions were swapped by cvx · Pull Request #2 · merefield/discourse-quick-quote · GitHub)

5 إعجابات

رائع، شكرًا يا يارك (وشكرًا على التبليغ @sully!)، تم الدمج! (وشكرًا على إصلاح الخطأ!)

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

أنا أستخدم هذا القالب، قمت بتحديثه أمس وحصلت على شكاوى اليوم.

عند محاولة إنشاء رد لتوضيح الأمر، وجدت أنه إذا كنت أردت الرد على منشور ثم انتقلت إلى منشور آخر أردت الرد عليه بالكامل، فلا يمكنني ذلك؛ فالبقاء على المنشور الذي بدأت به.

في السابق، كان التبديل يعمل، لكن اقتباس الرد السريع لا يزال يعمل.

من أجل فهمي الكامل، هل تمانع في تفصيل ذلك أكثر قليلاً… هل يمكنك شرحه بخطوات أدق وأين تعتقد أنه يحدث الخطأ؟

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

نعم، يتم مناقشته الآن، ومن المرجح أن تكون عدم القدرة على الرد على أي منشور أبعد من ثلاثة منشورات واحدة من تلك المشاكل المزعجة التي تتطلب شرحًا متكررًا.

الاقتباس السريع رائع، لكن هل يمكن استعادة وظيفة الرد؟

ما زلتُ لا أفهمك تمامًا. هل يمكنك التوسع في الشرح وتقديم خطوات أكثر تفصيلاً؟

لقد قمت بإعادة اختبار المكوّن محليًا ويبدو أنه يعمل بشكل صحيح؟

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

لا مشكلة، وربما أساءت فهم الدالة أو هناك إغفال آخر

ولكن في الوقت الحالي، إذا صعدت في موضوع ما بمقدار 4 منشورات، فإن زر الرد يكون معطلاً،

تم ذكر هذا فقط اليوم، بينما قمت بالتحديث أمس

لذا أعتقد أن الأمر مرتبط بذلك، ربما هناك إعداد معين متضمن؟

هل يمكنك إظهار إعدادات المظهر (Theme) لديك؟

كما يمكنك أيضًا تأكيد أنك تستخدم أحدث إصدار من Discourse وأحدث إصدار من مكون المظهر (Theme Component)؟

أيضًا، هل يمكنك إخباري إذا كنت ترى أي أخطاء في جافا سكريبت (Javascript) في وحدة التحكم (Console)؟

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

في موضوع عشوائي

image

هذا الموقع لا يعرض الإصدار مثل موقعي المستضاف ذاتيًا

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

شكرًا لك.

حسنًا، لقد قمت بإعداد إعداداتي بنفس الطريقة ولا يمكنني تكرار المشكلة. زر “رد” الموجود في 4 منشورات سابقة يعمل بشكل جيد.

ومع ذلك، هذا مشبوه للغاية بالنظر إلى إعداداتك. (الرقم ‘3’ يلفت الانتباه!)

أنا على أحدث إصدار من Discourse و TC. تأكد من أن كلاهما محدث بالكامل.

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

عرض المصدر يقول Discourse 2.5.0.beta2

و TC هل هي مكون سمة؟

تغيير 3 إلى 5 يسمح لي بالرد حتى المنشور الخامس

إذن هل أفعل 9999 وهل ذلك يعطل أي وظيفة أخرى؟

حسنًا، لقد قمت بتكرار مشكلتك على موقع إنتاجي…

v2.5.0.beta2 +459

كانت التغييرات التي قدمها جاروك موجَّهة تحديدًا لأحدث إصدار من Discourse.

هل من الممكن أن تكون على إصدار من Discourse يسبق تغييراته؟ إذا كان الأمر كذلك، فلن يعمل مع أحدث إصدار من TC. يجب عليك ترقية كلاهما أو عدم ترقية أي منهما.

علاوة على ذلك، لقد قمت للتو بترقية ذلك الموقع (إلى أحدث إصدار +495) وكل شيء على ما يرام مرة أخرى.

إذن نعم، تحتاج إلى ترقية Discourse الخاص بك بعد التزامنه.

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

هل يمكنك تزويدي بأي كود CSS يمكنني استخدامه للرجوع؟

ثم سأقوم بإزالته بعد تحديث موقعي؟

شكرًا لك :slightly_smiling_face:

أو

@team هل موقعي جاهز للتحديث قريبًا؟

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

للأسف، لا أعتقد أنه يمكنك تثبيت إصدار محدد من مكون السمة أيضًا (نفس الشيء!).

لذا، اقتراحي هو، نعم، غيّر الرقم 3 إلى 9999 وانتظر حتى يصبح نظام Discourse لديك أكثر تحديثًا.

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

يمكننا ذلك، لا تقلق، وشكرًا للتعاون، فهو مُقدَّر جدًا :+1:

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

مرحبًا يا جميع متحدثي

3 إعجابات