Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/noughtmare/haskell-lsp-client
Client library for haskell-lsp
https://github.com/noughtmare/haskell-lsp-client
haskell-library language-server-protocol
Last synced: 2 months ago
JSON representation
Client library for haskell-lsp
- Host: GitHub
- URL: https://github.com/noughtmare/haskell-lsp-client
- Owner: noughtmare
- License: gpl-2.0
- Created: 2017-08-02T16:58:59.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-06-05T20:13:33.000Z (over 6 years ago)
- Last Synced: 2024-09-22T16:08:04.596Z (3 months ago)
- Topics: haskell-library, language-server-protocol
- Language: Haskell
- Size: 42 KB
- Stars: 11
- Watchers: 7
- Forks: 2
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# haskell-lsp-client
[![Hackage](https://img.shields.io/hackage/v/haskell-lsp-client.svg)](https://hackage.haskell.org/package/haskell-lsp-client)This package is intended for developers of text editors who want to make their text editor
compatible with the [Language Server Protocol](https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md).I have developed this package with plans to integrate it in the [Yi editor](https://github.com/yi-editor/yi).
## The example client
Contained in this repository is an example client. This example client just runs the [Haskell IDE Engine](https://github.com/alanz/haskell-ide-engine/)
and opens the file specified on the command line. Then it asks the language server for all symbols in the document and prints the result it gets.To run the example:
1. Download and install the Haskell IDE Engine. (make sure `hie` is on your PATH)
2. `git clone https://github.com/noughtmare/haskell-lsp-client`
3. `cd haskell-lsp-client`
4. `stack build`
5. `stack exec example-client -- example/Main.hs`On my system it shows something about a capability registration request and that a certain hoogle
database is used. You can replace example/Main.hs with any haskell file you would like to check.
It reports ghc errors and hlint suggestions and it shows the symbol list.