Description
Your environment
Which OS do you use?
MacOS
Which version of GHC do you use and how did you install it?
9.6.2 from GHCUp
How is your project built (alternative: link to the project)?
Which LSP client (editor/plugin) do you use?
VSCode and vscode-haskell
Which version of HLS do you use and how did you install it?
2.2.0.0 from GHCUp
Have you configured HLS in any way (especially: a hie.yaml
file)?
Whether you have fourmolu.yaml
or not doesn't change the behaviour.
Steps to reproduce
Have the HLS configured to use the built-in installation of fourmolu and run the formatting command.
foo :: Maybe Int -> Int
foo = undefined
thing :: Int
thing =
foo $ Just $
case undefined of
True -> 1
False -> 2
Expected behaviour
The could should be formatted with the following output like a separate installation of fourmolu-0.13.1.0
does.
foo :: Maybe Int -> Int
foo = undefined
thing :: Int
thing =
foo $
Just $
case undefined of
True -> 1
False -> 2
Actual behaviour
Running VSCode's formatting command while having HLS use the built-in fourmolu will format the code to the following form:
foo :: Maybe Int -> Int
foo = undefined
thing :: Int
thing =
foo
$ Just
$ case undefined of
True -> 1
False -> 2
Debug information
vscode-haskell outputs the following log entry:
2023-09-03T12:47:51.063236Z | Debug | fourmolu: Using compiled in fourmolu-0.13.1.0