-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhaskell.el
31 lines (25 loc) · 1.05 KB
/
haskell.el
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
(use-package haskell-mode
:ensure t
:config
(defun prelude-haskell-mode-defaults ()
(subword-mode +1)
(flymake-mode-off))
(setq prelude-haskell-mode-hook 'prelude-haskell-mode-defaults)
(add-hook 'haskell-mode-hook (lambda ()
(run-hooks 'prelude-haskell-mode-hook)))
; stop haskell-mode from enabling fucking flymake
(setq flymake-allowed-file-name-masks (delete '("\\.l?hs\\'" haskell-flymake-init) flymake-allowed-file-name-masks))
(setq company-ghc-show-info t)
(setq company-ghc-show-module t)
(add-hook 'haskell-mode-hook 'turn-on-haskell-unicode-input-method)
(defun haskell-mode-suggest-indent-choice ()) ; get haskell-mode to fucking shut up about it’s stupid indentation stuff
(add-hook 'haskell-mode-hook 'flymake-mode-off))
(use-package shm
:ensure t
:after haskell-mode
:config
(require 'shm)
(define-key shm-map (kbd "C-w") nil)
(define-key shm-map (kbd "C-x C-k") 'shm/kill-region)
(add-hook 'haskell-mode-hook 'structured-haskell-mode)
)