إضافة وحدة rpm إلى highlightjs؟

فيما يبدو أن highlightjs، بسبب نقص المشرفين الأساسيين، يطلب إضافة دعم لغات جديد عبر مستودعات منفصلة. (انظر Policy: Discuss extras repository for additional languages · Issue #2149 · highlightjs/highlight.js · GitHub).

أحد هذه المستودعات المنفصلة هو https://github.com/highlightjs/highlightjs-rpm-specfile، لتسليط الضوء على بناء جملة ملف مواصفات RPM. هل يمكنك إضافة ذلك إلى Discourse؟ سيكون ذلك مفيدًا للغاية لفيدورا!

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

لقد كنا نضيف لغات غير افتراضية كـ #theme-component، بل وأضفنا خطاف API مخصصًا لذلك.

3 إعجابات

حسنًا، رائع - هل هناك مثال يمكنني الاستفادة منه؟

إعجابَين (2)

لقد جهزت لك واحدة بسرعة، هل يمكنك تجربتها؟

5 إعجابات

شكرا لك!!! ونعم - مباشرة بعد الغداء. :slight_smile:

3 إعجابات

نعم، يبدو أنه يعمل!

على حد علمي، يبدو أنه يكتشف ويعمل تلقائيًا. إذا أردت

أن يعمل، يبدو أنني بحاجة إلى وضع rpm-specfile في إعداد الموقع “اللغات المميزة”. هل هذا صحيح؟

أيضًا، إذا وضعت rpm هناك، فإن ذلك يعمل أيضًا. هل هذا متوقع، أم أنها إحدى تلك الأشياء حيث يحدث ما أريده لسبب خاطئ؟ :slight_smile:

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

حسناً، لكن لا يبدو أن هذا مكتمل… أحصل على اللون الغامق لأقسام مثل %description و %prep، واللون الأرجواني للماكرو مثل %{?dist}، والتعليقات # تتحول إلى اللون الرمادي المائل. حتى الآن كل شيء على ما يرام.

ولكن بالنظر إلى https://github.com/discourse/discourse-highlightjs-rpm/blob/main/javascripts/lib/rpm-highlightjs.js، أتوقع أن يتم تمييز Name: و Release: وما إلى ذلك بطريقة ما أيضاً، وكذلك %if و %endif — ولكن هذه ليست كذلك.

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

هل هذه التعليقات موجهة إلى تكامل Discourse أم إلى جودة المُميِّز نفسه؟

لقد قمت فقط بنسخ ولصق التعريف من الرابط الذي قدمته في OP إلى Theme component متوافق مع Discourse، لذا فإن قدراته لا تزال هي الأصلية.

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

أرى هذه الأشياء في الكود الموجود في المستودع الخاص بك[1]، لذلك أتوقع أن تعمل، لكنها لا تبدو مميزة في DIscourse. لا أعرف ما إذا كانت هذه مشكلة في وحدة التمييز، أو تطبيق Discourse لذلك، أو مكون السمة.


  1. هذا ليس المقصود منه أن يكون بيان لوم، مثل “إنه المستودع الخاص بك”… فقط للتوضيح :slight_smile: ↩︎

(للتسجيل، لقد قمت بوضع إشارة مرجعية لهذا للتحقق مما يجب أن يعمل عندما تتاح لي الفرصة.)

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

@falco — كان لدي بعض الوقت للنظر في هذا. باستخدام أداة الفحص المدمجة في فايرفوكس، يمكنني رؤية أنها تضيف بشكل صحيح عناصر span بفئات مثل hljs-type و hljs-keyword وما إلى ذلك. ولكن إذا نظرت إلى جانب الأنماط، أرى .hljs ولكن ليس .hljs-type — فقط .hljs-keyword و .hljs-comment (تلك التي تعمل) تبدو موجودة.

حسنًا، .hljs-string يعمل أيضًا. لكنني أرى بعض العناصر الأخرى في css … هل لديك أي فكرة عما يحدث؟

على أي حال، هذا لا يزال لا يعمل. (وجه حزين)

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

يبدو أن core كان يفتقد للتنسيق الخاص بفئة .hljs-type. لقد قمت بتنظيف الأمور في طلب السحب هذا.

ستعتمد الألوان الدقيقة على السمة الخاصة بك، ولكن إليك مثال لملف RPM:

3 إعجابات

نعم، يعمل الآن. شكراً لك!

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

تم إغلاق هذا الموضوع تلقائيًا بعد 3 أيام. لم يعد يُسمح بالردود الجديدة.