about summary refs log tree commit diff
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2018-07-06T17·34-0400
committerWilliam Carroll <wpcarro@gmail.com>2018-07-19T16·00-0400
commitbb8cb310fa67db5f1431aeb69607722ebbb51217 (patch)
tree3fbac411a10cfb3da77df99698f26195b9becc84
parentb147b5fbd02440b602710bb86340bfe33ba21895 (diff)
Extend Haskell support
- Format imports on buffer-save.
- Adds two new snippets
-rw-r--r--emacs.d/snippets/haskell-mode/language-extension5
-rw-r--r--emacs.d/snippets/haskell-mode/separator5
-rw-r--r--emacs.d/wpc/packages/wpc-haskell.el6
3 files changed, 14 insertions, 2 deletions
diff --git a/emacs.d/snippets/haskell-mode/language-extension b/emacs.d/snippets/haskell-mode/language-extension
new file mode 100644
index 000000000000..9d6084acb40d
--- /dev/null
+++ b/emacs.d/snippets/haskell-mode/language-extension
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: language extension
+# key: lang
+# --
+{-# LANGUAGE $1 #-}
\ No newline at end of file
diff --git a/emacs.d/snippets/haskell-mode/separator b/emacs.d/snippets/haskell-mode/separator
new file mode 100644
index 000000000000..1ab0d762b611
--- /dev/null
+++ b/emacs.d/snippets/haskell-mode/separator
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: Separator
+# key: -
+# --
+--------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/emacs.d/wpc/packages/wpc-haskell.el b/emacs.d/wpc/packages/wpc-haskell.el
index 5be444e51158..e6525537ba44 100644
--- a/emacs.d/wpc/packages/wpc-haskell.el
+++ b/emacs.d/wpc/packages/wpc-haskell.el
@@ -26,7 +26,9 @@
          '(("`mappend`" . "⊕")
            ("<>"        . "⊕"))))
     (dolist (item m-symbols) (add-to-list 'haskell-font-lock-symbols-alist item)))
-  (setq haskell-font-lock-symbols t))
+  (setq haskell-font-lock-symbols t)
+  (add-hook 'before-save-hook #'haskell-align-imports))
+
 
 (defun empire/haskell/module->test ()
   "Jump from a module to a test."
@@ -54,4 +56,4 @@
     (empire/haskell/test->module)))
 
 (provide 'wpc-haskell)
-;;; haskell.el ends here
+;;; wpc-haskell.el ends here