haskell-language-server/plugins/hls-hlint-plugin
awjchen cebd641d06
Use restricted monad for plugins (#4057) (#4304)
* Use restricted monad for plugins (#4057)

* Renaming: PluginM -> HandlerM

* Explain intent for HandlerM

* Fix comment

* Apply stylish-haskell
2024-06-10 10:02:58 +00:00
..
src/Ide/Plugin Use restricted monad for plugins (#4057) (#4304) 2024-06-10 10:02:58 +00:00
test Refactor hls-test-util and reduce getCurrentDirectory after initilization (#4231) 2024-05-27 14:03:43 +00:00
.hlint.yaml Set up partial functions ratchet (#2974) 2022-06-24 10:46:35 +00:00
README.md hls-hlint-plugin: Update README.md (#3216) 2022-09-26 13:37:47 +01:00

HLint Plugin for the Haskell Language Server

Configuration

This is typically done through an HLint configuration file. You can also change the behavior of HLint by adding a list of flags to haskell.plugin.hlint.config.flags if your configuration is in a non-standard location or you want to change settings globally.

Known Differences from the hlint executable

  • The hlint executable by default turns on many extensions when parsing a file because it is not certain about the exact extensions that apply to the file (they may come from project files). This differs from HLS which uses only the extensions the file needs to parse the file. Hence it is possible for the hlint executable to report a parse error on a file, but the hlint plugin to work just fine on the same file. This does mean that the turning on/off of extensions in the hlint config may be ignored by the hlint plugin.