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
In order to avoid bloating lfc, diagram synthesis features should be made available using a separate CLI tool.
An easy first step would be to generate an SVG, but it might also be possible to spawn a web interface that allows interactions with the diagram in a way similar to how the VS Code does this.
One advantage of having this capability would be that we'd be able to do some primitive testing of the diagram package as part of CI.
The text was updated successfully, but these errors were encountered:
As suggested here (#398 (comment)), you can use the language server for that (since it already handles all the build weirdness). All you need is an alternative main entry class that can be used to synthesized the diagrams instead of starting a language server.
We have one in Kieler (https://github.com/kieler/semantics/blob/master/plugins/de.cau.cs.kieler.kicool.ide/src/de/cau/cs/kieler/kicool/ide/cli/KielerCompilerDiagramCLI.xtend) but it has a lot of additional functionality such as setting synthesis options (normally check boxes in the sidebar).
For a minimal prototype, the important steps are calling KlighdStandaloneSetup.initialize() and exporting the diagram with LightDiagramServices.renderOffScreen(model, format, target.path, properties). The model needs to be parsed with Xtext beforehand but I guess you already know how to do that for lfc.
In order to avoid bloating
lfc
, diagram synthesis features should be made available using a separate CLI tool.An easy first step would be to generate an SVG, but it might also be possible to spawn a web interface that allows interactions with the diagram in a way similar to how the VS Code does this.
One advantage of having this capability would be that we'd be able to do some primitive testing of the diagram package as part of CI.
The text was updated successfully, but these errors were encountered: