Skip to content

Latest commit

 

History

History
40 lines (31 loc) · 1.52 KB

README.md

File metadata and controls

40 lines (31 loc) · 1.52 KB

Micro Integrator Language Server

This repository is a fork of Eclipse LemMinX.

MI Language Server is a language specific implementation of the Language Server Protocol and can be used with any editor that supports the protocol, to offer good support for the MI (Synapse) Language.

The server is based on:

  • Eclipse LSP4J, the Java binding for the Language Server Protocol.
  • Xerces to manage XML Schema validation, completion and hover

Get started

  • Clone this repository
  • Open the folder in your terminal / command line
  • Run ./mvnw clean verify (OSX, Linux) or mvnw.cmd clean verify (Windows)
  • After successful compilation you can find the resulting org.eclipse.lemminx-uber.jar in the folder org.eclipse.lemminx/target

Developer

To debug the XML LS you can use XMLServerSocketLauncher:

  1. Run the XMLServerSocketLauncher in debug mode (e.g. in eclipse)
  2. Connect your client via socket port. Default port is 5008, but you can change it with start argument --port in step 1

Client connection example using Theia and TypeScript:

let socketPort = '5008'
console.log(`Connecting via port ${socketPort}`)
const socket = new net.Socket()
const serverConnection = createSocketConnection(socket,
    socket, () => {
        socket.destroy()
    });
this.forward(clientConnection, serverConnection)
socket.connect(socketPort)