editor-grammar icon indicating copy to clipboard operation
editor-grammar copied to clipboard

A textual transformation tool to transform usual EBNF specification to equivalent JSON specification (grammar)

Open foo123 opened this issue 9 years ago • 0 comments

This is to remind and propose (for anyone interested) that since EBNF grammar notations/specifications do not use JSON format, but a rather similar textual format, for example

EBNF

a_rule ::= symbol1
| symbol2
| 'literal symbol'
| ..
;

or even:

EBNF

a_rule ::= <symbol1>
| <symbol2>
| 'literal symbol'
| ..
;

Although it is rather straightforward to transform the above examples into a JSON grammar for highlight. It is even better to have a transformation tool for that.

Given that JSON grammar (as used by *-grammar highlighter add-ons) can accept and parse EBNF/PEG notation. The task is even easier. For example, just split each rule as rule_name => rule_definition and create a JSON-like object from that (more correctly the Syntax part of the overall JSON grammar).

foo123 avatar Mar 25 '16 18:03 foo123