Hallo Matthias,
ich habe mir SynGen nochmal genauer angesehen und noch zwei Dinge nachgebessert.
Das erste betrifft deine Beobachtung mit dem leeren CASE Statement. SynGen kann in der Original-Fassung (1.1) keine Grammatiken verarbeiten, die in der ENCLOSEDBY section nicht mindestens ein MULTILINE token aufweisen. Nun geht das.
Das zweite Problem entsteht durch deine Schreibweise des LineEndComment. SynGen ist ja erst durch meine Änderung überhaupt in der Lage EOL terminierte token über die ENCLOSEDBY section zu verarbeiten. In der Original-Fassung ist nur der MULTILINE-Parameter optional. Ich habe jetzt auch ENDSWITH optional gemacht - ist nur konsequent.
Ich habe die modifizierte
Unit SynGenUnit angehängt - und sicherheitshalber noch die Datei SynEdit.inc, auch wenn du die wohl schon selbst angepasst hast.
Ich habe den Kommentar im Ada-Style dann in der HighlighterDemo von SynEdit erfolgreich getestet.
Schönes Wochenende
marabu
PS: Meine Änderungen habe ich mit meinem nick gekennzeichnet, damit du sie nachvollziehen kannst.