Skip to content

Latest commit

 

History

History
73 lines (57 loc) · 2.74 KB

README.org

File metadata and controls

73 lines (57 loc) · 2.74 KB

lang/haskell

Table of Contents

Description

Adds Haskell support to Doom Emacs.

Maintainers

This module has no dedicated maintainers.

Module Flags

Plugins

Prerequisites

It is recommended to install the haskell tooling using ghcup. Only ghc is needed for basic functionality:

ghcup install ghc

but +lsp users should also install the language server:

ghcup install hls

Installing cabal or stack as well is recommended, and can be done through ghcup.

haskell-mode provides support for hoogle, which can be installed through system package manager, cabal, or stack.

haskell-language-server provides support for hlint, and haskell code formatters such as brittany, floskell, ormolu, fourmolu, and stylish-haskell, which can be installed through system package manager, cabal, or stack.

Features

This module intergrates the haskell packages into Doom by providing things such as repl support, project root recognition, etc. It also provide the following keybindings:

KeybindingDescription
<localleader> bBuild the current cabal project
<localleader> cVisit the .cabal file of the current buffer
<localleader> hToggle visibility of the form at point
<localleader> Hhides all top level functions

Configuration

After installing your preferred formatter, make sure to set lsp-haskell-formatting-provider to it.

Make sure to configure the lsp to use your perfered formatter, e.g.:

;; ~/.doom.d/config.el
(after!
  (setq lsp-haskell-formatting-provider "brittany"))