highlightjsにrpmモジュールを追加しますか?

どうやらhighlightjsは、コアメンテナーの不足により、新しい言語サポートを個別のリポジトリで追加するように求めています。(Policy: Discuss extras repository for additional languages · Issue #2149 · highlightjs/highlight.js · GitHub を参照してください)。

そのような個別のリポジトリの1つに、RPM specfile構文のハイライトを行うための GitHub - highlightjs/highlightjs-rpm-specfile があります。これをDiscourseに追加していただけますか? Fedoraにとって非常に役立つでしょう!

「いいね!」 1

デフォルト以外の言語を Theme component として追加してきました。これには専用のAPIフックも追加しました。

「いいね!」 3

はい、参考にできる例はありますか?

「いいね!」 2

すぐに1つパッケージ化しましたので、お試しいただけますでしょうか?

「いいね!」 5

ありがとうございます!!!そして、はい — 昼食のすぐ後です。 :slight_smile:

「いいね!」 3

はい、動作しているようです!

私の見たところ、自動検出して動作するようです。もし

```rpm-specfile
```

が動作するようにするには、「強調表示された言語」サイト設定に rpm-specfile を入力する必要があるようです。それは正しいですか?

また、そこに rpm と入力すると、それも動作します。これは予期されたことですか、それとも私が望んでいることが間違った理由で起こっていることの1つですか? :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で提供されたリンクから定義をコピー&ペーストしてDiscourse互換の#theme-componentに貼り付けただけなので、その機能は元のままです。

「いいね!」 1

あなたの[1] リポジトリでコードにそれらが見られるため、機能することを期待していますが、Discourseではハイライトされていません。ハイライターモジュール、Discourseでのその実装、またはテーマコンポーネントの問題なのかどうかはわかりません。


  1. これは「あなたのリポジトリだ」といった非難の意図ではありません…明確にしておきます :slight_smile: ↩︎

(念のため、確認する機会が得られたときに何が機能するはずかを確認するために、これをブックマークしておきます。)

「いいね!」 1

@falco — これを確認する時間が取れました。Firefox の組み込みインスペクターを使用すると、hljs-typehljs-keyword などのクラスを持つスパンが正しく追加されていることがわかります。しかし、スタイル側を見ると、.hljs はありますが、.hljs-type はありません。機能している .hljs-keyword.hljs-comment だけがあるようです。

また、.hljs-string も機能します。しかし、css の他のものの一部が見られますが、何が起こっているか何か分かりますか?

参考までに、これはまだ機能しません。(悲しい顔文字)

「いいね!」 1

.hljs-type クラスのコアのスタイリングが欠けていたようです。この PR で整理しました。

正確な色はテーマによって異なりますが、RPM ファイルの例を以下に示します。

「いいね!」 3

はい、今動作します。ありがとうございます!

「いいね!」 1

このトピックは3日後に自動的に閉じられました。新しい返信はもう許可されていません。