2013-02-02 11 views
14

Gibt es ein Tool, das eine PEG.js-Grammatik in eine TextMate-Grammatik übersetzt?TextMate-Sprachgrammatik aus PEG.js-Grammatik generieren

Ich baue meine eigene Sprache und möchte Syntax-Hervorhebung dafür in meinem bevorzugten Editor, TextMate. Die Grammatik meiner Sprache ist mit PEG.js aufgebaut. Gemäß der TextMate documentation für diesen Anwendungsfall muss ich die TextMate-Grammatik in einer Form schreiben, die mit PEG.js nicht kompatibel ist.

Ich fing an, eine neue TextMate-Grammatik zu schreiben, aber ich bemerkte schnell, dass es eine Weile dauert, die gesamte Grammatik oder sogar die für eine akzeptable Syntaxhervorhebung relevante Teilmenge zu übersetzen. Da ich unglaublich faul bin und diese mühsame Arbeit nicht machen will, habe ich über die Automatisierung dieser Aufgabe nachgedacht.

Kann mir jemand Hinweise geben, wie man die Generierung von TextMate-Grammatik aus einer PEG.js-Grammatik automatisieren oder zumindest beschleunigen kann?

+0

https://github.com/alexstrat/PEGjs.tmbundle –

+4

Dieses Bündel nur Syntax für die Hervorhebung fügt PEG.js-Grammatikdateien. Was ich möchte, ist die Syntaxhervorhebung für Dateien, die in einer Sprache geschrieben sind, die durch eine PEG.js-Grammatik definiert ist. –

+0

Leider wäre das schwierig - TextMate verwendet Muster, während PEG.js bytebasierte Vergleiche verwendet. – Qix

Antwort

2

Kann mir jemand Hinweise geben, wie man die Generierung der TextMate-Grammatik aus einer PEG.js-Grammatik automatisieren oder zumindest beschleunigen kann?

Verwenden Sie das folgende Verfahren:

  • Verstehen Reguläre Ausdrücke
  • verstehen Expression Parsing Grammatiken
  • eine Zuordnungstabelle auf die Ähnlichkeiten basieren erstellen
  • Funktionen auf die Unterschiede basierend erstellen

Referenzen

Verwandte Themen