Skip to content

Commit 6521816

Browse files
authored
Reorganize README
* Add links to hls documentation * Separate features from demos (with links) * Remove local docs sections present in the server docs
1 parent 508bd0d commit 6521816

File tree

1 file changed

+43
-56
lines changed

1 file changed

+43
-56
lines changed

README.md

Lines changed: 43 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
[![vsmarketplacebadge](https://vsmarketplacebadge.apphb.com/version/haskell.haskell.svg)](https://marketplace.visualstudio.com/items?itemName=haskell.haskell)
44

5-
This extension adds language support for [Haskell](https://haskell.org), powered by the [Haskell Language Server](https://github.com/haskell/haskell-language-server).
5+
This extension adds language support for [Haskell](https://haskell.org), powered by the [Haskell Language Server](https://github.com/haskell/haskell-language-server).
6+
As almost all features are provided by the server you might find interesting read its [documentation](https://haskell-language-server.readthedocs.io).
67

78
## Features
89

@@ -13,35 +14,15 @@ This extension adds language support for [Haskell](https://haskell.org), powered
1314
- Highlight references in document
1415
- Code completion
1516
- Show documentation and sources in hackage
16-
- Formatting via Brittany, Floskell, Fourmolu, Ormolu or Stylish Haskell
17+
- Formatting via [Brittany](https://github.com/lspitzner/brittany), [Floskell](https://github.com/ennocramer/floskell), [Fourmolu](https://github.com/fourmolu/fourmolu), [Ormolu](https://github.com/tweag/ormolu) or [Stylish Haskell](https://github.com/haskell/stylish-haskell)
1718
- [Multi-root workspace](https://code.visualstudio.com/docs/editor/multi-root-workspaces) support
18-
- Code evaluation (Haskell Language Server), see ([Tutorial](https://github.com/haskell/haskell-language-server/blob/master/plugins/hls-eval-plugin/README.md))
19-
20-
![Eval Demo](https://raw.githubusercontent.com/haskell/haskell-language-server/master/plugins/hls-eval-plugin/demo.gif)
21-
22-
- Integration with [retrie](https://hackage.haskell.org/package/retrie)
23-
24-
![Retrie Demo](https://i.imgur.com/Ev7B87k.gif)
25-
26-
- Code lenses for explicit import lists
27-
28-
![Imports code lens Demo](https://imgur.com/pX9kvY4.gif)
29-
30-
- Generate functions from type signatures, and intelligently complete holes using [Wingman (tactics)](https://github.com/haskell/haskell-language-server/tree/master/plugins/hls-tactics-plugin)
31-
32-
![Wingman Demo](https://user-images.githubusercontent.com/307223/92657198-3d4be400-f2a9-11ea-8ad3-f541c8eea891.gif)
33-
34-
- Integration with [hlint](https://github.com/ndmitchell/hlint) to show diagnostics and apply hints via [apply-refact](https://github.com/mpickering/apply-refact)
35-
36-
![Hlint Demo](https://user-images.githubusercontent.com/54035/110860028-8f9fa900-82bc-11eb-9fe5-6483d8bb95e6.gif)
37-
38-
- Module name suggestions for insertion or correction
39-
40-
![Module Name Demo](https://user-images.githubusercontent.com/54035/110860755-78ad8680-82bd-11eb-9845-9ea4b1cc1f76.gif)
41-
42-
- Call hierarchy support
43-
44-
![Call Hierarchy in VSCode](https://github.com/haskell/haskell-language-server/raw/2857eeece0398e1cd4b2ffb6069b05c4d2308b39/plugins/hls-call-hierarchy-plugin/call-hierarchy-in-vscode.gif)
19+
- [Code evaluation](#Code_evaluation), see its [Tutorial](https://github.com/haskell/haskell-language-server/blob/master/plugins/hls-eval-plugin/README.md)
20+
- [Integration with](#Retrie_integration) [retrie](https://hackage.haskell.org/package/retrie), a powerful, easy-to-use codemodding tool
21+
- [Code lenses for explicit import lists](#Explicit_import_lists)
22+
- [Generate functions from type signatures, and intelligently complete holes using](#Wingman) [Wingman (tactics)](https://github.com/haskell/haskell-language-server/tree/master/plugins/hls-tactics-plugin)
23+
- [Integration with](#Hlint) [hlint](https://github.com/ndmitchell/hlint), the most used haskell linter, to show diagnostics and apply hints via [apply-refact](https://github.com/mpickering/apply-refact)
24+
- [Module name suggestions](#Module_names) for insertion or correction
25+
- [Call hierarchy support](#Call_hierarchy)
4526

4627
## Requirements
4728

@@ -52,6 +33,8 @@ This extension adds language support for [Haskell](https://haskell.org), powered
5233

5334
## Configuration options
5435

36+
For a general picture about the server configuration, including the project setup, [you can consult the server documentation about the topic](https://haskell-language-server.readthedocs.io/en/latest/configuration.html).
37+
5538
### Path to server executable
5639

5740
If your server is manually installed and not on your path, you can also manually set the path to the executable.
@@ -72,33 +55,6 @@ This supposes it could be used to execute arbitrary programs adding a `.vscode/s
7255
For this reason its scope will be changed to `machine` so users only will be able to change it globally.
7356
See #387 for more details.
7457

75-
### Local documentation
76-
77-
Haskell Language Server can display Haddock documentation on hover and completions if the project and
78-
its dependencies have been built with the `-haddock` GHC flag.
79-
80-
- For cabal:
81-
82-
- Add to your global config file (e.g. `~/.cabal/config`):
83-
84-
```yaml
85-
program-default-options
86-
ghc-options: -haddock
87-
```
88-
89-
- Or, for a single project, run `cabal configure --ghc-options=-haddock`
90-
91-
- For stack, add to global `$STACK_ROOT\config.yaml`, or project's `stack.yaml`:
92-
93-
```yaml
94-
ghc-options:
95-
'$everything': -haddock
96-
```
97-
98-
Note that this flag will cause compilation errors if a dependency contains invalid Haddock markup,
99-
until GHC 9.0 which [will report warnings](https://gitlab.haskell.org/ghc/ghc/-/merge_requests/2377)
100-
instead.
101-
10258
### Downloaded binaries
10359

10460
This extension will download `haskell-language-server` binaries to a specific location depending on your system. If you find yourself running out of disk space, you can try deleting old versions of language servers in this directory. The extension will redownload them, no strings attached.
@@ -130,6 +86,7 @@ These are the versions of GHC that there are binaries of `haskell-language-serve
13086
| 8.6.4 ||||
13187

13288
The exact list of binaries can be checked in the last release of haskell-language-server: <https://github.com/haskell/haskell-language-server/releases/latest>
89+
You can check the current GHC versions support status and the policy followed for deprecations [here](https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html).
13390

13491
## Using multi-root workspaces
13592

@@ -161,3 +118,33 @@ If you want to help, get started by reading [Contributing](https://github.com/ha
161118
## Release Notes
162119

163120
See the [Changelog](https://github.com/haskell/vscode-haskell/blob/master/Changelog.md) for more details.
121+
122+
## Demos
123+
124+
### Code evaluation
125+
126+
![Eval Demo](https://raw.githubusercontent.com/haskell/haskell-language-server/master/plugins/hls-eval-plugin/demo.gif)
127+
128+
### Retrie integration
129+
130+
![Retrie Demo](https://i.imgur.com/Ev7B87k.gif)
131+
132+
### Explicit import lists
133+
134+
![Imports code lens Demo](https://imgur.com/pX9kvY4.gif)
135+
136+
### Wingman
137+
138+
![Wingman Demo](https://user-images.githubusercontent.com/307223/92657198-3d4be400-f2a9-11ea-8ad3-f541c8eea891.gif)
139+
140+
### Hlint
141+
142+
![Hlint Demo](https://user-images.githubusercontent.com/54035/110860028-8f9fa900-82bc-11eb-9fe5-6483d8bb95e6.gif)
143+
144+
### Module names
145+
146+
![Module Name Demo](https://user-images.githubusercontent.com/54035/110860755-78ad8680-82bd-11eb-9845-9ea4b1cc1f76.gif)
147+
148+
### Call hierarchy
149+
150+
![Call Hierarchy in VSCode](https://github.com/haskell/haskell-language-server/raw/2857eeece0398e1cd4b2ffb6069b05c4d2308b39/plugins/hls-call-hierarchy-plugin/call-hierarchy-in-vscode.gif)

0 commit comments

Comments
 (0)