rpm Modul zu highlightjs hinzufügen?

Anscheinend bittet highlightjs aufgrund mangelnder Kern-Maintainer darum, dass neue Sprachunterstützungen über separate Repositories hinzugefügt werden. (Siehe Policy: Discuss extras repository for additional languages · Issue #2149 · highlightjs/highlight.js · GitHub).

Ein solches separates Repository ist GitHub - highlightjs/highlightjs-rpm-specfile, um die RPM-Specfile-Syntax hervorzuheben. Könnten Sie das bitte zu Discourse hinzufügen? Es wäre eine riesige Hilfe für Fedora!

1 „Gefällt mir“

Wir haben nicht standardmäßige Sprachen als Theme component hinzugefügt und sogar einen dedizierten API-Hook dafür hinzugefügt.

3 „Gefällt mir“

Okay, cool – gibt es ein Beispiel, das ich übernehmen kann?

2 „Gefällt mir“

Ich habe schnell eins für Sie verpackt, können Sie es ausprobieren?

5 „Gefällt mir“

Danke!!! Und, ja – direkt nach dem Mittagessen. :slight_smile:

3 „Gefällt mir“

Ja, scheint zu funktionieren!

Soweit ich das beurteilen kann, scheint es automatisch erkannt zu werden und zu funktionieren. Wenn ich möchte, dass

```rpm-specfile

funktioniert, muss ich rpm-specfile in der Website-Einstellung “Hervorgehobene Sprachen” angeben. Ist das richtig?

Wenn ich dort rpm angebe, funktioniert das auch. Ist das zu erwarten, oder ist es eines dieser Dinge, bei denen das gewünschte Ergebnis aus dem falschen Grund eintritt? :slight_smile:

1 „Gefällt mir“

Hmm, aber es scheint nicht vollständig zu sein… Abschnitte wie %description und %prep werden fett, Makros wie %{?dist} lila und #-Kommentare graue Kursivschrift. Bisher alles gut.

Aber wenn man sich https://github.com/discourse/discourse-highlightjs-rpm/blob/main/javascripts/lib/rpm-highlightjs.js ansieht, würde man erwarten, dass Name:, Release: usw. ebenfalls hervorgehoben werden, ebenso wie %if und %endif – aber das sind sie nicht.

1 „Gefällt mir“

Richten sich diese Kommentare an die Discourse-Integration oder an die Qualität des Highlighters selbst?

Ich habe die Definition aus dem Link, den Sie im OP angegeben haben, einfach in eine Discourse-kompatible Theme component kopiert, sodass die Fähigkeiten davon immer noch die ursprünglichen sind.

1 „Gefällt mir“

Ich sehe diese Dinge im Code in deinem[1] Repository, daher erwarte ich, dass sie funktionieren, aber sie scheinen in DIscourse nicht hervorgehoben zu werden. Ich weiß nicht, ob das ein Problem mit dem Highlighter-Modul, der Discourse-Implementierung davon oder der Theme-Komponente ist.


  1. dies ist keine Schuldzuweisung, wie „es ist dein Repository“ … nur um das klarzustellen :slight_smile: ↩︎

(Zur Information: Ich habe dies als Lesezeichen gespeichert, um zu überprüfen, was funktionieren sollte, wenn ich die Gelegenheit dazu habe.)

1 „Gefällt mir“

@falco — Ich hatte etwas Zeit, mir das anzusehen. Mit dem integrierten Inspektor von Firefox kann ich sehen, dass er Spans mit Klassen wie hljs-type, hljs-keyword usw. richtig hinzufügt. Aber wenn ich mir die Styles ansehe, sehe ich ein .hljs, aber nicht .hljs-type — nur .hljs-keyword und .hljs-comment (die, die funktionieren) scheinen vorhanden zu sein.

Und .hljs-string funktioniert auch. Aber ich sehe einige der anderen in css … irgendeine Idee, was los ist?

FWIW, das funktioniert immer noch nicht. (Trauriger Smiley)

1 „Gefällt mir“

Looks like core was missing styling for the .hljs-type class. I’ve cleaned things up in this PR.

Exact colours will depend on your theme, but here’s an example RPM file:

3 „Gefällt mir“

Ja, es funktioniert jetzt. Danke!

1 „Gefällt mir“

Dieses Thema wurde nach 3 Tagen automatisch geschlossen. Neue Antworten sind nicht mehr möglich.