-# Pronto runner for ESLint (using eslint from npm)
+# Pronto runner for Hlint
-[![Code Climate](https://codeclimate.com/github/doits/pronto-eslint_npm.svg)](https://codeclimate.com/github/doits/pronto-eslint_npm)
-[![Build Status](https://travis-ci.org/doits/pronto-eslint_npm.svg?branch=master)](https://travis-ci.org/doits/pronto-eslint_npm)
-[![Gem Version](https://badge.fury.io/rb/pronto-eslint_npm.svg)](http://badge.fury.io/rb/pronto-eslint_npm)
+[![Build Status](https://travis-ci.org/fretlink/pronto-hlint.svg?branch=master)](https://travis-ci.org/fretlink/pronto-hlint)
+[![Gem Version](https://badge.fury.io/rb/pronto-hlint.svg)](http://badge.fury.io/rb/pronto-hlint)
-Pronto runner for [ESlint](http://eslint.org), pluggable linting utility for JavaScript and JSX. [What is Pronto?](https://github.com/mmozuras/pronto)
-
-Uses official eslint executable installed by `npm` in contrast to [pronto-eslint][pronto-eslint].
-
-[pronto-eslint]: https://github.com/mmozuras/pronto-eslint
+Pronto runner for [Hlint](https://hackage.haskell.org/package/hlint), pluggable linting utility for Haskell. [What is Pronto?](https://github.com/mmozuras/pronto)
## Prerequisites
-You'll need to install [eslint by yourself with npm][eslint-install]. If `eslint` is in your `PATH`, everything will simply work, otherwise you have to provide pronto-eslint-npm your custom executable path (see [below](#configuration-of-eslintnpm)).
-
-[eslint-install]: http://eslint.org/docs/user-guide/getting-started
+You'll need to install [hlint by yourself with cabal or stack][hlint-install]. If `hlint` is in your `PATH`, everything will simply work, otherwise you have to provide pronto-hlint your custom executable path (see [below](#configuration-of-hlint)).
-## Configuration of ESLint
+[hlint-install]: https://github.com/ndmitchell/hlint#installing-and-running-hlint
-Configuring ESLint via [.eslintrc and consorts][eslintrc] and excludes via [.eslintignore][eslintignore] will work just fine with pronto-eslint-npm.
+## Configuration of Hlint
-[eslintrc]: http://eslint.org/docs/user-guide/configuring#configuration-file-formats
+Configuring Hlint via [.hlint.yaml][.hlint.yaml] will work just fine with pronto-hlint.
-[eslintignore]: http://eslint.org/docs/user-guide/configuring#ignoring-files-and-directories
+[.hlint.yaml]: https://github.com/ndmitchell/hlint#customizing-the-hints
-## Configuration of ESLintNPM
+## Configuration of Pronto-Hlint
-pronto-eslint-npm can be configured by placing a `.pronto_eslint_npm.yml` inside the directory where pronto is run.
+pronto-hlint can be configured by placing a `.pronto_hlint.yml` inside the directory where pronto will run.
Following options are available:
| Option | Meaning | Default |
| ----------------- | ---------------------------------------------------------------------------------------- | ----------------------------------- |
-| eslint_executable | ESLint executable to call. | `eslint` (calls `eslint` in `PATH`) |
-| files_to_lint | What files to lint. Absolute path of offending file will be matched against this Regexp. | `(\.js|\.es6)$` |
-| cmd_line_opts | Command line options to pass to eslint when running | '' |
+| hlint_executable | Hlint executable to call. | `hlint` (calls `hlint` in `PATH`) |
+| files_to_lint | What files to lint. Absolute path of offending file will be matched against this Regexp. | `(\.hs)$` |
+| cmd_line_opts | Command line options to pass to hlint when running | `` |
-Example configuration to call custom eslint executable and only lint files ending with `.my_custom_extension`:
+Example configuration to call custom hlint executable and only lint files ending with `.my_custom_extension`:
```yaml
-# .pronto_eslint_npm.yml
-eslint_executable: '/my/custom/node/path/.bin/eslint'
+# .pronto_hlint.yml
+hlint_executable: '/my/custom/path/.bin/hlint'
files_to_lint: '\.my_custom_extension$'
-cmd_line_opts: '--ext .html,.js,.es6'
+cmd_line_opts: '-j $(nproc) --typecheck'
```