You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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).
6
7
7
8
## Features
8
9
10
+
You can watch demos for some of these features [here](https://haskell-language-server.readthedocs.io/en/latest/features.html#demos).
11
+
9
12
- Warning and error diagnostics from GHC
10
-
- Type information and documentation on hover
11
-
- Jump to definition
13
+
- Type information and documentation on hover, [including your own comments](./configuration.md#how-to-show-local-documentation-on-hover).
14
+
- Jump to definition: [for now only for local code definitions](https://github.com/haskell/haskell-language-server/issues/708)
12
15
- Document symbols
13
16
- Highlight references in document
14
17
- Code completion
15
18
- Show documentation and sources in hackage
16
-
- Formatting via Brittany, Floskell, Fourmolu, Ormolu or Stylish Haskell
19
+
- 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)
17
20
-[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))
- 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)
- Integration with [hlint](https://github.com/ndmitchell/hlint) to show diagnostics and apply hints via [apply-refact](https://github.com/mpickering/apply-refact)
- Module name suggestions for insertion or correction
39
-
40
-

41
-
42
-
- Call hierarchy support
43
-
44
-

21
+
-[Code evaluation](https://haskell-language-server.readthedocs.io/en/latest/features.html#code-evaluation), see its [Tutorial](https://github.com/haskell/haskell-language-server/blob/master/plugins/hls-eval-plugin/README.md)
22
+
-[Integration with](https://haskell-language-server.readthedocs.io/en/latest/features.html#retrie-integration)[retrie](https://hackage.haskell.org/package/retrie), a powerful, easy-to-use codemodding tool
23
+
-[Code lenses for explicit import lists](https://haskell-language-server.readthedocs.io/en/latest/features.html#explicit-import-lists)
24
+
-[Generate functions from type signatures, and intelligently complete holes using](https://haskell-language-server.readthedocs.io/en/latest/features.html#wingman)[Wingman (tactics)](https://github.com/haskell/haskell-language-server/tree/master/plugins/hls-tactics-plugin)
25
+
-[Integration](https://haskell-language-server.readthedocs.io/en/latest/features.html#hlint) with [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)
26
+
-[Module name suggestions](https://haskell-language-server.readthedocs.io/en/latest/features.html#module-names) for insertion or correction
@@ -52,6 +35,8 @@ This extension adds language support for [Haskell](https://haskell.org), powered
52
35
53
36
## Configuration options
54
37
38
+
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).
39
+
55
40
### Path to server executable
56
41
57
42
If your server is manually installed and not on your path, you can also manually set the path to the executable.
@@ -72,33 +57,6 @@ This supposes it could be used to execute arbitrary programs adding a `.vscode/s
72
57
For this reason its scope will be changed to `machine` so users only will be able to change it globally.
73
58
See #387 for more details.
74
59
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
-
102
60
### Downloaded binaries
103
61
104
62
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.
@@ -129,7 +87,8 @@ These are the versions of GHC that there are binaries of `haskell-language-serve
129
87
| 8.6.5 | ✓ | ✓ | ✓ |
130
88
| 8.6.4 | ✓ | ✓ | ✓ |
131
89
132
-
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>
90
+
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>
91
+
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).
0 commit comments