diff options
Diffstat (limited to 'configs/shared/emacs/.emacs.d/wpc/packages/wpc-haskell.el')
-rw-r--r-- | configs/shared/emacs/.emacs.d/wpc/packages/wpc-haskell.el | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/configs/shared/emacs/.emacs.d/wpc/packages/wpc-haskell.el b/configs/shared/emacs/.emacs.d/wpc/packages/wpc-haskell.el deleted file mode 100644 index 6fc98b31e77f..000000000000 --- a/configs/shared/emacs/.emacs.d/wpc/packages/wpc-haskell.el +++ /dev/null @@ -1,56 +0,0 @@ -;;; haskell.el --- My Haskell preferences -*- lexical-binding: t -*- -;; Author: William Carroll <wpcarro@gmail.com> - -;;; Commentary: -;; Hosts my Haskell development preferences - -;;; Code: - -;; Haskell support - -;; font-locking, glyph support, etc -(use-package haskell-mode - :config - (let ((m-symbols - '(("`mappend`" . "⊕") - ("<>" . "⊕")))) - (dolist (item m-symbols) (add-to-list 'haskell-font-lock-symbols-alist item))) - (setq haskell-font-lock-symbols t) - (add-hook 'before-save-hook #'haskell-align-imports)) - -;; LSP support -(use-package lsp-haskell - :after (haskell-mode) - :config - (setq lsp-haskell-process-path-hie "hie-wrapper") - (add-hook 'haskell-mode-hook #'lsp-haskell-enable) - (add-hook 'haskell-mode-hook #'flycheck-mode)) - -;; Test toggling -(defun haskell/module->test () - "Jump from a module to a test." - (let ((filename (->> buffer-file-name - (s-replace "/src/" "/test/") - (s-replace ".hs" "Test.hs") - find-file))) - (make-directory (f-dirname filename) t) - (find-file filename))) - -(defun haskell/test->module () - "Jump from a test to a module." - (let ((filename (->> buffer-file-name - (s-replace "/test/" "/src/") - (s-replace "Test.hs" ".hs") - ))) - (make-directory (f-dirname filename) t) - (find-file filename))) - -(defun haskell/test<->module () - "Toggle between test and module in Haskell." - (interactive) - (if (s-contains? "/src/" buffer-file-name) - (haskell/module->test) - (haskell/test->module))) - -(provide 'wpc-haskell) -;;; wpc-haskell.el ends here |