
Stefan Monnier
I'm a beginner, but I'll chime in and say I use Emacs with haskell-mode. It's auto-indentation is a bit complex in behavior which is unappealing (I feel like I never know what it's going to do when I hit tab), but I would be curious what someone with more experience feels about that.
I clearly recommend Emacs with haskell-mode, but I agree that the indentation is problematic. Note that the code in the CVS repository comes with a completely new indentation algorithm courtesy of Kristof Bastiaensen
(so you can now choose between haskell-simple-indent, haskell-indent, and the new haskell-indentation). I haven't tried this new algorithm much, but people who dislike haskell-indent might want to give it a try.
It works for me and I believe it indeed behaves much more rational. The doc in the file haskell-indentation.el is misleading. It states using function turn-on-haskell-indentation, which is removed according to Changelog. And the default definition of haskell-mode-hook in haskell-mode.el is somewhat offending, so I recommend remove the two autoload lines. Index: haskell-mode.el =================================================================== RCS file: /cvs/fptools/CONTRIB/haskell-modes/emacs/haskell-mode.el,v retrieving revision 1.32 diff -u -b -B -r1.32 haskell-mode.el --- haskell-mode.el 28 Feb 2008 22:23:36 -0000 1.32 +++ haskell-mode.el 14 Apr 2009 22:24:53 -0000 @@ -504,8 +504,6 @@ ;;;###autoload(add-to-list 'auto-mode-alist '("\\.\\(?:[gh]s\\|hi\\)\\'" . haskell-mode)) ;;;###autoload(add-to-list 'auto-mode-alist '("\\.l[gh]s\\'" . literate-haskell-mode)) -;;;###autoload(add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode) -;;;###autoload(add-hook 'haskell-mode-hook 'turn-on-haskell-indent) (defcustom haskell-hoogle-command (if (executable-find "hoogle") "hoogle") -- c/* __o/* <\ * (__ */\ <