From 4a9d2ba9e48e34bc5646d27f07991b276fba036b Mon Sep 17 00:00:00 2001 From: Sean Whitton Date: Sat, 5 Dec 2015 12:39:40 -0700 Subject: add a readme --- README.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..5537325 --- /dev/null +++ b/README.md @@ -0,0 +1,38 @@ +This file provides `haskell-tab-indent-mode`, a simple Emacs +indentation minor mode for Haskell projects which require tabs for +indentation and do not permit spaces (except for where clauses, as a +special case). A prominent example of such a project is +[git-annex][]. + +The user may use TAB to cycle between possible indentations. + +# Installation + +You may copy `haskell-tab-indent.el` to somewhere in your `load-path` +and simply + + (autoload 'haskell-tab-indent-mode "haskell-tab-indent.el") + +Or you may use [git subtrees][]: + + emacs-pkg-subtree pull https://git.spwhitton.name/haskell-tab-indent 0.1.0 + +[git subtrees]: https://spwhitton.name/blog/entry/emacs-pkg-subtree/ + +# Usage + +If you set `indent-tabs-mode` in the `.dir-locals.el` file for a +project requiring tabs, you can use something like this in your init +file to enable this mode for such projects, defaulting to the usual +`haskell-indentation-mode`: + + (add-hook 'haskell-mode-hook + (lambda () + (add-hook 'hack-local-variables-hook + (lambda () + (if indent-tabs-mode + (haskell-tab-indent-mode) + (haskell-indentation-mode))) + nil t))) ; local hook + +[git-annex]: https://git-annex.branchable.com/coding_style/ -- cgit v1.2.3