Ormolu currently formats this way:
foo | x <-
5 = case x of
5 -> True
_ -> False
The combination of the extra indent from wrapping the guard, and the case layout to the left of that indent, is very difficult to read. Lots of options would be better, including:
- Always Indenting a layout context at least as far as the indent on the line where the layout trigger occurs.
- Insisting on a newline after the
=, so that this doesn't arise in the first place.
I don't have strong preference between the two, but the current behavior was a real WTF moment.