diff options
Diffstat (limited to 'snippets/haskell-mode/module')
-rw-r--r-- | snippets/haskell-mode/module | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/snippets/haskell-mode/module b/snippets/haskell-mode/module new file mode 100644 index 000000000000..ce7ebcb21353 --- /dev/null +++ b/snippets/haskell-mode/module @@ -0,0 +1,32 @@ +# -*- mode: snippet -*- +# key: module +# name: module +# condition: (= (length "module") (current-column)) +# expand-env: ((yas-indent-line 'fixed)) +# contributor: Luke Hoersten <luke@hoersten.org> +# -- +---------------------------------------------------------------------- +-- | +-- Module : $1 +-- Description : $2 +-- Maintainer : Griffin Smith <grfn@urbint.com> +-- Maturity : ${3:Draft, Usable, Maintained, OR MatureAF} +-- +-- $4 +---------------------------------------------------------------------- +module ${1:`(if (not buffer-file-name) "Module" + (let ((name (file-name-sans-extension (buffer-file-name))) + (case-fold-search nil)) + (if (or (cl-search "src/" name) + (cl-search "test/" name)) + (replace-regexp-in-string "/" "." + (replace-regexp-in-string "^\/[^A-Z]*" "" + (car (last (split-string name "src"))))) + (file-name-nondirectory name))))`} + ( + ) where +---------------------------------------------------------------------- +import Prelude +---------------------------------------------------------------------- + +$0 |