gleam
gleam copied to clipboard
Formatter: no line-breaking for long boolean expressions
In Gleam 0.12.0
fn something() -> Bool {
let some_long_variable_name = 1
let some_other_long_variable_name = 2
let some_third_long_variable_name = True
let some_fourth_long_variable_name = False
some_long_variable_name > some_other_long_variable_name || some_third_long_variable_name && some_fourth_long_variable_name
}
gleam format
doesn't seem to attempt to break the the boolean expression over multiple lines, no matter how long it gets.
Not sure what the best place to break would be. Perhaps start by breaking on any || or &&s?
some_long_variable_name > some_other_long_variable_name
|| some_third_long_variable_name
&& some_fourth_long_variable_name
Something like that would be good, though I don't mind the exact formatting so much.
I think we could expand it more generally to any binary operations too.
There is also something like this. I also think it looks better if the break is on operators!
Another example:
pub fn to_string(color color: Color) -> String {
int.to_string(color.red) <> ", " <> int.to_string(color.green) <> ", " <> int.to_string(
color.blue,
) <> ", " <> float.to_string(color.alpha)
}
I think this can be closed now!
Thank you