https://github.com/GuntherRademacher/rr Skip to content Toggle navigation Sign in * Product + Actions Automate any workflow + Packages Host and manage packages + Security Find and fix vulnerabilities + Codespaces Instant dev environments + Copilot Write better code with AI + Code review Manage code changes + Issues Plan and track work + Discussions Collaborate outside of code Explore + All features + Documentation + GitHub Skills + Blog * Solutions For + Enterprise + Teams + Startups + Education By Solution + CI/CD & Automation + DevOps + DevSecOps Resources + Learning Pathways + White papers, Ebooks, Webinars + Customer Stories + Partners * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Pricing Search or jump to... Search code, repositories, users, issues, pull requests... Search [ ] Clear Search syntax tips Provide feedback We read every piece of feedback, and take your input very seriously. [ ] [ ] Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Name [ ] Query [ ] To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} GuntherRademacher / rr Public * Notifications * Fork 45 * Star 378 RR - Railroad Diagram Generator License Apache-2.0 license 378 stars 45 forks Activity Star Notifications * Code * Issues 8 * Pull requests 0 * Actions * Projects 0 * Security * Insights Additional navigation options * Code * Issues * Pull requests * Actions * Projects * Security * Insights GuntherRademacher/rr This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. master Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags Name already in use A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch? Cancel Create 2 branches 8 tags Code * Local * Codespaces * Clone HTTPS GitHub CLI [https://github.com/G] Use Git or checkout with SVN using the web URL. [gh repo clone Gunthe] Work fast with our official CLI. Learn more about the CLI. * Open with GitHub Desktop * Download ZIP Sign In Required Please sign in to use Codespaces. Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Launching Xcode If nothing happens, download Xcode and try again. Launching Visual Studio Code Your codespace will open once ready. There was a problem preparing your codespace, please try again. Latest commit @GuntherRademacher GuntherRademacher fix serialization method ... 179c1d2 Apr 27, 2023 fix serialization method 179c1d2 Git stats * 58 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time .github/workflows Update gradle.yml February 10, 2023 10:50 gradle/wrapper display char rather than charcode for printable ASCII March 10, 2023 15:16 src/main fix serialization method April 27, 2023 12:58 .gitignore Initial commit April 14, 2020 20:39 LICENSE Initial commit April 14, 2020 20:31 README.md update links February 6, 2023 12:58 build.gradle display char rather than charcode for printable ASCII March 10, 2023 15:16 gradlew display char rather than charcode for printable ASCII March 10, 2023 15:16 gradlew.bat display char rather than charcode for printable ASCII March 10, 2023 15:16 if_stmt.svg Initial commit April 14, 2020 20:39 rr.svg Initial commit April 14, 2020 20:39 settings.gradle Initial commit April 14, 2020 20:39 try_stmt.svg Initial commit April 14, 2020 20:39 View code [ ] RR - Railroad Diagram Generator Examples Grammar syntax Distribution Building RR Thanks License Links README.md RR RR - Railroad Diagram Generator RR is a generator of syntax diagrams, also known as railroad diagrams. It is a self-contained tool with both a browser-based GUI and a batch mode. Besides generating diagrams from EBNF rules, RR also can perform some grammar transformation, e.g. factorization and elimination of direct recursion. To some extent this transforms BNF to EBNF, yielding more compact diagrams. Examples Here are two examples of generated diagrams (taken from the Python grammar): if_stmt: if_stmt try_stmt: try_stmt Grammar syntax RR accepts grammars in W3C-style EBNF. Some other representations, including some parser generator input notations, can be converted to W3C-style using Grammar Conversion. Distribution RR comes as a .zip, containing a .war file. The .war file can be deployed in servlet containers like Tomcat or Jetty for serving the GUI. This makes up the webapp that is running on the original website, https://bottlecaps.de/rr/ui. The .war file is a Java "executable war", i.e. it can also be started standalone from command line. Two different tasks can be performed in standalone mode: * serving the GUI, e.g. java -jar rr.war -gui * batch diagram generation, e.g. java -jar rr.war grammar.ebnf For listing the full set of available options, run java -jar rr.war without further command line arguments. Building RR For building RR, JDK 11 (or higher) must be available. In the project folder, run this command to build the distribution .zip file: gradlew Thanks This project makes use of * Saxon-HE, * TagSoup, * Apache Batik, * Ace Editor, * Gradle, and * Gradle-License-Report. License RR is released under the Apache 2 License. Links The official website for RR is https://bottlecaps.de/rr/ui. About RR - Railroad Diagram Generator Topics syntax-diagrams railroad-diagrams Resources Readme License Apache-2.0 license Activity Stars 378 stars Watchers 10 watching Forks 45 forks Report repository Releases 8 v2.0 Latest Feb 10, 2023 + 7 releases Contributors 2 * @GuntherRademacher GuntherRademacher Gunther Rademacher * @bannmann bannmann Jens Bannmann Languages * Java 54.5% * XQuery 44.2% * HTML 1.3% Footer (c) 2024 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact * Manage cookies * Do not share my personal information You can't perform that action at this time.