This repository has been archived by the owner on Apr 14, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
adjust code-style and imports before doing anything else.
- Loading branch information
Showing
11 changed files
with
1,180 additions
and
864 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
root = true | ||
|
||
[*] | ||
indent_style = space | ||
indent_size = 2 | ||
end_of_line = lf | ||
charset = utf-8 | ||
trim_trailing_whitespace = true | ||
insert_final_newline = true | ||
|
||
[stack.yaml] | ||
trim_trailing_whitespace = false | ||
|
||
[Makefile] | ||
indent_style = tab | ||
indent_size = 8 | ||
|
||
[*.hs] | ||
indent_size = 4 | ||
max_line_length = 80 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
# HLint configuration file | ||
# https://github.com/ndmitchell/hlint | ||
########################## | ||
|
||
# This file contains a template configuration file, which is typically | ||
# placed as .hlint.yaml in the root of your project | ||
|
||
|
||
# Specify additional command line arguments | ||
# | ||
# - arguments: [--color, --cpp-simple, -XQuasiQuotes] | ||
|
||
|
||
# Control which extensions/flags/modules/functions can be used | ||
# | ||
# - extensions: | ||
# - default: false # all extension are banned by default | ||
# - name: [PatternGuards, ViewPatterns] # only these listed extensions can be used | ||
# - {name: CPP, within: CrossPlatform} # CPP can only be used in a given module | ||
# | ||
# - flags: | ||
# - {name: -w, within: []} # -w is allowed nowhere | ||
# | ||
# - modules: | ||
# - {name: [Data.Set, Data.HashSet], as: Set} # if you import Data.Set qualified, it must be as 'Set' | ||
# - {name: Control.Arrow, within: []} # Certain modules are banned entirely | ||
# | ||
# - functions: | ||
# - {name: unsafePerformIO, within: []} # unsafePerformIO can only appear in no modules | ||
|
||
- modules: | ||
# Enforce some common qualified imports aliases across the codebase | ||
- {name: [Data.Aeson, Data.Aeson.Types], as: Aeson} | ||
- {name: [Data.ByteArray], as: BA} | ||
- {name: [Data.ByteString.Base16], as: B16} | ||
- {name: [Data.ByteString.Char8], as: B8} | ||
- {name: [Data.ByteString.Lazy], as: BL} | ||
- {name: [Data.ByteString], as: BS} | ||
- {name: [Data.Foldable], as: F} | ||
- {name: [Data.List.NonEmpty], as: NE} | ||
- {name: [Data.List], as: L} | ||
- {name: [Data.Map.Strict], as: Map} | ||
- {name: [Data.Sequence], as: Seq} | ||
- {name: [Data.Set, Data.HashSet], as: Set} | ||
- {name: [Data.Text, Data.Text.Encoding], as: T} | ||
- {name: [Data.Vector], as: V} | ||
|
||
# Ignore some build-in rules | ||
- ignore: {name: "Reduce duplication"} # This is a decision left to developers and reviewers | ||
- ignore: {name: "Redundant bracket"} # Not everyone knows precedences of every operators in Haskell. Brackets help readability. | ||
- ignore: {name: "Redundant do"} # Just an annoying hlint built-in, GHC may remove redundant do if he wants | ||
- ignore: {name: "Monoid law, left identity"} # Using 'mempty' can be useful to vertically-align elements | ||
- ignore: {name: "Use ?~"} # It's actually much clearer to do (.~ Just ...) than having to load yet-another-lens-operator | ||
- ignore: {name: "Redundant multi-way if"} # Using this style might be appropriate given the circumstances. | ||
- ignore: {name: "Use const"} # Sometimes using a lambda expression is simpler and clearer. | ||
- ignore: {name: "Redundant id"} # Sometimes this is useful for vertical alignment of elements. | ||
- ignore: {name: "Use newtype instead of data"} # Let programmer decide of the semantic | ||
|
||
# Add custom hints for this project | ||
# | ||
# Will suggest replacing "wibbleMany [myvar]" with "wibbleOne myvar" | ||
# - error: {lhs: "wibbleMany [x]", rhs: wibbleOne x} | ||
|
||
|
||
# Turn on hints that are off by default | ||
# | ||
# Ban "module X(module X) where", to require a real export list | ||
# - warn: {name: Use explicit module export list} | ||
# | ||
# Replace a $ b $ c with a . b $ c | ||
# - group: {name: dollar, enabled: true} | ||
# | ||
# Generalise map to fmap, ++ to <> | ||
# - group: {name: generalise, enabled: true} | ||
|
||
|
||
# Ignore some builtin hints | ||
# - ignore: {name: Use let} | ||
# - ignore: {name: Use const, within: SpecialModule} # Only within certain modules | ||
|
||
|
||
# Define some custom infix operators | ||
# - fixity: infixr 3 ~^#^~ | ||
|
||
|
||
# To generate a suitable file for HLint do: | ||
# $ hlint --default > .hlint.yaml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
# Stylish-haskell configuration file | ||
# | ||
# See `stylish-haskell --defaults` or | ||
# https://github.com/jaspervdj/stylish-haskell/blob/master/data/stylish-haskell.yaml | ||
# for usage. | ||
|
||
columns: 80 # Should match .editorconfig | ||
steps: | ||
- imports: | ||
align: none | ||
empty_list_align: inherit | ||
list_align: new_line | ||
list_padding: 4 | ||
long_list_align: new_line_multiline | ||
pad_module_names: false | ||
separate_lists: true | ||
space_surround: true | ||
|
||
- language_pragmas: | ||
align: false | ||
remove_redundant: true | ||
style: vertical | ||
|
||
language_extensions: | ||
# Workaround for stylish-haskell bug (jaspervdj/stylish-haskell#230) | ||
- FlexibleContexts | ||
# Workaround for stylish-haskell bug (jaspervdj/stylish-haskell#103) | ||
- MultiParamTypeClasses |
Oops, something went wrong.