summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorOndřej Janošík <j.ondra14@gmail.com>2015-07-09 08:24:08 +0200
committerOndřej Janošík <j.ondra14@gmail.com>2015-07-09 08:24:08 +0200
commit9180fae2d5d358bdea257b8b033ee4a2a963ce05 (patch)
treed32ea2c5c2dececf20fe375014fa72b3b5ad6529 /src
parent54e508f222fd18059da4b45061eed84509e01ac2 (diff)
downloadstylish-haskell-9180fae2d5d358bdea257b8b033ee4a2a963ce05.tar.gz
Added list_padding option
Diffstat (limited to 'src')
-rw-r--r--src/Language/Haskell/Stylish/Config.hs4
-rw-r--r--src/Language/Haskell/Stylish/Step/Imports.hs5
2 files changed, 6 insertions, 3 deletions
diff --git a/src/Language/Haskell/Stylish/Config.hs b/src/Language/Haskell/Stylish/Config.hs
index bda5593..dd37a60 100644
--- a/src/Language/Haskell/Stylish/Config.hs
+++ b/src/Language/Haskell/Stylish/Config.hs
@@ -168,7 +168,9 @@ parseImports config o = Imports.step
<$> (o A..:? "align" >>= parseEnum aligns Imports.Global)
<*> (o A..:? "list_align" >>= parseEnum listAligns Imports.SameLine)
<*> (o A..:? "long_list_align"
- >>= parseEnum longListAligns Imports.Inline))
+ >>= parseEnum longListAligns Imports.Inline)
+ <*> (o A..:? "list_padding"
+ >>= (return . maybe 4 (max 1)))) -- Padding have to be at least 1.
where
aligns =
[ ("global", Imports.Global)
diff --git a/src/Language/Haskell/Stylish/Step/Imports.hs b/src/Language/Haskell/Stylish/Step/Imports.hs
index b1e8843..f1fbf40 100644
--- a/src/Language/Haskell/Stylish/Step/Imports.hs
+++ b/src/Language/Haskell/Stylish/Step/Imports.hs
@@ -30,6 +30,7 @@ data Align = Align
{ importAlign :: ImportAlign
, listAlign :: ListAlign
, longListAlign :: LongListAlign
+ , listPadding :: Int
}
deriving (Eq, Show)
@@ -132,9 +133,9 @@ prettyImport columns Align{..} padQualified padName longest imp =
inlineWrapper = case listAlign of
SameLine -> wrap columns inlineBase (inlineBaseLength + 1)
- NewLine -> (inlineBase :) . wrapRest columns 4
+ NewLine -> (inlineBase :) . wrapRest columns listPadding
- multilineWrap = multilineBase : (wrapRest 0 4
+ multilineWrap = multilineBase : (wrapRest 0 listPadding
$ (withHead ("( " ++)
$ withTail (", " ++)
$ specs) ++ [")"])