You don't have javascript enabled. Good luck! :(

stylish-haskell

最終更新日: 2018/09/11

何をするためのツールか?

ソースコードを綺麗に整形するためのツールです。個人的には brittany と併用しています。

README.md に動作結果が載っています。

stylish-haskell 適用前

stylish-haskell 適用後

インストール方法

$ stack install stylish-haskell

$ stylish-haskell --version
stylish-haskell 0.9.0.2

初期設定ファイルの生成方法

$ stylish-haskell --defaults > .stylish-haskell.yaml

生成される設定ファイルの内容は stylish-haskell.yaml で確認できます。

default-extensions で指定している言語拡張

以下のように package.yamldefault-extensions にデフォルトの言語拡張を指定する場合があります。

デフォルトで有効なのでソースファイルには上記の言語拡張は出現しません。そのため stylish-haskell はエラーを返してしまいます。

$ stylish-haskell app/Main.hs
Language.Haskell.Stylish.Parse.parseModule: could not parse app/Main.hs: ParseFailed (SrcLoc "<unknown>.hs" 10 3) "Improper character constant or misplaced '"

この場合は、.stylish-haskell.yaml (設定ファイル) に言語拡張を指定すれば上手くいきます。

ワンライナー

指定したディレクトリ以下に対して再帰的に適用する。

$ stylish-haskell -i $(find . -type f -name "*hs" -not -path '.git' -not -path '*.stack-work*')