dedlfix: CSS Syntaxhighlighting erweitert

Beitrag lesen

Tach!

-moz-box-sizing: border-box;
  box-sizing: border-box;

Wer dies perfektionieren möchte, dem kann ich gern die entsprechende Suchmuster-Ressource zukommen lassen.

Dazu müsste man wissen, wie das aussieht. Das Systaxhighlighting wird über Pattern-Dateien geregelt, deren Syntax, wie mir scheint, Eigenentwicklung plus Perl-Regexp ist. Für CSS sieht das zum Beispiel so aus (ohne deine neu hinzugefügten Dinge).

Im Block "declarations" hab ich nun die Zeile

onregexp "^-(?:moz|o|webkit|ms)-[A-Za-z_-]+(?=\s*:)" "declaration" "vendor"

vor die andere onregexp-Zeile hinzugefügt. Das erkennt die Vendor-Präfixe und egal was dahinter kommt. "Vendorspezifisch" ist ja nicht auf offizielle Eigenschaften beschränkt.

Ich hab jetzt mal den aktuellen Stand in ein Github-Repository geworfen: https://github.com/SELFHTML/cforum_patterns. Wer die Syntax versteht, kann gern Änderungen vorschlagen.

Das Grundprinzip ist, dass nach einer paar allgemeinen Deklarationen (start, list), mit dem unter "start" genannten Block begonnen wird. Da stehen dann Anweisungen wie onstring, onstringlist und onregexp. Diese konsumieren ein jeweils fortlaufend ein Stück aus dem [code]-Block und haben drei Parameter, der erste ist der Text, der Name einer Liste mit Strings beziehungsweise das Regexp-Muster (mit ein paar escapenden \ drin), der/das erkannt werden muss. Dann folgt der Name des Folgeblocks (oder auch highlight und anderes). Der dritte Parameter ist der class-Name (für das CSS).

dedlfix.