diff options
Diffstat (limited to 'emacs/work_inits/21-functional.el')
| -rw-r--r-- | emacs/work_inits/21-functional.el | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/emacs/work_inits/21-functional.el b/emacs/work_inits/21-functional.el new file mode 100644 index 0000000..d9e4214 --- /dev/null +++ b/emacs/work_inits/21-functional.el @@ -0,0 +1,42 @@ +;; Time-stamp: <2021-09-27 08h48 EDT (hobbies)> + +;; ----------------------------------------------------------------------------- +;; Haskell + +(use-package lsp-haskell :ensure t :defer) + +(use-package haskell-mode + :ensure t + :bind (:map haskell-mode-map + ("C-c C-p". haskell-navigate-imports) + ("C-c C-c" . haskell-compile) + ("C-c C-z" . haskell-interactive-switch) + ("C-c C-l" . haskell-process-load-file) + ("C-c C-b" . haskell-interactive-switch) + ("C-c C-t" . haskell-process-do-type) + ("C-c C-i" . haskell-process-do-info) + ("C-x C-d" . nil) + ("C-c M-." . nil) + ("C-c C-d" . nil)) + :hook ((haskell-interactive-mode . visual-line-mode) + (haskell-mode . (lambda () + (subword-mode 1) + (aggressive-indent-mode -1) + (haskell-indentation-mode) + (interactive-haskell-mode) + (turn-on-haskell-doc-mode) + (turn-on-haskell-decl-scan) + (lsp) + (haskell-mode-stylish-buffer)))) + :config + (setq haskell-doc-show-global-types t + haskell-doc-show-prelude t + haskell-doc-show-user-defined t + haskell-doc-show-reserved t + haskell-interactive-mode-eval-pretty t + haskell-process-type 'auto + haskell-stylish-on-save t + haskell-process-use-presentation-mode t + haskell-process-suggest-imports t + haskell-process-suggest-hoogle-imports t + haskell-process-show-debug-tips nil)) |
