lsp: Haskell library for the Microsoft Language Server Protocol

[ development, library, mit ] [ Propose Tags ]

An implementation of the types, and basic message server to allow language implementors to support the Language Server Protocol for their specific language.

An example of this is for Haskell via the Haskell Language Server, at https://github.com/haskell/haskell-language-server


[Skip to Readme]

Modules

[Index] [Quick Jump]

Flags

Automatic Flags
NameDescriptionDefault
demo

Build the demo executables

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 1.0.0.0, 1.0.0.1, 1.1.0.0, 1.1.1.0, 1.2.0.0, 1.2.0.1, 1.4.0.0, 1.5.0.0, 1.6.0.0, 2.0.0.0, 2.1.0.0, 2.2.0.0, 2.3.0.0, 2.4.0.0, 2.5.0.0, 2.6.0.0, 2.7.0.0
Change log ChangeLog.md
Dependencies aeson (>=1.0.0.0), async (>=2.0), attoparsec, base (>=4.11 && <5), bytestring, co-log-core (>=0.3.1.0), containers, data-default, directory, exceptions, filepath, hashable, lens (>=4.15.2), lsp, lsp-types (>=1.6 && <1.7), mtl (<2.4), prettyprinter, random, sorted-list (>=0.2.1 && <0.2.2), stm (>=2.5 && <2.6), temporary, text, text-rope, transformers (>=0.5.6 && <0.7), unliftio-core (>=0.2.0.0), unordered-containers, uuid (>=1.3) [details]
License MIT
Copyright Alan Zimmerman, 2016-2021
Author Alan Zimmerman
Maintainer alan.zimm@gmail.com
Category Development
Home page https://github.com/haskell/lsp
Source repo head: git clone https://github.com/haskell/lsp
Uploaded by wz1000 at 2022-09-13T15:33:34Z
Distributions Arch:1.6.0.0, LTSHaskell:2.3.0.0, NixOS:2.7.0.0, Stackage:2.7.0.0
Reverse Dependencies 38 direct, 13 indirect [details]
Executables lsp-demo-simple-server, lsp-demo-reactor-server
Downloads 13289 total (324 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2022-09-13 [all 1 reports]

Readme for lsp-1.6.0.0

[back to package description]

lsp

lsp is a library for building language servers, handling:

  • JSON-RPC transport
  • Keeping track of the document state in memory with the Virtual File System (VFS)
  • Responding to notifications and requests via handlers
  • Setting the server capabilities in the initialize request based on registered handlers
  • Dynamic registration of capabilities
  • Cancellable requests and progress notifications
  • Publishing and flushing of diagnostics

It is part of the lsp family of packages, along with lsp-test and lsp-types

For more information, check https://github.com/haskell/lsp/blob/master/README.md