State of LSPs in CodeMirror Reference

This thread aims to be a reference for LSP clients and LSP-like integrations in/for CodeMirror.

Link Description
hjr265 blog post One of the first resources published on this topic
codemirror-languageserver A LSP client mainly deveoped by hjr265
@shopify/codemirror-language-client Worker based LSP client made by Shopify
codemirror-languageservice A recently started LSP client
LSP Web Workers Demo Demo of codemirror-languageserver that I forked
CodeMirror Typescript example Typescript LSP-like integration with CodeMirror
CodeMirror 6 and Typescript LSP A treasure trove of information and examples on LSP integrations. Not listed here for currently for less duplicated information.
“LSP” in CodeMirror Discuss All LSP references in this forum
lsp-codemirror CodeMirror 5 LSP integration
lsp-editor-adapter Another CodeMirror 5 LSP integration
Building a ShopifyQL Code Editor - Blog Post What Shopify did to get a LSP integration for their ShopifyQL web editor.
Connecting ANTLR to CodeMirror 6: Building a Language Server Part 1 of a tutorial made by a Shopify engineer who worked on the ShopifyQL editor
Connecting ANTLR to CodeMirror 6: Connecting a Language Server Part 2 of a tutorial made by a Shopify engineer who worked on the ShopifyQL editor
@qualified/codemirror-workspace CodeMirror 5 LSP client integration
Xtext CodeMirror integration The Xtext integration for some old version of CodeMirror
7 Likes

For whatever reason I can’t edit my previous post so adding on here.

Link Description
LSP powered by Lezer A novel use of Lezer to power a LSP
2 Likes

Adding a new one to the list: @marimo-team/codemirror-languageserver

This is a modernized fork of FurqanSoftware/codemirror-languageserver with additional features:

  • Symbol renaming
  • Code actions and quick fixes
  • Go-to-definition
  • [improved] Code completion
  • [improved] Hover information
  • [improved] Diagnostics
3 Likes

Just spotted this repo: GitHub - codemirror/lsp-client: Language server protocol client for CodeMirror

Is there going to be official support of LSP integrations?

Likely, but note that this code is not open-sourced yet. It should soon be, if all goes well with the customer who is paying for it. Also, depending on what features you’re looking for, it may not be feature-complete.

3 Likes