📔 Create beautiful documentation for EBNF
MIT License
Bot releases are hidden (Show)
railroad-diagrams
package)Published by matthijsgroen almost 4 years ago
.md
extension on the target filenamePublished by matthijsgroen almost 4 years ago
Deduplication of choices is improved. Now also works for text output, and can
deduplicate items when one of them has a comment.
a | a | a (* comment *) | b => a (* comment *) | b
Improve height of overview diagrams
Update color scheme of dark theme
Improved styling of blockquotes in markdown >
Published by matthijsgroen about 4 years ago
Published by matthijsgroen about 4 years ago
Support for generation overview diagrams on root elements, skippable with
--no-overview-diagram
Support for optimizing source definition file using --rewrite
Skip only diagram wrapping with --no-diagram-wrap
Breaking of long elements over multiple lines in optional items []
Plain text will now also be optimized when reasonable: Text will not be
optimized when using the --no-optimizations
flag.
[ [ a ] ] => [ a ]
[ { a } ] => { a }
a | b | [ c | [ d | e ] ] => [ a | b | c | d | e ]
Support of detection of pure character sets. Character sets are now listed
seperately at the bottom of the table of contents. A character sets is a
choice of terminals, or a choice where the non-terminals are also character
sets
Support for comments before an optional, placing the comment on the skip line
and make the skip line the main line
Support for _
(underscore) in identifiers
Published by matthijsgroen about 4 years ago
Support for --dump-ast
and --read-ast
options to allow external processing
Support for identifiers starting with an uppercase letter
Improved error reporting. Exceptions now contain a data
element with the
following:
line
The line number of the error (starting from 1)pos
The position within the line of the error (starting from 1)expected
the types of token expected by the parser (array)token
the token received by the parserOptimisation to prevent double skip lines
Published by matthijsgroen about 4 years ago
Published by matthijsgroen about 4 years ago
Published by matthijsgroen about 4 years ago
--no-optimizations
Published by matthijsgroen almost 6 years ago
Published by matthijsgroen almost 6 years ago
Published by matthijsgroen almost 6 years ago
--no-text-formatting
to write all text on a single line--no-optimizations
to write diagrams as-is--no-target
to skip writing documentation--write-style
to 'prettify' source documentsPublished by matthijsgroen almost 6 years ago
|
-> /
, !
, [ ]
-> (/ /)
,{ }
-> (: :)
a | a
into a
a | a, b
into a, [ b ]
a, b, c, g | a, b, d, g
into a, b, ( c | d ), g
a, b, c, { b, c }
.Published by matthijsgroen almost 6 years ago
[ a | b ]
in diagram as single choice with[ a | ( b | c ) ]
in diagram as single choice[ a | [ b | c ] ]
in diagram as single choice witha, b, c, { d, b, c }
. thec, b
instead of b, c
Published by matthijsgroen almost 6 years ago
--title
to add a title to the output documenta, b, c, { d, b, c }
willa
followed by a loop containing b, c
with d
as repeater.Published by matthijsgroen almost 6 years ago
--validate
to exit with status code 2 if document has--quite
to suppress output to console( a ), { a }
in diagram as a+
(one or more)a | { b }
in diagram as choice with "skip",a | [ b ]
in diagram as choice with "skip",Published by matthijsgroen almost 6 years ago
--target
option to specify output file? special sequences ?
4 * "repeatable"
(now fully ISO compliant... I think)a, { a }
in diagram as a+
(one or more)Published by matthijsgroen almost 6 years ago