This repository contains Xtext DSL projects that will be used by Custom-MADE Xtext-WebUI (see https://github.com/schubmat/Custom-MADE/). The languages come along with:
- a DSL project
- an
...ide
project containing the language server for the specified DSL (cf. Language Server Protocol) - a test project
- a websocket project that is wrapping the language server so that it can be tied to another application
- Run
./gradlew run
This will start the server with the help of org.xtext.example.mydsl.websockets.RunWebSocketServer3
.
org.xtext.example.mydsl
(contains the DSL)org.xtext.example.mydsl.ide
(contains the DSL specific customizations of the Xtext language server)org.xtext.example.mydsl.tests
org.xtext.example.mydsl.websockets
(contains the code to launch a websocket and the language server and tie them to each other)
- Make sure that
java -version
is executable and pointing to a Java 11 JDK or a Java 13 JDK.
- Run
./gradlew distZip
. - Go to zip file of the ide sub project (, e.g.
find . -name "*ide*zip"
) - Inflate it
- Find the binary file
mydsl-socket
, and - start it as follows:
./mydsl-socket [PORT_THE_LSP_SHOULD_RUN_ON]
, e.g.,./mydsl-socket 38123
- Set the language name in
settings.gradle
file with the help of therootProject.name
attribute. Do it, for instance, as follows:rootProject.name = '[PROJECT_NAME]'
,- e.g.,
rootProject.name = 'grammar_MDR_simplified'
- Set the language version in
gradle.properties
file as follows:version = [VERSION]
,- e.g.,
version = 1.0.0-SNAPSHOT
- Run
./gradlew install
.
- Run
./gradlew run
or launch RunServer from Eclipse.