basex-lsp/README.md
2025-07-31 15:02:27 +01:00

26 lines
No EOL
1.1 KiB
Markdown

Work in progress.
An attempt to write a [Language Server Protocol](https://en.wikipedia.org/wiki/Language_Server_Protocol) server using the BaseX websocket feature.
* `webapp/lsp` The implementation using the BaseX WebSocket feature and the Jsonrpc API
* `webapp/static/codemirror` A test html page using the Codemirror6 editor that connects to the BaseX LSP instance
* `webapp/static/ace` A test html page using the Ace editor that connects to the BaseX LSP instance
## Uses
* https://github.com/mkslanc/ace-linters https://mkslanc.github.io/ace-linters/
* I needed `set NODE_OPTIONS=--max_old_space_size=8192` for build to complete
* or `node --max-old-space-size=8192 node_modules/webpack-dev-serve
r/bin/webpack-dev-server.js`
## notes
Using https://github.com/mkslanc/ace-linters https://mkslanc.github.io/ace-linters/
Make a websocket server for lsp on port 3000
https://mkslanc.github.io/ace-linters/websocket.html
http://localhost:3000/exampleServer
https://github.com/mkslanc/ace-linters/blob/c1b317e01299016ac7da6588361228637f4eac25/packages/demo/websockets-lsp/server/server.ts
https://www.jsonrpc.org/specification