Skip to content

Commit f925058

Browse files
committed
docs: contributing: upd "Using HLS on HLS code" section algorythm
1 parent a4137e0 commit f925058

File tree

1 file changed

+23
-4
lines changed

1 file changed

+23
-4
lines changed

docs/contributing/contributing.md

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -113,16 +113,35 @@ $ cabal run haskell-language-server:func-test -- -p "hlint enables"
113113

114114
## Using HLS on HLS code
115115

116-
[HLS project configuration guidelines](../configuration.md#configuring-your-project-build) also apply to the HLS project itself.
116+
Project source code should load without `hie.yaml` setup.
117+
118+
In other cases:
119+
120+
1. Check if `hie.yaml` (& `hie.yml`) files left from previous configurations.
121+
122+
2. If the main project needs special configuration, note that other internal subprojects probably also would need configuration.
123+
124+
To create an explicit configuration for all projects - use [implicit-hie](https://github.com/Avi-D-coder/implicit-hie) generator directly:
125+
126+
```shell
127+
gen-hie > hie.yaml # into the main HLS directory
128+
```
129+
130+
that configuration should help.
131+
132+
3. Inspect & tune it explicit configuration.
133+
134+
[Configuring project build](../configuration.md#configuring-your-project-build) applies to HLS project source code loading just as to any other.
135+
136+
Note: HLS may implicitly codebase as a Stack project (see [hie-bios implicit configuration documentation](https://github.com/haskell/hie-bios/blob/master/README.md#implicit-configuration)).
137+
138+
To use Cabal, try creating an `hie.yaml` file:
117139

118-
Note: HLS implicitly detects HLS codebase as a Stack project (see [hie-bios implicit configuration documentation](https://github.com/haskell/hie-bios/blob/master/README.md#implicit-configuration)).
119-
If you want HLS to use Cabal, you need to create an `hie.yaml` file:
120140
```yaml
121141
cradle:
122142
cabal:
123143
```
124144

125-
Also note that the `install/` subdirectory is a different project, so if you want to work on this part of the code, you may also have to create an `install/hie.yaml` file.
126145

127146
### Manually testing your hacked HLS
128147
If you want to test HLS while hacking on it, follow the steps below.

0 commit comments

Comments
 (0)