From bdf876991334bf79e6768ce58c06dcfab7c03e3a Mon Sep 17 00:00:00 2001 From: Evan Rutledge Borden Date: Thu, 21 Sep 2017 21:44:10 -0400 Subject: [PATCH] Remove 3 space special case from HsIf when IndentPolicyLeft ``` if foo bar then baz ``` becomes ``` if foo bar then baz ``` --- .../Haskell/Brittany/Internal/Layouters/Expr.hs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs b/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs index cd10792..66169d8 100644 --- a/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs +++ b/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs @@ -415,6 +415,10 @@ layoutExpr lexpr@(L _ expr) = do thenExprDoc <- docSharedWrapper layoutExpr thenExpr elseExprDoc <- docSharedWrapper layoutExpr elseExpr hasComments <- hasAnyCommentsBelow lexpr + let maySpecialIndent = + case indentPolicy of + IndentPolicyLeft -> BrIndentRegular + _ -> BrIndentSpecial 3 docAltFilter [ -- if _ then _ else _ (,) (not hasComments) @@ -443,7 +447,7 @@ layoutExpr lexpr@(L _ expr) = do $ docSetParSpacing $ docAddBaseY BrIndentRegular $ docPar - ( docAddBaseY (BrIndentSpecial 3) + ( docAddBaseY maySpecialIndent $ docSeq [ docNodeAnnKW lexpr Nothing $ appSep $ docLit $ Text.pack "if" , docNodeAnnKW lexpr (Just AnnIf) $ docForceSingleline ifExprDoc @@ -483,7 +487,7 @@ layoutExpr lexpr@(L _ expr) = do (,) True $ docAddBaseY BrIndentRegular $ docPar - ( docAddBaseY (BrIndentSpecial 3) + ( docAddBaseY maySpecialIndent $ docSeq [ docNodeAnnKW lexpr Nothing $ appSep $ docLit $ Text.pack "if" , docNodeAnnKW lexpr (Just AnnIf) $ ifExprDoc @@ -506,7 +510,7 @@ layoutExpr lexpr@(L _ expr) = do , (,) True $ docSetBaseY $ docLines - [ docAddBaseY (BrIndentSpecial 3) + [ docAddBaseY maySpecialIndent $ docSeq [ docNodeAnnKW lexpr Nothing $ appSep $ docLit $ Text.pack "if" , docNodeAnnKW lexpr (Just AnnIf) $ ifExprDoc