nvim-hs-ghcid: Neovim plugin that runs ghcid to update the quickfix list

[ apache, editor, library, program ] [ Propose Tags ]

This plugin uses the nvim-hs plugin backend for neovim and fills the quickfix list on file-saves with the errors and warnings that ghcid determines.

The only limitation for this tool is that it needs a .cabal file to work.

This plugin provides 3 commands:

:GhcidStart will prompt you for the configuration you want to use. It should guess a reasonable option based on the files present in your project directory and so you will just have to press enter all the time. If you provide a bang, these questions will not be asked.

:GhcidStop stops the current ghcid process.

:GhcidRestart combines the two previous commands.

Simply import the plugin definition from Neovim.Ghcid and add it to your plugin list.

[Skip to Readme]


Maintainer's Corner

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1.0, 0.2.0,,
Dependencies base (>=4.9 && <5), bytestring, containers (>=0.5), directory, filepath, ghcid (>=0.6.1 && <1), nvim-hs (>=2 && <3), nvim-hs-contrib (>=2.0 && <3), nvim-hs-ghcid, resourcet, transformers, unliftio, yaml [details]
License Apache-2.0
Copyright Sebastian Witte <woozletoff@gmail.com>
Author Sebastian Witte
Maintainer woozletoff@gmail.com
Category Editor
Home page https://github.com/saep/nvim-hs-ghcid
Uploaded by saep at 2019-05-27T18:33:42Z
Distributions LTSHaskell:, NixOS:, Stackage:
Executables nvim-hs-ghcid
Downloads 2489 total (16 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-05-27 [all 1 reports]

Readme for nvim-hs-ghcid-

[back to package description]


Ghcid integration plugin for nvim-hs.

This plugin fills the quickfix list with location of compiler errors and warnings. Warnings are only added to the quickfix list if no errors are present.


Add the plugin to your nvim-hs config file.

Sample configuration file:

import Neovim

import qualified Neovim.Ghcid as Ghcid

main :: IO ()
main = neovim defaultConfig
    { plugins = defaultPlugins defaultConfig ++ [ Ghcid.plugin ]



To initialize a Ghcid session which will fill the quickfix list on errors/warnings. If you add a bang, it will not ask you for the configuration and uses the last saved configuration for the project or guesses a configuration.


Stop the Ghcid session for the project in which the current file resides.


Same as :GhcidStop followed by :GhcidStart!.