Ich liebe die Syntax von Eisenbahndiagrammen auf json.org, die eine grafische Darstellung der BNF-Sprache sind. Ich habe keine Tools gefunden, die so eloquent zu Ergebnissen führen können.
Ich liebe die Syntax von Eisenbahndiagrammen auf json.org, die eine grafische Darstellung der BNF-Sprache sind. Ich habe keine Tools gefunden, die so eloquent zu Ergebnissen führen können.
Antworten:
Es gibt einen Online-Eisenbahndiagrammgenerator . Es erstellt SVG- Syntaxdiagramme , auch als Eisenbahndiagramme bezeichnet, aus kontextfreien Grammatiken, die in EBNF angegeben sind . Sie können den SVG-Code kopieren oder Screenshots machen.
Sie müssen die Grammatik eingeben und es wird das Diagramm erstellt.
Um beispielsweise das erste gezeigte Eisenbahndiagramm zu erstellen, verwenden Sie den folgenden Code:
object ::= '{' ((string ':' value ) ( ',' string ':' value )*)? '}'
Dann könnten Sie gehen zu definieren string
und value
verwenden string ::= ...
und value ::= ...
die Referenzen sind alle gezeigt.
Schauen Sie sich einige der Beispieldiagramme auf der Seite an. Sie haben XML und sogar EBNF selbst.
von Douglas Crockford
nach Aleem B
Datum Di, 28. April 2009 um 18:01 Uhr
Betreff Re: Railroad Diagrams on json.orgIch habe sie mit Visio gezeichnet. Creative Docs.NET funktioniert auch gut.
- -
Aleem B schrieb:
Hallo Douglas,
Ich mag die meisten Dinge, die Sie dort veröffentlichen, sehr und die Eisenbahndiagramme auf json.org sind nicht anders. Ich habe versucht, mich nach einem Werkzeug umzusehen, mit dem Diagramme fast genauso eloquent erstellt werden können, hatte aber kein Glück:
Tool zum Generieren eines auf json.org verwendeten Eisenbahndiagramms
Gibt es ein Werkzeug, mit dem Sie den BNF in diese Diagramme konvertiert haben, oder wurden sie von Hand gefertigt?
- Aleem
Tab Atkins Jr. erstellte einen Javascript Railroad-Diagram Generator mitsvgspeziell, weil er keinen finden konnte, der die gewünschte visuelle Anziehungskraft hatte, dh " den JSON.org-Look ".
Vor einigen Tagen gab es eine ähnliche Frage: Was ist ein gutes Werkzeug zum Erstellen von Eisenbahndiagrammen?
Bei dieser Frage ging es darum, wie Eisenbahndiagramme in den SQLite-Syntaxdiagrammen generiert wurden. Die akzeptierte Antwort ergab, dass die Diagramme mit einem in Tcl geschriebenen DSL erstellt wurden.
Eine andere Antwort bot einen Vorschlag zur Verwendung eines Diagrammgenerators, der mit der EBNL-Grammatik arbeitet.
Eines der Dinge, mit denen der Eisenbahngenerator von IBM gut umgehen kann, sind Standardwerte. Ich habe keinen anderen Generator gesehen, der dies tut.
Ein Beispiel ist
┌─────◀────┐┌(──«defaults»─)─┐
▶▶─COMMAND┴«argument»┴┼────────────────┼──────────────────────▶◀
│ ┌────◀─────┐ │
└(┴┬«option»┬┴┬─┬┘
└Help────┘ └)┘
Ich habe auch für die verwendeten Werkzeuge gesucht , um diese zu erzeugen Syntaxdiagramme und wenn möglich in js library
so kann es ohne warten auf eine langweilige Zeit für eine Grafik kommen bearbeitet und angezeigt werden.
Ich weiß, dass es Werkzeuge gibt, aber ich würde sagen, dass der Generator von Bottlecaps.de eine schöne Grafik mit Farboption hat. Leider konnte ich dort keinen Quellcode des Tools selbst bekommen.
Ich ging auch zu den verwandten Fragen der Antworten hier, bekam aber nur folgende, wo wir sie als Open Source bekommen können, js library
und lieferte eine Online-Demo, mit der wir versuchen können, zu spielen .
js
( Syntax existiert auch als Python
Bibliothek)js
aber UML ( Syntax wird über Bottlecaps.de generiert )js
aber nur für UML gefundenIch habe das J-Algo-Tool gefunden. Ich denke, es ist sehr einfach, Diagramme zu zeichnen, aber ich kann nicht in ein Bild oder einen anderen Typ exportieren.
Schauen Sie sich http://code.google.com/p/html-railroad-diagram/ an, das HTML-Eisenbahndiagramme generiert. Es gibt ein Beispiel , das die JSON-Eisenbahn zeigt, die in einer HTML-Seite von JavaScript mit Links generiert wurde.