Improve HsLam and OpApp layouting
parent
8277e85187
commit
fedfeaaecd
|
@ -56,13 +56,32 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of
|
||||||
docCols ColCasePattern
|
docCols ColCasePattern
|
||||||
$ (patDocs <&> (\p -> docSeq [docForceSingleline p, docSeparator]))
|
$ (patDocs <&> (\p -> docSeq [docForceSingleline p, docSeparator]))
|
||||||
docAlt
|
docAlt
|
||||||
[ docSetParSpacing
|
[ -- single line
|
||||||
|
docSeq
|
||||||
|
[ docLit $ Text.pack "\\"
|
||||||
|
, docWrapNode lmatch $ docForceSingleline funcPatternPartLine
|
||||||
|
, appSep $ docLit $ Text.pack "->"
|
||||||
|
, docWrapNode lgrhs $ docForceSingleline bodyDoc
|
||||||
|
]
|
||||||
|
-- double line
|
||||||
|
, docSetParSpacing
|
||||||
|
$ docAddBaseY BrIndentRegular
|
||||||
|
$ docPar
|
||||||
|
(docSeq
|
||||||
|
[ docLit $ Text.pack "\\"
|
||||||
|
, docWrapNode lmatch $ appSep $ docForceSingleline funcPatternPartLine
|
||||||
|
, docLit $ Text.pack "->"
|
||||||
|
])
|
||||||
|
(docWrapNode lgrhs $ docForceSingleline bodyDoc)
|
||||||
|
-- wrapped par spacing
|
||||||
|
, docSetParSpacing
|
||||||
$ docSeq
|
$ docSeq
|
||||||
[ docLit $ Text.pack "\\"
|
[ docLit $ Text.pack "\\"
|
||||||
, docWrapNode lmatch $ docForceSingleline funcPatternPartLine
|
, docWrapNode lmatch $ docForceSingleline funcPatternPartLine
|
||||||
, appSep $ docLit $ Text.pack "->"
|
, appSep $ docLit $ Text.pack "->"
|
||||||
, docWrapNode lgrhs $ docForceParSpacing bodyDoc
|
, docWrapNode lgrhs $ docForceParSpacing bodyDoc
|
||||||
]
|
]
|
||||||
|
-- conservative
|
||||||
, docSetParSpacing
|
, docSetParSpacing
|
||||||
$ docAddBaseY BrIndentRegular
|
$ docAddBaseY BrIndentRegular
|
||||||
$ docPar
|
$ docPar
|
||||||
|
@ -195,12 +214,12 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of
|
||||||
, appSep $ docForceSingleline expDocOp
|
, appSep $ docForceSingleline expDocOp
|
||||||
, docForceSingleline expDocRight
|
, docForceSingleline expDocRight
|
||||||
]
|
]
|
||||||
, -- line + freely indented block for right expression
|
-- , -- line + freely indented block for right expression
|
||||||
docSeq
|
-- docSeq
|
||||||
[ appSep $ docForceSingleline expDocLeft
|
-- [ appSep $ docForceSingleline expDocLeft
|
||||||
, appSep $ docForceSingleline expDocOp
|
-- , appSep $ docForceSingleline expDocOp
|
||||||
, docSetBaseY $ docAddBaseY BrIndentRegular expDocRight
|
-- , docSetBaseY $ docAddBaseY BrIndentRegular expDocRight
|
||||||
]
|
-- ]
|
||||||
, -- two-line
|
, -- two-line
|
||||||
docAddBaseY BrIndentRegular
|
docAddBaseY BrIndentRegular
|
||||||
$ docPar
|
$ docPar
|
||||||
|
|
Loading…
Reference in New Issue