EmacsでHaskellを扱えるようにする

技術書展でHaskell本を買ったので折角なのでEmacs環境を整えてみた


haskell-mode

url: haskell/haskell-mode

Melpaでさくっと入る便利。

;; haskell
(autoload 'haskell-mode "haskell-mode" nil t)
(autoload 'haskell-cabal "haskell-cabal" nil t)

(add-to-list 'auto-mode-alist '("\\.hs$" . haskell-mode))
(add-to-list 'auto-mode-alist '("\\.lhs$" . literate-haskell-mode))
(add-to-list 'auto-mode-alist '("\\.cable$" . haskell-cabal-mode))

haskell-ide-engine

url: haskell/haskell-ide-engine

あまりにもおもすぎたので Nix で Haskell IDE Engine をシュッと入れるでシュッといれた。

LSPでつなげちゃえるのすごい。

(add-hook 'haskell-mode-hook #'lsp)

hindent

url: chrisdone/hindent

M-q で整形できるみたい

;; hindent
(add-hook 'haskell-mode-hook #'hindent-mode)
(setq hindent-style "johan-tibell")

一旦こんな感じかな