Releases: matthijsgroen/ebnf2railroad
Releases · matthijsgroen/ebnf2railroad
Release 1.8.0
Added
- Dark and light color theme
Release 1.7.0
Added
- Syntax diagram will wrap if sequences become very long
- Split navigation bar in 3 parts. Root elements, Normal elements,
Common elements - Added Marker of recursion in navigation list
- Responsive design, mobile navigation, overall styling
Fixed
- Small pretty print issues that caused weird line breaks
Release 1.6.0
Added
- Formatting of text output in the document
- Long sequences will wrap over multiple lines
- Choice lists between 3 and 6 items will be displayed under eachother
- Choice lists over 6 items will be displayed as a grid
- Option
--no-text-formattingto write all text on a single line - Option
--no-optimizationsto write diagrams as-is - Option
--no-targetto skip writing documentation - Option
--write-styleto 'prettify' source documents
Release 1.5.0
Added
- Support to use package as library within other projects
- Support for alternative characters:
|->/,!,[ ]->(/ /),
{ }->(: :) - Table of contents, showing structure in alphabet, or as
hierarchy overview at the bottom. - Optimize EBNF syntax as
a | aintoa - Optimize EBNF syntax as
a | a, bintoa, [ b ] - Optimize EBNF syntax as
a, b, c, g | a, b, d, gintoa, b, ( c | d ), g
Fixed
- Closing tag for Terminals with single quotes
- Issue when the chain was optimized without repeater
a, b, c, { b, c }.
Release 1.4.0
Added
- Optimize EBNF syntax as
[ a | b ]in diagram as single choice with
integrated skip - Optimize EBNF syntax as
[ a | ( b | c ) ]in diagram as single choice - Optimize EBNF syntax as
[ a | [ b | c ] ]in diagram as single choice with
integrated skip - Demo file to demontrate markup and optimizations
- Auto linking plain links in comments
- HTML escaping in definition inline comments
- Syntax highlight in text presentation of EBNF
- Improved 'breaking' of EBNF over multiple lines
Fixed
- Issue with optimizer in repeating elements
a, b, c, { d, b, c }. the
repetition showedc, binstead ofb, c
Release 1.3.0
Added
- Add support for comments within statements, that will be rendered
within the diagram - Option
--titleto add a title to the output document - Show different start/end indicators if diagram is 'complex' (refers to
other definitions) - Better optimization of repeating elements.
a, b, c, { d, b, c }will
displayafollowed by a loop containingb, cwithdas repeater. - Extra example file, based on json.org
Fixed
- Text dedenting issue in comments before sending comments to markdown parser
Release 1.2.0
Added
- Show validation warnings for duplicate declarations
- Show validation warnings for missing references
- Option
--validateto exit with status code 2 if document has
warnings - Option
--quiteto suppress output to console - Optimize EBNF syntax as
( a ), { a }in diagram asa+(one or more) - Optimize EBNF syntax as
a | { b }in diagram as choice with "skip",
"a", or one or more "b" - Optimize EBNF syntax as
a | [ b ]in diagram as choice with "skip",
"a", or "b"
Changed
- Long choice lists are now spread over multiple columns, if the
length exceeds 10. - Updated styling of document
Release 1.1.0
Added
--targetoption to specify output file- Parse and render EBNF comments as markdown
- Add references to other definitions (reference To)
- Improved exception display and exit status code
- Support for
? special sequences ? - Support for
4 * "repeatable"(now fully ISO compliant... I think) - Let non-terminals link to definition in diagram
- Indent multi-line statements in EBNF output
- Optimize EBNF syntax as
a, { a }in diagram asa+(one or more)
Release 1.0.0
Added
- Parser to parse ISO/IEC 14977 EBNF files (limited support only)
- HTML output file based on filename of input file
- list definitions that reference another defintion (referenced From)