Experimente mit Syntax-Highlighting

Ich mochte es noch nie, wie mein Code hier bislang aussah: Einrückungen waren unmöglich, alles unbunt, … also suchte ich mal nach einem Drupal-Plugin, was Syntax-Highlighting übernehmen kann. Gefunden habe ich genau eins: GeSHi filter.

Es funktioniert zwar, aber es scheint nicht zu gut zu funktionieren. Der meiste Code auf dieser Seite sind momentan Batchdateien und gerade hier wirkt die Liste der Todos und bekannten Probleme nicht gerade ermutigend (frei übersetzt):
  * TODO (aktualisiert 2005/07/05)
 * -------------------------
 
 – Einen Weg finden, um %* hervorzuheben
 * – Pipes und Umleitungen hervorheben (brauchen wir das wirklich?)
 * – Fehlende Schlüsselwörter hinzufügen.
 * – Einen guten Link für die Schlüsselwörter finden.
 * – Styles verbessern.
 
KNOWN ISSUES (aktualisiert 2005/07/07)
 * ---------------------------------
 
 – Versucht nicht mal, Leerzeichen in Variablennamen oder Labels zu
 *   behandeln (Ich finde keinen verläßlichen Weg, herauszufinden, ob
 *   eine Zeichenfolge ein Name ist oder nicht, in einigen Fällen hängt das
 *   vom Kontext bzw. vom Zustand des Environments ab).
 * – Keine Unterstützung für die Pseudovariablen %%[Buchstabe], die in
 *   FOR verwendet werden (das sollte nur innerhalb des Scopes von FOR
 *   passieren: wie?).
 * – Keine Unterstützung für die Pseudoargumente %~[irgendwas].
 * – Wenn das gleiche Schlüsselwort am Ende einer Zeile und am Anfang der
 *   nächsten steht, wird das zweite nicht hervorgehoben (das dürfte ein
 *   GeSHi-Bug sein und nicht mit der Srpachdefinition hier zusammenhängen).
 * – Schlüsselwörter werden immer hervorgehoben, auch wenn sie nicht als
 *   solche genutzt werden sondern beispielsweise als Argumente für echo.
Offenbar gibt es hier schon einige Beschränkungen der Engine selbst. Irgendwie hätte ich gern Colorer hier, aber den mit PHP zum Laufen zu bringen, könnte etwas kompliziert werden (wiewohl es scheinbar Möglichkeiten gibt, das im Web zum Funktionieren zu bringen). Währenddessen versuche ich einfach, die Bugs, die mir wirklich störend auffallen, zu beheben. Ich habe schon enableextensions und enabledelayedex­pansion als hervorzuhebende Dinge hinzugefügt.

Kommentare

Neuen Kommentar abgeben

The content of this field is kept private and will not be shown publicly.