diff options
author | Yuriy Syrovetskiy <cblp@cblp.su> | 2017-06-19 14:54:06 +0300 |
---|---|---|
committer | Jasper Van der Jeugt <jaspervdj@gmail.com> | 2017-06-19 13:54:06 +0200 |
commit | 8dfa649696c6321b34bdd124020d8afc03c8c9bc (patch) | |
tree | c46f16cf16e630f60c16a9fba5852e2cee901213 /lib | |
parent | fd96055ef151d9ba0e38fbc518f63254c22d0eef (diff) | |
download | stylish-haskell-8dfa649696c6321b34bdd124020d8afc03c8c9bc.tar.gz |
Add `imports.list_same_align` option
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Language/Haskell/Stylish/Config.hs | 1 | ||||
-rw-r--r-- | lib/Language/Haskell/Stylish/Step/Imports.hs | 5 |
2 files changed, 5 insertions, 1 deletions
diff --git a/lib/Language/Haskell/Stylish/Config.hs b/lib/Language/Haskell/Stylish/Config.hs index 667a6eb..3f9efc5 100644 --- a/lib/Language/Haskell/Stylish/Config.hs +++ b/lib/Language/Haskell/Stylish/Config.hs @@ -184,6 +184,7 @@ parseImports config o = Imports.step <*> (Imports.Options <$> (o A..:? "align" >>= parseEnum aligns (def Imports.importAlign)) <*> (o A..:? "list_align" >>= parseEnum listAligns (def Imports.listAlign)) + <*> (o A..:? "list_same_align" A..!= def Imports.listSameAlign) <*> (o A..:? "long_list_align" >>= parseEnum longListAligns (def Imports.longListAlign)) -- Note that padding has to be at least 1. Default is 4. diff --git a/lib/Language/Haskell/Stylish/Step/Imports.hs b/lib/Language/Haskell/Stylish/Step/Imports.hs index 38ced99..2580502 100644 --- a/lib/Language/Haskell/Stylish/Step/Imports.hs +++ b/lib/Language/Haskell/Stylish/Step/Imports.hs @@ -38,6 +38,7 @@ import Language.Haskell.Stylish.Util data Options = Options { importAlign :: ImportAlign , listAlign :: ListAlign + , listSameAlign :: Bool , longListAlign :: LongListAlign , emptyListAlign :: EmptyListAlign , listPadding :: ListPadding @@ -49,6 +50,7 @@ defaultOptions :: Options defaultOptions = Options { importAlign = Global , listAlign = AfterAlias + , listSameAlign = True , longListAlign = Inline , emptyListAlign = Inherit , listPadding = LPConstant 4 @@ -386,12 +388,13 @@ prettyImportGroup columns align fileAlign longest imps = sortBy compareImports imps where align' = importAlign align + sameAlign = listSameAlign align longest' = case align' of Group -> longestImport imps _ -> longest - padName = align' /= None + padName = align' /= None && sameAlign padQual = case align' of Global -> True |