floskell icon indicating copy to clipboard operation
floskell copied to clipboard

Top level type declarations don't line-break properly.

Open Philonous opened this issue 4 years ago • 0 comments

When setting "formatting"."layout"."type" to "vertical" or "try-oneline" (with a long declaration) and "formatting"."indent"."typesig": "indent-by 2"

I would expect the following formatting:

function
  :: Bool
  -> Int
  -> Double
  -> String
  -> [Int]
  -> Either (Maybe String) Bool
  -> IO Bool
function = undefined

However, floskell instead produces

function :: Bool
  -> Int
  -> Double
  -> String
  -> [Int]
  -> Either (Maybe String) Bool
  -> IO Bool
function = undefined

That is, the first Parameter is on the wrong line

setting "formatting"."indent"."typesig": "align" actually does produce the desired behaviour as long as the function name is 16 characters or longer.

This seems like a bug to me.

Philonous avatar Jul 08 '21 09:07 Philonous