packages feed

nvim-hs-ghcid-2.0.1.0: Neovim/Ghcid.hs

{-# LANGUAGE TemplateHaskell #-}

{- |
Module      :  Neovim.Ghcid
Description :  Ghcid plugin
Copyright   :  (c) Sebastian Witte
License     :  Apache-2.0

Maintainer  :  woozletoff@gmail.com
Stability   :  experimental
Portability :  GHC
-}
module Neovim.Ghcid where

import Neovim
import Neovim.API.String

import Neovim.Ghcid.Plugin

plugin :: Neovim () NeovimPlugin
plugin = do
    _ <- vim_command "sign define GhcidWarn text=>> texthl=Search"
    _ <- vim_command "sign define GhcidErr text=!! texthl=ErrorMsg"
    env <- initGhcidEnv
    wrapPlugin
        Plugin
            { environment = env
            , exports =
                [ $(command' 'ghcidStart) ["async", "!"]
                , $(command' 'ghcidStop) ["async"]
                , $(command' 'ghcidRestart) ["async"]
                ]
            }