haskell-lsp: Haskell library for the Microsoft Language Server Protocol

[ development, library, mit, program ] [ 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 IDE Engine, at https://github.com//haskell-ide-engine


[Skip to Readme]
Versions 0.1.0.0, 0.2.0.0, 0.2.0.1, 0.2.1.0, 0.2.2.0, 0.4.0.0
Change log ChangeLog.md
Dependencies aeson (>=1.0.0.0), base (>=4.9 && <4.12), bytestring, containers, data-default, directory, filepath, hashable, haskell-lsp, haskell-lsp-types (>=0.4), hslogger, lens (>=4.15.2), mtl, network-uri, parsec, sorted-list (==0.2.1.*), stm, text, time, transformers, unordered-containers, vector, yi-rope [details]
License MIT
Copyright Alan Zimmerman, 2016-2018
Author Alan Zimmerman
Maintainer alan.zimm@gmail.com
Category Development
Home page https://github.com/alanz/haskell-lsp
Source repo head: git clone https://github.com/alanz/haskell-lsp
Uploaded by AlanZimmerman at Tue Jul 10 19:24:51 UTC 2018
Distributions LTSHaskell:0.2.2.0, NixOS:0.4.0.0, Stackage:0.4.0.0
Executables lsp-hello
Downloads 887 total (104 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-07-10 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for haskell-lsp-0.4.0.0

[back to package description]

CircleCI Hackage

haskell-lsp

Haskell library for the Microsoft Language Server Protocol

Warning: this library and its associated ecosystem is under development at the moment. So do not have high expectations, it is not ready for casual use.

Hacking

To see this library in use you need to install the haskell-ide-engine

git clone https://github.com/haskell/haskell-ide-engine --recursive
cd haskell-ide-engine
stack install

This will put the hie executable in your path.

Then, run the plugin in vscode:

git clone https://github.com/alanz/vscode-hie-server
cd vscode-hie-server
code .

In vscode, press F5 to run the extension in development mode.

You can see a log from hie by doing

tail -F /tmp/hie-vscode.log

There are also facilities on the code to send back language-server-protocol log and show events.

It can also be used with emacs, see https://github.com/emacs-lsp/lsp-haskell

Using the example server

stack install

will generate a lsp-hello executable.

Changing the server to be called in the vscode-hie-server plugin from hie to lsp-hello will run the example server instead of hie.

Likewise, changing the executable in lsp-haskell for emacs.

Useful links

Other resource

See #haskell-ide-engine on IRC freenode