summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--emacs.d/inits/90_lang-haskell.el22
1 files changed, 22 insertions, 0 deletions
diff --git a/emacs.d/inits/90_lang-haskell.el b/emacs.d/inits/90_lang-haskell.el
new file mode 100644
index 0000000..be245f3
--- /dev/null
+++ b/emacs.d/inits/90_lang-haskell.el
@@ -0,0 +1,22 @@
+(use-package haskell-mode
+  :ensure t
+  :init
+  (progn
+    (add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
+    (add-hook 'haskell-mode-hook 'turn-on-haskell-simple-indent)
+    (add-hook 'haskell-mode-hook 'interactive-haskell-mode)
+    )
+  (setq haskell-stylish-on-save t))
+
+(use-package ghc
+  :ensure t
+  :config
+  (add-hook 'haskell-mode-hook 'ghc-init)
+  :bind (("C-c C-t" . ghc-show-type)
+         ("C-c t"   . ghc-show-type)))
+
+(use-package hindent
+  :ensure t
+  :config
+  (add-hook 'haskell-mode-hook #'hindent-mode)
+  (setq hindent-style "gibiansky"))